/* Desktop workspace, intentionally separate from the restored sites' styles. */
body.desktop-os{--task-height:48px;height:100dvh;overflow:hidden;background:#142939;font-family:"Segoe UI","Microsoft YaHei",sans-serif}
body.desktop-os #app{display:block!important;position:relative;height:100dvh!important;width:100%;overflow:hidden;background:#152936!important;padding:0!important}
#desktop-surface{position:absolute;inset:0 0 var(--task-height);background:linear-gradient(110deg,#061727a8,#142a3240 60%,#081829bd),url('assets/street-hd.webp') center/cover}
body[data-wallpaper="blue"] #desktop-surface{background:radial-gradient(ellipse at 75% 30%,#76a8b4 0,transparent 45%),linear-gradient(140deg,#172d48,#376b80 48%,#163b53)}
.desktop-brand{position:absolute;right:48px;top:42px;color:#ffffff65;font-weight:200;font-size:46px;letter-spacing:8px}.desktop-brand span{display:block;font-size:10px;letter-spacing:3px}
.desktop-launchers{position:absolute;left:12px;top:14px;display:flex;flex-direction:column;gap:4px}
.desktop-launchers button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:86px;height:86px;padding:8px 3px;background:transparent;border:1px solid transparent;border-radius:3px;color:white;font-size:12px;text-shadow:0 1px 3px #000;user-select:none}
.desktop-launchers button:hover{background:#ffffff15;border-color:#ffffff32}.desktop-launchers button.selected,.desktop-launchers button:focus-visible{background:#7fcaff32;border-color:#a8d7fa88;outline:none}
.desktop-sticky{position:absolute;right:35px;top:160px;width:175px;padding:20px;background:#eddfaa;box-shadow:2px 6px 22px #0005;color:#5c594a;transform:rotate(2deg);font-size:14px;line-height:1.8}.desktop-sticky b{font-size:12px;font-weight:400}.desktop-sticky small{color:#8b846a;font-size:11px}
.desktop-tip{position:absolute;bottom:12px;left:115px;color:#ffffff80;font-size:11px;pointer-events:none}
.desktop-welcome{position:absolute;left:calc(50% - 240px);top:25%;width:420px;padding:28px;background:#f4f6f5f2;border:1px solid #fff8;box-shadow:0 14px 40px #0006;border-radius:7px;color:#354552}.desktop-welcome h2{font-size:24px;font-weight:400}.desktop-welcome p{line-height:1.9;font-size:14px}.desktop-welcome small{font-size:11px;color:#7d8c97}.desktop-welcome button{margin-top:10px;background:#2e668e;color:white;padding:9px 18px;border:0;border-radius:3px}
#window-stage{position:absolute;inset:0 0 var(--task-height);pointer-events:none;overflow:hidden}
.os-window{position:absolute;display:flex;flex-direction:column;min-width:0;min-height:0;pointer-events:auto;border:1px solid #899aa7;border-radius:7px;background:#fff;box-shadow:0 12px 35px #0006;overflow:visible;contain:layout style}
.os-window[hidden]{display:none!important}.os-window.focused{border-color:#8298aa;box-shadow:0 18px 60px #0007}.os-window.maximized{border-radius:0;border:0}.os-window>header{border-radius:6px 6px 0 0}
.wm-titlebar{height:35px;flex:0 0 35px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-left:12px;background:#e9eef3;color:#65717d;cursor:default;user-select:none;touch-action:none;outline-offset:-3px}.focused .wm-titlebar{color:#344b5d;background:#e3edf5}.wm-titlebar>span{display:flex;align-items:center;gap:8px;font-size:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;pointer-events:none}.wm-controls{align-self:stretch;display:flex;flex:none}.wm-controls button{width:44px;height:34px;min-height:0;padding:0;border:0;border-radius:0;background:transparent;font:18px "Segoe UI",sans-serif;color:inherit}.wm-controls button:hover{background:#cad6df}.wm-controls button[data-wm="close"]:hover{color:white;background:#d94343}
body.desktop-os .window-content,body.desktop-os #game-screen{position:relative;display:block;flex:1 1 0;min-width:0;min-height:0;width:auto;margin:0!important;overflow:auto;overscroll-behavior:contain;border:0!important;background:#fff;scrollbar-width:thin;border-radius:0 0 6px 6px}
.window-content>section{max-width:100%!important}.window-content>.site-disclaimer{padding:18px}.window-content:focus{outline:none}
.window-focus-cover{display:block;position:absolute;inset:35px 0 0;background:transparent;border:0!important;border-radius:0;z-index:3;cursor:default}.os-window.focused .window-focus-cover{display:none}
.resize-edge{position:absolute;z-index:5;touch-action:none}.resize-n,.resize-s{height:7px;left:8px;right:8px;cursor:ns-resize}.resize-n{top:-4px}.resize-s{bottom:-4px}.resize-e,.resize-w{width:7px;top:8px;bottom:8px;cursor:ew-resize}.resize-e{right:-4px}.resize-w{left:-4px}.resize-ne,.resize-nw,.resize-se,.resize-sw{width:13px;height:13px}.resize-ne,.resize-sw{cursor:nesw-resize}.resize-nw,.resize-se{cursor:nwse-resize}.resize-ne{right:-4px;top:-4px}.resize-nw{left:-4px;top:-4px}.resize-se{right:-4px;bottom:-4px}.resize-sw{left:-4px;bottom:-4px}.maximized>.resize-edge{display:none}.window-dragging,.window-dragging *{user-select:none!important}.window-dragging .window-content{pointer-events:none}
#snap-preview{pointer-events:none;position:absolute;z-index:1000;top:0;bottom:var(--task-height);background:#81b9e044;border:2px solid #b0dfffaa;border-radius:8px}
.browser-tabs{height:33px;flex:0 0 33px;display:flex;align-items:stretch;gap:3px;background:#e3edf5;padding:2px 8px 0;overflow-x:auto;scrollbar-width:none}.browser-tab{display:flex;min-width:80px;max-width:195px;flex:1;border-radius:6px 6px 0 0;background:#d8e3ec}.browser-tab.selected{background:#f8fafc}.browser-tabs button{min-width:24px;min-height:0;padding:4px 9px;border:0;background:transparent;font-size:11px;color:#586c7e}.browser-tab button:first-child{flex:1;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-align:left}.browser-tab button:last-child{flex:0 0 25px;padding:0}.browser-tab button:last-child:hover{background:#c4d0dc;border-radius:4px}
.os-window>.browser-toolbar{flex:0 0 40px;display:flex;align-items:center;gap:4px;padding:4px 9px;background:#f8fafc;border:0}.browser-toolbar>button{flex:none;width:28px;min-width:0;height:28px;min-height:0;border:0;background:transparent;padding:0;font-size:19px;color:#587084;border-radius:4px}.browser-toolbar button:hover{background:#e0e9f0}.browser-toolbar button:disabled{opacity:.3;cursor:default}.browser-toolbar #browser-address-form{display:flex;align-items:center;gap:6px;flex:1;min-width:0;margin:0;padding:0 8px;border:1px solid #d6e0e8;border-radius:18px;background:#edf1f5;height:30px;color:#677787}#browser-address-form:focus-within{border-color:#7ea5c4;background:white}#browser-address-form input{width:100%;min-width:0;height:28px;min-height:0;padding:2px;border:0!important;background:transparent;box-shadow:none;outline:none;font-size:12px;color:#455c6e}#browser-address-form button{padding:0;width:24px;min-height:0;height:25px;border:0;background:transparent;color:#71889c}
.browser-favorites{flex:0 0 30px;display:flex;align-items:center;gap:4px;background:#f8fafc;border-bottom:1px solid #dce4eb;padding:0 10px;font-size:11px;white-space:nowrap;overflow-x:auto;scrollbar-width:none}.browser-favorites button{border:0;background:transparent;color:#5a6b79;padding:3px 7px;min-height:24px;font-size:11px;border-radius:3px}.browser-favorites button:hover{background:#e5edf3}.browser-zoom{margin-left:auto;display:flex;align-items:center}.browser-zoom button{padding:0 6px}
#desktop-guide{position:absolute;right:15px;bottom:calc(var(--task-height) + 14px);z-index:300;pointer-events:none;max-width:calc(100% - 30px)}
body.desktop-os #desktop-guide .case-note{position:relative;inset:auto;width:240px;max-width:100%;margin:0;max-height:260px;overflow:auto;pointer-events:auto;box-shadow:0 6px 20px #0003;border-radius:4px}
body.desktop-os #desktop-guide .case-note.collapsed{width:160px;max-height:40px}
body.desktop-os #desktop-taskbar{position:absolute;inset:auto 0 0;height:var(--task-height);z-index:500}
body.desktop-os .v23-taskbar{display:flex;position:relative;inset:auto;height:100%;min-height:0;width:100%;padding:0 6px;gap:4px;background:#e6edf2f5;border-top:1px solid #fcfeffb0;backdrop-filter:blur(15px)}
.v23-taskbar>button{position:relative;width:44px;flex:0 0 44px;height:40px;min-height:0;border:0;border-radius:4px;background:transparent;color:#3b5468;padding:5px;font-size:14px}.v23-taskbar>button:hover,.v23-taskbar .task-active{background:#fff9}.v23-taskbar .running::after{position:absolute;bottom:1px;left:15px;width:14px;height:3px;border-radius:3px;background:#87a0b4;content:""}.v23-taskbar .task-active::after{background:#347ba9;width:22px;left:11px}.v23-taskbar .sound-toggle{font-size:10px;width:46px;flex-basis:46px;white-space:nowrap}.v23-taskbar>button.task-clock{display:flex;flex-direction:column;justify-content:center;align-items:center;width:92px;flex-basis:92px;font-size:11px;line-height:1.6}.task-clock small{font-size:9px}.v23-taskbar>button.show-desktop{width:8px;flex-basis:8px;border-left:1px solid #aebdcb;border-radius:0;height:100%}
#shell-menu{position:fixed;z-index:700;min-width:220px;max-width:calc(100vw - 8px);padding:7px;background:#f9fbfdf7;backdrop-filter:blur(16px);border:1px solid #a9b9c6;border-radius:7px;box-shadow:0 8px 24px #0004}#shell-menu[hidden]{display:none}#shell-menu>b{display:block;font-size:11px;font-weight:400;color:#7a8c9b;padding:9px 10px;border-bottom:1px solid #dce5ed;margin-bottom:4px}#shell-menu button{display:flex;gap:12px;align-items:center;width:100%;padding:9px 12px;border:0;background:transparent;font-size:12px;text-align:left;color:#385169;border-radius:4px}#shell-menu button:hover{background:#dce9f4}
.interactive-nav{display:flex;gap:5px;align-items:center;white-space:nowrap!important}.interactive-nav button{background:transparent;border:0;color:inherit;padding:5px;font-size:12px}.interactive-nav button:hover{color:#cf6c88}
.local-link-list{display:grid;gap:6px}.local-link-list button{display:flex;flex-direction:column;text-align:left;gap:5px;padding:12px;background:#f7f9fb;border:1px solid #e3e8ec}.local-link-list small{color:#8a98a4;font-size:10px}.draft-item{padding:14px 0;border-bottom:1px solid #e2e8ed}.draft-item p{white-space:pre-wrap;overflow-wrap:anywhere}#local-reply-form textarea{display:block;min-height:150px;width:100%;padding:12px;border:1px solid #cbd6e0;resize:vertical;margin-bottom:12px}#local-reply-form button{padding:8px 14px;border:1px solid #a4baca;background:#e4edf4}.calendar-header{text-align:center;margin:15px}.desktop-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center;padding:10px}.desktop-calendar span{padding:8px}.calendar-today{border-radius:50%;background:#3e7ea9;color:white}
.extras-page{padding:24px 28px;min-height:100%;background:#f5f5ef;color:#525548}.extras-page h1{font-size:24px;font-weight:400;margin:16px 0}.extras-page>small{color:#8c8f80;font-size:12px}.extras-tabs{display:flex;gap:10px;border-bottom:1px solid #d8dbcf;padding-bottom:12px}.extras-page button{border:1px solid #c8cebd;background:#fafcf6;padding:7px 14px;font-size:12px;color:#5f6a4e;border-radius:3px}.extras-page button:hover{background:#e6ebdf}.extras-page textarea{display:block;width:100%;height:260px;margin:18px 0;padding:16px;resize:vertical;border:1px solid #d0d6c7;line-height:1.9;background:#fffffc;color:#4c5849;font:14px/1.9 "Microsoft YaHei",sans-serif}.recycle-row{display:flex;gap:15px;align-items:center;padding:20px 0;border-top:1px solid #d8decf}.recycle-row>div{flex:1}.recycle-row p{font-size:12px;line-height:1.8}.recovered-note{margin-top:25px;padding:18px;background:#eee5c3;color:#686044;border-left:3px solid #c2b278}.recovered-note small{font-size:11px;color:#8b825d}.mini-lights{display:grid;grid-template-columns:repeat(3,64px);gap:12px;margin:25px 0}.mini-lights button{height:64px;font-size:28px;background:#e2e6da;color:#829073}.mini-lights button:disabled{color:#b39525;background:#fff3b8;opacity:1}
.os-window .contacts-search input{width:100%;height:26px;min-height:0;font-size:11px;border:0;background:transparent;outline:none;padding:2px}.os-window .contact[hidden]{display:none!important}.os-window .wechat-v22,.os-window .wechat-v22 .wx-shell{height:100%;min-height:0}.os-window #chat-form{position:relative}.os-window #chat-form .emoji-button{position:absolute;left:0;bottom:0;padding:0;width:27px;min-height:26px;border:0;background:transparent;font-size:20px;color:#8a928e}.os-window #chat-form textarea{padding-left:4px}.os-window .wx-compose-hint{padding-left:32px}
.os-window.compact-window .wx-shell{grid-template-columns:44px 116px minmax(0,1fr)}.os-window.compact-window .contact{gap:7px;padding:12px 7px}.os-window.compact-window .contact small,.os-window.compact-window .contact time{display:none}.os-window.compact-window .contact-avatar{width:30px!important;height:30px!important}.os-window.compact-window .wx-input-area{padding:8px}.os-window.compact-window #chat-evidence-form{flex-wrap:wrap}.os-window.compact-window #chat-evidence-form select{min-width:0;width:calc(100% - 42px)}.os-window.compact-window .forum-area{grid-template-columns:1fr}.os-window.compact-window .forum-side{display:none}.os-window.compact-window .file-explorer{grid-template-columns:110px minmax(0,1fr)}.os-window.compact-window .file-list-row{grid-template-columns:minmax(120px,1fr) 85px 60px 35px;gap:5px}.os-window.compact-window .profile-stat{display:none}.os-window.compact-window .vid-top{flex-wrap:wrap}.os-window.compact-window .watch-layout{display:block}.os-window.compact-window .video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
body.desktop-os #modal{position:relative;z-index:900}body.desktop-os .modal-dimmer{z-index:900}body.desktop-os #notice{z-index:1001;bottom:62px;max-width:min(420px,calc(100vw - 24px));pointer-events:none}
@media(max-width:760px),(pointer:coarse) and (max-height:500px){body.desktop-os{--task-height:48px}.os-window{border-radius:0;border:0}.os-window>header{border-radius:0}.resize-edge{display:none}.wm-titlebar{height:36px;flex-basis:36px}.wm-controls button{width:35px;height:35px}.wm-controls [data-wm="maximize"]{display:none}.desktop-brand{right:18px;top:26px;font-size:34px}.desktop-sticky{display:none}.desktop-welcome{left:105px;top:22%;width:calc(100% - 122px);padding:20px}.desktop-welcome h2{font-size:21px}.desktop-welcome p{font-size:12px}.desktop-launchers{left:6px;top:10px;gap:0}.desktop-launchers button{width:80px;height:79px;font-size:10px}.desktop-launchers .app-icon{width:39px;height:39px}.desktop-tip{display:none}.browser-tabs{flex-basis:29px;height:29px}.browser-tab{min-width:65px}.browser-tabs button{font-size:10px;padding-inline:6px}.os-window>.browser-toolbar{padding:3px;gap:1px;flex-basis:37px}.browser-toolbar>button{width:27px;font-size:17px}.browser-toolbar #browser-address-form{padding:0 5px;gap:3px}#browser-address-form input{font-size:11px}.browser-favorites{padding:0 3px;gap:0}.browser-favorites button{font-size:10px;padding:2px 5px}.browser-zoom button{padding:2px 4px}.v23-taskbar>button{width:35px;flex-basis:35px}.v23-taskbar .sound-toggle{width:34px;flex-basis:34px;font-size:9px}.v23-taskbar>button.task-clock{width:65px;flex-basis:65px;font-size:10px}.v23-taskbar .app-icon{width:24px;height:24px}.v23-taskbar .running::after{left:10px}.v23-taskbar .task-active::after{left:6px}.v23-taskbar .task-spacer{min-width:0}.v23-taskbar>button[data-shell="help"]{display:none}body.desktop-os #desktop-guide{right:7px;bottom:55px;z-index:400}body.desktop-os #desktop-guide .case-note{width:220px;max-height:230px}body.desktop-os #desktop-guide .case-note.collapsed{width:136px;max-height:34px}body.desktop-os .note-toggle{min-height:33px;padding:4px 7px}.extras-page{padding:18px}.extras-page textarea{height:200px}.recycle-row{flex-wrap:wrap}.os-window .contacts-search{margin-inline:2px!important;padding-inline:2px!important}.os-window .contacts-search input{font-size:9px}.os-window #chat-form textarea{font-size:16px}.os-window .wx-compose-hint{display:none}.os-window .emoji-button{display:none}.os-window.compact-window .video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.os-window>.browser-toolbar{width:100%;max-width:none;margin:0;height:40px;min-height:40px}
.os-window .watch-actions>button{padding:4px 12px;border:0;background:transparent;color:#6c7d8c;font-size:13px;border-radius:3px}.os-window .watch-actions>button:hover{background:#eff4f8}.os-window .watch-actions>button[aria-pressed="true"],.os-window .comment-meta>button[aria-pressed="true"]{color:#d3748f}
.mini-lights button.lit{color:#b39525;background:#fff3b8}.mini-lights button:disabled{cursor:default}

.os-window.compact-window .watch-columns{grid-template-columns:minmax(0,1fr)}.os-window.compact-window .watch-related{display:none}
