*{box-sizing:border-box}body{margin:0;height:100vh;overflow:hidden;font:12px Tahoma,Verdana,sans-serif;user-select:none}
#boot{position:fixed;inset:0;background:#000;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:99;gap:40px}
.bl{font-size:28px}.bl i{font-weight:bold;font-size:40px}.bl small{display:block;text-align:right;font-size:12px;color:#aaa}
.lg{display:inline-block;width:40px;height:40px;background:conic-gradient(#f35325 0 25%,#81bc06 0 50%,#ffba08 0 75%,#05a6f0 0);border-radius:6px 14px 6px 14px;vertical-align:middle;margin-right:8px}
.bar{width:150px;height:18px;border:2px solid #b2b2b2;border-radius:4px;overflow:hidden;position:relative}.bar span{position:absolute;width:9px;height:12px;top:1px;background:linear-gradient(#2838c7,#7aa0ff,#2838c7);animation:b 2s linear infinite}.bar span:nth-child(2){animation-delay:.15s}.bar span:nth-child(3){animation-delay:.3s}@keyframes b{from{left:-30px}to{left:160px}}
#login{position:fixed;inset:0;z-index:98;background:#5a7edc;display:flex;flex-direction:column}#login[hidden]{display:none}
.lt{height:80px;background:#00309c;border-bottom:2px solid #f90}.lb{height:80px;background:#00309c;border-top:2px solid #6b8fe3;color:#fff;padding:30px}
.lm{flex:1;display:flex;align-items:center;background:radial-gradient(circle at 20% 20%,#91b1f5,#5a7edc 50%)}.ll{flex:1;text-align:right;padding:40px;color:#fff;border-right:1px solid #9fb8f0}.ll h1{font-size:46px;margin:0;font-style:italic}.ll p{font-size:16px}
.lr{flex:1;padding:40px}.user{display:flex;align-items:center;gap:12px;color:#fff;font-size:20px;cursor:pointer;padding:8px;border-radius:6px;width:260px}.user:hover{background:#00309c}
.av{width:48px;height:48px;border:2px solid #fff;border-radius:4px;background:linear-gradient(135deg,#ffb347,#ff6f3c 50%,#5cb85c 50%)}
#desk{position:fixed;inset:0 0 30px 0;background:#3a6ea5}
#icons{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;flex-wrap:wrap;height:calc(100% - 20px);gap:14px;align-content:flex-start}
.ico{width:76px;text-align:center;color:#fff;text-shadow:1px 1px 2px #000;cursor:pointer;padding:2px}.ico div{font-size:32px;text-shadow:none}.ico.sel span{background:#316ac5}
.win{position:absolute;background:#ece9d8;border:3px solid #0831d9;border-top:0;border-radius:8px 8px 0 0;box-shadow:2px 2px 10px #0006;display:flex;flex-direction:column;min-width:200px;min-height:120px;resize:both;overflow:hidden}
.win.inact{border-color:#7a96df}.win.inact .tb{background:linear-gradient(#7a96df,#9db9eb)}.win.max{left:0!important;top:0!important;width:100%!important;height:100%!important;border-radius:0;resize:none}
.tb{height:28px;background:linear-gradient(#0997ff,#0053ee 10%,#0050ee 85%,#06f);color:#fff;display:flex;align-items:center;padding:0 3px 0 6px;font-weight:bold;font-size:13px;text-shadow:1px 1px #0f1089;border-radius:6px 6px 0 0;cursor:default}
.tb span{flex:1;overflow:hidden;white-space:nowrap}.tb button{width:21px;height:21px;margin-left:2px;border:1px solid #fff;border-radius:3px;background:linear-gradient(#3c8cfd,#0055ea);color:#fff;font-weight:bold;padding:0;cursor:pointer}.tb button.x{background:linear-gradient(#e97c5b,#c3381a)}
.menu{display:flex;gap:2px;padding:2px 4px;border-bottom:1px solid #d0cdb8}.menu span{padding:1px 6px}.menu span:hover{background:#316ac5;color:#fff}
.body{flex:1;overflow:auto;background:#fff;position:relative}
.list{display:flex;flex-wrap:wrap;gap:16px;padding:14px}.list div{width:90px;text-align:center}.list b{display:block;font-size:30px}
textarea.np{width:100%;height:100%;border:0;resize:none;font:13px Lucida Console,monospace;outline:0}
#task{position:fixed;left:0;right:0;bottom:0;height:30px;background:linear-gradient(#3168d5,#245edb 10%,#1941a5);display:flex;z-index:50}
#sbtn{width:100px;border:0;color:#fff;font:italic bold 18px Trebuchet MS,sans-serif;background:radial-gradient(circle at 30% 30%,#5eac56,#3c8f3c 60%,#2f7a2f);border-radius:0 12px 12px 0;text-shadow:1px 1px 2px #000;cursor:pointer;display:flex;align-items:center;gap:6px;padding-left:8px}
#sbtn i,.lgs{width:18px;height:18px;background:conic-gradient(#f35325 0 25%,#81bc06 0 50%,#ffba08 0 75%,#05a6f0 0);border-radius:3px 7px 3px 7px;display:inline-block}
#tbtns{flex:1;display:flex;gap:3px;padding:3px}#tbtns button{width:160px;color:#fff;border:0;border-radius:3px;background:#3c81f3;text-align:left;overflow:hidden;white-space:nowrap;cursor:pointer;font:11px Tahoma}#tbtns button.on{background:#1e52b7;box-shadow:inset 1px 1px 3px #0008}
#tray{background:#0f8ee8;background:linear-gradient(#0c59b9,#139ee9 10%,#18b9f9 90%);border-left:1px solid #092e69;color:#fff;padding:0 14px;display:flex;align-items:center}
#start{position:fixed;bottom:30px;left:0;width:400px;z-index:60;border-radius:8px 8px 0 0;overflow:hidden;box-shadow:2px 2px 10px #0008;background:#fff}#start[hidden]{display:none}
.sh{background:linear-gradient(#1868ce,#0e60cb 20%,#3b88ea);color:#fff;font-size:15px;display:flex;align-items:center;gap:10px;padding:8px}.sb{display:flex;border-top:2px solid #f90}
.sl{flex:1;padding:6px 0}.sr{flex:1;background:#d3e5fa;border-left:1px solid #95bdee;padding:6px 0}.si{display:flex;align-items:center;gap:8px;padding:5px 8px;cursor:pointer}.si:hover{background:#316ac5;color:#fff}.si b{font-size:22px;font-weight:normal}
.sf{background:linear-gradient(#3b88ea,#1868ce);padding:6px;text-align:right}.sf button{background:none;border:0;color:#fff;cursor:pointer;margin-left:10px}
.ms{background:#c0c0c0;padding:6px;display:inline-block}.mh{display:flex;justify-content:space-between;align-items:center;border:2px inset #fff;padding:3px;margin-bottom:6px}.lcd{background:#000;color:red;font:bold 20px monospace;padding:0 3px}
.mg{display:grid;border:3px inset #fff}.mg div{width:18px;height:18px;border:2px outset #fff;background:#c0c0c0;font:bold 12px Verdana;display:flex;align-items:center;justify-content:center;cursor:pointer}.mg div.o{border:1px solid #888}
.face{font-size:18px;cursor:pointer;border:2px outset #fff;padding:0 3px}
.ie{display:flex;flex-direction:column;height:100%}.ie form{display:flex;gap:4px;padding:3px;background:#ece9d8}.ie input{flex:1}.ie iframe{flex:1;border:0;width:100%}
table.xl{border-collapse:collapse;font:12px Arial}table.xl td,table.xl th{border:1px solid #d0d7e5;min-width:70px;height:18px;padding:0 2px}table.xl th{background:#ece9d8;font-weight:normal;min-width:30px}table.xl td.s{outline:2px solid #000}
.fx{display:flex;gap:4px;padding:3px;background:#ece9d8}.fx input{flex:1}
.pt{display:flex;height:100%}.pt .tools{width:60px;background:#ece9d8;padding:4px;display:flex;flex-wrap:wrap;gap:3px;align-content:flex-start}.pt .tools span{width:22px;height:22px;border:1px solid #666;cursor:pointer}.pt .tools{flex:0 0 60px}.pt .pcw{flex:1 1 auto;min-width:0;min-height:0;overflow:auto;background:#808080}.pt canvas{display:block;width:1000px;height:700px;max-width:none;background:#fff;cursor:crosshair;touch-action:none}

.wmpb{background:linear-gradient(#2a4a8a,#0b1d44)!important;color:#dfe8ff;display:flex;flex-direction:column}.wm{flex:1;display:flex;gap:6px;padding:6px;min-height:0}
.wv{flex:1;background:#000;border:2px solid #6c8ed6;border-radius:6px;position:relative;overflow:hidden}.wv canvas{width:100%;height:100%}.wt{position:absolute;bottom:4px;left:6px;font-size:11px;color:#9cf}
.wl{width:170px;margin:0;padding:4px;list-style:none;background:#0d2352;border:1px solid #6c8ed6;border-radius:6px;overflow:auto}.wl li{padding:3px;cursor:pointer}.wl li:hover{background:#2c56a8}.wl li.on{color:#7fff7f;font-weight:bold}
.wc{padding:6px;background:linear-gradient(#c9d6f2,#7a94cf);color:#000;border-radius:14px 14px 0 0}.wc .wp{width:100%}.wc button{border-radius:50%;width:28px;height:28px;border:1px solid #345;background:radial-gradient(#fff,#9ab);cursor:pointer}.wc .big{width:38px;height:38px;background:radial-gradient(#bfe,#3a7)}.wc .wvol{width:80px;vertical-align:middle}.wtime{float:right;margin-top:8px}
.wdt{display:flex;gap:3px;padding:3px;background:#ece9d8;border-bottom:1px solid #aaa;align-items:center}.wdt button{min-width:24px}.wds{margin-left:auto;color:#666}.wdbg{flex:1;overflow:auto;background:#8a96aa;padding:14px}.wdp{background:#fff;min-height:100%;max-width:640px;margin:auto;padding:40px 50px;outline:0;font:15px Times New Roman,serif;box-shadow:2px 2px 6px #0006;user-select:text}
.ies{background:#ece9d8;border-top:1px solid #aaa;padding:2px 6px;font-size:11px}.ie input{user-select:text}
.dpv{width:200px;height:125px;margin:8px auto;border:10px solid #555;border-radius:4px;background-size:cover!important}
.cm{position:fixed;z-index:200;background:#fff;border:1px solid #888;box-shadow:2px 2px 4px #0005;padding:2px;min-width:160px}.cm div{padding:4px 18px;cursor:default}.cm div:hover{background:#316ac5;color:#fff}.cm hr{border:0;border-top:1px solid #ccc;margin:2px}
.ext{display:flex;gap:4px;align-items:center;padding:3px;background:#ece9d8;border-bottom:1px solid #aaa}.ext .exa{flex:1;user-select:text}.exi.sel{background:#316ac5;color:#fff}.exi{cursor:default}
.calc{padding:8px}.cd{width:100%;text-align:right;font:18px Tahoma;margin-bottom:8px}.ck{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.ck button{height:34px;color:#00c;font:13px Tahoma;border:1px solid #888;border-radius:3px;background:linear-gradient(#fff,#e3e3db)}
.cmdb{background:#000!important;color:#c0c0c0;font:14px Lucida Console,Consolas,monospace;padding:4px;user-select:text}.cmdb pre{margin:0;font:inherit;white-space:pre-wrap}.cl{display:flex}.cl input{flex:1;background:#000;color:#c0c0c0;border:0;outline:0;font:inherit;padding:0}
.solb{background:#007c00!important;overflow:auto}.sa{position:relative;min-height:600px}.sc,.sslot{position:absolute;width:70px;height:96px;border-radius:5px}.sslot{border:2px solid #0a5;color:#0a5;font-size:28px;display:flex;align-items:center;justify-content:center}
.sc{background:#fff;border:1px solid #333;padding:2px 4px;font:bold 14px Arial;cursor:pointer;box-shadow:1px 1px 2px #0006}.sc b{position:absolute;right:6px;bottom:4px;font-size:30px}.sc.back{background:repeating-linear-gradient(45deg,#1b4fbd 0 4px,#3a73e0 4px 8px);border:2px solid #fff}.sc.sel{filter:brightness(.7) sepia(.4)}
/* Luna polish */
.tb{background:linear-gradient(180deg,#0a5ef5 0,#3d95ff 4%,#1c6ef0 12%,#0058e6 40%,#0053e0 85%,#0a3fb9 100%)}
.tb button{border:1px solid #fff;border-radius:3px;background:linear-gradient(135deg,#5fa1ff,#2667e8 60%,#1a4fc8);box-shadow:inset -1px -1px 2px #0a2c8a,inset 1px 1px 2px #a9ccff;font:bold 11px Tahoma}
.tb button:hover{filter:brightness(1.15)}.tb button.x{background:linear-gradient(135deg,#f3a284,#e2552d 55%,#b8350f);box-shadow:inset -1px -1px 2px #7a1f05,inset 1px 1px 2px #ffd0bf}
.win{border-color:#0055ea;box-shadow:inset 0 0 0 1px #3d82f5,3px 3px 12px #0007}
#sbtn{background:linear-gradient(180deg,#3c9f3c,#47b347 15%,#36a036 60%,#2b8a2b);box-shadow:inset -2px 0 4px #1d5f1d,inset 2px 2px 3px #8ad98a}#sbtn:hover{filter:brightness(1.1)}
#tbtns button{background:linear-gradient(#5b9cfb,#3a80f3 15%,#3778ef 85%,#2a5fcc);border:1px solid #1a4cb0;box-shadow:inset 1px 1px 1px #8fbcff}#tbtns button.on{background:linear-gradient(#1e4fb8,#2860cc)}
.si{border-radius:2px}.sl .si{font-weight:bold}.sr .si{color:#0a246a}.sr .si:hover{color:#fff}
.ico span{padding:0 2px;border-radius:2px}
::-webkit-scrollbar{width:16px;height:16px}::-webkit-scrollbar-track{background:#f4f3ee}::-webkit-scrollbar-thumb{background:linear-gradient(90deg,#c8d9fb,#b6cbf7);border:1px solid #95afe8;border-radius:3px}
.wlw{width:180px;display:flex;flex-direction:column;gap:4px}.wlw .wl{width:auto;flex:1}.wdrop{border:2px dashed #6c8ed6;border-radius:6px;padding:6px;text-align:center;font-size:11px;color:#9cf}.wmpb.drag .wdrop{background:#2c56a8;color:#fff}
.iefav{display:flex;gap:10px;padding:2px 6px;background:#ece9d8;border-bottom:1px solid #aaa;font-size:11px}.iefav a{color:#0a246a;cursor:pointer}.iefav a:hover{text-decoration:underline}

.wlist{height:120px;overflow:auto;background:#fff;border:1px solid #7f9db9}.wlist div{display:flex;align-items:center;gap:6px;padding:2px 4px;cursor:pointer;font-size:12px}.wlist div.on{background:#316ac5;color:#fff}.wlist img,.wlist i{width:40px;height:25px;object-fit:cover;flex:none;border:1px solid #999;display:block}
.wvm{position:absolute;right:4px;top:4px;display:flex;gap:2px}.wvm button{font-size:10px;padding:0 4px;opacity:.7}.wvm button.on{opacity:1;font-weight:bold}.wcred{font-size:9px;color:#9ab;padding:2px 4px;line-height:1.2}.wv{position:relative}
.mypics{margin-top:6px;font-size:12px}.mypics .mpm{color:#666;font-size:11px}.mpl{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px;max-height:90px;overflow:auto;border:1px dashed #9ab;padding:3px;min-height:30px}.mpi{position:relative;width:64px;cursor:pointer;font-size:9px;text-align:center;overflow:hidden}.mpi img{width:64px;height:40px;object-fit:cover;display:block;border:2px solid transparent}.mpi.on img{border-color:#316ac5}.mpi span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mpi button{position:absolute;top:0;right:0;font-size:9px;padding:0 3px;line-height:12px}
.xi{width:16px;height:16px;vertical-align:-3px;display:inline-block;object-fit:contain}.xib{width:40px;height:40px;vertical-align:middle;filter:drop-shadow(1px 2px 1px rgba(0,0,0,.35))}.si .xi,.exi .xi,.list .xi{width:24px;height:24px}#icons .ico.sel .xib{filter:drop-shadow(1px 2px 1px rgba(0,0,0,.35)) brightness(.75) sepia(1) hue-rotate(180deg) saturate(3)}
.ytpb{display:flex;flex-direction:column;background:#000!important}.ytpw{flex:1;position:relative;min-height:0}.ytpw>div,.ytpw iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.ytph{background:#000 center/cover;display:flex;align-items:center;justify-content:center}.ytpgo{font-size:20px;padding:10px 24px;background:#e00;color:#fff;border:0;border-radius:12px;cursor:pointer}.ytpbar{display:flex;justify-content:space-between;gap:8px;padding:4px 8px;background:#ece9d8;font-size:11px}.ytpbar a{color:#06c}
/* flat render mode for video windows: no radius/overflow clip/shadow/filter/transform on iframe ancestors (Linux/embedded Chromium video overlay) */
.win.ytflat{border-radius:0!important;overflow:visible!important;box-shadow:none!important;filter:none!important;transform:none!important;opacity:1!important;will-change:auto!important;resize:none}
.win.ytflat .body,.ytpw,.ytpw iframe{border-radius:0;overflow:visible;transform:none;filter:none;opacity:1}
#ytcompat{position:fixed;inset:0;z-index:2147483647;background:#000;display:flex;flex-direction:column}#ytcompat iframe{flex:1;width:100%;border:0}.ytcbar{background:#222;color:#fff;padding:6px;font:13px Tahoma,sans-serif}.ytcbar button{font-size:14px;padding:4px 12px}.ytcbar a{color:#9cf;margin-left:10px}
.ytpc{font-size:11px;padding:1px 6px}
/* minimize: keep window alive (iframes/video not reloaded) */
.win.mini{visibility:hidden!important;pointer-events:none!important;left:-10000px!important}
.win.mini iframe{visibility:hidden}
@media (pointer:coarse){.tb{height:36px}.tb button{width:32px!important;height:30px!important;font-size:15px!important;margin-left:4px}#tbtns button{min-height:34px;min-width:90px}}
.wl li{display:flex;align-items:center;gap:4px}.wl .wln{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.wlb{display:flex;gap:3px;flex:none}.wlb button{min-width:30px;min-height:28px;font-size:14px;padding:0 6px;cursor:pointer}.wdel{color:#b00}.exdel{min-height:28px}@media (pointer:coarse){.wlb button{min-width:40px;min-height:36px}.wl li{min-height:40px}.exdel,.ext button{min-height:36px}}
.vdb{background:linear-gradient(#f4f7fc,#e3eaf5)!important;display:flex;flex-direction:column;overflow:auto;font-family:Tahoma,Arial,sans-serif;color:#123}
.vtabs{display:flex;gap:3px;padding:4px 6px 0;border-bottom:1px solid #9ab;align-items:flex-end}.vtabs button{min-height:30px;padding:0 12px;border:1px solid #9ab;border-bottom:0;border-radius:5px 5px 0 0;background:linear-gradient(#fff,#dde5f2);cursor:pointer;font-size:12px}.vtabs button.on{background:#fff;font-weight:bold;border-top:3px solid #f29a0c}
.vclock{margin-left:auto;font-size:12px;background:#0a3fa8;color:#fff;padding:3px 8px;border-radius:3px;margin-bottom:3px}
.vpane{padding:6px;flex:1}.vpane canvas{width:100%;height:auto;display:block;background:#fff;border:1px solid #c5d0e0;border-radius:4px}.vrow{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.vrow .vf{flex:1 1 300px;width:auto;max-width:60%}
.vtiles{flex:1 1 220px;display:grid;grid-template-columns:1fr 1fr;gap:5px;align-content:start}.vt{background:#fff;border-left:5px solid;border-radius:4px;padding:5px 7px;box-shadow:0 1px 2px #0002}.vt span{display:block;font-size:10px;color:#567}.vt b{font-size:15px}
.vhsel{display:flex;gap:4px;margin-bottom:5px;flex-wrap:wrap}.vhsel button{min-height:30px;padding:0 10px;cursor:pointer}.vhsel button.on{font-weight:bold;background:#dfe9ff}.vtot{font-size:12px;margin-top:6px;line-height:1.7}
.vstat{display:flex;gap:12px;font-size:11px;padding:3px 8px;border-top:1px solid #aab;background:#ece9d8;flex-wrap:wrap}.vconn{font-weight:bold}
.vsg{display:grid;grid-template-columns:1fr 1fr;gap:8px}.vsg div{background:#fff;border:1px solid #c5d0e0;border-radius:4px;padding:8px}.vsg b{display:block;font-size:11px;color:#567}.vbar{display:block;height:10px;background:#e3e8f0;border-radius:5px;margin:4px 0;overflow:hidden}.vbar i{display:block;height:100%;background:linear-gradient(90deg,#3c3,#fc3,#e33)}.vnote{font-size:11px;color:#567}
.vwbar{display:flex;gap:8px;align-items:center;padding:4px 8px;background:#ece9d8;border-bottom:1px solid #aab;font-size:12px}.vwbar span{flex:1;background:#fff;border:1px solid #7f9db9;padding:2px 5px;overflow:hidden;white-space:nowrap}.vwbar a{color:#06c}
.vtabs .vfsb{min-height:26px;margin:0 0 3px 4px;padding:0 8px;font-size:16px;border-radius:3px;border:1px solid #9ab;background:linear-gradient(#fff,#dde5f2);cursor:pointer}
.vweb{padding:0;display:flex;min-height:0}.vweb[hidden]{display:none}.vweb iframe{flex:1;width:100%;height:100%;min-height:300px;border:0;display:block;touch-action:auto}
.win.vfs{position:fixed!important;left:0!important;top:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;z-index:2147483000!important;border-radius:0!important;resize:none}
.win.vfs:fullscreen{width:100%!important;height:100%!important}

.roulb{background:#0a3d1e!important;color:#fff;padding:0!important;overflow:hidden;font-family:Tahoma,Arial,sans-serif;container-type:size}
.rwrap{display:flex;gap:10px;height:100%;padding:8px;box-sizing:border-box;background:radial-gradient(ellipse at 40% 30%,#1a7a3a,#0a4a22 60%,#06301a)}
.rleft{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:6px;width:min(42%,calc(100cqh - 56px))}.rleft canvas{width:100%;height:auto;aspect-ratio:1;border-radius:50%;box-shadow:0 8px 22px rgba(0,0,0,.6)}
.rmsg{width:100%;box-sizing:border-box;text-align:center;background:rgba(0,0,0,.35);border:1px solid #c8a040;border-radius:4px;padding:5px;font-size:13px;color:#ffe9a0;min-height:18px}
.rright{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.rhead{display:flex;gap:14px;align-items:center;font-size:13px}.rhead b{color:#ffd84a;font-size:17px;margin-left:4px}
.rhist{display:flex;gap:3px;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.rhist span{min-width:24px;height:24px;line-height:24px;text-align:center;border-radius:12px;font-size:11px;font-weight:bold;box-shadow:inset 0 -2px 3px rgba(0,0,0,.4)}.hr{background:#c0141a}.hb{background:#141414}.hg{background:#0f8a32}
.rfelt{flex:1;min-height:0;border:3px solid #c8a040;border-radius:8px;padding:6px;background:#0d6a30 repeating-linear-gradient(45deg,rgba(255,255,255,.025) 0 2px,transparent 2px 5px);box-shadow:inset 0 0 30px rgba(0,0,0,.45)}
.rtab{display:grid;grid-template-columns:7% 1fr 7%;grid-template-rows:3fr 1fr 1fr;gap:0;height:100%}
.rzero{grid-row:1;grid-column:1;display:grid;grid-template-rows:1fr 1fr}.rgrid{grid-row:1;grid-column:2;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(3,1fr)}.rcols{grid-row:1;grid-column:3;display:grid;grid-template-rows:repeat(3,1fr)}
.rdoz{grid-row:2;grid-column:2;display:grid;grid-template-columns:repeat(3,1fr)}.rout{grid-row:3;grid-column:2;display:grid;grid-template-columns:repeat(6,1fr)}
.rc{position:relative;min-height:30px;border:1px solid #d8b048;background:transparent;color:#fff;font-weight:bold;font-size:clamp(11px,1.6cqw,17px);cursor:pointer;padding:0;touch-action:manipulation;text-shadow:0 1px 2px #000}
.rc.rn span,.rc.bn span,.rc.gn span{display:inline-flex;align-items:center;justify-content:center;min-width:60%;padding:3px 2px;border-radius:4px}
.rc.rn span{background:radial-gradient(circle at 35% 30%,#ff4a4a,#a00a10)}.rc.bn span{background:radial-gradient(circle at 35% 30%,#555,#0a0a0a)}.rc.gn{background:linear-gradient(#18a040,#0a6a28)}
.rc:hover{background-color:rgba(255,255,255,.08)}.rc:active{background-color:rgba(255,255,255,.18)}
.rc.won{animation:rglow 1s ease-in-out infinite alternate;z-index:2}@keyframes rglow{from{box-shadow:0 0 6px 2px #ffd84a,inset 0 0 8px #ffd84a}to{box-shadow:0 0 18px 6px #ffe98a,inset 0 0 14px #fff2b0}}
.dia{display:inline-block;width:22px;height:14px;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.dia.rd{background:#e01a1a}.dia.bk{background:#111;box-shadow:0 0 0 1px #fff}
.rc i{position:absolute;right:2px;top:2px;font-style:normal;font-size:10px;width:22px;height:22px;line-height:18px;text-align:center;border-radius:50%;color:#000;background:repeating-conic-gradient(#ffd84a 0 20deg,#fff 20deg 40deg);border:2px solid #b8901a;display:none;box-shadow:0 2px 3px rgba(0,0,0,.6)}.rc i:empty{display:none}.rc.has i{display:block}
.rctl{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.rchips{display:flex;gap:6px}
.chip{width:46px;height:46px;border-radius:50%;border:0;cursor:pointer;padding:0;position:relative;box-shadow:0 4px 0 rgba(0,0,0,.45),0 6px 8px rgba(0,0,0,.4);background:repeating-conic-gradient(var(--c) 0 22.5deg,#fff 22.5deg 30deg,var(--c) 30deg 45deg);transition:transform .1s}
.chip span{position:absolute;inset:8px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,var(--c) 75%);border:2px dashed rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;font-weight:bold;font-size:12px;color:#fff;text-shadow:0 1px 2px #000}
.chip.c1{--c:#8a8a8a}.chip.c5{--c:#c0141a}.chip.c10{--c:#1f4fcf}.chip.c25{--c:#138a32}.chip.c100{--c:#202020}.chip.on{transform:translateY(-4px);outline:3px solid #ffd84a;outline-offset:2px}
.ract{display:flex;gap:6px}.ract button{min-height:38px;padding:0 14px;font-weight:bold;cursor:pointer;border-radius:5px;border:1px solid #8a6a20;background:linear-gradient(#fff,#e0d8c0)}.rspin{background:linear-gradient(#ffe36e,#e0a010)!important;font-size:15px}.rspin:disabled{opacity:.55}
.rnote{font-size:10px;color:#bfe3c8}
@container (max-width:640px){.rwrap{flex-direction:column;overflow:auto}.rleft{width:min(70%,300px);align-self:center}.rfelt{min-height:260px}}
.trit{display:inline-flex;align-items:center;gap:3px;margin-right:10px;cursor:pointer;font-size:11px;white-space:nowrap;padding:2px 3px;border-radius:3px;min-height:22px}.trit:hover{background:rgba(255,255,255,.15)}.trit img{width:16px;height:16px}.trit b{font-weight:normal}.trit i{font-style:normal;font-size:9px}.trit i.up,.trpop .up{color:#7fff8a}.trit i.dn,.trpop .dn{color:#ff8a8a}
.trpop{animation:trin .2s ease-out;transition:transform .3s ease-in,opacity .3s ease-in;position:fixed;z-index:2147483600;background:#ffffe1;color:#000;border:1px solid #000;border-radius:6px;padding:8px 12px;font:12px Tahoma,sans-serif;box-shadow:2px 2px 6px rgba(0,0,0,.4);min-width:150px;line-height:1.5}.trpop .big{font-size:20px;font-weight:bold}.trpop .up{color:#0a8a2a}.trpop .dn{color:#c01010}.trpop small{color:#666}
@media (pointer:coarse){.trit{min-height:30px;font-size:12px}}
/* animations (transform/opacity only, removed after) */
@keyframes xpopen{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}@keyframes xpclose{to{opacity:0;transform:scale(.96)}}@keyframes xpfade{from{opacity:.4}to{opacity:1}}@keyframes xpslide{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.win.xpopen{animation:xpopen .15s ease-out}.win.xpclose{animation:xpclose .13s ease-in forwards}.win.xpfade{animation:xpfade .18s ease-out}#start.xpslide{animation:xpslide .16s ease-out}
.xpghost{position:fixed;z-index:2147483500;border:2px solid rgba(255,255,255,.9);outline:1px solid rgba(0,40,140,.8);background:rgba(120,170,255,.12);pointer-events:none;transform-origin:0 0}
#tbtns button{transition:background-color .15s,box-shadow .15s,filter .15s}#tbtns button:active{filter:brightness(.85)}#tbtns button.on{box-shadow:inset 0 1px 3px rgba(0,0,0,.45)}.win .tb{transition:filter .15s}
@media (prefers-reduced-motion:reduce){.win.xpopen,.win.xpclose,.win.xpfade,#start.xpslide{animation:none}}
/* WMP effects */
.wc button{transition:transform .08s,box-shadow .2s,filter .2s}.wc button:active{transform:scale(.9)}.wc button.big{box-shadow:0 0 0 rgba(80,180,255,0)}.wmpb .big{animation:wglow 1.8s ease-in-out infinite alternate}@keyframes wglow{from{box-shadow:0 0 4px 1px rgba(90,170,255,.5)}to{box-shadow:0 0 14px 4px rgba(120,200,255,.9)}}
.wt{white-space:nowrap;overflow:hidden;right:6px}.wt.scroll span{display:inline-block;padding-left:100%;animation:wscroll 12s linear infinite}@keyframes wscroll{to{transform:translateX(-100%)}}
.wp{accent-color:#3a9bff;background:linear-gradient(90deg,#1f4fcf,#5ac8ff,#1f4fcf);background-size:200% 100%;animation:wseek 3s linear infinite;border-radius:6px;height:8px}@keyframes wseek{to{background-position:200% 0}}
.wvm{flex-wrap:wrap;max-width:60%;justify-content:flex-end}.wup{font-size:11px}
@media (prefers-reduced-motion:reduce){.wt.scroll span,.wp,.wmpb .big{animation:none}}
/* mobile virtual desktop */
html.xpm{overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:none}
html.xpm body{overflow:hidden;position:relative}
html.xpmp{overflow:hidden}
html.xpm .tb{touch-action:none}

@keyframes trin{from{transform:translateY(8px);opacity:0}}.trpop.bye{transform:translateY(-14px);opacity:0;pointer-events:none}.trpop .wxsw{margin-top:6px}.trpop select{font:11px Tahoma,sans-serif;max-width:170px}

.wc button.wshuf{font-size:13px;line-height:1}.wc button.wshuf.on{background:radial-gradient(#eaffea,#3c3);box-shadow:0 0 6px #4f4;border-color:#162}
