/* Studio (bento console), wallet, ledger, and the Terminal sub-style for Admin / Ideas / Messages. */
.st-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:4px 0 22px}
.st-head .h-display{font-size:clamp(34px,4.6vw,60px)}
.st-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:22px;align-items:start}
.st-nav{position:sticky;top:90px;display:flex;flex-direction:column;gap:4px;padding:8px;border-radius:24px;background:var(--glass-1);border:1px solid var(--hair)}
.st-tab{justify-content:flex-start;height:44px;border-radius:16px;border:0;background:none;box-shadow:none;color:var(--ink-2);padding:0 14px;gap:12px;font-size:14px}.st-tab svg{width:17px;height:17px}
.st-tab.on{background:#fff;color:#1a0d1f}:root[data-theme="light"] .st-tab.on{background:var(--w-accent);color:#fff}
.st-main{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;align-items:start}
.bento{grid-column:span 12;display:flex;flex-direction:column;gap:14px;padding:22px;border-radius:var(--r-card);background:var(--w-card);border:1px solid var(--hair);box-shadow:var(--drop),var(--inner);min-width:0}
.bh{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.bh h3{font:500 20px var(--font);letter-spacing:-.02em}.bh .meta{margin-top:3px}
.bf{display:flex;gap:8px;justify-content:flex-end;margin-top:auto}
.b-stream{grid-column:span 8}.b-shows{grid-column:span 4}.b-chat{grid-column:span 12}
.s-menu .b-menu{grid-column:span 5}.s-menu .b-goals{grid-column:span 4}.s-menu .b-prices{grid-column:span 3}.s-menu .b-wheel,.s-menu .b-profile{grid-column:span 6}
.s-rules .b-toys,.s-rules .b-safety{grid-column:span 6}.s-rules .b-mods,.s-rules .b-poll{grid-column:span 6}
.s-storefront .b-store{grid-column:span 8}.s-storefront .b-req{grid-column:span 4}
.s-earnings .b-ledger{grid-column:span 7}.s-earnings .b-req{grid-column:span 5}.s-earnings .b-overlay{grid-column:span 12}
.stream-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px}
.pre{position:relative;aspect-ratio:16/9;border-radius:20px;overflow:hidden;border:1px solid var(--hair);background:radial-gradient(80% 60% at 30% 25%,color-mix(in srgb,var(--w-plum-hi) 70%,transparent),transparent 70%),radial-gradient(70% 60% at 80% 90%,color-mix(in srgb,var(--w-accent) 45%,transparent),transparent 70%),var(--w-raise)}
.pre-v{width:100%;height:100%;object-fit:cover;display:block}.pre-c{position:absolute;top:10px;left:10px}
.prow{display:flex;align-items:center;gap:10px}.prow span{flex:1;color:var(--ink-2);font-size:13.5px}.prow em{font-style:normal;width:18px}
.share{padding:14px 16px;border-radius:16px;background:color-mix(in srgb,var(--w-accent) 10%,transparent);border:1px solid var(--hair-hot);display:flex;flex-direction:column}.share b{font:500 30px var(--font)}.share small{color:var(--ink-3)}
.toy-ind{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--hair);border-radius:16px}.toy-ind.active{border-color:var(--hair-hot);background:color-mix(in srgb,var(--w-accent) 10%,transparent)}
.toy-lvl{width:12px;height:36px;border-radius:5px;background:var(--glass-3)}.toy-ind.active .toy-lvl{background:var(--w-accent);animation:breathe .5s infinite alternate}
.req{padding:12px 14px;border-radius:16px;background:var(--glass-1);border:1px solid var(--hair);display:flex;flex-direction:column;gap:6px}.req p{font-size:13.5px;color:var(--ink-2);overflow-wrap:anywhere}
.tier-ed{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:16px;border:1px solid var(--hair)}
.sch-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:26px}
.sch-prev{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:20px;background:var(--glass-1);border:1px solid var(--hair)}
.tix.hidden{display:none}
.st-main .meta.pb{padding-bottom:8px}
.led-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-end}.led-usd{text-align:right}.led-usd b{font:500 28px var(--font)}
.bal-fig{font:500 clamp(44px,5vw,72px)/1 var(--font);letter-spacing:-.04em}.bal-fig small{font-size:15px;color:var(--ink-3);letter-spacing:0}
.src{display:flex;align-items:center;gap:12px;font-size:13.5px}.src-l{width:110px;color:var(--ink-2)}.src-bar{flex:1;height:6px;border-radius:6px;background:var(--glass-3);overflow:hidden}.src-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--w-accent-2),var(--w-accent));border-radius:6px}.src b{width:70px;text-align:right}
.apply{max-width:720px;margin:10px auto}
/* wallet */
.wallet-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px;align-items:start}
.packs{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.pack{height:auto;flex-direction:column;align-items:flex-start;gap:2px;padding:16px;border-radius:20px;text-align:left}.pack b{font:500 28px var(--font);letter-spacing:-.03em}.pack em{font-style:normal;color:var(--w-accent);margin-top:6px}.pack.on{border-color:var(--hair-hot);box-shadow:var(--glow);background:color-mix(in srgb,var(--w-accent) 8%,transparent)}
.led-row{display:flex;align-items:center;gap:12px;padding:10px 4px;border-bottom:1px solid var(--hair)}.led-row:last-child{border:0}
.led-i{display:inline-flex;width:32px;height:32px;border-radius:10px;align-items:center;justify-content:center;background:var(--glass-2)}.led-i.in{color:var(--ok)}.led-i.out{color:var(--ink-3)}.led-i svg{width:15px}
.pos{color:var(--ok)}

/* ---- Terminal sub-style: Admin, Ideas, Messages ---- */
.v-admin,.v-ideas,.v-messages{font-family:var(--mono);font-size:12.5px}
.v-admin h2,.v-ideas h2,.v-messages h2{font:500 13px var(--mono);text-transform:uppercase;letter-spacing:.14em;color:var(--w-accent);margin:6px 0 16px}
.v-admin h2::before,.v-ideas h2::before,.v-messages h2::before{content:"> "}
.v-admin h3,.v-ideas h3,.v-messages h3,.v-admin h4{font:500 12px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2);margin:14px 0 8px}
.v-admin .card,.v-ideas .card,.v-messages .card{border-radius:12px;background:color-mix(in srgb,var(--w-card) 88%,transparent);border-color:var(--hair)}
.v-admin button,.v-ideas button,.v-messages button,.v-admin input,.v-admin select,.v-ideas input,.v-ideas select,.v-messages input,.v-admin textarea,.v-ideas textarea{font-family:var(--mono);font-size:12px;border-radius:8px}
.v-admin button,.v-ideas button,.v-messages button{height:30px;padding:0 12px}
.v-admin .tabs button,.v-ideas .cats button{border-radius:8px}
.v-admin th,.v-ideas th{font-family:var(--mono);letter-spacing:.08em}
.v-admin tr:hover td{background:var(--glass-1)}
.v-admin .stat b,.v-ideas .stat b{font-family:var(--mono);font-size:22px}
.v-admin .badge,.v-ideas .badge,.v-ideas .chip{border-radius:6px;font-family:var(--mono)}
.v-messages .msg{padding:4px 0}
.v-ideas .vote{height:auto}

@media(max-width:1100px){.st-main .bento,.s-menu .bento,.s-rules .bento,.s-storefront .bento,.s-earnings .bento,.b-stream,.b-shows,.b-chat{grid-column:span 12!important}.sch-grid,.stream-grid{grid-template-columns:1fr}}
@media(max-width:820px){
  .st-layout{grid-template-columns:1fr}.st-nav{position:static;flex-direction:row;overflow-x:auto;border-radius:var(--r-pill);padding:4px}.st-tab{flex:none;height:38px}
  .bento{padding:16px}.wallet-grid{grid-template-columns:1fr}.packs{grid-template-columns:repeat(2,1fr)}
  .v-admin table{display:block;overflow-x:auto}
}
.b-obs{grid-column:span 12}

.b-ingest{grid-column:span 12}.b-ingest .row input{flex:1;min-width:0}.b-ingest .field{margin:0}
.b-ingest .btn2{align-self:flex-start}.b-ingest svg{width:16px;height:16px;vertical-align:-3px}
