:root{--g:#2fe68a;--bg:#0c0f0d;--p:#161b18;--t:#e8f3ec;--m:#8aa094;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html,body{margin:0;height:100%;background:var(--bg);color:var(--t);font:14px/1.35 ui-monospace,Menlo,Consolas,monospace;overflow:hidden;user-select:none}
h1,h2,h3,.px{font-family:'Silkscreen',ui-monospace,monospace;margin:0 0 8px}
#c{position:fixed;inset:0;width:100%;height:100%;image-rendering:pixelated}
button{font:inherit;color:var(--t);background:#26302a;border:2px solid #000;padding:6px 10px;cursor:pointer;box-shadow:inset 0 -3px #0007}
button:hover{background:#364439}button.go{background:var(--g);color:#04120a;font-weight:700}button:disabled{opacity:.4;cursor:not-allowed}
input{font:inherit;background:#0a0d0b;color:var(--t);border:2px solid #333;padding:7px;width:100%;box-sizing:border-box;user-select:text}
.m{color:var(--m)}.box,.hb{background:#0b0f0dd9;border:3px solid #000;box-shadow:inset 0 0 0 2px #2a352e,4px 4px 0 #0008;padding:12px}
#hud,#ui{position:fixed;inset:0;pointer-events:none}#ui>*,#ui .win button{pointer-events:auto}#hud *{pointer-events:none}
.hb{position:absolute;padding:8px 12px}.tl{top:10px;left:10px}.tr{top:10px;right:10px;text-align:right}
.pr{bottom:64px;left:50%;transform:translateX(-50%);font-weight:700}.hint{bottom:10px;left:10px;font-size:12px;color:var(--m)}
.bar{height:10px;background:#000;border:2px solid #000;width:130px;margin-top:4px}.bar i{display:block;height:100%;background:var(--g)}
.modal{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);min-width:300px;max-width:92vw}
.gen{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:10px 0}
#cre{position:absolute;left:12px;top:12px;bottom:12px;width:320px;overflow:auto}
.r{display:flex;align-items:center;gap:6px;margin:7px 0}.r span{width:78px;color:var(--m)}.r b{flex:1;text-align:center}
.sw{display:flex;flex-wrap:wrap;gap:4px;flex:1}.sw i{width:20px;height:20px;border:2px solid #000;cursor:pointer}.sw i.on{outline:3px solid #fff}
.sw i.pen{display:flex;align-items:center;justify-content:center;background:#26302a;box-sizing:border-box;box-shadow:inset 0 -3px #0007}.sw i.pen:hover{background-color:#364439}
.cp{margin:-2px 0 8px 84px;padding:8px;background:#0a0d0b;border:2px solid #000;box-shadow:inset 0 0 0 2px #2a352e}
.cpsv,.cph{position:relative;border:2px solid #000;cursor:crosshair;touch-action:none;box-shadow:0 0 0 1px #2a352e}.cpsv{height:96px}.cph{height:14px;margin-top:8px;background:linear-gradient(to right,#f00,#ff0,#0f0,#0ff,#00f,#f0f,#f00)}
.cpsv b,.cph b{position:absolute;width:10px;height:10px;margin:-7px 0 0 -7px;border:2px solid #fff;box-shadow:0 0 0 2px #000;box-sizing:border-box;pointer-events:none}.cph b{top:50%}
input[type=range]{-webkit-appearance:none;appearance:none;padding:0!important;border:2px solid #000!important;height:12px;background:#000;box-shadow:inset 0 0 0 2px #2a352e;cursor:pointer}
input[type=range]::-webkit-slider-runnable-track{height:8px;background:#161b18}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:16px;margin-top:-4px;background:var(--g);border:2px solid #000;box-shadow:inset 0 -3px #0004}
input[type=range]::-moz-range-track{height:8px;background:#161b18}
input[type=range]::-moz-range-thumb{width:8px;height:12px;background:var(--g);border:2px solid #000;border-radius:0}
.row2{display:flex;gap:8px;margin-top:12px}.row2 button{flex:1}
@media(max-width:700px){#cre{top:auto;width:auto;right:12px;max-height:48%}}
#load{position:fixed;inset:0;background:#07100b;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:20;text-align:center;padding:20px;overflow:hidden}
#load .ldbg{position:absolute;inset:0;background:#0a120d}
#load .ldin{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px}
#load h1{font-size:clamp(34px,8vw,58px);line-height:1.05;color:var(--g);margin:0;text-shadow:3px 3px 0 #0b3a22,6px 6px 0 #000;letter-spacing:2px;animation:ttbob 1.6s steps(1) infinite}
#load .ldsub{display:inline-block;padding:4px 10px;background:#000;color:#e8f3ec;letter-spacing:3px;font-size:12px;margin:2px 0 10px;box-shadow:3px 3px 0 #0b3a22}
#load .ldeq{display:flex;gap:5px;align-items:flex-end;height:38px}#load .ldeq i{width:9px;background:var(--g);border:2px solid #000;box-shadow:2px 2px 0 #000;animation:ldq 1s steps(5) infinite alternate;height:30%}
#load .ldeq i:nth-child(2){animation-delay:-.3s}#load .ldeq i:nth-child(3){animation-delay:-.7s}#load .ldeq i:nth-child(4){animation-delay:-.1s}#load .ldeq i:nth-child(5){animation-delay:-.5s}#load .ldeq i:nth-child(6){animation-delay:-.9s}#load .ldeq i:nth-child(7){animation-delay:-.4s}
#load .ldbox{width:min(360px,82vw);background:#0b0f0de6;border:3px solid #000;box-shadow:inset 0 0 0 2px #2a352e,6px 6px 0 #000a;padding:12px 14px}
#load .ldtop{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:13px}#load .ldtop b{color:var(--g)}
#load #lt{color:#e8f3ec;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#load #lt.in{animation:ldf .35s ease-out}
#load .bar{width:100%;height:16px;margin:0;background:#020604;box-shadow:inset 0 0 0 2px #1a231d}#load .bar i{background:repeating-linear-gradient(90deg,var(--g) 0 10px,#1fb86a 10px 12px);transition:width .2s steps(2)}
#load .ldtip{color:var(--m);font-size:12px;max-width:min(360px,82vw);min-height:16px}
#load .ldft{position:absolute;left:0;right:0;bottom:max(14px,env(safe-area-inset-bottom));margin:0 auto;max-width:440px;padding:0 16px;color:#8aa09499;font-size:11px}
@keyframes ldq{to{height:100%}}@keyframes ldf{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
#toast{position:fixed;top:70px;left:50%;transform:translateX(-50%);z-index:50;pointer-events:none;display:flex;flex-direction:column;gap:6px;align-items:center}
#toast div{background:#000d;border:2px solid var(--g);padding:7px 12px}
.fade{position:fixed;inset:0;background:#000;opacity:0;animation:f .9s forwards}@keyframes f{to{opacity:1}}
#pc{position:absolute;inset:0;background:#47b06f;font-family:system-ui,'Segoe UI',Roboto,sans-serif}.ico{text-shadow:0 1px 4px #000;color:#fff}#pc *{cursor:inherit!important}
.ico{position:absolute;top:20px;left:20px;width:90px;text-align:center}.ico i{display:block;font-style:normal;font-size:34px;background:linear-gradient(#35f09a,#12a35d);color:#04120a;border:3px solid #000;padding:8px;margin-bottom:4px}
.tb{position:absolute;left:0;right:0;bottom:0;height:42px;background:#0b0d0f;display:flex;align-items:center;gap:12px;padding:0 10px;border-top:2px solid #333}
.win{position:absolute;left:3%;right:3%;top:3%;bottom:54px;display:flex;flex-direction:column;background:#0c0f0d;border:3px solid #000;box-shadow:6px 6px 0 #0007}
.wt{background:#1b1f1d;padding:5px 10px;display:flex;justify-content:space-between;align-items:center}.wb{flex:1;display:flex;min-height:0}
.sb{width:160px;background:#000;padding:10px;display:flex;flex-direction:column;gap:6px;flex-shrink:0}.sb h3{color:var(--g)}
.sb button{text-align:left;background:none;border:0;box-shadow:none;color:var(--m)}.sb button.on{color:#fff;background:#1c221e}
.mn{flex:1;overflow:auto;background:linear-gradient(#17402c,#0c0f0d 260px);padding:18px;user-select:text}
.ban h1{font-size:30px}.sr{display:grid;grid-template-columns:30px 1fr 110px 70px;gap:8px;padding:8px;align-items:center;border-radius:4px}.sr:hover{background:#ffffff12}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:10px 0}.card{background:#151a17;padding:12px;border-radius:6px}.card b{font-size:20px;color:var(--g);display:block}
.ch{display:flex;align-items:flex-end;gap:4px;height:120px;margin:10px 0}.ch i{flex:1;background:var(--g);min-height:2px}
.ng{display:flex;gap:8px;align-items:center;margin:8px 0}.ng input{flex:1}
.gear{bottom:10px;right:10px;color:var(--t);cursor:pointer;font-size:13px}#hud .gear{pointer-events:auto}textarea{font:inherit;background:#0a0d0b;color:var(--t);border:2px solid #333;width:100%;box-sizing:border-box;user-select:text}
.ico{cursor:pointer;touch-action:none;font-size:12px;user-select:none}.ico img{width:48px;height:48px;image-rendering:pixelated;display:block;margin:0 auto 4px;filter:drop-shadow(2px 2px 0 #0007)}
.tb button.on{background:#3a4a40}.sm{position:absolute;left:0;bottom:42px;width:220px;background:#101412;border:2px solid #000;display:flex;flex-direction:column;padding:6px;gap:4px;z-index:6}.sm button{display:flex;gap:8px;align-items:center;text-align:left}.sm img{width:22px;image-rendering:pixelated}
.wpp{position:absolute;background:#1b1f1d;border:2px solid #000;padding:10px;width:340px;box-shadow:4px 4px 0 #0007;z-index:5}.wg{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.wt2{height:62px;border:2px solid #000;position:relative;cursor:pointer}.wt2.on{outline:3px solid #fff}.wt2 span{position:absolute;bottom:0;left:0;right:0;background:#000a;font-size:10px;padding:1px 3px;color:#fff}
.gi{width:24px;height:24px;image-rendering:pixelated;filter:grayscale(1);cursor:pointer}.gi.lk{filter:none}.av{width:30px;height:30px;border-radius:50%;background:#444;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff}
.ring{padding:2px;border-radius:50%;background:linear-gradient(45deg,#f9a825,#e91e63,#7b1fa2)}.ring .av{border:2px solid #000;width:46px;height:46px}.stories{display:flex;gap:12px;padding:10px 14px;overflow-x:auto;border-bottom:1px solid #262626;text-align:center}
.post{border-bottom:1px solid #262626;padding-bottom:10px}.ph{display:flex;gap:8px;align-items:center;padding:8px 14px}.acts{display:flex;gap:12px;padding:8px 14px}.ln{padding:0 14px}.pbody{min-height:150px;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;font:700 20px/1.2 system-ui,sans-serif;color:#fff;text-shadow:0 2px 6px #0008}
.tbar{position:relative;height:26px;background:#000;border:3px solid #000;margin:10px 0 6px;box-shadow:inset 0 0 0 2px #2a352e}.tg{position:absolute;left:42%;width:16%;top:0;bottom:0;background:#2fe68a}.ti{position:absolute;top:-5px;bottom:-5px;width:6px;margin-left:-3px;border:2px solid #000}
.mn.p0{padding:0;background:#fff}.az{--pvb:#f7f7f7;background:#fff;color:#0f1111;font:14px/1.35 Arial,Helvetica,sans-serif;min-height:100%}.az *{user-select:none}
.azh{position:sticky;top:0;z-index:3;background:#131921;color:#fff;display:flex;align-items:center;gap:14px;padding:8px 14px}.azl{font-size:24px;letter-spacing:-1px;border-bottom:3px solid var(--ac);color:#fff;white-space:nowrap}
.azd,.azr{font-size:12px;line-height:1.15;white-space:nowrap}.azd small,.azr small{display:block;color:#ccc}.azd b,.azr b{font-size:13px}
.azs{flex:1;display:flex;height:38px;background:#fff;border-radius:6px;overflow:hidden;min-width:60px}.azall{background:#e6e6e6;color:#555;padding:0 12px;display:flex;align-items:center;font-size:12px}
.azs input{border:0;background:#fff;color:#0f1111;height:100%;padding:0 10px;flex:1;min-width:0;user-select:text}.azs button{background:#febd69;border:0;box-shadow:none;width:46px;display:flex;align-items:center;justify-content:center}.azs button img{width:20px;image-rendering:pixelated}
.azb{display:flex}.azside{width:210px;flex-shrink:0;padding:12px 14px;font-size:13px}.azside h4{margin:14px 0 6px;font-size:14px}.azside a{display:block;margin:5px 0;color:#0f1111}.azside label{display:block;margin:6px 0}.azside input[type=checkbox]{width:auto;margin-right:6px;vertical-align:middle}
.st{color:#f08804;letter-spacing:-1px}.azg{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;padding:8px;align-content:start}
.azc{position:relative;border:1px solid #e7e7e7;border-radius:6px;overflow:hidden;background:#fff;display:flex;flex-direction:column}.azc canvas{margin:0!important;width:100%!important;height:auto!important;aspect-ratio:1;border-radius:0!important}
.azi{padding:8px 10px 12px;display:flex;flex-direction:column;gap:3px;font-size:13px}.g{color:#565959;font-size:12px}.azt{font-size:16px;line-height:1.3}.azp{font-size:28px;line-height:1.1}.azp small{font-size:13px;vertical-align:top;position:relative;top:4px}.azp sup{font-size:13px;position:relative;top:-6px;left:1px}
.azbtn{background:#ffd814;color:#0f1111;border:0;border-radius:20px;padding:9px;margin-top:6px;box-shadow:none;font:14px Arial,sans-serif}.azbtn:hover{background:#f7ca00}.azbtn:disabled{background:#e7e7e7;color:#888}
.bd{position:absolute;left:4px;top:4px;z-index:1;background:#232f3e;color:#fff;font-size:11px;padding:3px 6px;border-radius:2px}.bd.bs{background:#c45500}@media(max-width:800px){body:not(.pcmode) .azside{display:none}}
.pf{width:96px;height:96px;image-rendering:pixelated;border-radius:50%;border:3px solid var(--g);object-fit:cover}.mn.p0{position:relative}.chat{position:absolute;inset:0;display:flex;background:#0e1512;color:#e8f3ec;font:14px system-ui,sans-serif}.cl{width:300px;border-right:1px solid #22302a;display:flex;flex-direction:column;flex-shrink:0}.cl h2{padding:14px;margin:0;background:#16201b}.crs{overflow:auto;flex:1}
.cr{display:flex;gap:10px;padding:10px 14px;cursor:pointer;border-bottom:1px solid #1a2520}.cr:hover,.cr.on{background:#1b2923}.cr img,.cvh img{width:44px;height:44px;border-radius:50%;image-rendering:pixelated;background:#2a4a38;flex-shrink:0}.cr .t{flex:1;min-width:0}.cr b{display:block}.cr small{color:#8aa094;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ub{background:#2fe68a;color:#04120a;border-radius:10px;padding:0 6px;font-size:11px;align-self:center}
.cv{flex:1;display:flex;flex-direction:column;min-width:0}.cvh{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#16201b}.cvb{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:6px}
.bb{max-width:70%;padding:7px 11px;border-radius:10px;line-height:1.35}.bb.a{background:#1f2c26;align-self:flex-start}.bb.me{background:#1f7a52;align-self:flex-end}.bb small{display:block;color:#ffffff77;font-size:10px;text-align:right}.cin{display:flex;gap:8px;padding:10px;background:#16201b}.cin input{flex:1;border-radius:18px;padding:9px 14px}
.ig{max-width:460px;margin:0 auto;background:#000;border:1px solid #333;border-radius:6px;color:#fff;font:14px system-ui,sans-serif}.igh{padding:10px 14px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #262626}.igl{font:700 22px Silkscreen,monospace;background:linear-gradient(45deg,#f9a825,#e91e63,#7b1fa2);-webkit-background-clip:text;color:transparent}
.pic{width:100%;image-rendering:pixelated;display:block;cursor:pointer}.cap{padding:6px 14px}.cm{display:flex;gap:8px;padding:6px 14px;align-items:flex-start}.cm img,img.av{width:30px;height:30px;border-radius:50%;image-rendering:pixelated;background:#444;object-fit:cover}.cm img{width:28px;height:28px}
.acc{display:flex;gap:14px;padding:14px;align-items:center}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.grid img{width:100%;image-rendering:pixelated;cursor:pointer}
.mn{padding:24px 32px;font-size:15px}.mn h1{font-size:34px}.cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))!important;gap:16px}.card{padding:18px}.sb{width:200px}.win{left:1.5%;right:1.5%;top:1.5%}.mn.p0{padding:0}.sr{padding:12px 8px}
.bw{position:absolute;inset:0;display:flex;flex-direction:column;background:#fff;color:#202124;font:15px system-ui,sans-serif}.bwt{background:#dfe1e5;padding:8px 16px;border-radius:8px 8px 0 0;display:inline-block;margin:6px 0 0 10px;font-size:13px}.bwb{background:#202124;color:#fff}.bwb .bwt{background:#35363a;color:#fff}.bwu{display:flex;gap:10px;align-items:center;padding:8px 12px;background:#35363a;color:#fff}.bwu button{background:#4a4b50;border-radius:50%;width:32px;height:32px;padding:0}.bwa{flex:1;background:#202124;border-radius:18px;padding:7px 16px;color:#dde}.bwc{flex:1;overflow:auto}.bwh{text-align:center;padding:48px 20px}.bwlogo{font:700 72px Silkscreen,Arial,sans-serif;letter-spacing:-2px}.bws{max-width:560px;margin:22px auto;border:1px solid #dfe1e5;border-radius:26px;padding:13px 22px;color:#9aa0a6;text-align:left;cursor:not-allowed;box-shadow:0 1px 6px #0002}.bwsc{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-top:30px}.bwtile{width:130px;padding:18px 10px;border-radius:12px;background:#f1f3f4;cursor:pointer;font-weight:600}.bwtile:hover{background:#e3e6e8}.bwi{width:48px;height:48px;border-radius:50%;background:#1a73e8;color:#fff;font:700 22px Arial;display:flex;align-items:center;justify-content:center;margin:0 auto 10px}.bwp{background:#0c0f0d;color:#e8f3ec;min-height:100%;padding:24px 32px}
.ue{background:#fff;color:#000;font:15px system-ui,sans-serif;min-height:100%;padding-bottom:30px}.ueh{display:flex;align-items:center;gap:14px;padding:12px 20px;border-bottom:1px solid #eee;position:sticky;top:0;background:#fff;z-index:2}.uel{font-size:22px}.uep{display:flex;background:#f3f3f3;border-radius:20px;padding:3px}.uep b,.uep span{padding:6px 14px;border-radius:16px}.uep b{background:#fff}.ues2{flex:1;background:#f3f3f3;border-radius:22px;padding:11px 18px;color:#6b6b6b}.uec2{font-weight:700}.ues3{background:#eee;border-radius:20px;padding:8px 14px;font-weight:600}.uech{display:flex;gap:10px;padding:12px 20px;flex-wrap:wrap}.uech span{background:#f3f3f3;border-radius:20px;padding:8px 14px;font-weight:600;font-size:14px}.uehero{display:flex;gap:30px;justify-content:space-between;align-items:center;padding:10px 20px;flex-wrap:wrap}.uehero h1{font-size:46px;margin:0 0 8px;color:#000}.uepromo{width:380px;max-width:100%;background:#f8b94c;border-radius:12px;padding:22px;font-weight:700}.ue h2{font-size:34px;margin:24px 20px 12px;color:#000}.uegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px;padding:0 20px}.uei{position:relative;background:linear-gradient(135deg,#3b2f26,#14110e);border-radius:10px;height:150px;display:flex;align-items:center;justify-content:center;overflow:hidden}.uei canvas{width:140px!important;height:140px!important;margin:0!important;background:none!important}.ueb{position:absolute;left:8px;top:8px;background:#c4260d;color:#fff;font-size:12px;font-weight:700;padding:3px 7px;border-radius:4px;z-index:1}.uet{font-size:17px;margin-top:10px}.ues{color:#545454;font-size:13px;margin-top:2px}.uebtn{margin-top:8px;background:#000;color:#fff;border:0;border-radius:20px;padding:8px 14px;box-shadow:none}.uebtn:disabled{background:#ddd;color:#888}.uev{display:inline-block;margin:8px 0 0 8px;background:#fde4e0;color:#c4260d;font-size:12px;font-weight:700;padding:3px 7px;border-radius:4px}
.cov{width:96px;height:96px;image-rendering:pixelated;border:2px solid #000;flex-shrink:0}.igm{display:flex;gap:6px;padding:4px 14px}.igm button{font-size:12px}
.site .sh{padding:22px 32px;display:flex;justify-content:space-between;align-items:baseline;gap:16px}.site .sb2{padding:24px 32px;min-height:70vh}.site .card b{color:inherit!important}.site .m{color:inherit;opacity:.7}
.site.s_mt .sh{background:linear-gradient(90deg,#b00020,#1a1a1f);color:#fff;font:700 26px Silkscreen,monospace;border-bottom:4px solid #fff}.site.s_mt .sb2{background:#16161a;color:#eee}.site.s_mt .card{background:#24242b}
.site.s_pr .sh{background:#0f4c5c;color:#fff;font:600 28px Georgia,serif;letter-spacing:2px}.site.s_pr .sb2{background:#f4f1ea;color:#222}.site.s_pr .card{background:#fff;border:1px solid #d8d2c4}.site.s_pr button.go{background:#0f4c5c;color:#fff}
.site.s_pt .sh{background:#ffb347;color:#4a2c00;font:700 28px 'Trebuchet MS',sans-serif;border-radius:0 0 34px 34px}.site.s_pt .sb2{background:#fff6e5;color:#4a2c00}.site.s_pt .card{background:#fff;border-radius:20px;border:2px dashed #ffb347}.site.s_pt button.go{background:#ff7a59;color:#fff;border-radius:20px}
.site.s_gd .sh{background:#101830;color:#e6b422;font:700 24px Silkscreen,monospace;letter-spacing:4px;border-bottom:3px solid #e6b422}.site.s_gd .sb2{background:#0a0f1e;color:#dfe6ff}.site.s_gd .card{background:#16203a;border:1px solid #e6b42266}.site.s_gd button.go{background:#e6b422;color:#101830}
.site.s_cl .sh{background:#111;color:#fff;font:700 28px Silkscreen,monospace;border-bottom:6px solid #ff3d81}.site.s_cl .sb2{background:#faf7f2;color:#111}.site.s_cl .card{background:#fff;border:2px solid #111;border-radius:0}.site.s_cl button.go{background:#ff3d81;color:#fff;border-radius:0}.site.s_cl button{border-radius:0}
.site.s_gr .sh{background:#2a2a35;color:#7fe3ff;font:700 26px Silkscreen,monospace;border-bottom:3px solid #7fe3ff}.site.s_gr .sb2{background:#1b1c24;color:#e6e9ff}.site.s_gr .card{background:#262833;border:1px solid #3a3d52}.site.s_gr button.go{background:#7fe3ff;color:#111}
.site.s_st .sh{background:#f08a24;color:#2a1500;font:700 28px Silkscreen,monospace}.site.s_st .sb2{background:#fff3e0;color:#2a1500}.site.s_st .card{background:#fff;border:2px solid #f08a24}.site.s_st button.go{background:#f08a24;color:#2a1500}
.lst{background:#fff;border:1px solid #d8d2c4;display:flex;gap:16px;padding:14px;margin:12px 0;align-items:center;color:#222}.lst canvas{width:140px!important;height:140px!important;margin:0!important;background:#e8f1f5!important;border-radius:4px}.lst h3{margin:0 0 4px;font:600 22px Georgia,serif;color:#0f4c5c}.site.s_pr .lst .m{color:#555}
/* v25: pause menu overlay, wardrobe colour picker */
#ui{z-index:2}#pzo{position:fixed;inset:0;z-index:1;pointer-events:none;background:rgba(5,8,6,.58);backdrop-filter:blur(6px) saturate(.7)}
.pzm{width:min(320px,90vw);text-align:center}.pzm h2{font-size:24px;margin-bottom:4px}.pzm button{display:block;width:100%;margin-top:10px;padding:10px}
.wrg .thsw{gap:4px}.wrg .thsw i{width:20px;height:20px}.thsw i.pen{display:flex;align-items:center;justify-content:center;background:#26302a;box-shadow:inset 0 -3px #0007}.thsw i.pen:hover{background-color:#364439}
.wrg .cp{margin:6px 0 0;padding:6px;background:#0a0d0b}.wrg .cp .wph{display:block;margin-top:6px;font-size:11px;color:var(--t);text-align:center}
/* v26.87: main menu */
#ttl{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:16px}
#ttl .ttm{display:flex;flex-direction:column;align-items:center;gap:10px;width:min(320px,90vw);text-align:center}
#ttl h1{font-size:34px;color:var(--g);margin-bottom:2px}#ttl .ttm button{width:100%;padding:11px}#ttl .ttm .px{margin-bottom:10px}
#ttl .ttpf{position:fixed;top:12px;right:12px;display:flex;align-items:center;gap:8px;background:#0b0f0dd9;border:3px solid #000;box-shadow:inset 0 0 0 2px #2a352e;padding:6px 8px;max-width:calc(100vw - 24px)}
#ttl .ttpf img,#ttl .ttpf i{width:32px;height:32px;flex:none;image-rendering:pixelated;border:2px solid #000;background:#2a352e;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:700}
#ttl .ttpf span{display:flex;flex-direction:column;min-width:0}#ttl .ttpf b,#ttl .ttpf small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}#ttl .ttpf small{color:var(--m)}#ttl .ttpf button{padding:4px 8px;font-size:12px}
/* v26.90: admin panel */
#admp{width:min(560px,94vw);max-height:86vh;overflow:auto}#admp h3{margin-top:14px}#admp input{min-width:0}#admp .r{display:flex;gap:6px;margin:5px 0}#admp .r input{flex:1}#admp>input{width:100%;margin:5px 0}
#admp .admg{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;margin-top:8px}
#admp .adml{display:flex;flex-direction:column;gap:6px;max-height:240px;overflow:auto}#admp .adml>div{display:flex;align-items:center;gap:8px;justify-content:space-between;border:2px solid #2a352e;padding:6px}#admp .adml small{word-break:break-all}
#admp select{flex:1;font:inherit;background:#0a0d0b;color:var(--t);border:2px solid #333;padding:7px}
/* v26.97 settings tabs */
#stg{max-height:90vh;display:flex;flex-direction:column}#stt{display:flex;gap:4px;margin:4px 0 8px}#stt button{flex:1;padding:5px 4px;color:var(--m)}#stt button.on{color:#fff;background:#364439}
#stb{overflow:auto;min-height:0;padding-right:2px}#stg .so{display:flex;align-items:center;gap:8px;margin:7px 0}#stg .so span{flex:1;color:var(--m)}#stg .so span small{display:block}#stg .so input{flex:1.3}#stg .so button{min-width:92px}
body.notags #ntags{display:none}

/* v26.125: career select */
#ttl .ttw{display:flex;flex-direction:column;gap:10px;width:min(420px,92vw)}#ttl .ttw h2{text-align:center;color:var(--g);margin-bottom:4px}
#ttl .ttsl{display:flex;align-items:center;gap:8px;background:#0b0f0dd9;border:3px solid #000;box-shadow:4px 4px 0 #0008;padding:10px}
#ttl .ttsl.on{border-color:var(--g)}#ttl .ttsl>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
#ttl .ttsl b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#ttl .ttsl small{color:var(--m)}#ttl .ttsl.empty{opacity:.55;border-style:dashed}
#ttl .ttsl button{padding:9px 12px}#ttl .ttdel{padding:9px 10px}
#ttl .ttnc{position:relative;display:block}#ttl .ttnc button{width:100%;padding:11px}
#ttl .ttnc em{display:none;position:absolute;left:50%;bottom:calc(100% + 4px);transform:translateX(-50%);background:#000;border:2px solid var(--g);padding:4px 8px;font-style:normal;white-space:nowrap;pointer-events:none}
#ttl .ttnc:hover em{display:block}

#ttl .ttrb{display:flex;flex-direction:column;gap:8px}#ttl .ttrb summary{cursor:pointer;color:var(--m);padding:8px 10px;background:#0b0f0dd9;border:3px solid #000;box-shadow:4px 4px 0 #0008;list-style:none}#ttl .ttrb summary::before{content:'▸ '}#ttl .ttrb[open] summary::before{content:'▾ '}#ttl .ttrb summary::-webkit-details-marker{display:none}

/* v26.141: responsive layout for narrow and short windows */
@media(max-width:640px){
 .hb{padding:6px 8px;font-size:12px}.hb.tl{max-width:calc(58% - 10px)}.hb.tr{max-width:calc(42% - 10px);font-size:11px}
 .hb.tr .bar,.hb.tl .bar{width:100%;box-sizing:border-box}
 .hb.hint{right:10px;bottom:10px;font-size:11px;max-width:calc(100% - 20px)}
 .hb.pr{max-width:90vw;text-align:center}
 .gear{bottom:52px}
 body:not(.pcmode) .win{left:0;right:0;top:0;bottom:48px}body:not(.pcmode) .mn{padding:14px 12px!important}body:not(.pcmode) .sb{width:120px}
 body:not(.pcmode) .azl{font-size:18px}body:not(.pcmode) .azd,body:not(.pcmode) .azr{display:none}body:not(.pcmode) .azh{gap:8px;padding:8px 10px}body:not(.pcmode) .azs{min-width:0}
 body:not(.pcmode) .cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important}
 #ph.ph,#ph{right:0!important;bottom:0!important;width:100vw!important;height:100vh!important;border-radius:0!important;border-width:0!important}
 #ph .phh{grid-template-columns:repeat(auto-fill,minmax(72px,1fr))}
 #ph .phb .chat .cl{width:110px}
 body:not(.pcmode) .wpp{width:min(340px,92vw)}body:not(.pcmode) .sm{max-width:90vw}
 body:not(.pcmode) .ban h1{font-size:22px}body:not(.pcmode) .mn h1{font-size:24px!important}
 body:not(.pcmode) .sr{grid-template-columns:24px 1fr 70px!important}body:not(.pcmode) .sr>span:last-child{display:none}
}
@media(max-height:560px){.pzm button{margin-top:6px;padding:6px}.modal{max-height:94vh;overflow:auto}#ttl .ttm{gap:6px}#ttl h1{font-size:26px}}
#ttl .ttsl.drop{border-color:var(--g);background:#14301ad9}#ttl .ttbk{cursor:grab}

/* v46.7.0: main menu, career screens and pause menu in the game's own look: the same black-bordered panels as the HUD,
   hard pixel shadows instead of glows, and buttons that smoothly grow from their centre on hover (ease in and out, like a video keyframe) */
#ttl{background:#050806a6}
#ttl .ttm{gap:0;width:min(340px,90vw);animation:ttin .25s steps(4) both}
#ttl .ttm h1{font-size:clamp(34px,7.5vw,54px);line-height:1.05;letter-spacing:2px;margin:0;color:var(--g);text-shadow:3px 3px 0 #0b3a22,6px 6px 0 #000;animation:ttbob 1.6s steps(1) infinite}
#ttl .ttm>.px{display:inline-block;margin:14px 0 16px;padding:4px 10px;background:#000;color:#e8f3ec;letter-spacing:3px;font-size:12px;box-shadow:3px 3px 0 #0b3a22}
#ttl .ttbx{display:flex;flex-direction:column;gap:10px;width:100%;box-sizing:border-box;background:#0b0f0de6;border:3px solid #000;box-shadow:inset 0 0 0 2px #2a352e,6px 6px 0 #000a;padding:14px}
#ttl .ttbx p{margin:-4px 0 0}
#ttl .ttw{background:#0b0f0de6;border:3px solid #000;box-shadow:inset 0 0 0 2px #2a352e,6px 6px 0 #000a;padding:16px;box-sizing:border-box;max-height:calc(100vh - 32px);overflow:auto;animation:ttin .25s steps(4) both}
#ttl .ttw h2,.pzm h2{font-size:24px;color:var(--g);text-shadow:3px 3px 0 #000}
#ttl .ttft{position:fixed;left:0;right:0;bottom:max(10px,env(safe-area-inset-bottom));text-align:center;color:#8aa094;font-size:11px;pointer-events:none;text-shadow:1px 1px 0 #000}
/* menu buttons: chunky, a ▶ marker on hover, and a smooth eased grow */
#ttl button,#pzm button{position:relative;border:3px solid #000;box-shadow:inset 0 -4px #0007,3px 3px 0 #000a;transition:transform .22s cubic-bezier(.65,0,.35,1),background .22s cubic-bezier(.65,0,.35,1),box-shadow .22s cubic-bezier(.65,0,.35,1)}
#ttl .ttbx>button,#ttl .ttw>button,#ttl .ttw .row2 button,#ttl .ttnc button,#pzm button{padding:12px;font-family:'Silkscreen',ui-monospace,monospace;font-size:15px;letter-spacing:1px}
#ttl button:not(:disabled):hover,#pzm button:not(:disabled):hover{z-index:1;transform:scale(1.07);box-shadow:inset 0 -4px #0007,5px 5px 0 #000a}
#ttl button.go:not(:disabled):hover,#pzm button.go:not(:disabled):hover{background:#5df2a6}
#ttl button:not(.go):not(:disabled):hover,#pzm button:not(.go):not(:disabled):hover{background:#3a4a40}
#ttl .ttbx>button::after,#ttl .ttw>button::after,#pzm button::after{content:'▶';position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:11px;opacity:0}
#ttl .ttbx>button:not(:disabled):hover::after,#ttl .ttw>button:not(:disabled):hover::after,#pzm button:not(:disabled):hover::after{opacity:1;animation:ttblk .8s steps(1) infinite}
#ttl button:not(:disabled):active,#pzm button:not(:disabled):active{transform:scale(.97);box-shadow:inset 0 -2px #0007,0 0 0 #000;transition-duration:.05s}
#ttl button:not(.go):not(:disabled),#pzm button:not(.go):not(:disabled){background:#26302a}
/* pause menu */
#pzo{backdrop-filter:blur(3px) saturate(.6)}
.pzm{border-width:3px;box-shadow:inset 0 0 0 2px #2a352e,6px 6px 0 #000a;padding:16px;animation:pzin .2s steps(3) both}
.pzm h2{margin:0}.pzm>p{margin:4px 0 6px}
@keyframes ttin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes pzin{from{opacity:0;transform:translate(-50%,-46%)}to{opacity:1;transform:translate(-50%,-50%)}}
@keyframes ttbob{50%{transform:translateY(-3px)}}
@keyframes ttblk{50%{opacity:0}}
@media(max-height:560px){#ttl .ttm h1{font-size:28px}#ttl .ttm>.px{margin:8px 0}#ttl .ttbx{gap:6px;padding:10px}#ttl .ttbx>button{padding:8px}#ttl .ttft{display:none}}
@media(prefers-reduced-motion:reduce){#ttl *,#load *,#pzm,#pzm *{animation:none!important}}
/* v46.8.0: the menu button feel everywhere in the game's own menus (making a song, settings, wardrobe, shops, pop-ups):
   black edge, hard shadow, smooth eased grow on hover, press-in on click. Left out: the in-game computer and phone
   screens (#pc, #ph, websites) and rhythm-game pads (anything pressed with onpointerdown). :where keeps it low priority,
   so screens with their own button colours keep them. */
:where(#ui .box,#ui .modal) button:where(:not(:is(#pc,#ph,.site,.bw,.pads,.kb,.mgpads,.lanes) button):not([onpointerdown])){position:relative;border-color:#000;box-shadow:inset 0 -3px #0007,2px 2px 0 #000a;transition:transform .22s cubic-bezier(.65,0,.35,1),background .22s cubic-bezier(.65,0,.35,1),box-shadow .22s cubic-bezier(.65,0,.35,1)}
:where(#ui .box,#ui .modal) button:where(:not(:is(#pc,#ph,.site,.bw,.pads,.kb,.mgpads,.lanes) button):not([onpointerdown]):not(:disabled):hover){z-index:1;transform:scale(1.05);box-shadow:inset 0 -3px #0007,3px 3px 0 #000a}
:where(#ui .box,#ui .modal) button:where(:not(:is(#pc,#ph,.site,.bw,.pads,.kb,.mgpads,.lanes) button):not([onpointerdown]):not(:disabled):not(.go):hover){background:#3a4a40}
:where(#ui .box,#ui .modal) button:where(.go:not(:is(#pc,#ph,.site,.bw,.pads,.kb,.mgpads,.lanes) button):not([onpointerdown]):not(:disabled):hover){background:#5df2a6}
:where(#ui .box,#ui .modal) button:where(:not(:is(#pc,#ph,.site,.bw,.pads,.kb,.mgpads,.lanes) button):not([onpointerdown]):not(:disabled):active){transform:scale(.97);box-shadow:inset 0 -2px #0007,0 0 0 #000;transition-duration:.05s}
/* v46.9.0: Make a song screen (165-song-menu.js) */
.recm{width:min(520px,94vw);box-sizing:border-box;padding:16px;border-width:3px;box-shadow:inset 0 0 0 2px #2a352e,6px 6px 0 #000a;max-height:92vh;overflow:auto}
.recm h2{font-size:24px;color:var(--g);text-shadow:3px 3px 0 #000;margin:0;text-align:center}
.recm .recl{font:12px 'Silkscreen',ui-monospace,monospace;letter-spacing:2px;color:var(--m);text-align:center;margin:2px 0 10px}
.recm .recg{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin:0 0 12px}
.recm .recg button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:56px;padding:10px 6px;font:14px 'Silkscreen',ui-monospace,monospace;letter-spacing:1px;border:3px solid #000}
.recm .rect{font:10px 'Silkscreen',ui-monospace,monospace;font-style:normal;padding:1px 5px;border:2px solid #000;letter-spacing:1px}
.recm .rect.up{background:var(--g);color:#04120a}.recm .rect.dn{background:#4a5a8a;color:#e8f3ec}
.recm .recx{margin:0 0 12px;border:3px solid #000;background:#0a0d0b;box-shadow:inset 0 0 0 2px #2a352e}
.recm .recx summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:10px;padding:10px 12px;font:14px 'Silkscreen',ui-monospace,monospace;letter-spacing:1px;color:var(--t)}
.recm .recx summary::-webkit-details-marker{display:none}
.recm .recx summary::before{content:'▶';font-size:10px;color:var(--g);transition:transform .22s cubic-bezier(.65,0,.35,1)}.recm .recx[open] summary::before{transform:rotate(90deg)}
.recm .recx summary small{font:12px ui-monospace,Menlo,Consolas,monospace;color:var(--m);letter-spacing:0;margin-left:auto;text-align:right}
.recm .recx summary:hover{background:#1b2520}
.recm .recxb{padding:2px 12px 10px;border-top:2px solid #2a352e}
.recm .recxb .r span{width:92px}.recm .recxb .dsel{flex:1}.recm .recxb .gen{margin:6px 0}
.recm .rech{font-size:12px;line-height:1.45;margin:0 0 12px;padding:8px 10px;background:#0a0d0b;border-left:3px solid var(--g)}
.recm .recc{width:100%;padding:10px;font:14px 'Silkscreen',ui-monospace,monospace;letter-spacing:1px}
.recm .amp{font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:700}
.recm .recf{font:11px ui-monospace,Menlo,Consolas,monospace;font-style:normal;font-weight:700;letter-spacing:0}.recm .recf.up{color:var(--g)}.recm .recf.dn{color:#ff8a7a}
.recm .recy{font-size:12px;color:var(--m);text-align:center;margin:-4px 0 10px}.recm .recy b{color:var(--t)}
