:root{--ink:#293b32;--muted:#738074;--green:#3f594b;--sans:"Microsoft YaHei",system-ui,sans-serif;--mono:Consolas,monospace}
*{box-sizing:border-box}body{margin:0;background:#eceee5;color:var(--ink);font:14px/1.7 var(--sans);overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid #3f594b;outline-offset:4px}::selection{background:#d4ddca}.site-head{height:90px;position:relative;z-index:3;margin:0 40px;border-bottom:1px solid #d0d7c8;display:flex;align-items:center;justify-content:space-between}.wordmark{font-size:20px;font-weight:600;letter-spacing:.5px}.wordmark small{display:block;font:10px/1.7 var(--mono);font-weight:400;color:var(--muted);letter-spacing:0}.head-right{display:flex;align-items:center;gap:28px;font-size:11px}.head-right span{color:var(--muted)}#world{position:fixed;inset:90px 0 100px;overflow:hidden}#world canvas{display:block;position:absolute;inset:0}#loading{position:absolute;left:0;right:0;top:45%;text-align:center;font-size:12px;color:var(--muted)}.css-world{position:absolute;inset:0;pointer-events:none}.computer-surface{width:800px;height:500px;pointer-events:auto;background:#13231d;border:1px solid #203b30;border-radius:9px;overflow:hidden;backface-visibility:hidden;container-type:inline-size}.computer-surface .desktop-screen{position:relative;width:100%;height:100%;font-size:16px;font-family:var(--sans);color:#35483d;overflow:hidden;line-height:1.5;user-select:none}.desktop-window{left:28%;top:15%;width:69%;height:74%;display:flex;flex-direction:column}.desktop-content{padding:16px;min-height:0;overflow:auto;flex:1;font-size:15px;user-select:text;scrollbar-width:thin}.desktop-content h2{font-family:var(--sans);font-size:22px;line-height:1.5;white-space:normal;margin:0 0 16px}.desktop-content h3{font-size:17px;font-weight:600;margin:22px 0 10px}.desktop-content p{font-size:14px;line-height:1.9;margin:0 0 16px;border:0;padding:0}.desktop-content ul{padding-left:20px;font-size:14px;line-height:1.9}.desktop-content .article-meta{color:#7a8777;font:11px var(--mono);margin-bottom:13px}.desktop-content .article-excerpt{color:#6e7f6c;border-bottom:1px solid #cdd4c2;padding-bottom:15px}.desktop-content .article-back{font:12px var(--sans);border:1px solid #9ba992;background:#e4e9da;cursor:pointer;padding:5px 9px;margin-bottom:16px}.desktop-content .original-link{font-size:12px;display:inline-block;color:#3f594b;border-bottom:1px solid #9eab93;margin-bottom:12px}.desktop-content .desktop-file{font-size:14px;padding:12px 8px;min-height:44px}.desktop-content .file-meta{font-size:11px;color:#788570;margin:3px 8px 17px}.desktop-content .welcome-title{font:29px/1.4 Georgia,serif;margin:27px 0 15px}.desktop-content .welcome-actions{display:flex;gap:12px;flex-wrap:wrap}.welcome-actions button{font:13px var(--sans);border:1px solid #84947c;background:#e1e8d6;padding:8px 13px}.desktop-taskbar{font-size:13px}.desktop-titlebar{padding:6px;min-height:30px;font-size:14px}.desktop-titlebar button{min-width:20px;min-height:20px}.desktop-menubar{height:29px;font-size:13px}.desktop-icons{top:56px;left:25px;gap:17px}.desktop-icon{font-size:14px;cursor:pointer}.computer-surface.is-off .desktop-screen{visibility:hidden}.view-footer{position:fixed;bottom:0;left:40px;right:40px;height:100px;z-index:3;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #d0d7c8;gap:20px}.view-hint{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--muted)}.status-dot{width:5px;height:5px;border-radius:50%;background:#57744f}.view-controls{display:flex;gap:6px}.view-controls button{border:1px solid #b9c5b0;background:#edf0e4;padding:9px 14px;font-size:12px}.view-controls button[aria-pressed=true]{background:#425b4b;color:#f2f4e9;border-color:#425b4b}.view-controls #power{font-size:17px;line-height:1;min-width:42px;padding:9px}.flat-desktop{display:none;position:fixed;inset:112px 40px 122px;z-index:2}.flat-desktop .computer-surface{width:100%;height:100%;border:9px solid #d5d8c8;border-radius:10px;box-shadow:0 5px 0 #bbc5b1}.flat-desktop .desktop-screen{font-size:15px}.flat-mode #world{visibility:hidden}.flat-mode .flat-desktop{display:block}#world canvas{touch-action:none}
button{border:0;background:none}
.crt-display{position:relative;border:7px solid #252c27;border-radius:31px;background:#131d18;box-shadow:inset 0 0 18px #07110c}
.crt-display .desktop-screen{border-radius:23px;background:#a5c6cc}
.crt-display::after{content:"";position:absolute;inset:0;z-index:10000;border-radius:25px;pointer-events:none;background:linear-gradient(126deg,#fffdf012 0,#fffdf008 21%,transparent 23%,transparent 67%,#bdcfc506 100%),radial-gradient(ellipse at 50% 47%,transparent 43%,#091c163b 100%);box-shadow:inset 0 0 23px #081b162b,inset 2px 2px 2px #e6f2e313}
.window-writing{left:18%;top:10%;width:77%;height:81%}
.window-tools{left:41%;top:24%;width:55%;height:62%}
.window-me{left:25%;top:13%;width:70%;height:77%}
.window-game{left:2%;top:35px;width:96%;height:calc(100% - 68px)}
.window-game .desktop-content{padding:0;display:flex;flex-direction:column;background:#0c1414}
.game-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#b8c4a8;font-size:12px}
.game-stage iframe{width:100%;height:100%;border:0;display:block;background:#0c1414}
.window-game:not(.is-active) iframe{pointer-events:none}
.game-resume{padding:10px 20px;background:#dce4cd;border:1px solid #6d8465}
.dungeon-icon{display:grid;place-items:center;width:2.1em;height:2.1em;border:2px solid #536b52;background:#172d28;color:#dfc88b;box-shadow:2px 2px #203e3940;font:bold 1.15em Georgia,serif}
@media(min-width:721px){body.game-focus .music-player{top:10px;right:calc(50% - 120px);width:240px}}
.text-document{font-family:var(--mono),"Microsoft YaHei",sans-serif;padding:5px 8px}
.text-document .text-document-meta{font-size:11px;color:#788570;border-bottom:1px solid #cdd4c2;padding-bottom:10px;margin-bottom:24px}
.text-document h2{font-size:23px;font-weight:400}
.text-document p{font-size:15px;line-height:1.9}
.text-document .text-contact{margin-top:24px;padding-top:17px;border-top:1px dashed #bec8b5}
.text-contact a{border-bottom:1px solid #8b9d81;overflow-wrap:anywhere}
.text-document .text-document-end{color:#788570;font-size:12px;margin-top:22px}
.disk-shelf{position:fixed;top:108px;left:40px;z-index:3}
.disk-options{display:flex;align-items:center;gap:16px}
.disk-options button{display:flex;align-items:center;gap:9px;padding:5px 8px;border:1px solid transparent;text-align:left;font-size:12px;line-height:1.4}
.disk-options button[aria-pressed=true]{border-color:#acb9a4;background:#e1e6d9}
.disk-options button:disabled{opacity:.5;cursor:default}
.disk-options small{display:block;font:9px/1.6 var(--mono);color:#7c8876}
.mini-disk{display:block;width:29px;height:31px;background:#466d67;border-radius:2px;position:relative;box-shadow:1px 2px #293b321a}
.mini-disk:before{content:"";position:absolute;top:0;left:7px;width:16px;height:9px;background:#bdc3b8;border-right:4px solid #536558}
.mini-disk:after{content:"";position:absolute;bottom:3px;left:4px;right:4px;height:12px;background:repeating-linear-gradient(#eeeada 0 4px,#c0c6b4 4px 5px)}
[data-disk=tools] .mini-disk{background:#98715b}
#disk-status{font-size:10px;color:#7c8876;margin:6px 8px 0}
#eject-disk{font-size:11px;border-bottom:1px solid #acb9a4;padding:5px 0}
#eject-disk[hidden]{display:none}
.site-records{position:absolute;bottom:5px;left:0;right:0;margin:0;display:flex;justify-content:center;gap:14px;font-size:9px;line-height:1.4;color:var(--muted)}
.site-records a:hover{text-decoration:underline}
.tool-download label{display:block;font-size:12px}
.tool-download input{display:block;width:100%;margin:7px 0 12px;border:1px solid #9ba992;background:#faf9ef;color:var(--ink);font:inherit;padding:8px;min-height:40px}
.download-action{border:1px solid #84947c;background:#e1e8d6;padding:8px 13px;font-size:13px;min-height:40px}
.download-action:disabled{opacity:.5;cursor:default}
.desktop-content .download-status{font-size:12px;margin:10px 0;color:#6e7f6c}
.music-player{position:fixed;top:108px;right:40px;width:280px;z-index:3;background:#eeeee1;border:1px solid #899a86;box-shadow:2px 3px #293b3214;padding:3px}
.music-titlebar{display:flex;align-items:center;gap:7px;background:#6c8174;color:#fffdf1;padding:3px 7px;font:10px/1.7 var(--mono);min-width:0}
#bgm-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
#bgm-state{font:9px var(--sans);white-space:nowrap}
.music-controls{display:flex;gap:5px;align-items:center;padding:7px 5px}
.music-controls button{background:#e3e8d7;border:1px solid #9eac93;min-width:29px;min-height:28px;font-size:10px;padding:3px 5px;flex:none;white-space:nowrap}
#bgm-toggle{min-width:42px}
.music-controls button:hover{background:#d4dfc9}
.music-controls input{width:100%;min-width:0;accent-color:#657d62;cursor:pointer}
@media(max-width:720px){.music-player{top:auto;bottom:133px;left:16px;right:16px;width:auto}.music-controls button{min-height:32px;min-width:32px}}
.app-window:not(.is-active) .desktop-titlebar{background:#94a18c}
.app-window.is-active{box-shadow:4px 5px #203e3945}
.desktop-title{flex:1;min-width:0}
.window-actions{display:flex;gap:4px;margin-left:auto}
.desktop-titlebar .window-actions button{flex:none}
.task-list{display:flex;align-items:center;gap:4px;min-width:0;flex:1;overflow:auto;scrollbar-width:none}
.desktop-taskbar .task-list button{flex:none;background:#e7eadc;white-space:nowrap}
.desktop-taskbar .task-list button[aria-pressed=true]{background:#657c67;color:#fffdf0}
.desktop-taskbar .task-list button.is-minimized{border-style:dashed;color:#6b7b63}
.desktop-taskbar [data-tile]{font-size:11px;padding:0 8px}
.desktop-taskbar [data-tile]:disabled{opacity:.35;cursor:default}
@media(max-width:720px){.site-head{height:76px;margin:0 20px}.wordmark{font-size:17px}.head-right{font-size:10px;gap:0}.head-right span{display:none}#world{top:76px;bottom:119px}.view-footer{height:119px;left:20px;right:20px;flex-direction:column;justify-content:center;gap:13px;align-items:stretch}.view-hint{justify-content:center;font-size:10px}.view-controls{justify-content:center;gap:5px}.view-controls button{font-size:11px;padding:10px 12px;min-height:40px}.view-controls #power{font-size:16px;min-width:40px}.flat-desktop{inset:94px 12px 137px}.flat-desktop .computer-surface{border-width:5px}.flat-desktop .desktop-menubar{font-size:10px;height:24px;padding:0 9px}.flat-desktop .desktop-icons{top:43px;left:9px;gap:12px}.flat-desktop .desktop-icon{font-size:11px;padding:5px}.flat-desktop .desktop-window{left:25%;top:14%;width:73%;height:76%}.flat-desktop .desktop-titlebar{font-size:11px;min-height:27px}.flat-desktop .desktop-content{padding:11px;font-size:12px}.flat-desktop .desktop-content .welcome-title{font-size:21px;margin:17px 0 13px}.flat-desktop .desktop-content h2{font-size:17px;margin-bottom:12px}.flat-desktop .desktop-content h3{font-size:15px}.flat-desktop .desktop-content p,.flat-desktop .desktop-content ul{font-size:12px}.flat-desktop .desktop-content .desktop-file{font-size:12px;padding:9px 5px;min-height:44px}.flat-desktop .desktop-content .file-meta{font-size:10px;margin-left:5px}.flat-desktop .desktop-taskbar{font-size:11px;height:25px}.flat-desktop .desktop-content .article-meta{font-size:10px}.flat-desktop .desktop-content .article-back{font-size:10px;padding:7px}.flat-desktop .desktop-content .welcome-actions{gap:8px}.flat-desktop .welcome-actions button{font-size:11px;padding:8px}.flat-desktop .desktop-content .original-link{font-size:11px}}
@media(max-width:720px){.flat-desktop .app-window:not(.is-active){display:none}.flat-desktop .app-window{left:25%!important;top:14%!important;width:73%!important;height:76%!important}.flat-desktop .desktop-titlebar{cursor:default}.flat-desktop [data-tile]{display:none}.flat-desktop .task-list{gap:3px}.flat-desktop .desktop-taskbar .task-list button{font-size:10px;padding:0 6px}}
@media(max-width:720px){.disk-shelf{top:84px;left:16px;right:16px}.disk-options{gap:8px}.disk-options button{font-size:11px;padding:3px 5px;gap:7px}.mini-disk{width:25px;height:27px}.disk-options small{font-size:8px}#disk-status{font-size:9px;margin:4px 5px 0}.flat-desktop{top:150px}#world{top:150px}.flat-desktop .text-document{padding:0}.flat-desktop .text-document .text-document-meta{font-size:9px;margin-bottom:15px}.flat-desktop .text-document .text-contact{margin-top:18px;padding-top:12px}.flat-desktop .text-document .text-document-end{font-size:10px}}
@media(max-width:720px){.site-records{font-size:8px;gap:8px;bottom:5px}.head-right{gap:12px}}
@media(max-width:720px){#flat-desktop,#world{bottom:212px}}
@media(max-width:720px){.flat-desktop .window-game{left:1%!important;top:27px!important;width:98%!important;height:calc(100% - 54px)!important}.window-game .desktop-content{padding:0}body.game-focus #flat-desktop{inset:0;z-index:10}}
