/* Evidence unfolds in place; the technical detail remains available on demand. */
#fw-workbench,#recovery-work{margin:24px 0;color:#233c45;font-size:16px;line-height:1.65}
#fw-workbench[hidden],#recovery-work[hidden],#recovery-work [hidden],#result-slip [hidden],#replay-choices[hidden]{display:none}
.work-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;list-style:none;padding:0;margin:0 0 20px;font-size:13px;text-align:center}
.work-steps li{padding:8px 4px;border-bottom:3px solid #d5dcd9;color:#5f6a68}
.work-steps li[aria-current]{color:#174f47;border-color:#277c6c;background:#e3f2ec;font-weight:800}
.work-steps li.completed{border-color:#8cb7a6}
.work-observation{margin:18px 0 0;padding:12px 16px;border-left:3px solid #398673;background:#edf6f1}
#fw-all-stores{background:transparent;padding-top:0;padding-bottom:0;border:0;font-size:14px}
.panel[data-view^="fw"]>p,.panel[data-view="verifyFw"]>p{display:none}
#network-work .network-record{margin-top:12px}#network-work summary{min-height:44px;box-sizing:border-box;cursor:pointer}
#fw-check{margin:16px 0}#fw-check>summary{font-weight:700;cursor:pointer;min-height:44px}
#recovery-flow{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:18px}
.recovery-phase{position:relative;padding:12px;border:1px solid #b9cec4;border-radius:8px;background:#f4f8f4}
.recovery-phase+.recovery-phase::before{content:"↓";position:absolute;top:-24px;left:calc(50% - 8px);height:22px;color:#667e77;font-size:20px}
#recovery-work #recovery-flow h3{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:15px;line-height:1.5}
.phase-number{display:inline-grid;place-items:center;flex:0 0 24px;height:24px;background:#244e5d;color:#fff;border-radius:50%;font-size:13px}
.recovery-connection{display:grid;grid-template-columns:minmax(0,1fr) 80px minmax(0,1fr);gap:4px;align-items:center;text-align:center}
.recovery-device{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:12px;line-height:1.4;min-width:0}
.recovery-device>span{min-height:34px;display:grid;align-content:center}
.recovery-device strong{font-size:13px;color:#245e4d}
.recovery-link{font-size:12px;color:#286551;align-self:center}
.connection-line{height:18px;position:relative;display:grid;place-items:center;margin-top:6px}
.connection-line::before{content:"";position:absolute;left:0;right:0;top:8px;border-top:2px solid currentColor}
.connection-line>span{position:relative;padding:0 4px;font-size:19px;line-height:18px;background:#f4f8f4}
.recovery-phase:not([data-phase="0"]){background:#fff5ef;border-color:#d5b7a5}
.recovery-phase:not([data-phase="0"]) .recovery-link,.recovery-phase:not([data-phase="0"]) .register-device strong{color:#a14431}
.recovery-phase:not([data-phase="0"]) .connection-line::before{border-top-style:dashed}
.recovery-phase:not([data-phase="0"]) .connection-line>span{background:#fff5ef}
#recovery-flow .phase-caption{font-size:14px;line-height:1.65;margin:12px 0 0}
#recovery-flow[data-compact="true"] .phase-number,#recovery-flow[data-compact="true"] .recovery-phase::before{display:none}
@media(max-width:380px){.recovery-phase{padding:10px 8px}.recovery-connection{grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr)}.recovery-link{font-size:11px}}
#recovery-work h3{font-size:18px;line-height:1.6;margin:22px 0 12px}#recovery-work p{margin:14px 0}
#recovery-work #recovery-fiction-note{font-size:14px;border-top:1px solid #d6dbd8;margin-top:22px;padding-top:14px}
.recovery-records{display:flex;align-items:center;justify-content:space-between;gap:6px;text-align:center;font-size:14px}.recovery-records>span:nth-child(odd){flex:1;padding:12px 8px;border:1px solid #b7c8c3;background:#f1f6f3;border-radius:6px}
.recovery-timeline{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:3px solid #b88862;padding-top:12px;text-align:center}.recovery-timeline>div{display:flex;flex-direction:column}.recovery-timeline strong{font-size:26px;font-variant-numeric:tabular-nums}.recovery-timeline span{font-size:13px}.recovery-timeline>span{color:#785b47}
#recovery-work details{font-size:14px;border-top:1px solid #d6dbd8;margin-top:22px;padding-top:8px}#recovery-work summary{cursor:pointer;min-height:44px;display:list-item;align-content:center}
/* Finish the playthrough before offering ways to share it. */
.report-page #terminal-screen>.mailbar,.report-page #terminal-screen>.strip>span,
.report-page #terminal-screen .panel>h2,.report-page #who,.report-page #terminal-screen .panel>p{display:none}
.report-page #terminal-screen>.strip{display:contents}
.report-page #terminal-screen .panel{border-top:0;padding:20px}
.report-page #result-slip:not([hidden]){margin:32px 0 8px;padding:0 0 12px;gap:14px}
#ending-result[hidden]{display:none}
.ending-card{overflow:hidden;border-radius:8px;background:#17394b;color:#fff}
.ending-label{padding:16px 20px;background:var(--ending-accent);color:#192e3b}
#ending-route{font-size:13px;font-weight:700;letter-spacing:.06em}
#terminal-screen #ending-heading{font:800 clamp(30px,8vw,42px)/1.3 system-ui,sans-serif;margin:4px 0 0;padding:0}
#ending-heading:focus{outline:none}
.ending-scene{position:relative;width:100%;min-height:220px;aspect-ratio:1.8;display:flex;align-items:flex-end;isolation:isolate}
#ending-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.ending-scene::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#102733 0%,#102733c9 26%,#10273300 85%)}
#ending-title{margin:0;padding:24px 20px;font:750 clamp(21px,5.8vw,34px)/1.5 system-ui,sans-serif;text-wrap:pretty;text-shadow:0 1px 5px #102733}
#ending-title>span{display:block}
.ending-reflection{margin:22px 0;display:grid;gap:16px}
.ending-reflection dt{color:#526977;font-size:13px;font-weight:700;margin-bottom:3px}
.ending-reflection dd{margin:0;font-size:16px;line-height:1.8;color:#203d4d}
.ending-loss{display:grid;gap:2px;padding:14px 18px;border:1px solid #cad6db;border-radius:6px;background:#f1f5f6}
.ending-loss>span{font-size:13px;color:#526977}
#ending-amount{font-size:clamp(24px,6vw,32px);line-height:1.4;font-variant-numeric:tabular-nums;color:#203d4d}
#ending-period{font:400 12px/1.6 system-ui,sans-serif;letter-spacing:0;color:#526977}
#ending-period:empty{display:none}
#terminal-screen #ending-result .ending-note{font-size:12px;line-height:1.8;color:#526977;margin:10px 0 18px;white-space:normal}
#slip-heading{font-size:20px;line-height:1.5}
#report-details{margin:0;border-bottom:1px solid #d3dfe2;font-size:14px;color:#4c6572}
#report-details>summary{min-height:44px;align-content:center;cursor:pointer}
#report-details h3{font-size:18px;line-height:1.7;color:#203d4d}
#report-details p{white-space:pre-line}
#reaction-settings{display:grid;gap:8px}
#reaction-empty{margin:0;padding:24px 16px;border:1px dashed #b3c4ca;border-radius:8px;color:#4c6572;font-size:14px;line-height:1.7;white-space:normal}
#reaction-select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#4c6572 50%),linear-gradient(135deg,#4c6572 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px;background-repeat:no-repeat;min-width:0;width:100%;min-height:44px;padding:8px 28px 8px 10px;border:1px solid #b3c4ca;border-radius:6px;background-color:#fff;color:#203d4d;font:16px/1.5 system-ui,sans-serif;text-overflow:ellipsis}
#reaction-select:focus-visible,#report-details>summary:focus-visible{outline:3px solid #b57925;outline-offset:3px}
.reaction-spoiler{display:flex;align-items:center;gap:8px;min-height:36px;font-size:13px;cursor:pointer}
.reaction-spoiler input{width:18px;height:18px;accent-color:#214b60;margin:0}
#share-x-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.reaction-tools>label{flex-basis:100%;font-size:15px;font-weight:700;color:#203d4d}
.reaction-tools{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px}
.reaction-tools #reaction-select{flex:1 1 180px}
#retry-reaction-image{font:600 14px/1.5 system-ui,sans-serif;padding:9px 8px;min-height:44px;border:1px solid #9eb6aa;border-radius:7px;background:#fffefa;color:#254538;cursor:pointer}
#reaction-preview{display:block;width:100%;height:auto;border-radius:6px;box-shadow:none}
#reaction-status{margin:0;font-size:14px;line-height:1.7}
#terminal-screen #replay-choices{margin:12px 0;padding:0;border:0;background:transparent}
#terminal-screen #replay-choices>summary,
#terminal-screen .panel[data-view="report"]>.actions>button:first-child{width:100%;min-height:48px;padding:10px 32px;border:1px solid #aac1cf;border-radius:5px;background:#215971;color:#fff;box-shadow:none;font:700 16px/1.7 system-ui,sans-serif;text-align:center;cursor:pointer}
#replay-choices>summary{position:relative;display:block;list-style:none}
#replay-choices>summary::-webkit-details-marker{display:none}
#replay-choices>summary::after{content:'▸';position:absolute;right:15px;top:50%;transform:translateY(-50%)}
#replay-choices[open]>summary::after{transform:translateY(-50%) rotate(90deg)}
#terminal-screen #replay-choices>summary:hover,
#terminal-screen .panel[data-view="report"]>.actions>button:first-child:hover{background:#19475b}
#terminal-screen #replay-choices>summary:focus-visible,
#terminal-screen .panel[data-view="report"]>.actions>button:first-child:focus-visible{outline:3px solid #b57925;outline-offset:3px}
#replay-choices>summary:active{transform:translateY(2px)}
#terminal-screen .panel[data-view="report"]>.actions{border-top:0;padding-top:0;gap:12px}
#replay-choices p{font-size:14px;line-height:1.75;margin:12px 0}#replay-options{display:grid;gap:8px}#replay-options button{width:100%;box-sizing:border-box;text-align:left;min-height:44px;white-space:normal;padding:12px 14px;border:1px solid #a5b7aa;background:#fffdf4;color:#254538;border-radius:6px;font:inherit;font-size:15px;line-height:1.6;cursor:pointer}#replay-options button:hover{background:#e2efdf}
@media(max-width:480px){.work-steps{font-size:11px}.recovery-records{font-size:12px;gap:3px}.recovery-records>span:nth-child(odd){padding:10px 4px}.recovery-timeline{gap:6px}.recovery-timeline strong{font-size:23px}.recovery-timeline span{font-size:11px}}

#cio-summary[hidden],#cio-details[hidden]{display:none}.panel[data-view="cio"]>p{display:none}
#cio-summary{margin:24px 0}#cio-summary p,.handoff-summary p{font-size:16px;line-height:1.85;white-space:normal;margin:0 0 16px}.procedure-details{margin:16px 0;font-size:14px}.procedure-details>summary{cursor:pointer;min-height:44px;align-content:center;border-top:1px solid #baccc2;padding:10px 0}
.handoff-summary dl{margin:0;background:#eef5ef;padding:14px 16px;border-left:3px solid #358170}.handoff-summary dl>div{display:grid;grid-template-columns:7em 1fr;gap:8px;margin:8px 0;font-size:14px;line-height:1.7}.handoff-summary dt{font-weight:700}.handoff-summary dd{margin:0}.procedure-details>section+section{margin-top:24px}

.recovery-steps{grid-template-columns:repeat(3,1fr);font-size:13px}

#result-slip .reaction-edit-button{align-self:flex-start;min-height:44px;padding:9px 0;border:0;border-radius:0;background:transparent;color:#4c6572;font:400 14px/1.5 system-ui,sans-serif;text-decoration:underline;text-underline-offset:3px;box-shadow:none;cursor:pointer}
#custom-reaction-editor{padding:14px;border:1px solid #b7c8c0;border-radius:8px;background:#ffffff80}
#custom-reaction-editor label{display:block;font-size:15px;font-weight:700;margin-bottom:8px}
#custom-reaction-text{display:block;box-sizing:border-box;width:100%;min-height:84px;padding:10px 12px;border:1px solid #8ca99b;border-radius:6px;background:#fff;color:#17394b;font:16px/1.6 system-ui,sans-serif;resize:vertical}
#custom-reaction-text:focus-visible,.reaction-edit-button:focus-visible{outline:3px solid #b57925;outline-offset:3px}
#custom-reaction-text[aria-invalid=true]{border-color:#aa422f}
.reaction-edit-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;margin:7px 0 10px;color:#58716b;font-size:12px;line-height:1.6}
#custom-reaction-count{white-space:nowrap}
#reaction-preview.updating{opacity:.45}
#result-slip #custom-reaction-error{font-size:14px;color:#9b3726;margin:8px 0 12px;line-height:1.6}
#result-slip #custom-reaction-link-note{font-size:13px;line-height:1.7;margin:8px 0 0;color:#58716b}

#share-more{font-size:14px;color:#4c6572}
#share-more>summary{cursor:pointer;min-height:44px;align-content:center}
#share-more>summary:focus-visible{outline:3px solid #b57925;outline-offset:3px}

#recovery-flow[data-cause="restart"] [data-phase="1"] .server-state{color:#99651e}

@media(max-width:480px){
  .report-page #terminal-screen .panel{padding:16px 12px}
  #result-slip .slip-controls{grid-template-columns:1fr}
  #result-slip #save-slip{padding:8px;min-height:48px;font-size:13px}
  #result-slip #share-x{font-size:13px}
}

/* Show one image action; saving takes its place only when direct sharing is unavailable. */
#result-slip .slip-controls{grid-template-columns:1fr}
#result-slip #save-slip{min-height:48px;padding:12px 10px;background:#214b60;color:#fff;border:1px solid #254d62;font-weight:700}
#result-slip #save-slip:hover{background:#17394b}
#share-more #copy-x{width:100%;min-height:44px;margin:8px 0}
#share-more #share-x-text{font-size:14px;margin:8px 0 12px}
