:root{--midnight:#0B0B12;--ink:#15151F;--ink2:#1D1D2B;--gold:#C9A24A;--gold-soft:#E3C98A;--burgundy:#6E1F2E;--burgundy-2:#8E2C3F;--indigo:#2B2F6B;--parchment:#EFE6D0;--muted:#B9B2A0;--ok:#7FB77E;--warn:#E0B15A}
*{box-sizing:border-box}html,body{margin:0;background:var(--midnight);color:var(--parchment);font:16px/1.55 Georgia,"Times New Roman",serif}
a{color:var(--gold-soft)}button,.btn{font:inherit;cursor:pointer;border-radius:6px;border:1px solid var(--gold);background:transparent;color:var(--gold-soft);padding:.55rem 1rem;text-decoration:none;display:inline-block}
.btn.primary{background:var(--gold);color:var(--midnight);border-color:var(--gold);font-weight:bold}.btn.small{padding:.3rem .6rem;font-size:.85rem}
.btn:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold-soft);outline-offset:2px}
header.top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1.4rem;border-bottom:1px solid #2a2a3a;background:var(--ink);position:sticky;top:0;z-index:5}
.brand{letter-spacing:.22em;font-size:.95rem;color:var(--gold);text-decoration:none;font-weight:bold}
nav.main a{color:var(--parchment);text-decoration:none;margin-left:1.1rem;font-size:.92rem;font-family:system-ui,sans-serif}nav.main a.on{color:var(--gold)}
.banner{background:var(--burgundy);color:var(--parchment);text-align:center;font:600 .82rem system-ui,sans-serif;padding:.35rem;letter-spacing:.04em}
main{max-width:1120px;margin:0 auto;padding:1.6rem 1.2rem 6rem}
h1,h2,h3{color:var(--gold);font-weight:normal;letter-spacing:.02em}h1{font-size:2.3rem;margin:.2rem 0}
.hero{text-align:center;padding:3rem 1rem 2rem;background:radial-gradient(ellipse at top,#1f2150 0%,transparent 60%)}
.tag{color:var(--muted);font-style:italic;font-size:1.15rem}
.card{background:var(--ink2);border:1px solid #33334a;border-radius:10px;padding:1.1rem 1.2rem}
.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.tcard{display:flex;flex-direction:column;gap:.35rem;border-top:3px solid var(--indigo);text-decoration:none;color:inherit}.tcard:hover{border-color:var(--gold)}
.tcard .val{font-size:1.35rem;color:var(--parchment)}.tcard .none{color:var(--muted);font-style:italic}
.badge{font:600 .7rem system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;padding:.15rem .45rem;border-radius:4px;display:inline-block}
.b-ver{background:#1f3a24;color:#bfe6bd}.b-pre{background:#4a3a12;color:#f3dca0}.b-not{background:#33334a;color:#c9c6d6}.b-sample{background:var(--burgundy-2);color:#fff}
.sample{position:relative}.sample::after{content:"SAMPLE";position:absolute;top:.5rem;right:.6rem;font:700 .65rem system-ui,sans-serif;letter-spacing:.12em;color:#fff;background:var(--burgundy-2);padding:.1rem .4rem;border-radius:3px}
form.profile{display:grid;gap:1rem;grid-template-columns:1fr 1fr}form.profile .full{grid-column:1/-1}
label{display:block;font:600 .85rem system-ui,sans-serif;color:var(--gold-soft);margin-bottom:.25rem}
input,select{width:100%;padding:.6rem;border-radius:6px;border:1px solid #44445c;background:#0f0f18;color:var(--parchment);font:inherit}
.check{display:flex;gap:.5rem;align-items:center}.check input{width:auto}
.muted{color:var(--muted)}.small{font-size:.86rem}.mono{font-family:ui-monospace,Menlo,monospace;font-size:.86rem}
.row{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}
.layer{border-left:3px solid var(--gold);padding-left:.8rem;margin:.8rem 0}.layer.hist{border-color:var(--indigo)}.layer.syn{border-color:var(--burgundy-2)}.layer.ref{border-color:var(--muted)}
details{background:#12121c;border:1px solid #2c2c40;border-radius:8px;padding:.6rem .9rem;margin:.6rem 0}summary{cursor:pointer;color:var(--gold-soft)}
.wheel{width:100%;max-width:300px;aspect-ratio:1;display:block;margin:auto}
.tarot{display:flex;gap:1rem;flex-wrap:wrap}.tcardx{width:150px;min-height:230px;background:linear-gradient(160deg,var(--indigo),#151738);border:2px solid var(--gold);border-radius:10px;padding:.7rem;text-align:center}
.tcardx.rev .nm{transform:rotate(180deg)}
table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid #2c2c40;padding:.4rem;text-align:left;vertical-align:top;font-size:.9rem}
.tabbar{display:none}
@media (max-width:760px){nav.main{display:none}h1{font-size:1.7rem}form.profile{grid-template-columns:1fr}
 .tabbar{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--ink);border-top:1px solid #333;justify-content:space-around;padding:.45rem 0;z-index:9}
 .tabbar a{color:var(--parchment);text-decoration:none;font:600 .72rem system-ui,sans-serif;text-align:center}.tabbar a.on{color:var(--gold)}}
