:root{color-scheme:dark;font-family:Georgia,'Times New Roman',serif;background:#101015;color:#eee3ce}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#30251e 0,#17171b 35%,#101015 80%);min-height:100vh}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid #efc77f;outline-offset:3px}.site-header{text-align:center;padding:44px 16px 24px}.eyebrow,.small-cap{font:600 10px/1.4 system-ui,sans-serif;letter-spacing:.28em;color:#c7a26e}.site-header h1{font-size:clamp(33px,7vw,58px);font-weight:400;letter-spacing:.015em;margin:9px 0}.site-header p{font-size:15px;color:#c3b8ad;font-style:italic}main{max-width:900px;margin:auto;padding:0 20px 40px}h2{font-weight:400;letter-spacing:.02em;font-size:25px;margin:8px 0 16px}.section-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:20px 0 15px}.section-top span{color:#cbb68e;font:12px system-ui,sans-serif}.card-zone{display:flex;justify-content:center;perspective:1400px}.flip-card{border:0;padding:0;width:min(100%,390px);aspect-ratio:2/3;background:transparent;display:block;color:inherit;text-align:left;perspective:1200px}.card-inner{display:block;width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.flip-card.is-flipped .card-inner{transform:rotateY(180deg)}.card-face{position:absolute;inset:0;display:block;overflow:hidden;backface-visibility:hidden;border:2px solid #a17a4a;border-radius:16px;box-shadow:0 18px 70px #0009;background:#16171c}.card-front img{display:block;width:100%;height:100%;object-fit:fill}.card-front-caption{position:absolute;bottom:3%;left:50%;transform:translateX(-50%);white-space:nowrap;background:#151315d9;color:#fff0d1;border:1px solid #9d784e;border-radius:20px;padding:7px 14px;font:11px system-ui,sans-serif}.card-back{transform:rotateY(180deg);border:8px double #ad8653;background:radial-gradient(circle at 50% 5%,#47352a,#1a1b22 65%);padding:16px}.card-back-scroll{display:block;overflow-y:auto;overflow-x:hidden;height:100%;max-width:100%;min-width:0;padding-inline:2px 12px;text-align:center;scrollbar-color:#92714d transparent;overflow-wrap:anywhere}.back-name{font-size:37px;display:block;margin:10px 0 4px;color:#f8dba7}.back-sub{font-size:13px;color:#d2b48c;display:block;margin-bottom:18px}.back-section{display:block;text-align:left;margin:12px 0;line-height:1.55;font-size:14px}.back-section strong{display:block;color:#efc98b;margin-bottom:4px;font-size:14px}.back-note{display:block;text-align:left;color:#c1b7aa;font:11px/1.45 system-ui,sans-serif}.actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:18px 0}.actions button{border:1px solid #8e724f;color:#e8d6b9;background:#222026;border-radius:28px;padding:11px 15px;font:13px system-ui,sans-serif}.actions .gold-btn{background:#a8804b;color:#1b1611;border-color:#c9a56a;font-weight:700}.hint{text-align:center;font:12px/1.5 system-ui,sans-serif;color:#a9a2a0;margin:2px 0 42px}.grimoire{border-top:1px solid #564432;padding-top:14px}.note,.seasonal p{color:#b9ada6;font:14px/1.6 system-ui,sans-serif}.filters{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0}.filters input[type=search]{flex:1;min-width:210px;border:1px solid #76614e;border-radius:12px;padding:13px;background:#201f25;color:#eee3ce;font:14px system-ui,sans-serif}.filters label{font:13px system-ui,sans-serif;color:#c7b7a6}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.mini-card{border:1px solid #695037;border-radius:12px;background:#222027;padding:9px;color:inherit;text-align:left}.mini-card img{width:100%;aspect-ratio:2/3;object-fit:fill;border-radius:7px}.mini-card strong,.mini-card span{display:block;margin-top:7px}.mini-card strong{font-size:20px;font-weight:400}.mini-card span{color:#c6b8a5;font:11px/1.6 system-ui,sans-serif}.seasonal{margin-top:50px;border-top:1px solid #564432;padding-top:24px}footer{border-top:1px solid #41392f;max-width:900px;margin:auto;padding:18px 22px 50px;color:#a69c93;text-align:center;font:12px/1.7 system-ui,sans-serif}.footer-small{font-size:11px} @media(max-width:420px){main{padding:0 12px}.card-back{padding:12px}.back-section{font-size:13px}.card-front-caption{font-size:10px}}@media(prefers-reduced-motion:reduce){.card-inner{transition:none}}

.source-links{max-width:560px;margin:8px auto 18px;padding:14px 16px;border:1px solid #5f4a38;border-radius:12px;background:#211e23;color:#dac09a;font:12px/1.6 system-ui,sans-serif}.source-links strong{display:block;font-size:13px;margin-bottom:6px}.source-links a{display:block;color:#f0c98c;text-decoration:underline;text-underline-offset:3px;padding:3px 0;overflow-wrap:anywhere}.source-links a:focus-visible{outline:3px solid #efc77f;outline-offset:3px}

.actions button:disabled{opacity:.55;cursor:wait;background:#2b292d;color:#b4a89a}
