[hidden] { display: none !important; }

:root{
 --glass:rgba(250,250,252,.62);
 --glass2:rgba(255,255,255,.4);
 --tx:#14141a;
 --ac:#0a84ff;
 --bd:rgba(255,255,255,.5);
 --r:14px;
 --dock-size:52px;
}
html[data-dark]{
 --glass:rgba(28,28,34,.66);
 --glass2:rgba(60,60,70,.4);
 --tx:#f4f4f8;
 --bd:rgba(255,255,255,.15);
}
html[data-hc]{
 --glass:rgba(0,0,0,.85);
 --tx:#fff;
 --bd:rgba(255,255,255,.4);
}
*{box-sizing:border-box;margin:0}
html,body{height:100%}
body{
 font:14px/1.5 -apple-system,'SF Pro Text','Hiragino Sans',sans-serif;
 color:var(--tx);overflow:hidden;
 background:linear-gradient(135deg,#00c6fb,#6a5bf7 38%,#f45ec1 68%,#ffb03a);
}
body[data-w="2"]{background:linear-gradient(160deg,#12305b,#3b6fd4 45%,#7fd0ff)}
body[data-w="3"]{background:linear-gradient(140deg,#2b1055,#7597de)}
body[data-w="4"]{background:linear-gradient(150deg,#0f2027,#203a43 50%,#2c5364)}
body[data-w="img"]{background-size:cover;background-position:center}
.glass{
 background:var(--glass);
 backdrop-filter:blur(28px) saturate(180%);
 -webkit-backdrop-filter:blur(28px) saturate(180%);
 border:1px solid var(--bd);
}
#boot{position:fixed;inset:0;z-index:99999;background:#000;display:grid;place-items:center;transition:opacity .6s}
#boot img{width:180px;height:180px;border-radius:36px;box-shadow:0 20px 60px #000c}
#boot .bbar{width:220px;height:5px;border-radius:9px;background:#333;margin:30px auto 14px;overflow:hidden}
#boot .bbar i{display:block;height:100%;width:40%;background:#fff;border-radius:9px;animation:ld 1.2s infinite}
@keyframes ld{0%{margin-left:-40%}100%{margin-left:100%}}
#boot .bname{color:#fff;text-align:center;font-size:15px;letter-spacing:.3em;opacity:.8}
#menubar{
 position:fixed;top:0;left:0;right:0;height:32px;z-index:9000;
 display:flex;justify-content:space-between;align-items:center;
 padding:0 14px;font-size:13px;
 background:var(--glass);backdrop-filter:blur(24px) saturate(180%);
}
.mb-l,.mb-r{display:flex;gap:14px;align-items:center}
#mb-logo{width:20px;border-radius:5px}
.mb-i{cursor:pointer;padding:2px 8px;border-radius:6px}
.mb-i:hover{background:var(--glass2)}
.mb-r i{opacity:.7}
#menus{position:fixed;z-index:9500}
#menus .menu{
 min-width:200px;border-radius:10px;padding:4px;
 background:var(--glass);backdrop-filter:blur(30px);
 border:1px solid var(--bd);box-shadow:0 12px 40px #0006;
}
#menus .mi{
 padding:5px 12px;border-radius:7px;cursor:pointer;
 display:flex;justify-content:space-between;gap:20px;
}
#menus .mi:hover{background:var(--ac);color:#fff}
#desktop{position:fixed;inset:32px 0 0 0}
.win{
 position:fixed;display:flex;flex-direction:column;
 border-radius:var(--r);overflow:hidden;z-index:100;
 background:var(--glass);backdrop-filter:blur(34px) saturate(180%);
 border:1px solid var(--bd);box-shadow:0 24px 70px #0007;
 min-width:340px;min-height:200px;animation:op .18s;
}
@keyframes op{from{transform:scale(.92);opacity:0}}
html[data-reduce-motion] .win{animation:none}
.win.max{
 left:0!important;top:0!important;
 width:100%!important;height:calc(100% - 32px - 78px)!important;
 border-radius:0;
}
.win.minz{display:none}
.tbar{height:40px;display:flex;align-items:center;gap:10px;padding:0 12px;flex:none;user-select:none}
.lights{display:flex;gap:8px}
.l{width:12px;height:12px;border-radius:50%;border:0;cursor:pointer}
.l.c{background:#ff5f57}
.l.m{background:#febc2e}
.l.x{background:#28c840}
.ttitle{flex:1;text-align:center;font-weight:600;opacity:.85;pointer-events:none}
.ttitle i{margin-right:6px}
.wbody{flex:1;overflow:auto;position:relative;display:flex;flex-direction:column}
.rz{position:absolute;right:0;bottom:0;width:18px;height:18px;cursor:nwse-resize;z-index:5}
#dock{
 position:fixed;bottom:10px;left:50%;transform:translateX(-50%);
 display:flex;gap:9px;align-items:flex-end;padding:9px 12px;
 border-radius:24px;z-index:9000;
 background:var(--glass);backdrop-filter:blur(30px);
 border:1px solid var(--bd);
}
.dic{
 width:var(--dock-size,52px);height:var(--dock-size,52px);border-radius:13px;
 display:grid;place-items:center;font-size:calc(var(--dock-size,52px) * 0.5);cursor:pointer;
 position:relative;transition:transform .15s;
 background:linear-gradient(145deg,var(--c1),var(--c2));
 box-shadow:inset 0 1px 0 #fff6,0 6px 14px #0004;
 color:#fff;
}
.dic i{color:#fff}
.dic:hover{transform:translateY(-9px) scale(1.08)}
.dic.run::after{
 content:"";position:absolute;bottom:-7px;left:50%;
 transform:translateX(-50%);width:4px;height:4px;
 border-radius:50%;background:var(--tx);
}
#launchpad{
 position:fixed;inset:0;z-index:9400;
 background:rgba(20,20,40,.45);backdrop-filter:blur(40px);
 display:flex;flex-direction:column;align-items:center;padding:70px 30px;
}
#lp-q{
 width:min(420px,90%);padding:10px 18px;
 border-radius:99px;border:1px solid var(--bd);
 background:var(--glass);color:var(--tx);font-size:15px;outline:none;
}
#lp-grid{
 display:grid;grid-template-columns:repeat(auto-fill,110px);gap:26px;
 justify-content:center;margin-top:44px;overflow:auto;width:100%;
}
.lp-i{display:grid;justify-items:center;gap:8px;cursor:pointer;color:#fff;text-shadow:0 1px 6px #000a}
.lp-i b{
 font-size:20px;width:78px;height:78px;display:grid;place-items:center;
 border-radius:19px;background:linear-gradient(145deg,var(--c1),var(--c2));
 box-shadow:0 10px 24px #0006;
}
.lp-i b i{font-size:28px;color:#fff}
.lp-i.hidden-search{display:none}
#cc{position:fixed;top:40px;right:12px;z-index:9500;border-radius:16px;padding:14px;width:250px;display:grid;gap:12px}
#cc-wps{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}
.wp{width:38px;height:26px;border-radius:7px;cursor:pointer;border:2px solid transparent}
.wp.on{border-color:#fff}
#ctxmenu{
 position:fixed;z-index:99998;min-width:180px;border-radius:10px;padding:4px;
 background:var(--glass);backdrop-filter:blur(30px);
 border:1px solid var(--bd);box-shadow:0 12px 40px #0006;
}
#ctxmenu .cmi{
 padding:6px 12px;border-radius:7px;cursor:pointer;
 display:flex;align-items:center;gap:8px;font-size:13px;
}
#ctxmenu .cmi:hover{background:var(--ac);color:#fff}
#ctxmenu .cmi i{width:16px;text-align:center;opacity:.8}
#ctxmenu hr{border:0;border-top:1px solid var(--bd);margin:4px 0}
#toasts{position:fixed;bottom:86px;left:50%;transform:translateX(-50%);z-index:99990;display:grid;gap:8px}
.toast{
 padding:9px 20px;border-radius:99px;
 background:var(--glass);backdrop-filter:blur(20px);
 border:1px solid var(--bd);box-shadow:0 8px 30px #0006;animation:op .2s;
}
.toast.err{background:#ff375f;color:#fff;border-color:#ff375f}
.toolbar{display:flex;gap:6px;padding:8px 10px;flex-wrap:wrap;border-bottom:1px solid var(--bd);flex:none}
.btn{
 padding:6px 13px;border-radius:9px;
 border:1px solid var(--bd);background:var(--glass2);
 color:var(--tx);cursor:pointer;font-size:12.5px;
}
.btn:hover{filter:brightness(1.1)}
.btn.pri{background:var(--ac);color:#fff;border-color:transparent}
.btn.danger{background:#ff3b30;color:#fff;border-color:transparent}
input,select,textarea{
 padding:7px 10px;border-radius:9px;
 border:1px solid var(--bd);background:var(--glass2);
 color:var(--tx);font:inherit;outline:none;
}
textarea{resize:none}
.side{width:200px;flex:none;border-right:1px solid var(--bd);overflow:auto;padding:8px}
.row{padding:7px 10px;border-radius:8px;cursor:pointer;display:flex;gap:8px;align-items:center}
.row:hover{background:var(--glass2)}
.row.on{background:var(--ac);color:#fff}
.row i{width:18px;text-align:center}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--bd);font-size:13px}
.tabs{display:flex;gap:4px;padding:8px 10px 0;flex:none}
.tab{padding:6px 14px;border-radius:9px 9px 0 0;cursor:pointer;background:var(--glass2)}
.tab.on{background:var(--ac);color:#fff}
.mono{font-family:ui-monospace,Menlo,monospace}
.pref-group{margin:18px 0}
.pref-group h3{font-size:12px;opacity:.6;margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}
.pref-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--bd)}
.pref-row label{flex:1}
.pref-row input[type="range"]{width:140px}
.pref-row select{min-width:140px}
.pref-row input[type="checkbox"]{width:18px;height:18px}
#pwa-prompt{
 position:fixed;bottom:90px;right:20px;z-index:99995;
 border-radius:16px;padding:20px;width:320px;
 box-shadow:0 20px 60px #0006;
}
.pwa-content h3{margin-bottom:10px;font-size:15px}
.pwa-content p{font-size:13px;opacity:.7;margin-bottom:14px}
.pwa-content button{margin-right:8px}
.calc-grid{display:grid;gap:7px;flex:1}
.calc-grid button{
 font-size:18px;
 min-height:44px;
 display:flex;
 align-items:center;
 justify-content:center;
}
.iframe-error{
 flex:1;
 display:grid;
 place-items:center;
 text-align:center;
 padding:40px;
}
.iframe-error i{font-size:48px;margin-bottom:16px;opacity:.5}
.iframe-error h3{margin-bottom:8px}
.iframe-error p{opacity:.6;font-size:13px}