/* Yappers Payout · neon grid look.
   Layout: member page = full-width glowing hero (grid floor + identity), then cards, projection, stream + side column, market.
   Command center = sticky bar + run editor with sticky split panel. One dark theme by choice. */
:root{
  color-scheme:dark;
  --bg:#020509; --surface:rgba(5,18,27,.94); --surface-0:#03090F; --surface-2:#0A1A24; --line:rgba(63,245,255,.18); --line-2:rgba(63,245,255,.42);
  --ink:#D6F3F8; --bright:#F0FEFF; --muted:#8FC6CF; --dim:#5FA7B3;
  --accent:#3FF5FF; --accent-ink:#020509; --accent-soft:rgba(63,245,255,.10); --glow:rgba(63,245,255,.55);
  --gold:#E9FDFF; --gold-ink:#020509; --gold-soft:rgba(255,138,31,.12);
  --orange:#FF8A1F; --orange-soft:rgba(255,138,31,.12); --orange-glow:rgba(255,138,31,.55); --orange-text:#FFB46E;
  --credit:#3FF5FF; --credit-soft:rgba(63,245,255,.10);
  --debit:#FF8A1F; --debit-soft:rgba(255,138,31,.12);
  --warn:#FF8A1F; --warn-soft:rgba(255,138,31,.12);
  --display:"Orbitron","Eurostile","Segoe UI",system-ui,sans-serif;
  --body:"Rajdhani","Segoe UI",system-ui,sans-serif;
  --mono:"Share Tech Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --r:3px;
}
*{box-sizing:border-box}
html{height:100%}
body{margin:0;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);color:var(--ink);font-family:var(--body);font-size:17px;font-weight:500;line-height:1.4;background:radial-gradient(1200px 500px at 50% -5%,rgba(63,245,255,.07),transparent 65%),var(--bg);background-color:var(--bg);background-attachment:fixed;min-height:100%}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg)}
[hidden]{display:none!important}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--accent)}
.wrap{max-width:1200px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.z{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--bright);white-space:nowrap;text-shadow:0 0 10px rgba(63,245,255,.35)}
.amt{font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.amt.pos{color:var(--credit);text-shadow:0 0 10px rgba(63,245,255,.5)}
.amt.neg{color:var(--orange);text-shadow:0 0 10px rgba(255,138,31,.45)}
.muted{color:var(--muted)}
h1,h2,h3{margin:0;text-wrap:balance}
h1.page{font-family:var(--display);font-weight:900;letter-spacing:.1em;text-transform:uppercase;font-size:clamp(1.5rem,4.2vw,2.2rem);line-height:1.1;color:var(--bright);text-shadow:0 0 8px var(--accent),0 0 26px var(--glow)}
h2{font-family:var(--display);font-weight:800;font-size:.95rem;text-transform:uppercase;letter-spacing:.16em;color:var(--bright)}
.eyebrow{font-family:var(--display);font-size:.66rem;text-transform:uppercase;letter-spacing:.22em;color:var(--dim);font-weight:700}
.sub{font-family:var(--mono);font-size:.8rem;text-transform:uppercase;letter-spacing:.2em;color:var(--dim);margin-top:6px}

/* command center bar */
.bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:9;background:rgba(2,5,9,.9);backdrop-filter:blur(8px);border-bottom:1px solid var(--line-2);box-shadow:0 1px 18px rgba(63,245,255,.18)}
.bar .wrap{display:flex;align-items:center;gap:14px;padding-block:10px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--display);font-weight:900;font-size:.95rem;letter-spacing:.18em;color:var(--bright);text-shadow:0 0 10px var(--glow);text-transform:uppercase}
.brand .sl{color:var(--accent)}
.coin{width:24px;height:24px;flex:none;background:none;border:2px solid var(--accent);transform:rotate(45deg);box-shadow:0 0 12px var(--glow),inset 0 0 8px var(--glow)}
.tag{font-family:var(--mono);font-size:.68rem;padding:2px 6px;border:1px solid var(--line-2);color:var(--accent);letter-spacing:.1em;text-shadow:none}
.nav{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap}
.nav button,.nav a{border:1px solid var(--line-2);background:none;padding:8px 14px;cursor:pointer;color:var(--accent);font-family:var(--display);font-weight:700;font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;text-decoration:none;border-radius:var(--r)}
.nav button:hover,.nav a:hover{border-color:var(--accent);box-shadow:0 0 12px rgba(63,245,255,.3)}
.nav button[aria-current="page"]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:0 0 16px var(--glow)}
.save{font-family:var(--mono);font-size:.75rem;color:var(--muted);display:flex;align-items:center;gap:6px;white-space:nowrap;text-transform:uppercase;letter-spacing:.08em}
.save i{width:8px;height:8px;background:var(--accent);box-shadow:0 0 8px var(--accent)}
.save.pending i{background:var(--orange);box-shadow:0 0 8px var(--orange)}.save.err i{background:#FF4D5E;box-shadow:0 0 8px #FF4D5E}

main{padding-block:24px 64px;display:grid;gap:22px}
main>*{min-width:0}
.banner{padding:10px 14px;border:1px solid var(--orange);background:var(--orange-soft);color:var(--orange-text);font-size:.95rem;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.banner.info{border-color:var(--line-2);background:var(--accent-soft);color:var(--accent)}
.banner .grow{flex:1;min-width:200px}

/* controls */
.btn{border:1px solid var(--line-2);background:transparent;padding:9px 14px;cursor:pointer;font-family:var(--display);font-weight:700;white-space:nowrap;font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--accent);border-radius:var(--r)}
.btn:hover{border-color:var(--accent);box-shadow:0 0 14px rgba(63,245,255,.3)}
.btn:disabled{opacity:.5;cursor:default}
.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:0 0 16px var(--glow)}
.btn.gold,.btn.on{border-color:var(--orange);color:var(--orange);background:var(--orange-soft)}
.btn.gold:hover,.btn.on:hover{box-shadow:0 0 14px var(--orange-glow)}
.btn.danger{color:#FF7B88;border-color:rgba(255,77,94,.5)}
.btn.armed{background:#FF4D5E;border-color:#FF4D5E;color:#16020A}
.btn.sm{padding:6px 10px;font-size:.62rem}
.icon-btn{border:0;background:none;color:var(--dim);cursor:pointer;width:30px;height:30px;font-size:1.05rem;line-height:1;flex:none;border-radius:var(--r)}
.icon-btn:hover{background:rgba(255,77,94,.12);color:#FF7B88}
.icon-btn.armed{background:#FF4D5E;color:#16020A}
input[type=text],input[type=date],input[type=time],input[type=url],input[type=password],input:not([type]),select,textarea{background:rgba(3,9,15,.9);border:1px solid var(--line-2);padding:8px 10px;min-width:0;border-radius:var(--r);color:var(--bright)}
input::placeholder,textarea::placeholder{color:var(--dim)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 0 16px rgba(63,245,255,.3)}
button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
select option{background:#06121A;color:var(--ink)}
input.cell{border-color:transparent;background:transparent;padding:6px 8px;width:100%}
input.cell:hover{border-color:var(--line)}
input.cell:focus{border-color:var(--accent);background:rgba(3,9,15,.9)}
input.price{text-align:right;font-family:var(--mono)}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.grow{flex:1;min-width:0}
.quick{display:flex;gap:8px;flex-wrap:wrap}
.quick>input{flex:1;min-width:180px}
.hint{font-size:.88rem;color:var(--muted);margin-top:8px}
.hint code{font-family:var(--mono);border:1px solid var(--line);padding:0 5px;color:var(--accent)}

/* panels */
.panel{position:relative;background:linear-gradient(180deg,rgba(7,24,34,.94),rgba(2,8,13,.96));border:1px solid var(--line-2);border-radius:var(--r);box-shadow:inset 0 0 40px rgba(63,245,255,.04)}
.panel::before{content:"";position:absolute;top:-1px;left:20px;width:70px;height:2px;background:var(--accent);box-shadow:0 0 10px var(--accent)}
.panel.orange::before{background:var(--orange);box-shadow:0 0 10px var(--orange)}
.panel.lit{border-color:var(--accent);box-shadow:0 0 0 1px rgba(63,245,255,.12),0 0 30px rgba(63,245,255,.22),inset 0 0 40px rgba(63,245,255,.07)}
.panel-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:16px 18px 10px;flex-wrap:wrap}
.panel-b{padding:0 18px 18px}
.empty{padding:22px 8px;color:var(--muted);text-align:center;font-family:var(--mono);font-size:.9rem}
.pill{font-family:var(--mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;padding:2px 8px;white-space:nowrap;border:1px solid currentColor;display:inline-block;border-radius:var(--r)}
.pill.open,.pill.paid,.pill.settled,.pill.in{color:var(--accent)}
.pill.selling,.pill.owed,.pill.count{color:var(--orange)}
.pill.unsold{color:var(--dim)}
.pill.in{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.chip{font-family:var(--mono);font-size:.75rem;padding:3px 8px;border:1px solid var(--line-2);color:var(--muted);white-space:nowrap;border-radius:var(--r)}
.chip b{color:var(--accent);font-weight:400}

/* item tiles: own design, no game art */
.tile{width:30px;height:30px;border:1px solid var(--line-2);display:inline-grid;place-items:center;flex:none;border-radius:2px}
.tile i{width:9px;height:9px;background:var(--accent);transform:rotate(45deg);box-shadow:0 0 8px var(--accent)}
.tile.card{width:24px;height:32px;border:2px solid var(--orange);background:linear-gradient(160deg,rgba(255,138,31,.35),rgba(255,138,31,.05));box-shadow:0 0 14px var(--orange-glow)}
.tile.card i{background:#FFD3A6;box-shadow:0 0 8px var(--orange)}
.iname{display:flex;align-items:center;gap:10px;min-width:0}
.iname .n{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:.74rem;letter-spacing:.06em;color:var(--bright);overflow-wrap:anywhere;line-height:1.35}
.rms{font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);text-decoration:none;border:1px solid var(--line);padding:3px 8px;white-space:nowrap;border-radius:var(--r)}
.rms:hover{color:var(--accent);border-color:var(--accent)}
.dblink{color:var(--dim);text-decoration:none;font-size:.8rem;padding:4px 6px;flex:none}
.dblink:hover{color:var(--accent)}

/* tables */
.tablewrap{overflow-x:auto}
table{width:100%;border-collapse:collapse}
th{font-family:var(--display);font-size:.6rem;text-transform:uppercase;letter-spacing:.18em;color:var(--dim);font-weight:700;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}
td{padding:10px 12px;border-bottom:1px dashed var(--line);vertical-align:middle}
tbody tr:last-child td{border-bottom:0}
th.r,td.r{text-align:right}
table.edit td{padding:2px 4px}
table.edit td.tot{padding:0 8px;white-space:nowrap}

/* command center */
.cols{display:grid;grid-template-columns:minmax(0,1fr) 410px;gap:22px;align-items:start}
.cols>.stack{display:grid;gap:22px;min-width:0}
.aside{position:sticky;top:calc(env(safe-area-inset-top,0px) + 74px)}
@media (max-width:920px){.cols{grid-template-columns:minmax(0,1fr)}.aside{position:static}}
.runhead{display:grid;gap:10px}
.runhead .title{font-family:var(--display);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:1.6rem;border:1px solid transparent;background:transparent;padding:2px 6px;margin-left:-7px;width:100%;color:var(--bright);text-shadow:0 0 14px var(--glow)}
.runhead .title:hover{border-color:var(--line)}
.back{border:0;background:none;color:var(--accent);cursor:pointer;padding:0;font-family:var(--mono);justify-self:start;font-size:.85rem;text-transform:uppercase;letter-spacing:.12em}
.field{display:grid;gap:4px}
.field>span{font-family:var(--display);font-size:.58rem;text-transform:uppercase;letter-spacing:.18em;color:var(--dim);font-weight:700}
.stats{display:flex;gap:34px;flex-wrap:wrap}
.stat .v{font-family:var(--mono);font-size:1.4rem;color:var(--bright)}
.runlist{display:grid;gap:8px}
.runrow{display:grid;grid-template-columns:110px minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:12px 16px;background:var(--surface);border:1px solid var(--line);cursor:pointer;text-align:left;width:100%;border-radius:var(--r)}
.runrow:hover{border-color:var(--accent);box-shadow:0 0 18px rgba(63,245,255,.18)}
.runrow .nm{font-family:var(--display);font-weight:700;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--bright)}
.runrow .s{font-size:.9rem;color:var(--muted)}
@media (max-width:640px){.runrow{grid-template-columns:1fr auto}.runrow .date{grid-column:1/-1;order:-1}}
.ledger{display:grid;gap:7px;font-size:1rem}
.ledger .l{display:flex;justify-content:space-between;gap:10px;align-items:center}
.ledger .net{border-top:1px solid var(--line);padding-top:9px;margin-top:3px;font-family:var(--display);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--bright)}
.ledger select{padding:3px 6px;font-size:.85rem}
.mrow{display:grid;grid-template-columns:minmax(84px,1fr) 44px auto auto 24px;gap:8px;align-items:center;padding:7px 0;border-bottom:1px dashed var(--line)}
.mrow:last-child{border-bottom:0}
.mrow .who{font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--bright)}
.mrow .who small{display:block;font-weight:500;color:var(--muted);font-size:.78rem}
.mrow input.share{width:44px;text-align:center;padding:5px 4px;font-family:var(--mono)}
.chk{display:flex;align-items:center;gap:5px;font-family:var(--mono);font-size:.75rem;color:var(--muted);cursor:pointer;text-transform:uppercase;letter-spacing:.08em}
.chk input{accent-color:var(--accent);width:16px;height:16px}
.paidcell{display:grid;justify-items:end;gap:1px}
.paidcell small{font-size:.72rem;color:var(--orange);font-family:var(--mono)}
.note{font-size:.88rem;color:var(--muted);margin-top:10px}
.addm{display:grid;gap:8px;margin-top:12px}
.keybox{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px 14px;border:1px solid var(--orange);background:var(--orange-soft);box-shadow:0 0 22px rgba(255,138,31,.2)}
.keybox code{font-family:var(--mono);font-size:1.15rem;color:var(--orange-text);letter-spacing:.06em;user-select:all;text-shadow:0 0 10px var(--orange-glow)}
.instchips{display:flex;gap:8px;flex-wrap:wrap}
.instchips span{display:inline-flex;align-items:center;gap:2px;padding:3px 4px 3px 10px;border:1px solid var(--line-2);font-size:.95rem;border-radius:var(--r)}
.sold-on{font-family:var(--mono);font-size:.72rem;color:var(--muted);display:flex;align-items:center;gap:4px;white-space:nowrap;text-transform:uppercase}
.sold-on input{padding:2px 4px;font-size:.75rem;width:124px}
@media (max-width:600px){
  table.edit,table.edit tbody,table.edit tr,table.edit td{display:block}
  table.edit thead{display:none}
  table.edit tr{display:grid;grid-template-columns:58px minmax(0,1fr) auto 34px;grid-template-areas:"name name name x" "qty price tot ." "st st st st";gap:2px 6px;padding:8px 0;border-bottom:1px dashed var(--line);align-items:center}
  table.edit td{border:0}
  table.edit td.c-name{grid-area:name}table.edit td.c-qty{grid-area:qty}table.edit td.c-x{grid-area:x}
  table.edit td.c-price{grid-area:price;min-width:0}table.edit td.tot{grid-area:tot}table.edit td.st{grid-area:st;justify-self:start;padding-left:8px}table.edit td.st:empty{display:none}
}

/* schedule */
.evlist{display:grid;gap:12px;padding:0 18px 18px}
.ev{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--line-2);border-left:3px solid var(--accent);background:rgba(3,9,15,.8);border-radius:var(--r)}
.ev.mine{border-color:var(--accent);box-shadow:0 0 22px rgba(63,245,255,.18)}
.ev.past{border-left-color:var(--dim);opacity:.7}
.dblock{display:grid;justify-items:center;padding:6px 4px;border:1px solid var(--line-2);line-height:1.1}
.dblock .m{font-family:var(--mono);font-size:.72rem;color:var(--accent);letter-spacing:.12em}
.dblock .d{font-family:var(--display);font-weight:800;font-size:1.25rem;color:var(--bright)}
.dblock .w{font-family:var(--mono);font-size:.68rem;color:var(--dim);text-transform:uppercase}
.ev .t{font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:.95rem;color:var(--bright);overflow-wrap:anywhere}
.ev .meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px;align-items:center}
.ev .acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.ev input.cell.t{padding:2px 6px}
.party-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;align-items:center}
.party-chips .pc{display:inline-flex;align-items:center;gap:2px;padding:1px 2px 1px 9px;border:1px solid var(--line-2);font-size:.88rem;font-weight:600}
.party-chips .pc .icon-btn{width:22px;height:22px;font-size:.85rem}
.party-chips select{padding:3px 6px;font-size:.85rem}
@media (max-width:640px){.ev{grid-template-columns:56px minmax(0,1fr)}.ev .acts{grid-column:1/-1;justify-content:flex-start}}

