@font-face{font-family:Cinzel;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/cinzel-400.woff2) format("woff2")}@font-face{font-family:Cinzel;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/cinzel-600.woff2) format("woff2")}@font-face{font-family:Cinzel;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/cinzel-700.woff2) format("woff2")}:root{--bg:#0a0908;--panel:#15120e;--panel-2:#1d1812;--border:#2c261d;--text:#ece5d8;--muted:#9c9284;--accent:#c8a45a;--gold-hi:#e6c877;--gold-lo:#a67c2e;--gold-edge:#6b501f;--blood:#8e1b16;--danger:#d9534f;--success:#3c7d3c;--font-display:"Cinzel",Georgia,"Times New Roman",serif;--tap:44px}*{box-sizing:border-box}body,html{margin:0;padding:0;background-color:var(--bg);background-image:radial-gradient(120% 75% at 50% -10%,#201a12 0,#0a090800 60%),radial-gradient(140% 120% at 50% 115%,#14100b 0,#0a090800 55%);background-attachment:fixed;color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background-image:radial-gradient(130% 100% at 50% 50%,transparent 55%,rgba(0,0,0,.55) 100%),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='a'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='2' stitchTiles='stitch' type='fractalNoise'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)' opacity='.5'/%3E%3C/svg%3E");background-size:cover,140px 140px;opacity:.5;mix-blend-mode:soft-light}.app-shell{position:relative;z-index:1;max-width:480px;margin:0 auto;padding:1rem;min-height:100vh}h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:.06em}.panel{background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--border);border-radius:12px;padding:1rem;box-shadow:inset 0 1px #ffffff08,0 10px 24px #00000073}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.stat{background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--border);border-radius:10px;padding:.75rem;box-shadow:0 6px 16px #00000059}.stat__label{font-family:var(--font-display);color:var(--accent);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em}.stat__value{font-size:1.25rem;font-weight:700}.btn,button{min-height:var(--tap);border-radius:10px;border:1px solid var(--gold-edge);background:linear-gradient(180deg,var(--gold-hi),var(--gold-lo));color:#1a1206;font-weight:700;letter-spacing:.02em;padding:0 1rem;cursor:pointer;box-shadow:inset 0 1px #ffffff59,inset 0 -1px #0000004d,0 4px 12px #0006}.btn:hover,button:hover{filter:brightness(1.06)}.btn:active,button:active{filter:brightness(.94)}.btn:disabled,button:disabled{filter:saturate(.6) brightness(.85);cursor:not-allowed}.form{gap:1rem}.field,.form{display:flex;flex-direction:column}.field{gap:.35rem}.field>span{font-size:.85rem;color:var(--muted)}input,select,textarea{width:100%;min-height:var(--tap);background:#0d0b09;border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:16px;padding:0 .75rem}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #c8a45a40}.hint{color:var(--muted);font-size:.75rem}.error{color:var(--danger);margin:0;font-size:.9rem}.btn-block{width:100%;min-height:var(--tap)}.btn-block:disabled{cursor:not-allowed}.btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--border);min-height:var(--tap);padding:0 .85rem;box-shadow:none}.btn-ghost:hover{filter:none;color:var(--text);border-color:var(--accent)}.auth-head{margin:1.5rem 0 1rem;text-align:center}.auth-head h1{margin:0;font-size:2rem;letter-spacing:.18em;color:var(--accent);text-transform:uppercase;text-shadow:0 2px 10px rgba(0,0,0,.6)}.switch{text-align:center;color:var(--muted);margin-top:1rem}.switch a{color:var(--accent)}.muted{color:var(--muted)}.arrow-link:after,.back-link:before{display:inline-block;color:var(--accent);font-weight:400;line-height:1;transition:transform .18s ease}.arrow-link:after{content:"→";margin-left:.4em}.back-link:before{content:"←";margin-right:.4em}@media(hover:hover){.arrow-link:hover:after{transform:translate(.2em)}.back-link:hover:before{transform:translate(-.2em)}}@media(prefers-reduced-motion:reduce){.arrow-link:after,.back-link:before{transition:none}}@media(min-width:768px){.app-shell{max-width:640px}.app-shell--wide{max-width:940px}}
