:root{--bg:#fafafa;--surface:#fff;--text:#202124;--muted:#6a6e75;--border:#e5e6e8;--soft:#f0f1f2;--story-result:#365b7d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-padding-top:76px}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.65}button,input{font:inherit}button{color:inherit;cursor:pointer;background:0 0;border:0}button:disabled{opacity:.38;cursor:not-allowed}button,a,input{outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #555}button:not(:disabled):hover{background:var(--soft)}h1,h2,h3,p{margin:0}h1{letter-spacing:-.7px;font-size:30px;font-weight:650;line-height:1.3}h2{font-size:16px;font-weight:600}h3{font-size:14px;font-weight:600}svg{flex-shrink:0}::selection{background:#dce3e8}.muted{color:var(--muted)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{border-bottom:1px solid var(--border);background:var(--surface)}.header-inner{align-items:center;gap:28px;max-width:960px;min-height:64px;margin:auto;padding:0 32px;display:flex}.brand{white-space:nowrap;padding:8px 0;font-size:16px;font-weight:650}.brand:hover{background:0 0!important}nav{gap:4px;margin-left:auto;display:flex}nav button{color:var(--muted);white-space:nowrap;border-radius:5px;padding:8px 14px}nav button[aria-current]{color:var(--text);font-weight:600}.icon-button{border-radius:5px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.header-save{color:var(--muted);flex-shrink:0}.language-button{min-width:32px;min-height:36px;color:var(--muted);white-space:nowrap;border-radius:5px;flex-shrink:0;padding:6px 5px;font-size:12px}.offline-banner{color:var(--muted);text-align:center;background:var(--soft);padding:6px 20px;font-size:12px}main{max-width:800px;margin:auto;padding:44px 32px 100px}.primary-button,.secondary-button,.text-button,.back-link{border-radius:6px;justify-content:center;align-items:center;gap:9px;min-height:42px;padding:10px 16px;font-weight:500;display:inline-flex}.primary-button{background:var(--text);color:#fff;border:1px solid var(--text)}.primary-button:not(:disabled):hover{background:#3b3e42}.secondary-button{border:1px solid var(--border);background:var(--surface)}.text-button{color:var(--muted);padding:8px 10px}.back-link{min-height:32px;color:var(--muted);margin:0 0 28px -4px;padding:0 4px;font-size:13px}.page-heading{margin-bottom:28px}.page-heading p{color:var(--muted);margin-top:8px}.home{padding:76px 0 36px}.home h1{margin:10px 0 14px;font-size:42px}.home-intro p{color:var(--muted);font-size:15px}.home-actions{gap:10px;margin-top:32px;display:flex}.home-actions .primary-button{min-width:170px}.setup-page{max-width:680px;margin:auto}.setup-meta{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:9px;font-size:13px;display:flex}.talent-toolbar{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:12px;font-size:13px;display:flex}.talent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.talent-card{border:1px solid var(--border);background:var(--surface);text-align:left;border-radius:7px;flex-direction:column;min-width:0;padding:18px;display:flex}.talent-card.selected{background:#f4f5f6;border-color:#555;box-shadow:inset 0 0 0 1px #555}.talent-card:disabled{opacity:.55}.talent-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.talent-title h2{font-size:15px}.talent-title>span{color:var(--muted);align-items:center;min-height:20px;font-size:11px;display:flex}.talent-card p{color:var(--muted);margin-top:7px;font-size:13px;line-height:1.6}.talent-effect{color:#565a60;flex-wrap:wrap;gap:4px 12px;margin-top:auto;padding-top:12px;font-size:11px;display:flex}.setup-bottom{padding:14px 0 max(14px, env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--border);justify-content:flex-end;margin-top:20px;display:flex;position:sticky;bottom:0}.setup-bottom .primary-button{min-width:150px}.attribute-panel{border:1px solid var(--border);background:var(--surface);border-radius:7px;padding:0 22px}.panel-heading{border-bottom:1px solid var(--border);justify-content:space-between;padding:18px 0;font-size:13px;display:flex}.attribute-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:20px 0;display:flex}.attribute-copy h2{font-size:15px}.attribute-copy span{color:var(--muted);margin-top:3px;font-size:12px;display:block}.stat-stepper{align-items:center;gap:12px;display:flex}.stat-stepper button{border:1px solid var(--border);border-radius:5px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.stat-stepper strong{text-align:center;font-variant-numeric:tabular-nums;min-width:20px;font-size:18px;font-weight:500}.attribute-actions{justify-content:space-between;padding:8px 0;display:flex}.selected-talents{color:var(--muted);margin-top:18px;font-size:12px}.life-page{max-width:680px;margin:auto}.character-panel{margin:0 0 32px}.character-panel>summary,.life-history>summary{cursor:pointer;width:fit-content;color:var(--muted);padding:6px 0;font-size:13px}.character-content{padding-top:12px}.character-content .life-talents{margin:14px 0 0}.social-summary{color:var(--muted);margin-top:12px;font-size:12px}.character-content .travel-banner{margin-top:16px}.life-history{margin-top:12px}.life-history>.timeline{margin-top:24px}.life-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.life-header>div>span{font-size:13px}.life-header h1{font-variant-numeric:tabular-nums;margin-top:4px;font-size:36px}.life-header small{letter-spacing:0;color:var(--muted);margin-left:7px;font-size:14px;font-weight:400}.stat-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(5,1fr);gap:8px;padding:16px 0;display:grid}.stat-strip>div{align-items:center;gap:12px;display:flex}.stat-strip span{color:var(--muted);font-size:12px}.stat-strip strong{font-variant-numeric:tabular-nums;font-size:16px;font-weight:600}.life-talents{color:var(--muted);margin:14px 0 28px;font-size:12px}.life-talents summary{cursor:pointer;width:fit-content}.life-talents p{margin:6px 0 0 14px}.travel-banner{color:#4c6478;background:#f0f3f5;border-left:2px solid #849baa;margin-bottom:20px;padding:8px 12px;font-size:12px}.timeline-entry{grid-template-columns:42px minmax(0,1fr);gap:18px;display:grid}.timeline-entry.latest{display:block}.latest .event-topline h2{font-size:20px}.latest .timeline-card>p{font-size:16px}.timeline-age{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:1px;font-size:15px}.timeline-age span{margin-left:3px;font-size:10px}.timeline-card{border-bottom:1px solid var(--border);min-width:0;margin-bottom:24px;padding:0 0 24px}.event-topline{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.event-topline h2{font-size:15px}.event-topline>span{color:var(--muted);background:var(--soft);border-radius:3px;padding:1px 5px;font-size:10px}.timeline-card>p{color:#555a61;overflow-wrap:anywhere;font-size:14px;line-height:1.9}.latest .timeline-card>p{color:#363a40}.timeline-card>p strong,.collection-card>p strong{color:var(--text);font-weight:600}.story-paragraph{white-space:pre-line;display:block}.story-paragraph+.story-paragraph{margin-top:.55em}.timeline-card>p .story-result{color:var(--story-result)}.timeline-card>p .story-result strong{color:inherit}.story-paragraph:not(.story-result)+.story-result,.story-result+.story-paragraph:not(.story-result){margin-top:1.4em}.event-changes{color:#537561;flex-wrap:wrap;gap:10px;margin-top:8px;font-size:11px;display:flex}.event-changes:empty{display:none}.event-changes .negative{color:#986563}.choice-options{gap:8px;margin-top:18px;display:grid}.choice-options button{text-align:left;background:var(--surface);border:1px solid #cfd2d6;border-radius:6px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.choice-options strong{font-size:13px;font-weight:600}.choice-options small{color:var(--muted);margin-top:3px;font-size:12px;display:block}.choice-options svg{color:var(--muted)}.playback-dock{z-index:5;border-top:1px solid var(--border);background:var(--surface);width:100%;padding:14px 20px max(14px, env(safe-area-inset-bottom));justify-content:center;align-items:center;gap:10px;display:flex;position:fixed;bottom:0;left:0}.playback-dock .primary-button{min-width:180px}.playback-dock .secondary-button{min-width:100px}.speed-button{min-width:42px;min-height:42px;color:var(--muted);border-radius:5px;font-size:13px}.ending-card{border:1px solid var(--border);background:var(--surface);border-radius:7px;margin-bottom:30px;padding:22px}.ending-title{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.ending-title>span{color:var(--muted);white-space:nowrap;font-size:13px}.life-recap{margin:16px 0 20px}.life-recap p{color:var(--text);margin:0;font-size:14px;line-height:1.85}.life-recap p+p{margin-top:12px}.life-record{margin:20px 0}.life-record>summary{cursor:pointer;width:fit-content;color:var(--muted);font-size:13px}.life-record section{margin-top:22px}.life-record h3{margin-bottom:8px;font-size:13px}.life-record ul{margin:0;padding:0;list-style:none}.life-record li{border-bottom:1px solid var(--border);gap:18px;padding:7px 0;font-size:13px;display:flex}.life-record li>span{color:var(--muted);font-variant-numeric:tabular-nums;flex:0 0 72px;font-size:12px}.life-record small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.life-record p{color:var(--muted);margin-top:12px;font-size:13px}.ending-achievements{flex-wrap:wrap;gap:8px;margin:16px 0;font-size:11px;display:flex}.ending-achievements span{background:var(--soft);border-radius:3px;padding:3px 7px}.archive-tabs{border-bottom:1px solid var(--border);gap:24px;margin-bottom:26px;display:flex}.archive-tabs button{color:var(--muted);border-bottom:2px solid #0000;padding:12px 0}.archive-tabs button.active{color:var(--text);border-bottom-color:var(--text)}.archive-tabs span{margin-left:7px;font-size:11px}.active-save-card,.run-card{text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:7px;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:20px;display:flex}.active-save-card{margin-bottom:24px}.active-save-card strong{font-size:14px;font-weight:600}.active-save-card small{color:var(--muted);margin-top:4px;display:block}.active-save-card svg,.run-card svg{color:var(--muted)}.run-cards{gap:10px;display:grid}.run-card h2{font-size:15px}.run-card span{color:var(--muted);margin-top:5px;font-size:12px;display:block}.empty-state{text-align:center;color:var(--muted);padding:50px 16px}.empty-state h1{color:var(--text);font-size:24px}.empty-state button{margin-top:20px}.collection-controls{margin-bottom:24px}.collection-worlds{flex-wrap:wrap;gap:6px;display:flex}.collection-worlds button{border:1px solid var(--border);color:var(--muted);border-radius:5px;padding:7px 10px;font-size:12px}.collection-worlds button[aria-pressed=true]{color:var(--text);background:var(--surface);border-color:#858b93}.filter-toggle{color:var(--muted);align-items:center;gap:6px;width:fit-content;margin-top:16px;font-size:12px;display:flex}input[type=checkbox]{accent-color:var(--text)}.event-collection{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.collection-card{border:1px solid var(--border);background:var(--surface);border-radius:6px;padding:18px}.collection-card>span{color:var(--muted);font-size:11px}.collection-card h2{margin-top:5px;font-size:14px}.collection-card p{color:var(--muted);margin-top:8px;font-size:12px}.collection-card.locked{background:0 0}.collection-card.locked h2{color:#93979d}.pagination{color:var(--muted);justify-content:center;align-items:center;gap:20px;margin-top:26px;font-size:12px;display:flex}.pagination button{min-height:36px;padding:7px 12px;font-size:12px}.collection-summary{color:var(--muted);margin-bottom:20px;font-size:12px}.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.achievement-card{border:1px solid var(--border);border-radius:6px;padding:16px}.achievement-card summary{cursor:pointer;color:var(--muted);font-size:13px;font-weight:500}.achievement-card p{color:var(--muted);margin-top:12px;font-size:12px}.achievement-card.unlocked{background:var(--surface)}.achievement-card.unlocked summary{color:var(--text)}.achievement-card svg{color:#537561;float:right;margin-top:3px}.guide-page{max-width:620px;margin:auto}.guide-list{margin:0;padding-left:20px}.guide-list li{margin-bottom:26px;padding-left:10px}.guide-list li::marker{color:var(--muted);font-size:12px}.guide-list h2{font-size:15px}.guide-list p{color:var(--muted);margin-top:6px;font-size:13px}.guide-actions{gap:10px;margin-top:36px;display:flex}.modal-backdrop{z-index:20;background:#181b224d;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:10px;outline:none;width:100%;max-width:460px;max-height:90dvh;padding:26px;overflow-y:auto}.modal-heading{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-heading h2{font-size:18px}.modal-heading .icon-button{margin-right:-7px}.modal-copy{margin-top:12px;font-size:13px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.storage-info{color:var(--muted);font-size:13px}.save-file-actions{gap:10px;margin-top:18px;display:flex}.save-file-actions button{flex:1}.sync-code-section,.restore-section{border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.sync-code-section>p,.restore-section>p{color:var(--muted);margin-top:5px;font-size:12px}.sync-code{border:1px solid var(--border);border-radius:5px;align-items:center;gap:8px;margin:12px 0 8px;padding:10px;display:flex}.sync-code code{overflow-wrap:anywhere;color:#565a60;flex:1;font-size:11px}.sync-code-section .text-button{min-height:32px;padding:4px 0;font-size:12px}.save-disclosure summary{cursor:pointer;color:var(--muted);padding:6px 0;font-size:13px}.save-disclosure p{margin-top:8px;font-size:12px}.sync-code-section .save-disclosure{margin-top:12px}.restore-section input{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:5px;margin:12px 0;padding:10px 12px;font-size:13px;display:block}.restore-section .primary-button{width:100%}.install-link{width:100%;margin-top:20px;font-size:12px}.install-steps strong{color:var(--text);margin-bottom:5px;font-size:13px;display:block}.install-steps p{color:var(--muted);margin-bottom:22px;font-size:12px}.toast{z-index:30;color:#fff;background:#25282d;border-radius:6px;align-items:center;gap:8px;width:max-content;max-width:calc(100% - 32px);padding:11px 16px;font-size:12px;display:flex;position:fixed;bottom:88px;left:50%;transform:translate(-50%)}@media (max-width:600px){.header-inner{gap:6px;min-height:58px;padding:0 16px}.brand{font-size:14px}nav{gap:0}nav button{padding:8px 6px;font-size:12px}.header-save{width:30px}main{padding:28px 20px 100px}h1{font-size:26px}.home{padding-top:50px}.home h1{font-size:34px}.home-intro p{font-size:13px}.talent-grid{grid-template-columns:1fr}.talent-card{padding:16px}.talent-card p{font-size:12px}.talent-effect{padding-top:8px}.attribute-panel{padding:0 16px}.attribute-row{gap:12px}.attribute-copy span{font-size:11px}.stat-stepper{gap:8px}.stat-stepper button{width:34px;height:36px}.stat-strip>div{flex-direction:column;align-items:flex-start;gap:3px}.stat-strip{padding:12px 0}.life-header h1{font-size:32px}.timeline-entry{grid-template-columns:30px minmax(0,1fr);gap:12px}.timeline-age{font-size:13px}.timeline-age span{margin-left:2px;font-size:9px}.timeline-card>p{font-size:13px}.playback-dock{padding:12px 16px max(12px, env(safe-area-inset-bottom));gap:8px}.playback-dock .primary-button{flex:1;min-width:0;max-width:220px}.playback-dock .secondary-button{min-width:86px}.ending-card{padding:18px}.ending-title{flex-direction:column;gap:5px}.event-collection,.achievement-grid{grid-template-columns:1fr}.modal{padding:20px}.modal-backdrop{padding:14px}}@media (max-width:360px){.header-inner{gap:4px;padding:0 12px}.brand{font-size:14px}nav{gap:0}nav button{padding:8px 6px;font-size:12px}.header-save{flex-shrink:0;width:28px}.language-button{min-width:28px;padding-inline:3px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.identity-strip{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.identity-strip span{color:#4e6679;border:1px solid #c7d0d6;border-radius:4px;padding:3px 8px;font-size:12px}.inventory{color:var(--muted);margin:14px 0;font-size:12px}.inventory summary{cursor:pointer;width:fit-content}.inventory>div{background:var(--surface);border:1px solid var(--border);border-radius:5px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;padding:14px;display:grid}.inventory strong{color:var(--text);font-weight:500}.inventory p{margin-top:3px;font-size:11px}.event-rewards{color:#4e6679;flex-wrap:wrap;gap:5px 12px;margin-top:10px;font-size:12px;display:flex}
