:root{--surface-base: #e9e1cc;--surface-raised: #f6f1e3;--surface-paper: #fffdf4;--surface-ink: #262521;--surface-ink-raised: #33312b;--text-primary: #2b2a24;--text-muted: #716b5a;--text-on-ink: #f0ead7;--text-on-ink-muted: #b5ad95;--accent-stamp: #b23a2f;--accent-data: #2e5d8a;--accent-success: #3f6f4f;--accent-warning: #9a6b1f;--border-subtle: #cdc3a5;--border-strong: #a89c79;--radius-sm: 3px;--radius-md: 6px;--shadow-panel: 0 1px 3px rgba(43, 42, 36, .18), 0 4px 14px rgba(43, 42, 36, .08);--shadow-modal: 0 8px 40px rgba(30, 28, 22, .45);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--font-sans: "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono: "Consolas", "Courier New", ui-monospace, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:repeating-linear-gradient(0deg,transparent 0 34px,rgba(43,42,36,.025) 34px 35px),var(--surface-base);color:var(--text-primary);font-family:var(--font-sans);font-size:15px;line-height:1.45}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:url(/art/impossible-hall.webp) center / cover no-repeat;opacity:.15;pointer-events:none}#root{min-height:100vh;display:flex;flex-direction:column}button{font-family:inherit}a{color:var(--accent-data)}:focus-visible{outline:2px solid var(--accent-data);outline-offset:2px}.app-header{background:var(--surface-ink);color:var(--text-on-ink);border-bottom:3px solid var(--accent-stamp);padding:var(--space-3) var(--space-5);display:flex;align-items:center;gap:var(--space-5);flex-wrap:wrap}.brand{min-width:220px}.brand-title{font-size:19px;font-weight:700;letter-spacing:.04em;margin:0}.brand-title .badge-version{font-size:11px;font-family:var(--font-mono);color:var(--text-on-ink-muted);border:1px solid var(--text-on-ink-muted);border-radius:var(--radius-sm);padding:0 5px;margin-left:8px;vertical-align:2px}.brand-sub{margin:0;font-size:11.5px;font-family:var(--font-mono);color:var(--text-on-ink-muted);text-transform:uppercase;letter-spacing:.1em}.hud{display:flex;gap:var(--space-4);align-items:stretch;flex-wrap:wrap;margin-left:auto}.hud-stat{background:var(--surface-ink-raised);border:1px solid #4a473e;border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);min-width:130px}.hud-stat-label{font-size:10.5px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--text-on-ink-muted)}.hud-stat-value{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.hud-stat-sub{font-size:11.5px;color:var(--text-on-ink-muted);font-variant-numeric:tabular-nums}.objective-strip{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:var(--space-4);padding:var(--space-1) var(--space-5);background:var(--surface-raised);border-bottom:1px solid var(--border-strong);font-family:var(--font-mono);font-size:11.5px;color:var(--text-muted);min-height:26px}.strip-label{letter-spacing:.1em;font-size:10px;color:var(--text-muted)}.strip-here{white-space:nowrap;color:var(--text-primary);font-weight:700}.strip-here .strip-label{font-weight:400}.strip-objective{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.strip-back{white-space:nowrap;font-weight:700;text-decoration:none}.strip-back:hover{text-decoration:underline}.app-main{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:var(--space-5);display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:var(--space-5);align-items:start}.workspace,.sidebar{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}@media(max-width:980px){.app-main{grid-template-columns:1fr}}.panel{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-panel)}.panel-header{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle)}.panel-title{margin:0;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.panel-note{font-size:11px;font-family:var(--font-mono);color:var(--text-muted)}.panel-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.panel-empty{color:var(--text-muted);font-style:italic;font-size:13.5px}.form-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:1px 6px;white-space:nowrap}.primary-card{display:flex;align-items:center;gap:var(--space-5);flex-wrap:wrap}.primary-button{background:var(--accent-stamp);color:#fff8ee;border:none;border-bottom:3px solid #7e241d;border-radius:var(--radius-md);font-size:17px;font-weight:700;letter-spacing:.03em;padding:var(--space-4) var(--space-6);cursor:pointer}.primary-button:hover{background:#c04338}.primary-button:active{transform:translateY(1px);border-bottom-width:2px}.primary-caption{flex:1;min-width:200px;color:var(--text-muted);font-size:13px;margin:0}.primary-gain{font-family:var(--font-mono);font-size:12px;color:var(--accent-success);white-space:nowrap}.primary-compact .panel-header{display:none}.primary-compact .primary-card{gap:var(--space-3)}.primary-button.compact{font-size:13px;padding:var(--space-2) var(--space-4);border-bottom-width:2px}.value-check{background:var(--surface-paper);border:1px dashed var(--accent-data);border-radius:var(--radius-sm);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-2)}.value-check-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.value-check-title{margin:0;font-size:13px;font-weight:700}.value-check-reward{font-family:var(--font-mono);font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--accent-success);border:1.5px solid var(--accent-success);border-radius:var(--radius-sm);padding:0 6px;white-space:nowrap}.value-check-prompt{margin:0;font-size:12.5px}.value-check-options{display:flex;flex-direction:column;gap:var(--space-2)}.upgrade-card.highlighted{border-left:4px solid var(--accent-success)}.recommend-tag{font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.12em;color:var(--accent-success);border:1.5px solid var(--accent-success);border-radius:var(--radius-sm);padding:0 6px;white-space:nowrap}.upgrade-catalog summary{cursor:pointer;font-size:12px;color:var(--accent-data);font-family:var(--font-mono)}.upgrade-catalog-list{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-3)}.exhibit-photo{margin:0;flex-shrink:0;background:var(--surface-paper);border:1px solid var(--border-strong);box-shadow:var(--shadow-panel);padding:var(--space-2) var(--space-2) var(--space-1);transform:rotate(1.6deg)}.exhibit-photo img{display:block;width:168px;height:96px;object-fit:cover}.exhibit-photo figcaption{font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;color:var(--text-muted);padding-top:var(--space-1);text-align:center}@media(max-width:760px){.exhibit-photo{display:none}}.desk-card{background:var(--surface-paper);border:1px solid var(--border-subtle);border-left:4px solid var(--accent-data);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.desk-card.amplifier{border-left-color:var(--accent-success)}.desk-head{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap}.desk-name{margin:0;font-size:15px;font-weight:700}.desk-flavor{margin:0;font-size:12px;font-style:italic;color:var(--text-muted)}.desk-desc{margin:0;font-size:12.5px;color:var(--text-muted)}.alloc-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.alloc-value{font-family:var(--font-mono);font-size:16px;font-weight:700;min-width:52px;text-align:center;font-variant-numeric:tabular-nums}.stepper{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-3);font-family:var(--font-mono);font-size:13px;font-weight:700;cursor:pointer;color:var(--text-primary)}.stepper:hover:not(:disabled){background:var(--surface-paper);border-color:var(--accent-data)}.stepper:disabled{opacity:.4;cursor:not-allowed}.desk-output{display:flex;gap:var(--space-4);font-size:13px;font-variant-numeric:tabular-nums;flex-wrap:wrap}.desk-output strong{color:var(--accent-data)}.desk-card.amplifier .desk-output strong{color:var(--accent-success)}.desk-output .next-hint{color:var(--text-muted);font-size:12px}.focus-summary{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;font-size:13px}.focus-summary .focus-count{font-family:var(--font-mono);font-weight:700;font-size:15px}.reclaim-button{margin-left:auto;background:transparent;border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-3);font-size:12px;cursor:pointer;color:var(--text-primary)}.reclaim-button:hover{border-color:var(--accent-stamp);color:var(--accent-stamp)}.upgrade-card{background:var(--surface-paper);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.upgrade-head{display:flex;align-items:baseline;gap:var(--space-2);flex-wrap:wrap}.upgrade-name{margin:0;font-size:14px;font-weight:700}.upgrade-flavor{margin:0;font-size:12px;color:var(--text-muted)}.upgrade-foot{display:flex;align-items:center;gap:var(--space-3)}.upgrade-cost{font-family:var(--font-mono);font-size:12.5px;font-variant-numeric:tabular-nums}.upgrade-buy{margin-left:auto;background:var(--surface-ink);color:var(--text-on-ink);border:none;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:12px;font-weight:600;cursor:pointer}.upgrade-buy:hover:not(:disabled){background:var(--surface-ink-raised)}.upgrade-buy:disabled{opacity:.45;cursor:not-allowed}.stamp-approved{margin-left:auto;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--accent-stamp);border:2px solid var(--accent-stamp);border-radius:var(--radius-sm);padding:1px 8px;transform:rotate(-3deg)}.live-strip{position:sticky;top:26px;z-index:20;background:var(--surface-ink);color:var(--text-on-ink);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);display:flex;flex-direction:column;gap:2px}.live-strip-main{display:flex;align-items:baseline;gap:var(--space-2)}.live-strip-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-on-ink-muted)}.live-strip-value{display:inline-block;font-size:20px;font-weight:700;font-variant-numeric:tabular-nums;transition:color .2s ease-out,transform .2s ease-out}.live-strip-rate{font-family:var(--font-mono);font-size:12.5px;color:var(--accent-success);font-variant-numeric:tabular-nums}.live-strip-since{font-size:11.5px;color:var(--text-on-ink-muted);font-variant-numeric:tabular-nums}.so-card{background:var(--surface-paper);border:1px solid var(--border-subtle);border-left:4px solid var(--accent-success);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.so-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.so-name{margin:0;font-size:14px;font-weight:700}.so-level{display:inline-block;font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--accent-success);font-variant-numeric:tabular-nums}.so-level.maxed{color:var(--accent-stamp)}.so-effects{margin:0;font-family:var(--font-mono);font-size:11.5px;color:var(--accent-data)}.so-flavor{margin:0;font-size:12px;font-style:italic;color:var(--text-muted)}.so-foot{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-1)}.so-next{font-family:var(--font-mono);font-size:12px;font-variant-numeric:tabular-nums;color:var(--text-muted)}.so-buttons{display:flex;gap:var(--space-2);margin-left:auto}.so-buy{background:var(--accent-success);color:#fff;border:none;border-bottom:2px solid #2f5540;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:12px;font-weight:700;cursor:pointer}.so-buy:hover:not(:disabled){filter:brightness(1.08)}.so-buy:active:not(:disabled){transform:translateY(1px);border-bottom-width:1px}.so-buy-max{background:var(--surface-ink);border-bottom-color:#000}.so-buy:disabled{opacity:.4;cursor:not-allowed}.memo-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);max-height:220px;overflow-y:auto}.memo-item{font-family:var(--font-mono);font-size:12px;padding:var(--space-2) var(--space-3);background:var(--surface-paper);border-left:3px solid var(--border-strong)}.memo-item.memo{border-left-color:var(--accent-stamp)}.memo-item.warn{border-left-color:var(--accent-warning)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e1c168c;display:flex;align-items:center;justify-content:center;padding:var(--space-5);z-index:50}.modal{background:var(--surface-paper);border:1px solid var(--border-strong);border-top:6px solid var(--accent-stamp);border-radius:var(--radius-md);box-shadow:var(--shadow-modal);max-width:440px;width:100%;padding:var(--space-5)}.modal h2{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:16px;letter-spacing:.12em}.modal dl{margin:0 0 var(--space-3);display:grid;grid-template-columns:auto 1fr;gap:var(--space-1) var(--space-4);font-size:13.5px}.modal dt{color:var(--text-muted)}.modal dd{margin:0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.modal .modal-note{font-size:12px;color:var(--text-muted);margin:0 0 var(--space-4)}.modal-dismiss{width:100%;background:var(--surface-ink);color:var(--text-on-ink);border:none;border-radius:var(--radius-sm);padding:var(--space-3);font-size:14px;font-weight:600;cursor:pointer}.app-footer{border-top:1px solid var(--border-subtle);padding:var(--space-3) var(--space-5);display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;font-size:12px;color:var(--text-muted)}.app-footer .footer-version{font-family:var(--font-mono)}.save-warning{color:var(--accent-warning);font-weight:600}.privacy-page{max-width:640px;margin:0 auto;padding:var(--space-6) var(--space-5)}.privacy-page h1{font-size:20px}.privacy-lead{font-size:16px;font-weight:700}.debug-panel{position:fixed;bottom:var(--space-3);right:var(--space-3);background:var(--surface-ink);color:var(--text-on-ink);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-size:11px;font-family:var(--font-mono);display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap;opacity:.85;z-index:60}.debug-panel button{background:var(--surface-ink-raised);color:var(--text-on-ink);border:1px solid #4a473e;border-radius:var(--radius-sm);font-size:11px;padding:2px 6px;cursor:pointer}.app-main.with-cases{grid-template-columns:260px minmax(0,1fr) 340px}@media(max-width:1180px){.app-main.with-cases{grid-template-columns:220px minmax(0,1fr)}.app-main.with-cases .sidebar{grid-column:1 / -1}}@media(max-width:860px){.app-main.with-cases{grid-template-columns:1fr}}.cases-column{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.case-link{display:flex;flex-direction:column;gap:var(--space-1);background:var(--surface-paper);border:1px solid var(--border-subtle);border-left:4px solid var(--accent-warning);border-radius:var(--radius-sm);padding:var(--space-3);text-decoration:none;color:var(--text-primary)}.case-link:hover{border-left-color:var(--accent-stamp)}.case-link.submitted{border-left-color:var(--accent-success);opacity:.85}.case-link-title{font-weight:700;font-size:13px}.case-status-stamp{align-self:flex-start;font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.14em;padding:0 6px;border:1.5px solid var(--accent-warning);border-radius:var(--radius-sm);color:var(--accent-warning)}.case-status-stamp.active{border-color:var(--accent-stamp);color:var(--accent-stamp)}.case-status-stamp.submitted{border-color:var(--accent-success);color:var(--accent-success)}.case-view .case-summary{margin:0;font-size:13.5px;color:var(--text-muted)}.case-objective{background:var(--surface-paper);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);padding:var(--space-3)}.case-objective p{margin:var(--space-1) 0 0;font-size:13.5px}.case-section-title{margin:var(--space-2) 0 0;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.document-card{background:var(--surface-paper);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-bottom:var(--space-2)}.document-card summary{cursor:pointer;padding:var(--space-2) var(--space-3);font-family:var(--font-mono);font-size:11.5px;font-weight:700;letter-spacing:.08em}.document-body{margin:0;padding:var(--space-3) var(--space-4) var(--space-4);font-family:var(--font-mono);font-size:12.5px;line-height:1.55;white-space:pre-wrap;border-top:1px dashed var(--border-subtle)}.evidence-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-3)}.evidence-card{background:var(--surface-paper);border:1px solid var(--border-subtle);border-top:3px solid var(--accent-data);border-radius:var(--radius-sm);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.evidence-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.evidence-title{margin:0;font-size:13px;font-weight:700}.evidence-body{margin:0;font-size:12.5px}.evidence-source{margin:0;font-size:11px;font-style:italic;color:var(--text-muted)}.reliability-stamp{font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.12em;padding:0 5px;border-radius:var(--radius-sm);border:1.5px solid var(--text-muted);color:var(--text-muted);white-space:nowrap}.reliability-stamp.weak{border-color:var(--accent-warning);color:var(--accent-warning)}.reliability-stamp.mixed{border-color:var(--accent-data);color:var(--accent-data)}.reliability-stamp.strong{border-color:var(--accent-success);color:var(--accent-success)}.challenge-card{background:var(--surface-paper);border:1px solid var(--border-strong);border-left:4px solid var(--accent-stamp);border-radius:var(--radius-sm);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2)}.challenge-card.resolved{border-left-color:var(--border-strong)}.challenge-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.challenge-title{margin:0;font-size:14px}.challenge-prompt{margin:0;font-size:13.5px}.challenge-options{display:flex;flex-direction:column;gap:var(--space-2)}.challenge-option{text-align:left;background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:13px;cursor:pointer;color:var(--text-primary)}.challenge-option:hover{border-color:var(--accent-data);background:var(--surface-paper)}.challenge-numeric{display:flex;gap:var(--space-2);align-items:center}.challenge-numeric input{font-family:var(--font-mono);font-size:14px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised);width:160px}.challenge-retry-note{margin:0;font-size:12px;color:var(--accent-warning);font-weight:600}.challenge-sort{display:flex;flex-direction:column;gap:var(--space-2)}.sort-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-3);background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.sort-item-text{flex:1;min-width:160px;font-size:13px}.sort-buckets{display:flex;gap:var(--space-1);flex-wrap:wrap}.sort-bucket{background:var(--surface-paper);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:2px var(--space-2);font-size:11.5px;cursor:pointer;color:var(--text-primary)}.sort-bucket:hover{border-color:var(--accent-data)}.sort-bucket.selected{background:var(--accent-data);border-color:var(--accent-data);color:#fff;font-weight:600}.sequence-list{list-style:none;margin:0 0 var(--space-2);padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.sequence-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.sequence-num{font-family:var(--font-mono);font-weight:700;font-size:14px;min-width:20px;text-align:center;color:var(--accent-data)}.sequence-text{flex:1;min-width:0;font-size:13px}.sequence-controls{display:flex;gap:var(--space-1)}.outcome-stamp{font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.14em;padding:1px 7px;border-radius:var(--radius-sm);transform:rotate(-2deg);white-space:nowrap}.outcome-stamp.mastery{border:2px solid var(--accent-success);color:var(--accent-success)}.outcome-stamp.partial{border:2px solid var(--accent-data);color:var(--accent-data)}.outcome-stamp.miss{border:2px solid var(--accent-warning);color:var(--accent-warning)}.challenge-feedback{display:flex;flex-direction:column;gap:var(--space-2);font-size:13px}.challenge-changed{margin:0}.challenge-feedback details summary{cursor:pointer;font-size:12px;color:var(--accent-data)}.challenge-feedback details p{margin:var(--space-2) 0 0;font-size:12.5px;color:var(--text-muted)}.report-form fieldset{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin:var(--space-2) 0;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.report-form legend{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:0 var(--space-1)}.report-hint{margin:0;font-size:11.5px;font-style:italic;color:var(--text-muted)}.report-conclusion,.report-evidence{display:flex;gap:var(--space-2);align-items:baseline;font-size:13px;cursor:pointer}.report-conclusion em{display:block;font-size:12px;color:var(--text-muted)}.report-result{background:var(--surface-paper);border:2px solid var(--accent-success);border-radius:var(--radius-md);padding:var(--space-4)}.report-result h3{margin:0 0 var(--space-2);font-family:var(--font-mono);letter-spacing:.12em;font-size:15px}.report-conclusion-final{font-size:14px;font-weight:700;margin:0 0 var(--space-2)}.grade-stamp{font-family:var(--font-mono);font-weight:700;font-size:13px;letter-spacing:.14em;padding:1px 8px;border:2px solid var(--accent-success);border-radius:var(--radius-sm);color:var(--accent-success);display:inline-block;transform:rotate(-2deg)}.report-result.grade-weak,.report-result.grade-weak .grade-stamp{border-color:var(--accent-warning)}.report-result.grade-weak .grade-stamp{color:var(--accent-warning)}.fieldwork-card{background:var(--surface-paper);border:1px solid var(--border-subtle);border-left:4px solid var(--accent-warning);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.fieldwork-progress-bar{height:10px;background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);overflow:hidden}.fieldwork-progress-fill{height:100%;background:var(--accent-warning);transition:width .22s linear}.fieldwork-eta{font-family:var(--font-mono);font-size:11.5px;color:var(--text-muted)}.fieldwork-ready{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.fieldwork-ready-stamp{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--accent-success);border:2px solid var(--accent-success);border-radius:var(--radius-sm);padding:1px 8px;transform:rotate(-2deg)}.fieldwork-claim{font-size:14px;padding:var(--space-2) var(--space-4)}.equip-slot{display:flex;flex-direction:column;gap:var(--space-2)}.equip-slot-label{font-family:var(--font-mono);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px dashed var(--border-subtle);padding-bottom:2px}.equip-card{background:var(--surface-paper);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1)}.equip-card.rarity-unusual{border-left:4px solid var(--accent-data)}.equip-card.rarity-classified{border-left:4px solid var(--accent-stamp)}.form-label.rarity-classified{color:var(--accent-stamp);border-color:var(--accent-stamp)}.equip-effects{margin:0;font-family:var(--font-mono);font-size:11.5px;color:var(--accent-data)}.equip-toggle{background:none;cursor:pointer}.boss-resolve-head{display:flex;justify-content:space-between;font-size:13px;font-weight:700}.boss-resolve-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.boss-resolve-bar{height:16px;background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);overflow:hidden;margin-top:var(--space-1)}.boss-resolve-fill{height:100%;background:var(--accent-stamp);transition:width .34s cubic-bezier(.2,.75,.25,1)}.boss-weakness{margin:0;font-size:13px;font-style:italic;color:var(--text-muted)}.boss-weakness.known{font-style:normal;font-weight:600;color:var(--accent-stamp)}.boss-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--space-3)}.boss-action{display:flex;flex-direction:column;gap:var(--space-1);text-align:left;background:var(--surface-paper);border:1px solid var(--border-strong);border-bottom:3px solid var(--surface-ink);border-radius:var(--radius-md);padding:var(--space-3);cursor:pointer;color:var(--text-primary)}.boss-action:hover:not(:disabled){border-color:var(--accent-stamp)}.boss-action:disabled{opacity:.55;cursor:not-allowed}.boss-action-name{font-weight:700;font-size:14px}.boss-action-desc{font-size:11.5px;color:var(--text-muted)}.boss-action-meta{font-family:var(--font-mono);font-size:11px;color:var(--accent-data)}.revision-boundary{display:flex;flex-direction:column;gap:var(--space-2);font-size:12.5px}.revision-resets,.revision-persists{margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm)}.revision-resets{background:#b23a2f12;border-left:3px solid var(--accent-stamp)}.revision-persists{background:#3f6f4f14;border-left:3px solid var(--accent-success)}.revision-gain{margin:var(--space-1) 0 0;font-family:var(--font-mono);font-size:24px;font-weight:700;color:var(--accent-success)}.revision-confirm{background:var(--surface-ink)}.revision-link{border-left-color:var(--accent-data)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.settings-popover{position:relative;margin-left:auto}.settings-popover summary{cursor:pointer;color:var(--accent-data);font-size:12px;list-style:none}.settings-body{position:absolute;bottom:24px;right:0;background:var(--surface-paper);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);min-width:220px;z-index:40}.settings-row{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between;font-size:12.5px}.footer-seal{border-radius:50%;opacity:.9}.boss-portrait{float:right;width:132px;height:132px;object-fit:cover;border:1px solid var(--border-strong);border-radius:var(--radius-sm);margin:0 0 var(--space-2) var(--space-3);background:var(--surface-raised)}.fieldwork-art{width:100%;height:84px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border-subtle)}.so-card,.value-check{animation:paper-panel-in .2s ease-out both}.live-strip{animation:live-strip-in .18s ease-out both}@keyframes paper-panel-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes live-strip-in{0%{opacity:0}to{opacity:1}}.case-open-anim{isolation:isolate;position:relative}.case-open-anim:before{background:var(--surface-base);border:1px solid var(--border-strong);border-radius:var(--radius-md);content:"";top:-1px;right:-1px;bottom:-1px;left:-1px;opacity:0;pointer-events:none;position:absolute;transform-origin:center top;z-index:30;animation:case-folder-open .32s cubic-bezier(.2,.8,.25,1) both}@keyframes case-folder-open{0%{opacity:1;transform:perspective(900px) rotateX(0) translateY(0)}58%{opacity:1;transform:perspective(900px) rotateX(-42deg) translateY(-3%)}to{opacity:0;transform:perspective(900px) rotateX(-82deg) translateY(-9%)}}.boss-phase-page{transform-origin:left center}.boss-phase-page--turn{animation:boss-page-turn .42s cubic-bezier(.2,.75,.25,1) both}@keyframes boss-page-turn{0%{opacity:.45;transform:perspective(760px) rotateY(-12deg) translate(10px)}52%{opacity:1;transform:perspective(760px) rotateY(3deg) translate(-2px)}to{opacity:1;transform:perspective(760px) rotateY(0) translate(0)}}.boss-resolve-bar--hit{animation:boss-resolve-knock .18s ease-out both}@keyframes boss-resolve-knock{0%,to{box-shadow:none;transform:scaleX(1)}42%{box-shadow:0 0 0 2px var(--accent-stamp);transform:scaleX(.985)}}.hud-knowledge-value,.live-strip-value{transform-origin:left center}.gain-pulse{animation:knowledge-gain-pulse .28s ease-out both}@keyframes knowledge-gain-pulse{0%{color:var(--accent-success);transform:scale(1)}42%{color:var(--accent-success);transform:scale(1.035)}to{transform:scale(1)}}.so-level--changed{animation:standing-order-level-up .11s ease-out both;transform-origin:right center}@keyframes standing-order-level-up{0%,to{transform:rotate(0) scale(1)}45%{transform:rotate(-1deg) scale(1.08)}}.revision-transition{top:0;right:0;bottom:0;left:0;isolation:isolate;overflow:hidden;pointer-events:auto;position:fixed;z-index:90}.revision-transition--active{animation:revision-overlay 1.1s linear both}.revision-transition:before,.revision-transition:after{content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.revision-transition:before{background:repeating-linear-gradient(90deg,var(--surface-ink) 0,var(--surface-ink) 11%,var(--surface-ink-raised) 11%,var(--surface-ink-raised) 13%);transform-origin:center top;z-index:1}.revision-transition:after{background:var(--surface-paper);border-top:3px solid var(--border-strong);z-index:2}.revision-transition--active:before{animation:revision-shred 1.1s cubic-bezier(.45,0,.55,1) both}.revision-transition--active:after{animation:revision-fresh-sheet 1.1s cubic-bezier(.2,.75,.25,1) both}.revision-transition__stamp{border:4px solid var(--accent-stamp);border-radius:var(--radius-sm);height:70px;left:50%;opacity:0;position:absolute;top:50%;width:160px;z-index:3}.revision-transition--active .revision-transition__stamp{animation:revision-stamp 1.1s ease-out both}@keyframes revision-overlay{0%{opacity:0;pointer-events:auto}8%,82%{opacity:1;pointer-events:auto}83%{opacity:.94;pointer-events:none}to{opacity:0;pointer-events:none}}@keyframes revision-shred{0%{opacity:0;transform:translateY(-108%) scaleY(.35)}16%{opacity:1;transform:translateY(-12%) scaleY(1)}45%{opacity:1;transform:translateY(0) scaleY(1)}78%{opacity:1;transform:translateY(108%) scaleY(.3)}to{opacity:0;transform:translateY(116%) scaleY(.15)}}@keyframes revision-fresh-sheet{0%,36%{opacity:0;transform:translateY(108%)}45%{opacity:1;transform:translateY(96%)}82%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(0)}}@keyframes revision-stamp{0%,62%{opacity:0;transform:translate(-50%,-50%) rotate(-4deg) scale(1.45)}74%{opacity:1;transform:translate(-50%,-50%) rotate(-4deg) scale(.9)}86%{opacity:1;transform:translate(-50%,-50%) rotate(-4deg) scale(1)}to{opacity:0;transform:translate(-50%,-50%) rotate(-4deg) scale(1)}}@keyframes stamp-in{0%{transform:rotate(-3deg) scale(1.6);opacity:0}60%{transform:rotate(-3deg) scale(.92);opacity:1}to{transform:rotate(-3deg) scale(1)}}.stamp-approved,.outcome-stamp,.grade-stamp,.fieldwork-ready-stamp{animation:stamp-in .28s ease-out}@keyframes memo-in{0%{transform:translateY(-4px);opacity:0}to{transform:translateY(0);opacity:1}}.memo-item:first-child{animation:memo-in .25s ease-out}@media(prefers-reduced-motion:reduce){:root:not([data-reduced-motion=off]) *,:root:not([data-reduced-motion=off]) *:before,:root:not([data-reduced-motion=off]) *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root[data-reduced-motion=on] *,:root[data-reduced-motion=on] *:before,:root[data-reduced-motion=on] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
