@import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#080d18;--panel:#101827;--line:#243044;--muted:#8b9ab2;--accent:#f4dc46}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#eef2fa;font:14px 'DM Sans',sans-serif}button,input,select{font:inherit}button,.primary{cursor:pointer}button{color:inherit;background:#172133;border:1px solid var(--line);border-radius:8px;padding:10px 14px}button:hover{border-color:#64718a}a{color:inherit}aside{position:fixed;inset:0 auto 0 0;width:230px;padding:35px 22px;border-right:1px solid var(--line);background:#0b1220}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--accent);font-size:32px}.brand span{font-size:19px;font-weight:800;color:#fff}.brand small{display:block;font-size:8px;letter-spacing:1.8px;color:var(--muted);margin-top:6px}.navlabel{font-size:10px;letter-spacing:1.7px;color:#667691;margin:55px 12px 17px}nav button{display:block;width:100%;text-align:left;margin:8px 0;border:0;background:none;color:var(--muted);padding:13px}nav button.active{background:#f4dc4612;color:var(--accent);border:1px solid #f4dc4626}.aside-bottom{position:absolute;bottom:30px;font-size:12px;color:#bdc8da}.aside-bottom p{max-width:160px;color:var(--muted);font-size:11px;line-height:1.7}.dot{display:inline-block;width:6px;height:6px;background:#75d3ad;border-radius:50%;margin-right:7px}main{margin-left:230px;padding:0 38px;max-width:1800px}header{height:80px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:12px}.muted{color:var(--muted)}.connection{color:#b8c4d7;border:1px solid var(--line);padding:8px 12px;border-radius:30px}.heading{display:flex;justify-content:space-between;align-items:center;margin:38px 0 24px;gap:16px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--accent)}h1{font:800 34px Manrope,sans-serif;letter-spacing:-1px;margin:12px 0}p{color:var(--muted);line-height:1.7}.heading p{margin:0}.actions{display:flex;gap:10px;align-items:center}.primary{background:var(--accent);border-radius:8px;padding:12px 15px;color:#181a18;font-weight:700;white-space:nowrap}.notice{background:#172233;border:1px solid #2b3d58;border-radius:10px;padding:15px 18px;color:#a8bbd6;font-size:12px;line-height:1.7}.notice strong{color:#dde6f4;margin-right:5px}.filters{display:flex;align-items:center;justify-content:space-between;margin:25px 0 20px;gap:12px}.tabs{display:flex;gap:4px;background:#101827;border:1px solid var(--line);padding:4px;border-radius:9px}.tabs button{background:none;border:0;color:var(--muted);padding:8px 12px;font-size:12px}.tabs button.selected{background:#263246;color:white}#periodLabel{color:var(--muted);font-size:12px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.metrics article,.panel{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:23px}.metrics article:first-child{background:linear-gradient(120deg,#242a27,#111b25);border-color:#6a6536}.metrics label{font-size:10px;letter-spacing:1px;color:#a9b5c8}.metrics h2{font:700 36px Manrope,sans-serif;margin:20px 0 10px}.metrics article:first-child h2{color:var(--accent)}small{color:var(--muted);font-size:11px}.columns{display:grid;grid-template-columns:1.55fr 1fr;gap:18px;margin:20px 0}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-title h3{font:700 15px Manrope,sans-serif;margin:0}.tag{border:1px solid var(--line);padding:5px 8px;font-size:10px;color:var(--muted);border-radius:5px}.footnote{font-size:11px;color:var(--muted)}.empty{min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);gap:10px}.empty strong{color:#c0cce0;font-weight:500}.empty .symbol{font-size:35px;color:#465775}.progress{height:6px;border-radius:4px;background:#253146;overflow:hidden}.progress span{display:block;height:100%;background:var(--accent)}footer{display:flex;justify-content:space-between;color:#657590;letter-spacing:1px;font-size:9px;padding:28px 0}.table-tools{display:flex;gap:12px}input,select{background:#0b1220;border:1px solid #354057;padding:12px;color:#eef2fa;border-radius:8px}#search{flex:1;min-width:80px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);padding:18px 10px;border-bottom:1px solid var(--line)}td{padding:15px 10px;border-bottom:1px solid #202a3a;font-size:12px}td small{display:block;margin-top:6px}td input{width:105px;padding:8px}td a{color:#b3c5e3;font-size:11px}.pill{padding:5px 8px;border-radius:5px;font-size:10px;background:#293143;color:#b6c1d4;white-space:nowrap}.pill.confirmed{color:#99d9bc;background:#19392f}.pill.pending{color:#edcc7c;background:#3b3220}.rank{display:grid;grid-template-columns:25px 1fr auto;gap:12px;margin:20px 0;align-items:center}.rank b{color:var(--accent)}.rank small{display:block;margin-top:5px}.bars{height:200px;display:flex;align-items:flex-end;gap:5px;padding-top:20px;overflow:auto}.bar{flex:1;min-width:12px;background:#e5d55b;border-radius:4px 4px 0 0;position:relative}.bar:hover{background:#fff18c}.bar-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:10px}#toast{position:fixed;bottom:25px;right:25px;background:#e7ecf4;color:#101827;padding:15px 20px;border-radius:10px;max-width:440px;display:none;z-index:20}button:focus-visible,a:focus-visible,.primary:focus-within{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}@media(max-width:1100px){aside{width:190px}main{margin-left:190px;padding:0 22px}.metrics{grid-template-columns:repeat(2,1fr)}.heading{align-items:flex-start;flex-direction:column}}@media(max-width:700px){aside{position:static;width:auto;padding:18px;border-bottom:1px solid var(--line)}.brand{font-size:24px}.navlabel,.aside-bottom{display:none}nav{display:flex;gap:5px;margin-top:15px}nav button{font-size:11px;padding:10px}main{margin:0;padding:0 16px}header{height:60px;font-size:10px}.heading{margin-top:25px}h1{font-size:29px}.columns{grid-template-columns:1fr}.metrics{gap:10px}.metrics article{padding:16px}.metrics h2{font-size:29px}.filters{align-items:flex-start;flex-direction:column}.actions{flex-wrap:wrap}.table-tools{flex-direction:column}.connection{padding:6px}footer{gap:10px;line-height:1.8}}
.save-value{padding:8px;margin-left:7px;font-size:11px}