/* ===== member page ===== */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line-2);background:radial-gradient(900px 240px at 50% 100%,rgba(63,245,255,.2),transparent 70%),linear-gradient(180deg,#020509,#04101A)}
.gridfloor{position:absolute;left:-30%;right:-30%;bottom:-30px;height:240px;background-image:linear-gradient(rgba(63,245,255,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(63,245,255,.5) 1px,transparent 1px);background-size:64px 64px;transform:perspective(420px) rotateX(64deg);transform-origin:50% 100%;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 65%);mask-image:linear-gradient(180deg,transparent 0%,#000 65%);pointer-events:none}
.horizon{position:absolute;left:0;right:0;bottom:205px;height:2px;background:linear-gradient(90deg,transparent,var(--accent) 30%,#fff 50%,var(--accent) 70%,transparent);box-shadow:0 0 24px 4px var(--glow);opacity:.75;pointer-events:none}
.hero.short .gridfloor{height:150px}.hero.short .horizon{bottom:125px}
.mtop{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding-block:18px}
.mtop .brand{flex-grow:1}
.brandsub{display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.22em;color:var(--dim);text-shadow:none;font-weight:400;margin-top:2px}
.mnav{display:flex;gap:6px;flex-wrap:wrap}
.mnav button{border:1px solid var(--line-2);background:rgba(2,5,9,.6);padding:9px 14px;cursor:pointer;font-family:var(--display);font-weight:700;font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;color:var(--accent);border-radius:var(--r)}
.mnav button:hover{border-color:var(--accent);box-shadow:0 0 12px rgba(63,245,255,.3)}
.mnav button[aria-current="page"]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:0 0 18px var(--glow)}
.mnav button.out{color:var(--dim);border-color:transparent;background:none}
.ident{position:relative;text-align:center;display:grid;justify-items:center;gap:10px;padding:34px 0 120px}
.hero.short .ident{padding:18px 0 80px}
.ident .hi{font-family:var(--mono);font-size:.92rem;letter-spacing:.3em;color:var(--accent);text-transform:uppercase}
.ident .nm{font-family:var(--display);font-weight:900;font-size:clamp(2.2rem,7.5vw,4.6rem);letter-spacing:.08em;text-transform:uppercase;color:var(--bright);text-shadow:0 0 8px var(--accent),0 0 28px rgba(63,245,255,.8),0 0 60px rgba(63,245,255,.4);overflow-wrap:anywhere;line-height:1.05}
.ident .chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.ident .chips span{font-family:var(--mono);font-size:.85rem;padding:3px 12px;border:1px solid var(--line-2);color:var(--accent);background:rgba(2,5,9,.5)}
.ident .chips span.mvp{border-color:var(--orange);color:var(--orange);box-shadow:0 0 12px var(--orange-glow)}
.mbody{margin-top:-64px;position:relative;padding-bottom:40px}
.hero.short+.mbody{margin-top:-40px}
.bigcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:22px}
.bigcard{padding:24px 26px}
.bigcard .cap{font-family:var(--display);font-size:.62rem;letter-spacing:.24em;color:var(--dim);font-weight:700;text-transform:uppercase}
.bigcard .big{font-family:var(--display);font-weight:800;font-size:clamp(1.9rem,5.5vw,3rem);color:var(--bright);font-variant-numeric:tabular-nums;margin:10px 0 6px;overflow-wrap:anywhere;line-height:1.1}
.bigcard.lit .big{text-shadow:0 0 18px rgba(63,245,255,.7)}
.bigcard .big small{font-size:.5em;color:var(--accent)}
.bigcard.orange .big small{color:var(--orange)}
.bigcard .foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-family:var(--mono);font-size:.85rem;color:var(--muted)}
.bigcard .foot .up{color:var(--accent)}
.proj{display:flex;flex-wrap:wrap;gap:26px;align-items:center;padding:22px 24px}
.proj .lead{flex:1 1 260px}
.proj .lead p{margin:6px 0 14px;color:var(--muted);max-width:46ch}
.bars{flex:1 1 420px;display:grid;gap:12px;font-family:var(--mono)}
.barrow{display:grid;grid-template-columns:56px minmax(0,1fr) 128px;gap:12px;align-items:center}
.barrow .track{height:8px;background:rgba(63,245,255,.1)}
.barrow .fill{display:block;height:100%;background:#2A9DA6}
.barrow.avg .track{height:12px}
.barrow.avg .fill{background:var(--accent);box-shadow:0 0 14px var(--accent)}
.barrow.high .track{background:rgba(255,138,31,.1)}
.barrow.high .fill{background:var(--orange);box-shadow:0 0 10px var(--orange-glow)}
.barrow .lbl{color:var(--dim)}.barrow.avg .lbl{color:var(--accent)}.barrow.high .lbl{color:var(--orange)}
.barrow .val{text-align:right}.barrow.avg .val{font-size:1.2rem;color:var(--bright);text-shadow:0 0 10px var(--glow)}.barrow.high .val{color:var(--orange-text)}
@media (max-width:520px){.barrow{grid-template-columns:44px minmax(0,1fr) 104px}}
.split{display:flex;flex-wrap:wrap;gap:22px;align-items:flex-start}
.split>.mainc{flex:999 1 560px;min-width:0}
.split>.side{flex:1 1 300px;min-width:0;display:grid;gap:16px}
.filters{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end;padding:14px 18px;border-bottom:1px solid var(--line)}
.filters .field select,.filters .field input{min-width:130px}
.stream{padding:4px 18px 12px;font-family:var(--mono);font-size:.95rem}
.srow{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:14px;align-items:center;padding:11px 0;border-bottom:1px dashed var(--line)}
.srow:last-child{border-bottom:0}
.srow .d{color:var(--dim)}
.srow .w{min-width:0;color:var(--ink)}
.srow .t.loot{color:var(--accent)}.srow .t.cost,.srow .t.payout{color:var(--orange)}
.srow .c{color:var(--dim)}
.srow .amt{font-size:1.05rem}
@media (max-width:600px){.srow{grid-template-columns:minmax(0,1fr) auto}.srow .d{grid-column:1/-1;font-size:.8rem}}
.deploy{padding:18px}
.deploy .top{display:flex;justify-content:space-between;gap:10px;font-family:var(--mono);font-size:.82rem;color:var(--accent);flex-wrap:wrap}
.deploy .top .en{background:var(--accent);color:var(--accent-ink);padding:0 6px}
.deploy .t{font-family:var(--display);font-weight:800;font-size:1.05rem;letter-spacing:.06em;margin:8px 0 10px;color:var(--bright);text-transform:uppercase;overflow-wrap:anywhere}
.deploy .cd{font-family:var(--display);font-weight:700;font-size:clamp(1.6rem,4vw,2.1rem);color:var(--accent);text-shadow:0 0 16px rgba(63,245,255,.8);font-variant-numeric:tabular-nums;letter-spacing:.06em}
.mini{display:grid;gap:8px;padding:0 18px 16px;font-size:.98rem}
.mini .l{display:flex;justify-content:space-between;gap:10px;align-items:center}
.mini .l .nm{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:.72rem;letter-spacing:.06em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--bright)}
.search{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:12px 14px}
.search input{flex:1;min-width:200px;padding:10px 12px}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:16px}
.mtile{position:relative;background:linear-gradient(180deg,rgba(7,24,34,.94),rgba(2,8,13,.96));border:1px solid var(--line-2);padding:16px;display:flex;flex-direction:column;gap:10px;border-radius:var(--r)}
.mtile.rare{border-color:var(--orange);box-shadow:0 0 22px rgba(255,138,31,.28)}
.mtile .pr{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-family:var(--mono)}
.mtile .pr .v{font-size:1.25rem;color:var(--accent);text-shadow:0 0 10px rgba(63,245,255,.4)}
.mtile.rare .pr .v{color:var(--orange-text);text-shadow:0 0 10px var(--orange-glow)}
.mtile .src{font-family:var(--mono);font-size:.78rem;color:var(--dim);text-transform:uppercase}
.mtile .src .mine{color:var(--accent)}
.mtile .more{border:0;background:none;color:var(--orange);font-family:var(--mono);font-size:.78rem;cursor:pointer;padding:0;text-align:left;text-transform:uppercase}
.mtile ul{margin:0;padding:0;list-style:none;display:grid;gap:4px;font-family:var(--mono);font-size:.8rem;color:var(--muted)}
.fresh{font-family:var(--mono);font-size:.75rem;color:var(--dim);text-align:center;padding-bottom:24px;text-transform:uppercase;letter-spacing:.1em}
.fresh .back{font-size:.75rem}

/* login */
.login{max-width:440px;margin:12vh auto 48px;display:grid;gap:14px;padding:28px}
.login .prompt{font-family:var(--mono);color:var(--accent);letter-spacing:.2em;font-size:.85rem}
.login input{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;padding:12px;font-size:1.05rem}
.login input[type=password]{text-transform:none;letter-spacing:.04em}
.err{color:#FF7B88;font-family:var(--mono);font-size:.9rem}
.loading{padding:80px 0;text-align:center;color:var(--accent);font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase}
.caret::after{content:"_";animation:blink 1s steps(1) infinite}

/* item search dropdown */
.ac{position:absolute;z-index:20;background:#03090F;border:1px solid var(--accent);box-shadow:0 0 24px rgba(63,245,255,.25),0 12px 30px rgba(0,0,0,.6);padding:4px;max-height:330px;overflow-y:auto}
.ac button{display:flex;width:100%;gap:10px;align-items:center;justify-content:space-between;border:0;background:none;padding:7px 10px;cursor:pointer;text-align:left;color:var(--ink)}
.ac button[aria-selected="true"]{background:var(--accent-soft);color:var(--accent)}
.ac b{color:var(--accent);font-weight:700}
.ac .id{font-family:var(--mono);font-size:.75rem;color:var(--dim)}
.ac .used{font-family:var(--mono);font-size:.7rem;color:var(--orange);text-transform:uppercase}
.ac .foot{font-family:var(--mono);font-size:.72rem;color:var(--dim);padding:6px 10px 4px;border-top:1px solid var(--line);margin-top:4px}
.namecell{display:flex;align-items:center;gap:4px}
.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:#03090F;border:1px solid var(--accent);color:var(--accent);padding:10px 16px;box-shadow:0 0 24px rgba(63,245,255,.3);z-index:30;font-family:var(--mono);max-width:calc(100% - 32px)}

/* quick logging */
.qchips{display:flex;flex-wrap:wrap;gap:8px}
.qchip{display:inline-flex;align-items:center;gap:8px;padding:6px 10px 6px 6px;border:1px solid var(--line-2);background:rgba(3,9,15,.8);color:var(--bright);cursor:pointer;font-family:var(--body);font-weight:600;font-size:.98rem;border-radius:var(--r)}
.qchip .tile{width:24px;height:24px}.qchip .tile.card{width:18px;height:24px}
.qchip b{font-family:var(--mono);font-weight:400;color:var(--accent);font-size:.85rem}
.qchip:hover{border-color:var(--accent);box-shadow:0 0 14px rgba(63,245,255,.3)}
.qchip:active{transform:translateY(1px)}
.quick>.sgwrap{flex:1;min-width:200px}
.sgwrap{position:relative;display:grid;gap:4px}
.sgwrap>input{width:100%}
.field.sgwrap>label{font-family:var(--display);font-size:.58rem;text-transform:uppercase;letter-spacing:.18em;color:var(--dim);font-weight:700}
.sugg{display:grid;border:1px solid var(--accent);background:#03090F;box-shadow:0 0 22px rgba(63,245,255,.18)}
.sg{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:0;border-bottom:1px solid var(--line);background:none;padding:8px 10px;text-align:left;cursor:pointer;color:var(--ink);font-size:1rem}
.sg:hover{background:rgba(63,245,255,.06)}
.sg.on{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}
.sg.on .sgn{color:var(--accent)}
.sgn{font-weight:700;min-width:0;overflow-wrap:anywhere}
.sgm{font-family:var(--mono);font-size:.75rem;color:var(--dim)}
.sgh{font-family:var(--mono);font-size:.72rem;color:var(--dim);padding:6px 10px}
.pastebox{display:grid;gap:10px;margin-top:12px;padding:12px;border:1px dashed var(--line-2)}
.pastebox textarea{width:100%;font-family:var(--mono);font-size:.95rem}
.pastelist{display:grid;gap:4px}
.pl{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:10px;align-items:center;font-size:1rem}
.pl .n{font-weight:700;color:var(--bright);min-width:0;overflow-wrap:anywhere}
.pl.unk .n{color:var(--orange-text)}
table.edit tr.sold td{opacity:.78}

/* sell desk */
.sellform{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;align-items:end}
.sellform input{width:100%}
.seg{display:flex;border:1px solid var(--line-2);border-radius:var(--r)}
.seg button{flex:1;border:0;background:none;color:var(--muted);padding:9px 10px;cursor:pointer;font-family:var(--display);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.seg button.on{background:var(--accent);color:var(--accent-ink);box-shadow:0 0 12px var(--glow)}
.plan{display:grid;gap:4px;margin-top:8px}
.plan .pr{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:12px;align-items:center;padding:7px 10px;border:1px solid var(--line);color:var(--muted)}
.plan .pr.on{border-color:var(--accent);color:var(--ink);background:rgba(63,245,255,.05)}
.plan .pr .w b{color:var(--bright);font-weight:700}
.stock{display:grid;padding:0 10px 10px;max-height:70vh;overflow-y:auto}
.stockrow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"t n q" "t m e";gap:2px 10px;align-items:center;border:0;border-bottom:1px dashed var(--line);background:none;padding:10px 8px;text-align:left;cursor:pointer;color:var(--ink)}
.stockrow:hover{background:rgba(255,138,31,.06)}
.stockrow .tile{grid-area:t}.stockrow .n{grid-area:n;font-weight:700;color:var(--bright);min-width:0;overflow-wrap:anywhere}.stockrow .q{grid-area:q;color:var(--accent);text-align:right}.stockrow .muted{grid-area:m;font-size:.78rem}.stockrow .e{grid-area:e;font-size:.8rem;color:var(--orange-text);text-align:right}
.sales{display:grid;padding:0 18px 12px}
.salerow{display:grid;grid-template-columns:96px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px dashed var(--line)}
.salerow:last-child{border-bottom:0}
.salerow .w b{color:var(--bright)}
@media (max-width:600px){.salerow{grid-template-columns:minmax(0,1fr) auto}.salerow>.mono.muted{grid-column:1/-1}.salerow .btn{grid-column:1/-1;justify-self:start}}

/* motion */
.floater{position:absolute;z-index:40;pointer-events:none;font-family:var(--display);font-weight:800;font-size:1.1rem;color:var(--accent);text-shadow:0 0 12px var(--accent);white-space:nowrap}
@keyframes gridrun{from{background-position:0 0}to{background-position:0 64px}}
@keyframes floatup{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-56px)}}
@keyframes streak{0%{background-position:-40% 0;opacity:1}100%{background-position:140% 0;opacity:0}}
@keyframes blink{50%{opacity:0}}
@keyframes flicker{0%{opacity:.4}40%{opacity:1}55%{opacity:.7}100%{opacity:1}}
.streak{position:relative}
.streak::after{content:"";position:absolute;inset:-1px;pointer-events:none;border:1px solid transparent;background:linear-gradient(90deg,transparent,rgba(63,245,255,.9),transparent) border-box;background-size:40% 100%;background-repeat:no-repeat;-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:streak .9s ease-out forwards}
@media (prefers-reduced-motion:no-preference){
  .gridfloor{animation:gridrun 2.6s linear infinite}
  .floater{animation:floatup 1.2s ease-out forwards}
  .ident .nm{animation:flicker 1.4s ease-out 1}
  .runrow,.btn,.mnav button,.nav button,.mtile{transition:border-color .15s,box-shadow .15s,color .15s}
}
@media (prefers-reduced-motion:reduce){.streak::after,.caret::after{animation:none}.floater{display:none}}
