:root {
  --ink: #102329;
  --deep: #17242b;
  --steel: #46616a;
  --teal: #4b817f;
  --paper: #e8e4d8;
  --paper-2: #f4f0e6;
  --line: #9caa9d;
  --amber: #d18435;
  --red: #a54337;
  --green: #4e765f;
  --xp-blue: #0b57c9;
  --shadow: 0 15px 42px rgba(7, 17, 21, .34);
  font-family: Tahoma, "SimSun", "宋体", sans-serif;
  color-scheme: light;
}

* { box-sizing: border-box; }
html, body { width: 100%; min-height: 100%; margin: 0; background: #06172b; color: var(--ink); }
body { overflow: hidden; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
[hidden] { display: none !important; }

#crt-noise {
  position: fixed; inset: 0; pointer-events: none; z-index: 20000; opacity: .026;
  background: repeating-linear-gradient(0deg, transparent 0 2px, rgba(255,255,255,.75) 3px, transparent 4px);
  mix-blend-mode: screen;
}

/* 开场、开机自检与登录 */
.boot-screen { min-height: 100vh; position: relative; overflow: hidden; background: #03080d; }
.story-stage { min-height: 100vh; display: grid; place-items: center; padding: 28px; color: #d5e2df; background: linear-gradient(110deg, rgba(6,15,20,.95), rgba(9,25,31,.78)), url("assets/netcafe-exterior.webp") center / cover; }
.story-card { position: relative; width: min(900px, 100%); min-height: 560px; padding: 46px 440px 40px 46px; border: 1px solid #4b6971; background: rgba(7,17,22,.92); box-shadow: 0 24px 80px rgba(0,0,0,.55), inset 0 0 80px rgba(38,96,101,.09); }
.story-date { color: #82aca8; font: 12px Consolas, monospace; letter-spacing: .16em; }
.story-card h1 { margin: 18px 0 8px; color: #f3f0df; font: 500 clamp(36px,6vw,61px) "Microsoft YaHei", sans-serif; letter-spacing: .12em; }
.tagline { color: #9db2af; font-size: 14px; letter-spacing: .12em; line-height: 1.8; }
.story-copy { margin: 35px 0 24px; color: #bdcbc8; line-height: 1.9; font-size: 14px; }
.story-copy b { color: #f0bc75; }
.computer-preview { position: absolute; right: 50px; top: 72px; width: 330px; height: 355px; }
.preview-monitor { position: absolute; left: 0; top: 14px; width: 236px; height: 190px; border: 18px solid #b6b2a2; border-radius: 14px 14px 22px 22px; background: radial-gradient(circle at 48% 45%, #265d5c, #081719 72%); box-shadow: inset 0 0 0 4px #6e6d64, 16px 20px 35px rgba(0,0,0,.35); }
.preview-monitor::after { content: ""; position: absolute; left: 74px; bottom: -82px; width: 54px; height: 65px; border-bottom: 15px solid #aaa797; background: linear-gradient(90deg,#858377,#c7c4b3,#89877b); }
.preview-tower { position: absolute; right: 0; top: 74px; width: 84px; height: 250px; border: 6px outset #c1bdac; border-radius: 3px; background: linear-gradient(90deg,#aaa696,#d6d1be 55%,#a39f90); box-shadow: 14px 18px 30px rgba(0,0,0,.34); }
.preview-tower::before { content: ""; position: absolute; left: 14px; right: 14px; top: 33px; height: 10px; border: 2px inset #aaa; background: #4d4d48; box-shadow: 0 34px 0 #67675e; }
.preview-light { position: absolute; right: 25px; top: 278px; width: 6px; height: 6px; border-radius: 50%; background: #73e266; box-shadow: 0 0 11px #73e266; }
.xp-button { border: 1px solid #81918f; border-radius: 3px; background: linear-gradient(#fefdf7, #c9cabd); color: #16282d; padding: 10px 19px; box-shadow: inset 1px 1px #fff, 2px 2px 0 #0e171a; }
.xp-button:hover, .xp-button:focus-visible { background: linear-gradient(#fff, #d7dfce); outline: 2px solid rgba(126,170,160,.35); outline-offset: 2px; }
.xp-button.primary { min-width: 138px; background: linear-gradient(#6c9c91,#3c6864); color: #fff; border-color: #98bab3; font-weight: bold; }
.boot-note { color: #71898a; font-size: 12px; margin: 16px 0 0; line-height: 1.7; }

.post-stage { min-height: 100vh; padding: 32px 42px; position: relative; color: #d9d9d9; background: #050505; font: 15px/1.55 "Courier New", monospace; }
.bios-head { margin-bottom: 24px; color: #fff; }
.bios-logo { position: absolute; right: 60px; top: 48px; width: 122px; height: 104px; display: grid; place-items: center; border: 2px solid #eee; color: #eee; text-align: center; font-weight: bold; }
.bios-logo small { font-size: 10px; letter-spacing: .2em; }
.bios-lines p { margin: 5px 0; opacity: 0; }
.bios-lines p.visible { opacity: 1; }
.bios-lines p:last-child { color: #f2d66d; }
.bios-footer { position: absolute; left: 42px; bottom: 34px; color: #aaa; }

.login-stage { min-height: 100vh; display: grid; grid-template-rows: 70px 1fr 78px; color: #fff; background: linear-gradient(90deg,#27559b 0 42%,#5d88ce 42% 100%); font-family: Tahoma,"Microsoft YaHei",sans-serif; }
.login-header { display: flex; align-items: center; justify-content: space-between; padding: 0 7%; border-bottom: 3px solid rgba(255,255,255,.38); background: linear-gradient(#174c9c,#286ac1); text-shadow: 1px 1px #174177; }
.login-header b { font-size: 20px; }
.login-header span { font-size: 12px; opacity: .85; }
.login-body { display: grid; grid-template-columns: 42% 58%; align-items: center; }
.login-welcome { padding: 0 9%; text-align: right; }
.login-welcome h2 { margin: 0 0 8px; font: 400 34px "Microsoft YaHei",sans-serif; }
.login-welcome p { color: #dce9ff; }
.case-sticker { width: min(300px,100%); margin: 34px 0 0 auto; display: grid; gap: 7px; padding: 15px 18px; color: #473e2c; text-align: left; transform: rotate(-1deg); background: #ece4bd; border: 1px solid #a99c6c; box-shadow: 3px 5px 14px rgba(0,0,0,.25); font: 12px "SimSun"; }
.case-sticker b { border-bottom: 1px dashed #8f825d; padding-bottom: 6px; }
.login-account { min-height: 215px; display: flex; gap: 18px; align-items: center; padding: 30px 9%; border-left: 2px solid rgba(255,255,255,.25); background: linear-gradient(90deg,rgba(255,255,255,.06),transparent 65%); }
.account-avatar, .start-avatar { flex: 0 0 auto; width: 76px; height: 76px; display: grid; place-items: center; border: 3px solid #fff; border-radius: 7px; background: linear-gradient(#f4cf8b,#b56b4f); box-shadow: 1px 2px 8px rgba(0,0,0,.35); }
.account-avatar span, .start-avatar::after { content: ""; width: 44px; height: 44px; border-radius: 50% 50% 44% 44%; background: radial-gradient(circle at 50% 28%,#f4d0a8 0 28%,transparent 29%), linear-gradient(140deg,#4c2a1f,#8b5a3a 48%,#2d4774 49%); }
.account-fields { width: min(350px,100%); display: grid; gap: 7px; }
.account-fields strong { font-size: 22px; text-shadow: 1px 1px #224879; }
.account-fields label { font-size: 12px; }
.password-row { display: flex; gap: 5px; }
.password-row input { width: 220px; height: 31px; padding: 4px 7px; border: 2px inset #eee; background: #fff; }
.password-row button { width: 34px; border: 2px outset #eef3f8; border-radius: 4px; background: linear-gradient(#91c474,#2c8b35); color: #fff; font-weight: bold; }
.login-error { min-height: 18px; margin: 0; color: #ffe09a; font-size: 12px; }
.login-footer { display: flex; align-items: center; justify-content: flex-end; padding: 0 7%; border-top: 3px solid rgba(255,255,255,.34); background: linear-gradient(#1f5aa5,#174583); font-size: 12px; }

/* 桌面与窗口 */
.desktop { height: 100vh; min-height: 100vh; display: grid; grid-template-rows: 1fr 32px; background: #3978bb; }
.desktop-area { min-height: 0; position: relative; overflow: hidden; background: linear-gradient(rgba(54,126,174,.04),rgba(8,65,87,.18)), url("assets/desktop-wallpaper-2008.webp") center / cover no-repeat; }
.system-bar { position: absolute; z-index: 6; left: 280px; right: 12px; top: 10px; min-height: 52px; display: grid; grid-template-columns: minmax(250px,.8fr) minmax(180px,1fr) auto; gap: 16px; align-items: center; padding: 6px 9px; border: 1px solid rgba(255,255,255,.64); border-radius: 5px; color: #eef6ff; background: linear-gradient(rgba(18,84,153,.94),rgba(8,52,119,.94)); box-shadow: 0 6px 18px rgba(0,32,80,.35), inset 0 1px rgba(255,255,255,.42); }
.brand-block { display: flex; gap: 9px; align-items: center; min-width: 0; }
.brand-block b { display: block; font: 600 13px Tahoma,"Microsoft YaHei",sans-serif; white-space: nowrap; }
.brand-block small { display: block; margin-top: 2px; color: #cfe1f3; white-space: nowrap; font-size: 10px; }
.archive-mark { display: grid; place-items: center; width: 36px; height: 36px; color: #174478; background: #f4f1dd; border: 2px outset #fff; box-shadow: inset 0 0 0 2px #80a4b9; font: bold 12px monospace; }
.progress-wrap { position: relative; height: 17px; overflow: hidden; border: 2px inset #acc4dc; background: #fff; }
.progress-wrap span { display: block; width: 0; height: 100%; background: repeating-linear-gradient(90deg,#45a247 0 8px,#66bd58 8px 11px); transition: width .35s ease; }
.progress-wrap em { position: absolute; inset: 0; display: grid; place-items: center; color: #123a62; font: normal 10px Tahoma; text-shadow: 1px 1px #fff; }
.toolbar { display: flex; align-items: center; gap: 5px; }
.tool-button, .icon-button { height: 30px; border: 1px solid #174683; border-radius: 3px; background: linear-gradient(#fefefe,#c8d8eb); color: #164078; box-shadow: inset 1px 1px #fff; }
.tool-button { padding: 0 10px; }
.icon-button { min-width: 30px; padding: 0 7px; }
.tool-button:hover, .icon-button:hover { background: linear-gradient(#fff,#dcecff); }
.support-button { border-color: #a6681d; background: linear-gradient(#fff0a2,#dfa436); color: #7d3f00; font-weight: bold; }

.desktop-icons { position: absolute; z-index: 2; left: 10px; top: 10px; width: 252px; display: grid; grid-template-columns: repeat(3,78px); gap: 9px 5px; align-content: start; }
.system-icons { position: absolute; z-index: 2; right: 10px; top: 78px; width: 82px; display: grid; gap: 10px; }
.desktop-shortcut { min-height: 78px; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 3px; padding: 3px; border: 1px solid transparent; background: transparent; color: #fff; text-align: center; text-shadow: 1px 1px 2px #062653, -1px -1px 1px #062653; }
.desktop-shortcut:hover, .desktop-shortcut.active { border: 1px dotted rgba(255,255,255,.92); background: rgba(47,102,180,.4); }
.desktop-shortcut:focus-visible { outline: 2px solid #ffdf75; }
.desktop-shortcut b { max-width: 78px; font: normal 11px/1.25 Tahoma,"SimSun"; }
.desktop-icon { position: relative; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 3px; filter: drop-shadow(2px 3px 2px rgba(0,0,0,.4)); }
.desktop-icon i { font: bold 19px "SimSun"; font-style: normal; text-shadow: none; }
.icon-case { color: #31525d; border: 2px outset #fffef1; background: linear-gradient(90deg,#d5e5dd 0 22%,#fffbea 22%); }
.icon-backend { color: #e0ffff; border: 2px outset #a8d6d2; background: linear-gradient(#155e6b,#092b3a); }
.icon-tianya { color: #174e92; border: 2px outset #fff; background: linear-gradient(#fff,#c5ddf1); }
.icon-baidu { color: #cc2f2f; border: 2px outset #fff; background: radial-gradient(circle,#fff 35%,#d9e8f8); }
.icon-blog { color: #fff; border: 2px outset #f6c972; background: linear-gradient(135deg,#f2bb38,#c65b27); }
.icon-alumni { color: #fff; border: 2px outset #90c7da; background: linear-gradient(#5cb1cc,#2c719d); }
.icon-qq { color: #fff; border: 2px outset #9be5ec; border-radius: 48% 48% 38% 38%; background: linear-gradient(#28bfcf,#1d6ea7); }
.icon-sms { color: #fff; border: 2px outset #a4e5a9; background: linear-gradient(#6ec95e,#248746); }
.icon-mail { color: #a82020; border: 2px outset #fff; background: linear-gradient(#fff,#e6d5c9); }
.icon-computer { border: 3px outset #e8e1cf; background: linear-gradient(#172a3e 0 64%,#bab4a4 65%); }
.icon-computer::after { content: ""; width: 24px; height: 15px; background: linear-gradient(135deg,#4d9db2,#b6dcdb); }
.icon-documents { background: linear-gradient(135deg,#f8d564 0 45%,#dfaa25 46%); border: 2px outset #ffe69c; }
.icon-documents::after { content: ""; width: 27px; height: 22px; background: #f0bd39; border: 1px solid #9e6b0e; }
.icon-network { background: linear-gradient(#88bed7,#316b9f); border: 2px outset #c8e7f3; }
.icon-network::before,.icon-network::after { content:""; position:absolute; width:18px; height:13px; border:2px solid #fff; background:#326c9d; }
.icon-network::before { left:4px; top:7px; }.icon-network::after { right:4px; bottom:6px; }
.icon-recycle { background: linear-gradient(#d9eff2,#82b6bd); border: 2px outset #eafcff; }
.icon-recycle::after { content:""; width:24px; height:27px; border:2px solid #497b82; background:repeating-linear-gradient(90deg,transparent 0 5px,#6f9fa4 6px); }

.desktop-welcome { position: absolute; left: 50%; top: 46%; transform: translate(-50%,-50%); width: min(410px,70%); display: grid; gap: 8px; padding: 13px 16px; border: 1px solid rgba(255,255,255,.72); border-radius: 5px; color: #123b64; background: rgba(243,249,255,.88); box-shadow: 4px 8px 22px rgba(0,42,75,.3); font-size: 12px; }
.desktop-welcome::after { content:""; position:absolute; right:24px; bottom:-10px; width:18px; height:18px; transform:rotate(45deg); border-right:1px solid #fff; border-bottom:1px solid #fff; background:rgba(243,249,255,.88); }

.window-shell { position: absolute; z-index: 4; top: 72px; left: 280px; right: 105px; bottom: 14px; min-width: 0; min-height: 0; display: grid; grid-template-rows: 29px 1fr; border: 3px solid #0b5cc8; border-top-width: 3px; border-radius: 7px 7px 3px 3px; background: var(--paper); box-shadow: 0 14px 38px rgba(0,31,66,.48); overflow: hidden; }
.window-shell.maximized { inset: 0 !important; border-radius: 0; }
.window-titlebar { display: flex; align-items: center; gap: 6px; padding: 2px 3px 2px 7px; color: #fff; background: linear-gradient(#3f91ed 0,#0b64d6 45%,#0854bd 46%,#2d74d2); font: 11px Tahoma,"SimSun"; text-shadow: 1px 1px #063680; user-select: none; touch-action: none; }
.window-titlebar b { flex: 1; }
.window-controls { display: flex; gap: 2px; }
.window-controls button { width: 24px; height: 22px; display: grid; place-items: center; padding: 0; border: 1px solid #fff; border-radius: 3px; color: #fff; background: linear-gradient(#7fb4ec,#256fc3); box-shadow: inset 1px 1px rgba(255,255,255,.45); font: bold 12px Tahoma; text-shadow: 1px 1px #17447f; }
.window-controls button:last-child { background: linear-gradient(#ef9c7d,#d14222); }
.window-content { min-height: 0; overflow: auto; padding: 18px; background: linear-gradient(rgba(255,255,255,.52),rgba(255,255,255,.13)), repeating-linear-gradient(0deg,transparent 0 25px,rgba(76,99,92,.04) 26px), var(--paper); }

.notebook { position: absolute; z-index: 7; right: 122px; top: 82px; width: 300px; height: min(470px,calc(100% - 100px)); display: grid; grid-template-rows: auto minmax(110px,.42fr) 1fr; border: 1px solid #8f9e91; background: #d8d2bd; box-shadow: var(--shadow); transform: rotate(.2deg); }
.notebook-head { padding: 9px 10px; display: grid; grid-template-columns: 1fr auto 22px; gap: 7px; align-items:center; border-bottom: 1px dashed #8d8774; background: #f0e8cc; }
.notebook-head span { color: #6f766c; font-size: 10px; }
.notebook-head button { border:0;background:transparent;font-size:18px;color:#655f50; }
.notebook textarea { width: 100%; min-height: 0; resize: none; border: 0; border-bottom: 1px dashed #918b77; padding: 13px 15px; color: #35403d; outline: none; background: repeating-linear-gradient(#f4eed9 0 25px,#cbd1c7 26px); line-height: 26px; }
.ledger-mini { min-height: 0; overflow: auto; padding: 12px 14px; background: #eee7d2; }
.ledger-mini h3 { margin: 7px 0 6px; color: #405350; font-size: 12px; }
.ledger-mini ol { padding-left: 22px; margin: 5px 0; color: #4e5650; font-size: 12px; line-height: 1.55; }
.badge-row { display: flex; gap: 5px; flex-wrap: wrap; }.badge-row span { padding: 3px 6px; border: 1px solid #9b9e8c; background: #ded9c7; font-size: 11px; }

.taskbar { z-index: 15; display: flex; align-items: center; gap: 5px; padding: 2px 4px 2px 2px; color: #fff; background: linear-gradient(#3188e8 0,#0c64d7 16%,#0a53be 84%,#174a9d); border-top: 1px solid #75aef0; font: 11px Tahoma,sans-serif; }
.start-button { height: 28px; min-width: 94px; border: 1px solid #2a772f; border-radius: 0 13px 13px 0; background: linear-gradient(#78c568,#29913b 45%,#257633 46%,#4caf4a); color: #fff; font-size: 14px; font-style: italic; font-weight: bold; padding: 0 18px 0 10px; text-shadow: 1px 1px #18571e; }
.task-button { height: 25px; min-width: 180px; max-width: 280px; display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid #134798;border-radius:2px;background:linear-gradient(#4c9bec,#1d6bc6);color:#fff;text-align:left; }
.task-spacer { flex: 1; }.tray-icon { padding:0 2px; }.taskbar #system-time { min-width: 118px; text-align:center; }
.start-menu { position: absolute; z-index: 20; left: 0; bottom: 0; width: 390px; border: 3px solid #1553a5; border-radius: 7px 7px 0 0; background: #fff; box-shadow: 5px -7px 24px rgba(0,40,90,.4); overflow:hidden; }
.start-user { display:flex;align-items:center;gap:11px;padding:10px 14px;color:#fff;background:linear-gradient(#4b99e9,#1b67c5);text-shadow:1px 1px #164884; }
.start-avatar { width:50px;height:50px;border-width:2px; }.start-avatar::after { width:30px;height:30px; }
.start-columns { display:grid;grid-template-columns:1fr 1fr;min-height:245px; }.start-columns>div { padding:9px; }.start-columns>div+div { background:#d8eafb;border-left:1px solid #aac8e7; }
.start-columns button,.start-footer button { width:100%;padding:9px;border:0;background:transparent;color:#183a62;text-align:left; }.start-columns button:hover,.start-footer button:hover { color:#fff;background:#2d70c8; }
.start-footer { display:flex;justify-content:flex-end;padding:6px 9px;background:linear-gradient(#4c92dd,#276cc0); }.start-footer button { width:auto;color:#fff; }

/* 调查记录簿与表单 */
.page-head { display:flex;align-items:flex-start;gap:14px;padding-bottom:13px;margin-bottom:16px;border-bottom:1px solid #a7afa5; }
.page-head .kicker { color:#8f5a2c;font:11px monospace;letter-spacing:.12em;text-transform:uppercase; }
.page-head h2 { margin:4px 0;color:#233f45;font:600 23px "Microsoft YaHei",sans-serif; }.page-head p { margin:0;color:#596c6c;line-height:1.6;font-size:13px; }
.stage-grid { display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.65fr);gap:17px; }
.panel,.form-panel,.result-card,.source-card { border:1px solid #9da89f;background:rgba(247,245,232,.86);box-shadow:2px 2px 0 rgba(91,104,94,.18); }
.panel,.form-panel { padding:15px; }.panel h3,.form-panel h3 { margin:0 0 11px;color:#31565a;font-size:15px; }
.material-list { margin:0;padding-left:20px;font-size:13px;line-height:1.8; }
.notice { padding:10px 12px;margin:12px 0;border-left:4px solid var(--amber);background:#efe4ce;color:#644629;font-size:12px;line-height:1.6; }
.notice.safe { border-color:var(--green);background:#dde8de;color:#365446; }.notice.danger { border-color:var(--red);background:#efddd5;color:#723d33; }
.field-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px; }.field-grid.single { grid-template-columns:1fr; }.field-grid label { display:grid;gap:5px;color:#394e4e;font-size:12px; }
.field-grid input,.field-grid textarea,.field-grid select,.search-row input,.search-row select,.route-code,.report-field { width:100%;border:2px inset #cdd4c7;border-radius:0;background:#fffef5;color:#1f3438;padding:8px 9px;outline:none; }
.field-grid input:focus,.field-grid textarea:focus,.field-grid select:focus,.search-row input:focus,.route-code:focus,.report-field:focus { border-color:#538181;box-shadow:0 0 0 2px rgba(76,127,124,.18); }.field-grid textarea { min-height:72px;resize:vertical; }
.submit-row { display:flex;gap:9px;align-items:center;margin-top:14px; }.submit-button { border:1px outset #cbd4c9;background:linear-gradient(#668e87,#3e6966);color:#fff;padding:8px 17px;font-weight:bold; }.submit-button:hover { background:linear-gradient(#78a099,#4b7773); }
.subtle-button { border:1px outset #d8d7ca;background:linear-gradient(#fffdf3,#d7d6c9);padding:8px 13px;color:#32494b; }.feedback { min-height:20px;margin-top:10px;font-size:12px;line-height:1.5; }.feedback.error{color:#962f25}.feedback.success{color:#317050}.source-ids{font:12px Consolas,monospace;color:#7e4f26;}

/* 八种旧软件界面：同一搜索逻辑，不同年代布局 */
.search-shell { max-width:1100px;margin:0 auto; }.legacy-site { min-height:100%;border:1px solid #8192a0;background:#fff;font-family:"SimSun",Tahoma,sans-serif; }
.legacy-menubar { display:flex;gap:15px;padding:4px 8px;border-bottom:1px solid #adb8c0;background:#ece9d8;color:#334b61;font-size:11px; }.legacy-menubar span:first-child{text-decoration:underline;}
.legacy-banner { min-height:61px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:8px 13px; }.legacy-brand h2 { margin:0;font-size:22px;letter-spacing:.08em; }.legacy-brand small{font-size:10px;}.legacy-slogan{max-width:440px;font-size:11px;line-height:1.5;}
.legacy-tabs { display:flex;gap:2px;padding:4px 7px;border-top:1px solid rgba(255,255,255,.45);border-bottom:1px solid #aeb7bc;font-size:11px; }.legacy-tabs span{padding:4px 12px;border:1px solid transparent;}.legacy-tabs span:first-child{border-color:#879cad;background:rgba(255,255,255,.82);color:#173d66;}
.legacy-body { display:grid;grid-template-columns:132px minmax(0,1fr) 150px;min-height:400px; }.legacy-side,.legacy-aside{padding:9px;background:#edf3f7;font-size:11px;line-height:1.7;}.legacy-side{border-right:1px solid #b8c3ca}.legacy-aside{border-left:1px solid #b8c3ca}.legacy-side h3,.legacy-aside h3{margin:0 0 7px;padding:4px 6px;background:#d0dfeb;color:#234f72;font-size:12px}.legacy-side ul,.legacy-aside ul{list-style:none;margin:0;padding:0}.legacy-side li,.legacy-aside li{padding:3px 5px;border-bottom:1px dotted #bac4ca}.legacy-main{min-width:0;padding:8px 10px 14px;background:#fff;}
.site-note { margin:0 0 7px;padding:6px 9px;border:1px solid #d5c69d;background:#fff9dc;color:#675b3c;font-size:11px;line-height:1.5; }.search-row{display:grid;grid-template-columns:minmax(0,1fr) 105px 78px;gap:5px;padding:8px;border:1px solid #bdc5c9;background:#edf0f1;}.search-row select{padding:7px}.search-button{border:1px outset #d5dbe0;background:linear-gradient(#fff,#c9d2d8);color:#173c60;}.search-help{padding:5px 8px;color:#727b7e;font-size:10px;background:#fafafa;border:1px solid #e1e1e1;border-top:0}.search-results{display:grid;gap:7px;margin-top:9px}.result-card{padding:10px 12px;background:#fff}.result-card h3{margin:3px 0 5px;color:#244f9b;text-decoration:underline;font-size:14px}.result-meta{display:flex;gap:8px;flex-wrap:wrap;color:#777;font:10px monospace}.result-card p{margin:5px 0;line-height:1.65;font-size:12px}.result-card footer{color:#69796e;font-size:10px}.empty-results{padding:22px;border:1px dashed #a3a99d;background:#f5f4eb;color:#6b716a;text-align:center;font-size:12px}

.legacy-tianya .legacy-banner{color:#fff;background:linear-gradient(#55b8dc,#287eac)}.legacy-tianya .legacy-tabs{background:#d6edf7}.legacy-tianya .legacy-side{background:#e8f4fa}.legacy-tianya .result-card{display:grid;grid-template-columns:145px 1fr;column-gap:10px}.legacy-tianya .result-meta{grid-row:1/4;padding:8px;background:#edf7fb;align-content:start}.legacy-tianya .result-card h3,.legacy-tianya .result-card p,.legacy-tianya .result-card footer{grid-column:2}
.legacy-baidu{border-top:4px solid #243caa}.legacy-baidu .legacy-banner{background:#fff;color:#1736a5}.legacy-baidu .legacy-brand h2{font-size:29px;letter-spacing:.22em}.legacy-baidu .legacy-brand h2::first-letter{color:#d82828}.legacy-baidu .legacy-tabs{color:#2440a8;background:#f2f2f2}.legacy-baidu .legacy-side{background:#f6f6f6}.legacy-baidu .result-card{border:0;border-bottom:1px solid #ddd;box-shadow:none}.legacy-baidu .result-card h3{color:#1539a1}.legacy-baidu .result-card footer{color:#3b8a2b}
.legacy-blog .legacy-banner{color:#4b2f11;background:linear-gradient(#fff3af,#e9c34a)}.legacy-blog .legacy-tabs{background:#f0d668}.legacy-blog .legacy-body{grid-template-columns:156px minmax(0,1fr) 165px}.legacy-blog .legacy-side,.legacy-blog .legacy-aside{background:#fff8d5}.legacy-blog .legacy-main{background:#fffdf0}.legacy-blog .result-card{border-color:#dfcd8f;background:#fffef4}.legacy-blog .result-card h3{color:#7a4917}
.legacy-alumni .legacy-banner{color:#fff;background:linear-gradient(#42b5d4,#246fa7)}.legacy-alumni .legacy-tabs{background:#c7e8f0}.legacy-alumni .legacy-side{background:#e6f4f7}.legacy-alumni .result-card h3{color:#267395}.legacy-alumni .result-card::before{content:"校友资料";float:right;padding:2px 5px;color:#fff;background:#5ca2bd;font-size:9px}
.legacy-qq{border-radius:8px 8px 0 0;overflow:hidden}.legacy-qq .legacy-banner{color:#fff;background:linear-gradient(#46c9e4,#1378b5)}.legacy-qq .legacy-tabs{background:#d9f3f8}.legacy-qq .legacy-side{background:#e7f6f7}.legacy-qq .result-card{margin-left:45px;border-radius:3px;border-color:#8fc9d4;background:#effbfc}.legacy-qq .result-card::before{content:"";position:absolute}.legacy-qq .result-card h3{color:#176a86;text-decoration:none}.legacy-qq .result-card p{font-family:Tahoma,"SimSun"}
.legacy-sms .legacy-banner{color:#fff;background:linear-gradient(#82c95c,#3c8b3d)}.legacy-sms .legacy-tabs{background:#e4f3dc}.legacy-sms .legacy-side{background:#edf7ea}.legacy-sms .result-card{border-left:6px solid #68a84e;background:#f4fbf0}.legacy-sms .result-card h3{color:#3f7a35;text-decoration:none}.legacy-sms .result-meta span:last-child::before{content:"状态："}
.legacy-mail{border-top:4px solid #b51e1e}.legacy-mail .legacy-banner{color:#8e1717;background:linear-gradient(#fff,#f0e7e2)}.legacy-mail .legacy-brand h2{font-size:25px}.legacy-mail .legacy-tabs{background:#b52020;color:#fff}.legacy-mail .legacy-tabs span:first-child{color:#8d1111}.legacy-mail .legacy-side{background:#f4efed}.legacy-mail .result-card{display:grid;grid-template-columns:180px 1fr;column-gap:10px;border:0;border-bottom:1px solid #d2cbc8;box-shadow:none}.legacy-mail .result-meta{grid-column:1;grid-row:1/4}.legacy-mail .result-card h3,.legacy-mail .result-card p,.legacy-mail .result-card footer{grid-column:2}.legacy-mail .result-card h3{color:#5d3030;text-decoration:none}
.legacy-backend .legacy-banner{color:#e4fff6;background:linear-gradient(#354f55,#1c3137)}.legacy-backend .legacy-tabs{background:#cdd5d1}.legacy-backend .legacy-side{background:#dbe4df}.legacy-backend .legacy-main{background:#eef2ef}.legacy-backend .result-card{border-color:#9bac9f;background:#f8faf7}.legacy-backend .result-card h3{color:#245a50;text-decoration:none;font-family:Consolas,monospace}.legacy-backend .result-card footer{font-family:Consolas,monospace}

/* v1.2：八个应用的可浏览内容层 */
.legacy-menubar button,.legacy-tabs button,.legacy-nav-list button,.legacy-link,.legacy-action,.forum-breadcrumb button,.blog-breadcrumb button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
.legacy-menubar button{padding:2px 3px;text-decoration:underline}.legacy-menubar button:hover,.legacy-menubar button:focus{color:#174b88;background:#fff}
.legacy-tabs button{flex:0 0 auto;padding:4px 12px;border:1px solid transparent}.legacy-tabs button:hover,.legacy-tabs button:focus,.legacy-tabs button.active{border-color:#879cad;background:rgba(255,255,255,.88);color:#173d66}
.legacy-nav-list{display:grid}.legacy-nav-list button{width:100%;padding:5px 6px;border-bottom:1px dotted #bac4ca;text-align:left;line-height:1.35}.legacy-nav-list button:hover,.legacy-nav-list button:focus,.legacy-nav-list button.active{background:#fff;color:#174f82;text-decoration:underline}
.legacy-view{margin-top:10px;min-height:280px}.archive-view-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 9px;padding:6px 8px;border-bottom:2px solid #7893a7}.archive-view-head h3{margin:0;color:#234f72;font-size:15px}.archive-view-head p{margin:0;color:#727b7e;font-size:10px;text-align:right}
.archive-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.archive-card{min-width:0;padding:10px;border:1px solid #c5cbd0;background:#fff;box-shadow:1px 1px 0 #e1e1db}.archive-card h4{margin:0 0 6px;color:#244f81;font-size:13px}.archive-card p{margin:0;line-height:1.6;font-size:11px}.legacy-action{margin-top:8px;padding:3px 11px!important;border:1px outset #d6dde1!important;background:linear-gradient(#fff,#d6dde1)!important;color:#244d70!important}.legacy-action:active{border-style:inset!important}
.forum-table{border:1px solid #b8c4ce;background:#fff}.forum-row{display:grid;grid-template-columns:minmax(250px,1fr) 92px 76px 116px;align-items:center;min-height:38px;border-bottom:1px solid #d8dde1;font-size:11px}.forum-row:last-child{border-bottom:0}.forum-row>span,.forum-row>time,.forum-row>div{min-width:0;padding:6px 8px}.forum-row>span,.forum-row>time{border-left:1px solid #e1e5e8;text-align:center;color:#66727a}.forum-head{min-height:28px;background:#edf1f4;color:#3c5263;font-weight:bold}.forum-head span{padding:5px 8px}.forum-row>div small{display:block;margin-top:3px;color:#92989b}.legacy-link{padding:0;color:#154897;text-decoration:underline;text-align:left}.legacy-link:hover,.legacy-link:focus{color:#d44916}.forum-breadcrumb,.blog-breadcrumb{display:flex;align-items:center;gap:7px;margin-bottom:8px;padding:5px 8px;border:1px solid #c8d1d7;background:#f4f6f7;color:#557083;font-size:10px}.forum-breadcrumb button,.blog-breadcrumb button{color:#184c87;text-decoration:underline}
.thread-floor{display:grid;grid-template-columns:118px minmax(0,1fr);border:1px solid #b8c7d0;border-bottom:0;background:#fff}.thread-floor:last-of-type{border-bottom:1px solid #b8c7d0}.thread-floor>aside{min-height:112px;padding:12px 8px;border-right:1px solid #b8c7d0;background:#edf5f9;text-align:center}.thread-floor>aside b,.thread-floor>aside small{display:block}.thread-floor>aside b{color:#285778}.thread-floor>aside small{margin-top:7px;color:#7d8b94}.thread-floor>div{min-width:0;padding:8px 12px}.thread-meta{padding-bottom:6px;border-bottom:1px dotted #c7cfd4;color:#89949b;font-size:10px}.thread-copy{padding:13px 2px;line-height:1.8;font-size:12px}.thread-owner{border-top:3px solid #5a96b9}.archive-inline-photo{float:right;width:min(260px,45%);max-height:170px;margin:10px 0 10px 15px;object-fit:cover;border:5px solid #f4f0e4;box-shadow:0 0 0 1px #9c9b91;filter:saturate(.78)}.archive-read-note{clear:both;margin:10px 0;padding:7px 9px;border-left:4px solid #c28d3c;background:#fff8df;color:#6b5739;font-size:10px}
.archive-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.archive-photo-card{display:grid;grid-template-columns:105px 1fr;grid-template-rows:1fr auto;gap:3px 9px;min-height:90px;padding:7px;border:1px solid #bfc7c9;background:#fff;text-align:left;cursor:pointer}.archive-photo-card:hover,.archive-photo-card:focus{border-color:#366e96;background:#f1f8fc}.archive-photo-card img{grid-row:1/3;width:105px;height:76px;object-fit:cover;filter:saturate(.76) contrast(.97)}.archive-photo-card span{align-self:end;color:#235486;font-weight:bold}.archive-photo-card small{color:#888}
.baidu-portal{padding:24px 16px;text-align:center;background:#fff}.portal-logo{color:#293aa8;font:bold 34px "SimSun";letter-spacing:.15em}.portal-logo span{color:#d52828}.baidu-portal>p{color:#808080;font-size:10px}.portal-quick{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:15px}.portal-quick button{padding:4px 9px;border:0;background:none;color:#153b9d;text-decoration:underline;cursor:pointer}
.blog-profile{display:grid;grid-template-columns:210px 1fr;gap:15px;padding:12px;border:1px solid #dfcb8c;background:#fff9d9}.blog-profile img{width:100%;height:135px;object-fit:cover;border:6px solid #fff;box-shadow:0 0 0 1px #b6a776;filter:saturate(.76)}.blog-profile h2{margin:4px 0;color:#79501e}.blog-profile p{color:#745f3b}.blog-profile dl{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;font-size:10px}.blog-profile dt{color:#987d4d}.blog-profile dd{margin:0}.blog-list-item{display:grid;grid-template-columns:105px 1fr;gap:10px;padding:10px 6px;border-bottom:1px dotted #c7b77c}.blog-list-item>time{color:#97794a;font-size:10px}.blog-list-item h3{margin:0 0 5px;font-size:13px}.blog-list-item p{margin:0 0 4px;line-height:1.6;font-size:11px}.blog-list-item small{color:#a08a66}.blog-post{padding:16px;border:1px solid #ddc77e;background:#fffef3}.blog-post h2{margin:0 0 8px;color:#7b4f18}.blog-post-meta{padding-bottom:7px;border-bottom:1px dotted #c9b77d;color:#a18961;font-size:10px}.blog-post>img{float:right;width:min(320px,48%);max-height:215px;margin:14px 0 14px 18px;object-fit:cover;border:7px solid #fff;box-shadow:0 0 0 1px #b6aa80;filter:saturate(.77)}.blog-post-copy{min-height:120px;padding:18px 5px;line-height:2;font-size:13px}.blog-comments{clear:both;margin-top:10px;padding:11px;border:1px solid #e0d4a7;background:#fffaf0}.blog-comments h3{margin:0 0 8px;color:#795522}.blog-comments>div{display:grid;grid-template-columns:100px 1fr;gap:3px 9px;padding:6px;border-top:1px dotted #d8c99b}.blog-comments time{color:#9e8c6a;font-size:9px}.blog-comments p{grid-column:2;margin:0;font-size:11px}
.alumni-record,.alumni-profile-card,.contact-card{padding:14px;border:1px solid #a9c7d5;background:#f7fcff;line-height:1.75}.alumni-profile-card{display:flex;gap:13px;align-items:center}.alumni-avatar{display:grid;place-items:center;width:56px;height:56px;border:3px solid #fff;border-radius:6px;background:linear-gradient(#68c2d8,#317da9);box-shadow:0 0 0 1px #4d8ba6;color:#fff;font:bold 22px "KaiTi"}.alumni-profile-card h3{margin:0;color:#266c8f}.class-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.class-directory button{display:grid;gap:4px;padding:12px;border:1px solid #9fc3d2;background:linear-gradient(#fff,#dff2f7);color:#246a8d;text-align:left;cursor:pointer}.class-directory span{color:#748b94;font-size:10px}.person-row{display:grid;grid-template-columns:14px 90px 1fr;align-items:center;width:100%;padding:8px;border:0;border-bottom:1px solid #d4e5eb;background:#fff;text-align:left;cursor:pointer}.person-row:hover{background:#eaf7fb}.presence-dot{width:8px;height:8px;border-radius:50%;background:#a6a6a6}.presence-dot.online{background:#46a447}.person-row small{color:#75868d}
.qq-account{display:flex;gap:15px;align-items:center;padding:18px;border:1px solid #8bc8da;border-radius:5px;background:linear-gradient(#eefcff,#d4f1f7)}.chat-avatar{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border:2px solid #fff;border-radius:50%;background:linear-gradient(#50c9dc,#1682b7);box-shadow:0 0 0 1px #2c88a9;color:#fff;font-weight:bold}.qq-account h2{margin:0 0 5px;color:#126b8e}.friend-list,.recent-chat-list{display:grid;border:1px solid #9bc9d5;background:#fff}.friend-list>button{display:grid;grid-template-columns:14px 100px 1fr;gap:5px 8px;align-items:center;padding:8px;border:0;border-bottom:1px solid #d7eaef;background:#fff;text-align:left;cursor:pointer}.friend-list>button:hover{background:#e8f8fb}.friend-list em{grid-column:3;color:#83969c;font-style:normal;font-size:10px}.recent-chat-list>button{display:grid;grid-template-columns:45px minmax(0,1fr) 95px;gap:8px;align-items:center;padding:8px;border:0;border-bottom:1px solid #d7e7eb;background:#fff;text-align:left;cursor:pointer}.recent-chat-list>button:hover{background:#edfafd}.recent-chat-list p{overflow:hidden;margin:3px 0 0;color:#75858b;text-overflow:ellipsis;white-space:nowrap}.recent-chat-list time{color:#8a969a;font-size:9px}.chat-window{border:1px solid #78b7c9;border-radius:5px;background:#eaf8fb;overflow:hidden}.chat-window>header{display:flex;gap:10px;align-items:center;padding:9px;background:linear-gradient(#d6f4fb,#a9e0ed)}.chat-window>header h3,.chat-window>header p{margin:0}.chat-window>header h3{color:#176b89}.chat-window>header small{font-weight:normal}.chat-window>header p{margin-top:3px;color:#607b84;font-size:10px}.chat-window>header em{margin-left:auto;color:#537d87;font-style:normal}.chat-history{min-height:240px;max-height:430px;overflow:auto;padding:12px;background:#fff}.chat-line{max-width:84%;margin:0 0 11px}.chat-line.self{margin-left:auto}.chat-line time{display:block;color:#8d989b;font-size:9px}.chat-line b{display:block;margin:3px 0;color:#247694}.chat-line p{display:inline-block;margin:0;padding:7px 9px;border:1px solid #a8d2dc;border-radius:3px;background:#ebfafc;line-height:1.6}.chat-line.self p{background:#eef5dd;border-color:#bdcf9c}.chat-window>footer{display:grid;grid-template-columns:1fr 68px;gap:6px;padding:7px;background:#d9eef2}.chat-window textarea{min-height:52px;resize:none;border:1px solid #8eb1ba;background:#f7f7f7}.chat-window footer button{border:1px outset #b7d5dc;background:linear-gradient(#fff,#badde5);color:#315e69}
.sms-phone{max-width:520px;margin:auto;border:2px solid #57974d;border-radius:9px;background:#edf8e8;box-shadow:3px 4px 0 #c2cfbf;overflow:hidden}.sms-phone>header{display:grid;grid-template-columns:74px 1fr 85px;align-items:center;padding:7px;background:linear-gradient(#82c65e,#458b3f);color:#fff}.sms-phone header button{border:0;background:none;color:#fff;text-align:left;cursor:pointer}.sms-phone header b{text-align:center}.sms-phone header span{text-align:right;font-size:9px}.sms-phone dl{display:grid;grid-template-columns:60px 1fr;margin:0;padding:10px 14px;border-bottom:1px solid #bed5b6}.sms-phone dt{color:#688064}.sms-phone dd{margin:0}.sms-phone article{min-height:120px;padding:18px;background:#fff;line-height:1.9;font-size:13px}.sms-phone footer{padding:6px 12px;color:#6f846b;font-size:9px}.sms-list{border:1px solid #a7c4a0;background:#fff}.sms-list>button{display:grid;grid-template-columns:115px 100px minmax(0,1fr) 70px;gap:7px;width:100%;padding:8px;border:0;border-bottom:1px solid #d9e5d5;background:#fff;text-align:left;cursor:pointer}.sms-list>button:hover{background:#eff9eb}.sms-list time,.sms-list em{color:#83917f;font-size:9px}.sms-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sms-list em{text-align:right}.sms-contact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.sms-contact-list button{display:grid;grid-template-columns:32px 1fr;gap:2px 8px;padding:9px;border:1px solid #a9caa1;background:#f5fbf2;text-align:left;cursor:pointer}.sms-contact-list button>span{grid-row:1/3;display:grid;place-items:center;border-radius:50%;background:#5aa44d;color:#fff}.sms-contact-list small{color:#789175}
.mail-list{border:1px solid #c9bbb6;background:#fff}.mail-list>button{display:grid;grid-template-columns:20px 130px minmax(150px,.8fr) minmax(170px,1fr) 118px;gap:7px;align-items:center;width:100%;padding:7px;border:0;border-bottom:1px solid #e2d9d5;background:#fff;text-align:left;cursor:pointer}.mail-list>button:hover{background:#fff6ee}.mail-list strong,.mail-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-list>button>span{color:#d59c21}.mail-list small,.mail-list time{color:#8b827e;font-size:9px}.mail-reader{border:1px solid #c8bbb7;background:#fff}.mail-reader>header{display:grid;grid-template-columns:90px 1fr;align-items:center;padding:8px 12px;border-bottom:1px solid #d9cfca;background:#f4efed}.mail-reader header button{border:1px outset #ded5d0;background:#fff;color:#6d3a35;cursor:pointer}.mail-reader h2{margin:0;font-size:16px}.mail-reader dl{display:grid;grid-template-columns:70px 1fr;margin:0;padding:10px 14px;border-bottom:1px solid #e1d9d5}.mail-reader dt{color:#8e6f68}.mail-reader dd{margin:0}.mail-body{min-height:145px;padding:20px 24px;line-height:1.85;font-size:12px}.mail-attachment,.attachment-row{border:1px solid #c8bbb5;background:#fff8f1;color:#6f3430;cursor:pointer}.mail-attachment{margin:0 24px 15px;padding:6px 10px}.mail-reader details{margin:0 24px 14px}.mail-reader pre{overflow:auto;padding:8px;background:#f3f1ed;font:10px monospace}.mail-reader>footer{padding:7px 12px;background:#f4efed;color:#866f69;font-size:9px}.attachment-row{display:grid;grid-template-columns:160px 1fr 125px;gap:9px;width:100%;padding:8px;text-align:left}.mail-compose{display:grid;gap:8px;padding:12px;border:1px solid #cdbfba;background:#fff}.mail-compose label{display:grid;grid-template-columns:70px 1fr;align-items:start}.mail-compose input,.mail-compose textarea{border:1px inset #bbb;padding:5px}.mail-compose button{justify-self:end;padding:5px 14px;border:1px outset #d7d0cd;background:#f7f1ed;color:#743833}
.backend-table{width:100%;border-collapse:collapse;background:#fff;font:11px Consolas,"SimSun",monospace}.backend-table th,.backend-table td{padding:7px;border:1px solid #9eadac;text-align:left}.backend-table th{background:#405c5f;color:#e6fff5}.backend-table tr:nth-child(even){background:#eef4ef}.contact-card{display:grid;gap:5px;max-width:440px;margin:auto}.contact-card b{color:#3f7a35;font-size:16px}.contact-card span{font:13px monospace}.contact-card p{margin:0;color:#647261}

.evidence-photo{width:100%;height:220px;object-fit:cover;border:7px solid #f3eee0;box-shadow:0 0 0 1px #817b6d,4px 6px 12px rgba(0,0,0,.2);filter:saturate(.76) contrast(.97)}
.route-scene-copy{padding:15px;margin-bottom:14px;border:1px solid #9da89f;background:#f1ecdc}.route-scene-copy h3{color:#31565a;margin-top:0}.route-scene-copy p{line-height:1.75;font-size:13px}.route-scenes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.scene-card{min-width:0;border:1px solid #a7aa9b;background:#eee9d8;padding:9px}.scene-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border:5px solid #f5f0e2;box-shadow:0 0 0 1px #898677;filter:saturate(.77) contrast(.96)}.scene-card h4{margin:10px 2px;color:#31565a;font-size:13px}.scene-fields{display:grid;gap:8px}.scene-fields label{display:grid;gap:4px;color:#394e4e;font-size:12px}.scene-fields input{width:100%;border:2px inset #cdd4c7;background:#fffef5;color:#1f3438;padding:8px;outline:none}
.timeline{list-style:none;margin:0;padding:0}.timeline li{display:grid;grid-template-columns:112px 1fr;gap:12px;padding:9px 0;border-bottom:1px dotted #a8aa9c;font-size:12px}.timeline time{font-family:monospace;color:#86522f}.facts-table{width:100%;border-collapse:collapse;background:#f9f6e9;font-size:12px}.facts-table th,.facts-table td{border:1px solid #aab2a8;padding:8px;vertical-align:top}.facts-table th{background:#42676a;color:#fff}

.modal-layer{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:18px;background:rgba(4,10,12,.68);backdrop-filter:blur(3px)}.modal-card{position:relative;width:min(620px,96vw);max-height:92vh;overflow:auto;border:3px solid #0b5cc8;border-radius:7px;background:#f2eddf;box-shadow:0 25px 70px rgba(0,0,0,.55)}.modal-close{position:absolute;top:5px;right:5px;width:27px;height:24px;z-index:2;border:1px solid #fff;border-radius:3px;background:linear-gradient(#ef9c7d,#d14222);color:#fff;font-size:16px}.modal-body{padding:24px 26px}.modal-body h2{margin:0 36px 8px 0;color:#2c5055}.modal-body p{line-height:1.7}.hint-step{display:grid;grid-template-columns:32px 1fr;gap:10px;margin:12px 0;padding:10px;border:1px solid #c4c1af;background:#fffced}.hint-step strong{display:grid;place-items:center;width:28px;height:28px;background:#486f6b;color:#fff}
.paywall-card{background:linear-gradient(145deg,#e8e4d8,#cfd9cf)}.paywall-inner{padding:28px;text-align:center}.paywall-title{font:600 23px "Microsoft YaHei",sans-serif;color:#28474c}.paywall-sub{color:#6b765f;font-size:13px;margin-top:5px}.paywall-qr{width:138px;height:138px;margin:18px auto 7px;padding:6px;background:#fff;border:1px solid #9da69b}.paywall-qr img{width:100%;height:100%;object-fit:contain}.paywall-tip{color:#8b7663;font-size:11px}.paywall-copy{margin:17px auto;max-width:470px;color:#53615d;font-size:13px;line-height:1.8}.paywall-cute{padding:8px 12px;background:rgba(75,129,127,.1);border:1px dashed #8ba29a;color:#43625d}.paywall-actions{display:flex;gap:10px;justify-content:center}.paywall-actions button{min-width:150px}.paywall-studio{margin-top:14px;color:#8e978c;letter-spacing:.12em;font-size:11px}
.ending-card{background:#111e23;color:#d8e1db;border-color:#244d66}.ending-card .modal-body{padding:34px}.ending-code{color:#d28b49;font:12px monospace;letter-spacing:.17em}.ending-card h2{color:#edf0e7;font-size:30px}.ending-card blockquote{margin:25px 0;padding:17px;border-left:4px solid #5c8b86;background:#17292f;line-height:1.85}.ending-modules{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.ending-modules div{border:1px solid #3c5559;padding:10px;background:rgba(255,255,255,.03);font-size:12px}
.system-dialog{padding:24px}.system-dialog h2{margin:0 35px 13px 0;color:#22528a}.drive-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.drive-item{padding:12px;border:1px solid #abb9c6;background:#fff}.drive-icon{display:inline-grid;place-items:center;width:38px;height:25px;margin-right:8px;border:2px outset #ddd;background:#d9d9d2}.file-list{width:100%;border-collapse:collapse;background:#fff}.file-list th,.file-list td{padding:7px;border:1px solid #c8d0d6;text-align:left;font-size:12px}.run-dialog{padding:23px}.run-dialog label{display:grid;gap:7px}.run-dialog input{padding:7px;border:2px inset #ddd}
.toast{position:fixed;z-index:11000;left:50%;bottom:48px;max-width:min(540px,90vw);transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:11px 17px;color:#fff;background:rgba(39,78,75,.96);border:1px solid #8aa8a0;box-shadow:0 10px 30px rgba(0,0,0,.35);transition:.25s;text-align:center}.toast.show{transform:translate(-50%,0);opacity:1}.toast.error{background:rgba(128,55,45,.97);border-color:#d69787}.shake{animation:shake .3s}@keyframes shake{25%{transform:translateX(-4px)}50%{transform:translateX(4px)}75%{transform:translateX(-2px)}}@keyframes blink{50%{opacity:.42}}

/* 2.0 推理、人物与结局层 */
.photo-stage{grid-template-columns:minmax(0,1.2fr) minmax(260px,.7fr)}
.photo-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-compare figure{margin:0;padding:7px;border:1px solid #8e9185;background:#e6e0cf}.photo-compare img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;filter:saturate(.72) contrast(.98)}.photo-compare figcaption{padding:7px 3px 2px;color:#4c5b58;font:11px Consolas,"SimSun",monospace}
.identity-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:17px}.identity-form>section{padding:2px}.evidence-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.evidence-choice-grid label{display:grid;grid-template-columns:22px 58px 1fr;align-items:center;gap:6px;min-height:58px;padding:9px;border:1px solid #9da89f;background:#f8f5e8;cursor:pointer}.evidence-choice-grid label:has(input:checked){border-color:#3e7770;background:#deebe3;box-shadow:inset 0 0 0 1px #7da39b}.evidence-choice-grid input{width:auto}.evidence-choice-grid b{font:12px Consolas,monospace;color:#704522}.evidence-choice-grid span{font-size:11px;line-height:1.5}
.time-window-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.time-window-grid span{display:grid;gap:4px;padding:9px;border:1px solid #a5ada2;background:#f8f5e9;font-size:11px}.time-window-grid b{color:#7d4c28;font:11px Consolas,monospace}
.challenge-scenes{grid-template-columns:1fr}.challenge-card{display:grid;grid-template-columns:220px minmax(0,1fr);gap:8px 14px;padding:12px}.challenge-card>img{grid-row:1/5;width:220px;aspect-ratio:4/3}.challenge-card h4{margin:0}.challenge-prompt{margin:0;color:#243f43;font-weight:bold;line-height:1.6}.route-options{display:grid;gap:6px}.route-options label{display:flex;gap:8px;align-items:flex-start;padding:7px 9px;border:1px solid #b7bcaf;background:#faf7ea;cursor:pointer}.route-options label:has(input:checked){border-color:#4b7e76;background:#dfeae2}.route-options input{margin-top:2px}.route-options span{line-height:1.5;font-size:11px}.reason-field{display:grid;gap:5px;color:#394e4e;font-size:11px}.reason-field textarea{min-height:58px;padding:7px;border:2px inset #cdd4c7;background:#fffef5;resize:vertical}
.character-reveal .kicker,.character-dossiers+* .kicker{color:#a76732;font:11px Consolas,monospace;letter-spacing:.12em}.character-reveal p{font-size:14px;line-height:1.9}
.character-dossiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px}.character-dossiers>h3{grid-column:1/-1;margin:0;color:#31565a}.character-dossiers article{display:grid;gap:5px;padding:12px;border:1px solid #9ca79e;background:#f4efdf}.character-dossiers b{color:#294e53}.character-dossiers em{color:#8a572d;font-size:11px;font-style:normal}.character-dossiers p{margin:2px 0;line-height:1.65;font-size:11px}.character-dossiers small{color:#687570;font:9px Consolas,monospace}
.consent-receipt{margin:0 0 14px;padding:15px 17px;border:1px solid #899d8e;border-left:6px solid #557e69;background:#e6eee4;box-shadow:2px 2px 0 rgba(60,85,65,.15)}.consent-receipt>div{display:flex;justify-content:space-between;color:#607466;font:10px Consolas,monospace}.consent-receipt h3{margin:8px 0;color:#345545}.consent-receipt p{margin:0 0 8px;line-height:1.75;font-size:12px}.consent-receipt>b{color:#466a57;font-size:11px}
.final-report .source-picker{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;padding:10px 12px;border:1px solid #99a69b}.final-report .source-picker legend{padding:0 5px;color:#394e4e;font-size:12px}.final-report .source-picker label{display:flex;align-items:center;gap:5px;padding:6px;border:1px solid #b9c0b7;background:#f9f6e9;cursor:pointer}.final-report .source-picker input{width:auto}.final-report .summary-field{grid-column:1/-1}.final-report .summary-field textarea{min-height:84px}

@media (max-width:1100px){.system-bar{left:188px}.desktop-icons{width:170px;grid-template-columns:repeat(2,78px)}.window-shell{left:188px}.legacy-body{grid-template-columns:115px minmax(0,1fr)}.legacy-aside{display:none}.system-icons{display:none}}
@media (max-width:760px){body{overflow:hidden}.story-stage{padding:12px}.story-card{min-height:auto;padding:28px 20px}.computer-preview{display:none}.story-card h1{font-size:34px}.story-copy{margin:24px 0}.post-stage{padding:22px 15px;font-size:12px}.bios-logo{right:20px;top:28px;transform:scale(.72);transform-origin:top right}.login-stage{grid-template-rows:55px 1fr 60px}.login-body{grid-template-columns:1fr}.login-welcome{padding:24px 18px 8px;text-align:left}.login-welcome h2{font-size:26px}.case-sticker{margin:18px 0 0}.login-account{min-height:190px;padding:20px 18px;border-left:0;border-top:1px solid rgba(255,255,255,.25)}.account-avatar{width:62px;height:62px}.password-row input{width:min(210px,60vw)}.desktop{grid-template-rows:1fr 31px}.system-bar{left:6px;right:6px;top:5px;grid-template-columns:1fr auto;gap:5px;min-height:84px;padding:6px}.brand-block b{font-size:11px}.brand-block small{font-size:9px}.archive-mark{width:31px;height:31px}.progress-wrap{grid-column:1/-1;grid-row:2;height:12px}.toolbar{gap:3px}.tool-button{padding:0 7px;font-size:10px;height:28px}.icon-button{display:none}.support-button{display:inline-block}.desktop-icons{left:5px;right:5px;top:96px;width:auto;display:flex;gap:4px;overflow-x:auto}.desktop-shortcut{min-width:70px;min-height:70px}.system-icons{display:none}.desktop-welcome{top:57%;width:86%}.window-shell{left:5px;right:5px;top:171px;bottom:5px}.window-content{padding:11px;font-size:15px}.notebook{right:7px;left:7px;top:99px;width:auto;height:calc(100% - 107px)}.stage-grid,.route-scenes,.photo-stage,.identity-form{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.photo-compare,.evidence-choice-grid,.character-dossiers{grid-template-columns:1fr}.character-dossiers>h3{grid-column:1}.challenge-card{display:block}.challenge-card>img{width:100%;margin-bottom:9px}.challenge-card h4,.challenge-prompt,.route-options,.reason-field{margin-top:9px}.final-report .source-picker{grid-template-columns:1fr}.legacy-body{grid-template-columns:1fr}.legacy-side,.legacy-aside{display:none}.legacy-main{padding:5px}.search-row{grid-template-columns:1fr 90px}.search-row .search-button{grid-column:1/-1;min-height:34px}.legacy-tianya .result-card,.legacy-mail .result-card{display:block}.legacy-banner{min-height:49px;padding:6px 8px}.legacy-brand h2{font-size:18px}.legacy-slogan{display:none}.legacy-tabs{overflow-x:auto;white-space:nowrap}.archive-view-head{display:block}.archive-view-head p{margin-top:4px;text-align:left}.archive-card-grid,.archive-photo-grid,.class-directory,.sms-contact-list{grid-template-columns:1fr}.forum-table{overflow-x:auto}.forum-row{min-width:640px}.thread-floor{grid-template-columns:78px minmax(0,1fr)}.thread-floor>aside{min-height:80px;padding:8px 3px}.archive-photo-card{grid-template-columns:88px 1fr}.archive-photo-card img{width:88px;height:68px}.blog-profile{grid-template-columns:1fr}.blog-profile img{height:150px}.blog-post>img,.archive-inline-photo{float:none;width:100%;max-width:none;margin:12px 0}.person-row{grid-template-columns:14px 75px 1fr}.friend-list>button{grid-template-columns:14px 80px 1fr}.recent-chat-list>button{grid-template-columns:40px minmax(0,1fr)}.recent-chat-list time{grid-column:2}.chat-line{max-width:95%}.sms-list>button{grid-template-columns:95px 76px minmax(130px,1fr);min-width:490px}.sms-list{overflow-x:auto}.sms-list em{display:none}.mail-list{overflow-x:auto}.mail-list>button{min-width:680px}.attachment-row{grid-template-columns:130px 1fr}.attachment-row time{display:none}.mail-compose label{grid-template-columns:1fr}.backend-table{display:block;overflow-x:auto}.evidence-photo{height:190px}.ending-modules{grid-template-columns:1fr}.paywall-actions{flex-direction:column}.start-menu{width:min(390px,96vw)}.start-columns{min-height:220px}.task-button{min-width:120px;max-width:45vw}.taskbar #system-time{min-width:92px;font-size:10px}.tray-icon{display:none}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}#crt-noise{display:none}}body.reduce-motion *,body.reduce-motion *::before,body.reduce-motion *::after{animation:none!important;transition:none!important}body.low-fear #crt-noise{display:none}
