:root{--wall1:#0b3d91;--wall2:#1b6ac9;--wall3:#4aa3ff;--accent:#0078d4;--taskbar:rgba(243,243,243,.82);--win-bg:#f3f3f3;--radius:8px;--shadow:0 8px 32px rgba(0,0,0,.35);--font:"Segoe UI",system-ui,Roboto,Arial,sans-serif}
*{box-sizing:border-box;margin:0;padding:0;user-select:none}
html,body{height:100%;overflow:hidden;font-family:var(--font)}
body{background:linear-gradient(135deg,var(--wall1),var(--wall2) 55%,var(--wall3))}
.hidden{display:none!important}
#boot-screen{position:fixed;inset:0;background:#000;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:42px;z-index:999}
.boot-logo{display:flex;align-items:center;gap:14px}
.boot-squares{display:grid;grid-template-columns:repeat(2,26px);gap:3px}
.boot-squares span{background:var(--accent);height:26px}
.boot-text{font-size:44px;font-weight:300}.boot-text span{font-weight:600}
.boot-spinner{width:44px;height:44px;border-radius:50%;border:4px solid #333;border-top-color:#fff;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
#login-screen{position:fixed;inset:0;z-index:998;background:linear-gradient(135deg,#0b3d91,#1b6ac9 55%,#4aa3ff);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer}
.login-clock{text-align:center}
#lock-time{font-size:96px;font-weight:200}#lock-date{font-size:26px;font-weight:300}
.login-hint{margin-top:40px;font-size:15px;opacity:.9}
.login-panel{display:flex;flex-direction:column;align-items:center;gap:8px;background:rgba(0,0,0,.25);padding:40px 70px;border-radius:12px}
.avatar{width:120px;height:120px;border-radius:50%;background:#0078d4;display:flex;align-items:center;justify-content:center;font-size:56px}
.mini-avatar{width:28px;height:28px;border-radius:50%;background:#0078d4;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:14px}
.login-name{font-size:28px;font-weight:600}.login-sub{opacity:.85;margin-bottom:10px}
.login-btn{background:rgba(255,255,255,.25);border:1px solid rgba(255,255,255,.4);color:#fff;padding:8px 40px;border-radius:4px;cursor:pointer;font-size:15px}
.login-spinner{width:26px;height:26px;border-radius:50%;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;animation:spin .8s linear infinite}
#desktop{position:fixed;inset:0 0 48px 0}
.desktop-icons{position:absolute;top:12px;left:12px;display:flex;flex-direction:column;flex-wrap:wrap;gap:4px;max-height:calc(100% - 20px);z-index:1}
.d-icon{width:92px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#fff;font-size:12px;text-align:center;cursor:pointer;border:1px solid transparent;border-radius:4px;text-shadow:0 1px 3px rgba(0,0,0,.7)}
.d-icon:hover{background:rgba(255,255,255,.15)}
.d-icon.selected{background:rgba(255,255,255,.25)}
.d-icon .glyph{width:44px;height:44px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:26px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25)}
.d-icon img.app-img{width:44px;height:44px;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5));border-radius:8px}
.start-app img.app-img{width:34px;height:34px;object-fit:contain}
.start-app img.app-img.sm,.tb-app img.app-img{width:22px;height:22px;object-fit:contain}
.tb-app img.app-img.sm{width:20px;height:20px}
.chrome-tabs{display:flex;gap:4px;background:#39415f;padding:6px 8px 0;overflow-x:auto}
.chrome-tab{background:#2b3350;color:#cfd6ea;border:0;border-radius:8px 8px 0 0;padding:7px 12px;font-size:12px;cursor:pointer;white-space:nowrap;max-width:230px;overflow:hidden;text-overflow:ellipsis}
.chrome-tab.active{background:#fff;color:#222}
.chrome-addr{display:flex;align-items:center;gap:8px;background:#f5f6f8;border-bottom:1px solid #dde;padding:7px 12px;font-size:12px;color:#555}
.chrome-url{flex:1;background:#e8ecf3;border-radius:14px;padding:4px 12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chrome-frame{width:100%;height:100%;min-height:340px;border:0;background:#fff}
.chrome-view{display:flex;flex-direction:column;min-height:380px;background:#fff}
.chrome-fallback{padding:32px;color:#444}
.btn.small{padding:4px 10px;font-size:12px}
.wa-app{display:flex;flex-direction:column;min-height:380px;background:#0b141a;border-radius:8px;overflow:hidden;color:#fff}
.wa-head{display:flex;align-items:center;gap:8px;background:#1f2c34;padding:10px}
.wa-avatar{width:34px;height:34px;border-radius:50%;background:#00a884;display:flex;align-items:center;justify-content:center;font-weight:700}
.wa-who{flex:1}.wa-who small{display:block;color:#8696a0;font-size:11px}
.wa-messages{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px;min-height:220px}
.wa-msg{max-width:80%;padding:8px 10px;border-radius:10px;font-size:13px}
.wa-msg.in{background:#1f2c34;align-self:flex-start}
.wa-msg.out{background:#005c4b;align-self:flex-end}
.wa-input{display:flex;gap:8px;padding:10px;background:#1f2c34}
.wa-input input{flex:1;border:0;border-radius:18px;padding:8px 12px;font-size:13px;background:#2a3942;color:#fff}
.mus-app{display:flex;gap:12px;align-items:center;padding:18px}
.mus-art{width:64px;height:64px;border-radius:12px;background:linear-gradient(135deg,#0078d4,#7c3aed);display:flex;align-items:center;justify-content:center;font-size:30px;color:#fff;flex:none}
.mus-meta{flex:1;min-width:0}
.mus-bar{height:5px;background:#e2e2e2;border-radius:99px;margin:8px 0 4px;overflow:hidden}
.mus-bar span{display:block;height:100%;width:32%;background:#22c55e;border-radius:99px;animation:musbar 6s linear infinite}
@keyframes musbar{0%{width:5%}50%{width:60%}100%{width:95%}}
.mus-time{font-size:11px;color:#666}
.mus-ctl{display:flex;flex-direction:column;gap:6px}
.wa-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:99px;background:#e81123;color:#fff;font-size:11px;margin-left:6px;padding:0 4px}
#windows-layer{position:absolute;inset:0;z-index:5;pointer-events:none}
.win{position:absolute;min-width:320px;min-height:200px;background:var(--win-bg);border-radius:var(--radius);box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden;pointer-events:auto;border:1px solid rgba(0,0,0,.15)}
.win.maximized{inset:0!important;width:auto!important;height:auto!important;border-radius:0}
