@font-face{font-family:'Oswald';src:url('fonts/oswald-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Oswald';src:url('fonts/oswald-700.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('fonts/plex-sans-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('fonts/plex-sans-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('fonts/plex-mono-500.woff2') format('woff2');font-weight:500;font-display:swap}
:root{
--ink-1000:#000;--ink-900:#0A0A0A;--ink-800:#121212;--ink-700:#1A1A1A;--ink-600:#242424;--ink-500:#2E2E2E;
--paper-000:#FFF;--paper-050:#F7F6F4;--paper-100:#EDEBE7;--paper-200:#DCD9D3;--paper-300:#B5B2AC;--paper-400:#8A8781;
--gold-200:#EBD9A6;--gold-400:#D9BC6A;--gold-500:#C8A24A;
--red-500:#C0392B;--green-500:#4E9A5F;--amber-500:#D98324;
--border-subtle:#242424;--border-strong:#3A3A3A;
--belt-white:#F1EFE9;--belt-blue:#1F5FA8;--belt-purple:#6B3FA0;--belt-brown:#6B4A2F;--belt-black:#0A0A0A;
--belt-grey:#8A8781;--belt-yellow:#E0B322;--belt-orange:#D9701F;--belt-green:#3F7A46;
--display:'Oswald',sans-serif;--body:'IBM Plex Sans',sans-serif;--mono:'IBM Plex Mono',monospace;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0;background:var(--ink-900);color:var(--paper-100);font-family:var(--body);font-size:15px;line-height:1.65}
body{padding-bottom:env(safe-area-inset-bottom)}
button{font:inherit;cursor:pointer}
a{color:var(--gold-400);text-decoration:none}
a:hover{color:var(--gold-200)}
input{font:inherit}

.wrap{max-width:480px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column}
.scroll{flex:1;padding:20px 20px 96px}
.center{justify-content:center;padding:32px 20px}

h1,h2,h3{font-family:var(--display);font-weight:600;letter-spacing:.02em;text-transform:uppercase;margin:0;color:#fff}
h1{font-size:30px;line-height:1.1}
h2{font-size:24px;line-height:1.1}
h3{font-size:18px;line-height:1.15}
p{margin:0}
.eyebrow{font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--paper-400)}
.meta{font:500 11px/1.4 var(--mono);color:var(--paper-400)}
.muted{color:var(--paper-300)}
.body{font:400 14px/1.6 var(--body);color:var(--paper-300)}

.stack{display:flex;flex-direction:column}
.g6{gap:6px}.g8{gap:8px}.g10{gap:10px}.g12{gap:12px}.g14{gap:14px}.g18{gap:18px}
.row{display:flex;align-items:center;gap:10px}
.between{display:flex;justify-content:space-between;align-items:center;gap:10px}
.grow{flex:1;min-width:0}

.card{border:1px solid var(--border-subtle);border-radius:10px;background:var(--ink-800);padding:18px}
.card--accent{border-top:3px solid var(--gold-500)}
.card--alert{border-color:var(--amber-500)}
.card--danger{border-color:var(--red-500)}
.card--gold{border-color:var(--gold-500)}
.hair{border-top:1px solid var(--border-subtle);padding-top:10px;margin-top:2px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border-radius:4px;border:1px solid transparent;font:600 13px/1 var(--display);letter-spacing:.06em;text-transform:uppercase;transition:background .14s,border-color .14s,color .14s,transform .08s}
.btn:active{transform:scale(.985)}
.btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(200,162,74,.55)}
.btn--primary{background:var(--gold-500);color:var(--ink-900)}
.btn--primary:hover{background:var(--gold-400)}
.btn--outline{background:transparent;border-color:var(--border-strong);color:var(--paper-100)}
.btn--outline:hover{border-color:var(--gold-500);color:var(--gold-400)}
.btn--ghost{background:transparent;color:var(--paper-300)}
.btn--ghost:hover{background:var(--ink-700);color:var(--paper-100)}
.btn--sm{height:34px;padding:0 12px;font-size:11px}
.btn--block{width:100%}
.btn[disabled]{opacity:.45;pointer-events:none}
.btn--icon{width:40px;height:40px;padding:0;flex:0 0 40px}

.field{display:flex;flex-direction:column;gap:8px}
.input{height:44px;width:100%;padding:0 14px;border-radius:4px;border:1px solid var(--border-strong);background:var(--ink-900);color:var(--paper-050);transition:border-color .14s}
.input:focus{outline:none;border-color:var(--gold-500);box-shadow:0 0 0 3px rgba(200,162,74,.55)}
.input::placeholder{color:var(--paper-400)}

.badge{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:2px;font:600 11px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.badge--success{background:var(--green-500);color:#fff}
.badge--warning{background:var(--amber-500);color:var(--ink-900)}
.badge--danger{background:var(--red-500);color:#fff}
.badge--outline{border:1px solid var(--border-strong);color:var(--paper-300)}
.badge--gold{background:var(--gold-500);color:var(--ink-900)}

.belt{display:inline-flex;align-items:center;gap:8px;height:24px;padding:0 4px 0 10px;border-radius:999px;font:600 11px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;color:#fff}
.belt--light{color:var(--ink-900)}
.belt__stripes{display:flex;gap:3px;padding-right:6px}
.belt__s{width:3px;height:12px;background:#F1EFE9;border-radius:1px}
.belt__s--off{opacity:.28}

.tabs{display:flex;gap:4px;border:1px solid var(--border-subtle);border-radius:6px;padding:3px;background:var(--ink-800)}
.tabs button{flex:1;border:0;background:transparent;color:var(--paper-400);padding:9px 4px;border-radius:4px;font:600 11px/1 var(--display);letter-spacing:.06em;text-transform:uppercase}
.tabs button[aria-selected="true"]{background:var(--ink-600);color:#fff}

.nav{position:fixed;left:0;right:0;bottom:0;display:flex;background:var(--ink-1000);border-top:1px solid var(--border-subtle);padding-bottom:env(safe-area-inset-bottom);z-index:20}
.nav__inner{max-width:480px;margin:0 auto;display:flex;width:100%}
.nav button{flex:1;background:none;border:0;border-top:2px solid transparent;margin-top:-1px;padding:10px 0 12px;display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--paper-400);font:500 9px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.nav button[aria-current="page"]{border-top-color:var(--gold-500);color:var(--gold-400)}

.ico{display:inline-block;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;flex:0 0 auto}

.stat{flex:1;border:1px solid var(--border-subtle);border-radius:10px;background:var(--ink-800);padding:14px;display:flex;flex-direction:column;gap:5px}
.stat b{font:700 22px/1 var(--display);color:#fff;font-weight:700}
.stat span{font:500 11px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--paper-400)}

.bars{display:flex;align-items:flex-end;gap:7px;height:84px}
.bars i{flex:1;background:var(--ink-500);border-radius:2px;display:block}
.bars i.on{background:var(--gold-500)}

.rail{height:6px;border-radius:999px;background:var(--ink-500);overflow:hidden}
.rail i{display:block;height:6px;background:var(--gold-500)}

.list button,.list .item{width:100%;text-align:left;background:none;border:0;border-top:1px solid var(--border-subtle);padding:11px 0;display:flex;justify-content:space-between;align-items:center;gap:10px;color:inherit}

.strip{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;-ms-overflow-style:none;scrollbar-width:none}
.strip::-webkit-scrollbar{display:none}
.strip button{flex:0 0 52px;background:var(--ink-800);border:1px solid var(--border-subtle);border-radius:8px;padding:8px 0;display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--paper-400)}
.strip button b{font:500 9px/1 var(--mono);letter-spacing:.08em}
.strip button i{font:600 16px/1 var(--display);font-style:normal;color:var(--paper-200)}
.strip button u{font:500 9px/1 var(--mono);text-decoration:none;color:var(--paper-400)}
.strip button[aria-selected="true"]{border-color:var(--gold-500);background:var(--ink-700)}
.strip button[aria-selected="true"] i{color:#fff}
.strip button[aria-selected="true"] u{color:var(--gold-400)}

.toast{position:fixed;left:16px;right:16px;bottom:84px;max-width:448px;margin:0 auto;background:var(--ink-600);border:1px solid var(--border-strong);border-radius:8px;padding:13px 15px;display:flex;gap:10px;align-items:center;z-index:40;box-shadow:0 10px 30px rgba(0,0,0,.6);animation:rise .2s cubic-bezier(.16,1,.3,1)}
@keyframes rise{from{opacity:0;transform:translateY(8px) scale(.985)}}
.toast--error{border-color:var(--red-500)}

.veil{position:fixed;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:50;padding:20px}
.sheet{width:100%;max-width:400px;background:var(--ink-800);border:1px solid var(--border-strong);border-radius:10px;padding:20px;display:flex;flex-direction:column;gap:14px}

.spin{width:18px;height:18px;border:2px solid var(--ink-500);border-top-color:var(--gold-500);border-radius:999px;animation:sp .7s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}
.loading{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--paper-400);font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
