:root{color-scheme:dark;--bg:#0d1016;--panel:#151a23;--panel2:#1c2330;--line:#2a3342;--text:#e8ebf0;--muted:#929cab;--red:#ff5c5c;--gold:#f4c95d;--purple:#c084fc;--blue:#60a5fa;--green:#4ade80;--white:#e5e7eb;--gray:#8b93a1;--accent:#f0b35b}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% -20%,#273047 0,transparent 35%),var(--bg);color:var(--text);font:14px/1.55 Inter,"Microsoft YaHei",sans-serif}button{font:inherit}.app{min-height:100vh;display:grid;grid-template:64px 1fr 70px/190px minmax(0,1fr)}.top{grid-column:1/-1;display:flex;align-items:center;gap:28px;padding:0 24px;border-bottom:1px solid var(--line);background:#10141bd9;backdrop-filter:blur(16px);position:sticky;top:0;z-index:5}.brand{font-size:18px;font-weight:800}.brand small{display:block;font-size:11px;color:var(--muted);font-weight:500}.timeline{display:flex;gap:16px;color:var(--muted)}.timeline strong{color:var(--text)}.top-spacer{flex:1}.pill{padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--panel)}.nav{grid-row:2/4;padding:18px 12px;border-right:1px solid var(--line);background:#10141b}.nav button{display:flex;width:100%;border:0;background:transparent;color:var(--muted);padding:12px 14px;border-radius:8px;margin-bottom:6px;cursor:pointer}.nav button.active,.nav button:hover{background:var(--panel2);color:var(--text)}main{padding:24px 28px 110px;overflow:auto}.footer{grid-column:2;position:fixed;bottom:0;left:190px;right:0;height:70px;display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:12px 28px;border-top:1px solid var(--line);background:#10141bf0;z-index:4}.primary{border:0;background:var(--accent);color:#17120b;font-weight:800;padding:12px 18px;border-radius:8px;cursor:pointer}.primary:disabled{opacity:.45;cursor:not-allowed}.secondary{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:11px 15px;border-radius:8px;cursor:pointer}.page-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:20px}.page-title h1{margin:0;font-size:24px}.page-title p{margin:3px 0 0;color:var(--muted)}.grid{display:grid;gap:14px}.stats{grid-template-columns:repeat(6,minmax(100px,1fr))}.card{background:linear-gradient(180deg,#191f2a,#141922);border:1px solid var(--line);border-radius:12px;padding:16px}.stat-label{color:var(--muted)}.stat-value{font-size:30px;font-weight:800;margin-top:3px}.two-col{grid-template-columns:1.4fr 1fr;margin-top:14px}.bug{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line)}.bug:last-child{border:0}.severity{font-weight:700}.严重,.致命{color:var(--red)}.轻微{color:var(--gold)}.roster{display:grid;gap:8px}.person{display:grid;grid-template-columns:120px 70px 1fr 180px 90px;align-items:center;gap:12px;padding:12px 14px;background:var(--panel);border:1px solid var(--line);border-radius:10px;cursor:pointer}.person:hover{border-color:#536078}.stress{height:8px;background:#29313e;border-radius:9px;overflow:hidden}.stress i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--red))}.traits{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workstations{grid-template-columns:repeat(3,1fr)}.seat h3{margin:0 0 4px}.slot{border:1px dashed #3b4658;border-radius:8px;padding:8px;margin-top:9px;color:var(--muted)}.tabs{display:flex;gap:6px;margin-bottom:12px}.tabs button{border:1px solid var(--line);background:var(--panel);color:var(--muted);padding:7px 10px;border-radius:7px}.event-card{max-width:900px;margin:auto;border-color:#715d3d;box-shadow:0 24px 90px #0008}.event-card h2{font-size:26px;margin:0 0 8px}.event-card .setup{font-size:16px;color:#cbd1da}.option{display:block;width:100%;text-align:left;margin-top:9px;padding:13px;border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:9px;cursor:pointer}.option.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.drawer{position:fixed;right:0;top:64px;bottom:70px;width:420px;padding:20px;background:#131923;border-left:1px solid var(--line);z-index:8;overflow:auto;box-shadow:-20px 0 60px #0008}.drawer-close{float:right}.attrs{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.attr{display:flex;justify-content:space-between;background:var(--panel2);padding:7px 9px;border-radius:6px}.a19,.a20{color:var(--red)}.a16,.a17,.a18{color:var(--gold)}.a13,.a14,.a15{color:var(--purple)}.a10,.a11,.a12{color:var(--blue)}.a7,.a8,.a9{color:var(--green)}.a4,.a5,.a6{color:var(--white)}.a1,.a2,.a3{color:var(--gray)}.record{padding:10px 0;border-bottom:1px solid var(--line)}.empty{color:var(--muted);padding:22px;text-align:center}.result{max-width:600px;margin:60px auto}.delta{font-size:18px;margin:14px 0;padding:12px;background:var(--panel2);border-radius:8px}
.person{width:100%;color:var(--text);text-align:left;font:inherit}.seat-button{color:var(--text);text-align:left;font:inherit;cursor:pointer}.seat-button:hover{border-color:var(--accent)}.seat-action{display:block;color:var(--accent);margin-top:12px}.tabs{flex-wrap:wrap}.tabs button{cursor:pointer}.tabs button.active{border-color:var(--accent);color:var(--text)}.option-effects{color:var(--muted);font-size:12px;margin-top:7px}.drawer.wide{width:min(620px,55vw)}.attribute-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;clear:both}.attrs.single{display:grid;grid-template-columns:1fr;gap:6px}.trait-card{display:grid;gap:3px;padding:10px;margin:6px 0;border:1px solid var(--line);border-left:3px solid var(--green);border-radius:7px;background:var(--panel2)}.trait-card.negative{border-left-color:var(--red)}.trait-card span{color:var(--muted)}.bug-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0 14px}.bug-summary div{display:grid;padding:9px;background:var(--panel2);border-radius:7px}.bug-summary b{font-size:20px}.bug-summary span{font-size:11px;color:var(--muted)}.candidate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.candidate{display:grid;grid-template-columns:1fr auto;gap:2px;text-align:left;padding:9px;border:1px solid var(--line);border-radius:7px;background:var(--panel2);color:var(--text);cursor:pointer}.candidate span{color:var(--muted);font-size:12px}.candidate strong{grid-row:1/3;grid-column:2;font-size:18px;color:var(--gold)}.candidate.selected{border-color:var(--accent)}.prob-preview{display:grid;gap:7px;margin:12px 0;padding:13px;border:1px solid #665332;border-radius:8px;background:#211d17}.prob-preview div{display:flex;justify-content:space-between}.prob-preview strong{font-size:24px;color:var(--gold)}.shop-item{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.shop-item div{display:grid}.shop-item span{color:var(--muted)}.shop-item button,.course{border:1px solid var(--line);background:var(--panel2);color:var(--text);padding:8px 10px;border-radius:7px;cursor:pointer}.shop-item button:disabled{opacity:.4;cursor:not-allowed}.course{display:grid;width:100%;text-align:left;margin:7px 0;gap:2px}.course span,.course small{color:var(--muted)}.course:hover{border-color:var(--accent)}.meditation-person{margin-top:14px;padding:10px;background:var(--panel);border-radius:8px}
@media(max-width:1024px){.app{grid-template-columns:74px minmax(0,1fr)}.nav button{font-size:0;justify-content:center}.nav button::first-letter{font-size:18px}.footer{left:74px}.stats{grid-template-columns:repeat(3,1fr)}.person{grid-template-columns:100px 60px 1fr}.person .traits,.person .value{display:none}.drawer{width:min(100%,620px)}.attribute-columns{grid-template-columns:1fr}.candidate-grid{grid-template-columns:repeat(2,1fr)}}