button:disabled{opacity:.45;cursor:not-allowed}.settings{margin-top:20px}.settings .table-tools{margin:12px 0}#purchaseSearch{flex:1;min-width:160px}.game-tag{color:#e9d968}#purchaseRows td{vertical-align:top}#purchaseRows .primary{font-size:11px;padding:10px}#purchaseRows strong{display:block;min-width:150px}

/* AstroBloxx — the store identity, adapted for daily operations. */

:root{--bg:#070b14;--panel:rgba(12,17,29,.94);--line:rgba(167,183,216,.13);--muted:#929fb6;--accent:#ffe500}
body{font-family:Geist,Arial,sans-serif;background:var(--bg);isolation:isolate}
body:before,body:after{content:"";position:fixed;pointer-events:none;z-index:-1}
body:before{inset:0;background:radial-gradient(ellipse at 15% 8%,rgba(26,83,125,.19),transparent 50%),radial-gradient(ellipse at 95% 75%,rgba(26,55,98,.13),transparent 55%)}
body:after{inset:-504px;background-image:radial-gradient(circle,rgba(189,210,242,.27) .8px,transparent 1.4px),radial-gradient(circle,rgba(255,229,0,.19) .7px,transparent 1.3px);background-size:42px 42px,72px 72px;background-position:0 0,23px 19px;animation:astro-drift 48s linear infinite;will-change:transform}
@keyframes astro-drift{to{transform:translate(504px,504px)}}
aside{width:240px;padding:30px 22px;background:rgba(8,11,19,.94);backdrop-filter:blur(18px);z-index:3}
.brand{gap:9px}.brand img{object-fit:contain;filter:drop-shadow(0 0 12px #ffbf0015)}.brand span{font-size:20px;letter-spacing:-.8px}.brand small{font-size:8px;letter-spacing:1.45px;color:#7f8aa0}
.navlabel{margin-top:48px;font-size:9px;color:#69768f}nav button{border-radius:12px;padding:14px 12px;font-weight:600;transition:background .18s,color .18s}
nav button:hover{background:#ffffff06;color:#fff}nav button.active{background:#ffe5000e;border:1px solid #ffe50028;color:var(--accent)}
.aside-bottom{left:24px;right:24px;border-top:1px solid var(--line);padding-top:20px}.aside-bottom p{max-width:180px}.dot{background:var(--accent);box-shadow:0 0 10px #ffe50044}
main{margin-left:240px;padding:0 36px;max-width:1840px}
header{height:82px;color:#d7dfed}.header-links{display:flex;gap:18px;align-items:center}.store-link{text-decoration:none;color:#b6c1d2;font-size:12px}.store-link:hover{color:var(--accent)}.connection{background:#10141e;border-color:#ffffff0e;font-size:11px}
.heading{margin:36px 0 28px}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:9px;letter-spacing:1.3px}.eyebrow:before{content:"✦";font-size:14px}h1{font:800 38px Geist,Arial,sans-serif;letter-spacing:-1.5px;margin:10px 0 9px}.heading p{font-size:13px}
button{background:#131923;border-color:#ffffff12;border-radius:10px;transition:background .18s,border-color .18s,box-shadow .18s}button:hover{background:#1b2331;border-color:#ffffff29}
button.primary,.primary{background:var(--accent);color:#101008;border:1px solid var(--accent);font-weight:750;border-radius:12px;box-shadow:0 4px 20px #ffe50008}
button.primary:hover{background:#ffed45;box-shadow:0 4px 22px #ffe50021;border-color:#ffed45}
.actions{gap:8px}.actions button{font-size:11px;padding:11px 13px}
.notice{background:rgba(13,22,35,.9);border:1px solid #263346;border-left:3px solid #536d8e;border-radius:12px;color:#94a6be;padding:14px 18px}.notice strong{color:#d7e2f2}
.filters{margin:26px 0 20px}.tabs{background:#0b101b;border-radius:12px;border-color:var(--line)}.tabs button{border-radius:8px}.tabs button.selected{background:#ffe50013;color:var(--accent)}
.metrics{gap:16px}.metrics article,.panel{border-radius:18px;background:var(--panel);box-shadow:0 8px 32px #00000012}
.metrics article{position:relative;overflow:hidden;min-height:170px;padding:23px 21px}.metrics article:first-child{background:linear-gradient(115deg,rgba(51,47,13,.72),rgba(14,19,26,.97));border-color:#ffe50035}
.metrics article:first-child:after{content:"";position:absolute;right:-14px;bottom:-19px;width:115px;height:115px;background:url('/astro-logo.png') center/contain no-repeat;opacity:.09;pointer-events:none}
.metrics label{font-size:9px;letter-spacing:1px;color:#a5b0c3}.metrics h2{font:750 38px Geist,Arial,sans-serif;letter-spacing:-1.5px;margin:20px 0 9px}.metrics small{font-size:10px;line-height:1.5;display:block}
.columns{gap:20px;margin:20px 0}.panel{padding:24px}.panel-title h3{font:650 15px Geist,Arial,sans-serif;letter-spacing:-.25px}.tag{border-radius:20px;background:#ffffff03}
.empty .symbol{color:#ffe50088;font-size:30px}.empty strong{color:#d0d9e8}.empty{font-size:12px;min-height:220px}.progress{background:#1b2331;border-radius:20px;height:5px}.progress span{box-shadow:0 0 15px #ffe50033}
input,select{background:#080e19;border-color:#293246;border-radius:10px;outline:none}input:focus,select:focus{border-color:#ffe50099;box-shadow:0 0 0 3px #ffe50009}input::placeholder{color:#65748d}
th{font-size:9px;letter-spacing:1.2px;color:#76869f}td{border-color:#ffffff09;padding-top:18px;padding-bottom:18px}tbody tr:hover{background:#ffffff02}td a{color:#a2b8d6}.pill{border-radius:20px;padding:5px 9px}.pill.pending{background:#ffe5000c;color:#e7d770}.pill.confirmed{background:#143127;color:#9addbb}.game-tag{color:var(--accent)}
.bar{background:linear-gradient(to top,#c6af00,#ffe500);border-radius:5px 5px 0 0}.rank{padding-bottom:14px;border-bottom:1px solid #ffffff08}.rank:last-child{border:0}.footnote{font-size:11px;line-height:1.8}.panel-title button{font-size:11px}
footer{font-size:8px;letter-spacing:1.4px;color:#66758e;padding:30px 0}
#toast{background:#131c2a;color:#f2f5fa;border:1px solid #ffe50050;box-shadow:0 12px 40px #0008;border-radius:14px}
@media(min-width:1500px){main{padding:0 48px}.heading{margin-top:44px}.metrics article{min-height:182px}.metrics h2{font-size:44px}}
@media(max-width:1150px){.heading{align-items:flex-start;flex-direction:column}.metrics{grid-template-columns:repeat(2,1fr)}aside{width:210px;padding:28px 17px}main{margin-left:210px;padding:0 24px}.brand span{font-size:18px}.brand img{width:37px;height:37px}}
@media(max-width:760px){aside{position:relative;width:auto;padding:17px 18px;background:#090d17eF;border-right:0}.brand img{width:38px;height:38px}.brand span{font-size:19px}.navlabel,.aside-bottom{display:none}nav{display:flex;gap:6px;margin-top:18px}nav button{font-size:12px;padding:12px 8px;margin:0;text-align:center}main{margin:0;padding:0 18px}header{height:62px;font-size:10px}.header-links{gap:10px}.store-link{font-size:10px}.connection{font-size:9px;padding:7px 9px}.heading{margin:26px 0 22px}h1{font-size:33px}.actions{flex-wrap:wrap}.actions button{padding:10px;font-size:10px}.metrics{gap:12px}.metrics article{padding:18px 14px;min-height:157px}.metrics h2{font-size:32px}.metrics label{font-size:8px}.columns{grid-template-columns:1fr}.panel{padding:18px;border-radius:15px}.table-tools{flex-direction:column}.filters{align-items:flex-start;flex-direction:column}.tabs button{font-size:11px;padding:9px 11px}.panel-title{flex-wrap:wrap}footer{line-height:1.8;gap:15px}#toast{left:18px;right:18px;bottom:18px;max-width:none}}

