:root{color:#243447;--surface:#fff;--ink-soft:#526477;--accent:#2774c7;--accent-soft:#dceeff;--focus:#b54d00;--material-gravel:#7a8b99;--material-sand:#d7b46a;--material-salt:#b9d8f4;--material-water:#66b8df;--material-oil:#d19a4b;background:#f5f8fb;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}:root{--ink:#173044;--ink-soft:#4b6274;--surface:#fff;--accent:#176b9e;--accent-soft:#e6f3fb;--focus:#b45309}button,input,select,textarea{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,label:focus-within{outline:3px solid var(--focus);outline-offset:3px}.skip-link{z-index:20;color:var(--ink);background:#fff;border-radius:.5rem;padding:.7rem 1rem;position:absolute;top:.5rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.app-shell{max-width:72rem;padding:1rem clamp(1rem, 4vw, 2.5rem) max(5rem, calc(3rem + 44px + env(safe-area-inset-bottom)));margin:0 auto}.app-header,.stage-nav{align-items:center;gap:1rem;display:flex}.app-header{justify-content:space-between;padding:1rem 0}h1,h2,h3,p{margin-top:0}.eyebrow{color:var(--accent);margin-bottom:.3rem;font-weight:700}.stage-nav{color:var(--ink-soft);border-block:1px solid #d9e3ed;flex-wrap:wrap;padding:.8rem 0;font-size:.9rem}.stage-current{color:var(--accent);font-weight:800}.stage-locked{opacity:.65}.screen{background:var(--surface);border:1px solid #dce6ef;border-radius:1.2rem;margin-top:1.5rem;padding:clamp(1.25rem,4vw,2.5rem);box-shadow:0 .4rem 1.5rem #2d557014}.hero-copy{margin-bottom:1.5rem}fieldset{border:0;margin:1.5rem 0;padding:0}legend{margin-bottom:.75rem;font-size:1.1rem;font-weight:800}.mission-grid{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem;display:grid}.choice-card,.target-choice,.property-checks label{cursor:pointer;background:#fbfdff;border:2px solid #d8e4ef;border-radius:.9rem;align-items:flex-start;gap:.7rem;min-height:44px;padding:1rem;display:flex}:is(.choice-card:has(input:checked),.target-choice:has(input:checked)){border-color:var(--accent);background:var(--accent-soft)}.choice-card span,.property-checks label{gap:.3rem;display:grid}small{color:var(--ink-soft)}.target-panel{border-top:1px solid #e4ebf2;padding-top:1.5rem}.token-list{flex-wrap:wrap;gap:.7rem;margin-bottom:1rem;display:flex}.material-token{align-items:center;gap:.55rem;min-width:8.5rem;display:inline-flex}.token-shape{color:#1f3345;background-color:var(--token-color);background-image:var(--token-pattern);border-radius:45%;place-items:center;width:2.3rem;height:2.3rem;font-size:.55rem;font-weight:800;display:grid}.token-copy{gap:.12rem;display:grid}.material-gravel{--token-color:var(--material-gravel);--token-pattern:radial-gradient(#314353 1px, transparent 2px)}.material-sand{--token-color:var(--material-sand);--token-pattern:radial-gradient(#765d2d 1px, transparent 2px)}.material-salt{--token-color:var(--material-salt);--token-pattern:repeating-linear-gradient(135deg, transparent 0 5px, #5a8bb5 6px 7px)}.material-water{--token-color:var(--material-water);--token-pattern:repeating-linear-gradient(0deg, transparent 0 5px, #267da6 6px 7px)}.material-oil{--token-color:var(--material-oil);--token-pattern:repeating-linear-gradient(0deg, transparent 0 5px, #805720 6px 7px)}.primary-action,.screen>button,.action-card button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:999px;margin-top:1rem;padding:.75rem 1.2rem;font-weight:800}button:disabled{opacity:.45;cursor:not-allowed}.safety-notice{background:#fff6dd;border-left:5px solid #db9d27;border-radius:.6rem;margin-top:1.5rem;padding:1rem}.safety-notice p{margin:.35rem 0 0}.table-scroll{max-width:100%;margin:1.5rem 0;overflow-x:auto}table{border-collapse:collapse;width:100%;margin:0}caption{text-align:left;margin-bottom:.75rem;font-weight:800}th,td{text-align:left;border:1px solid #d6e1eb;padding:.7rem}.property-checks{gap:.7rem;display:grid}.property-checks small{display:block}.action-cards{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem;display:grid}.action-card{border:1px solid #d8e4ef;border-radius:.9rem;padding:1rem}.action-card p{font-size:.9rem}.action-card-selected{border-color:var(--accent);background:var(--accent-soft)}.action-card button{width:100%;margin-top:0}.action-card-status{color:var(--ink-soft);font-weight:700}.action-card-warning,.broken-warning,.plan-error{color:#a22727;font-weight:700}.step-config,.process-preview,.process-slot{border:1px solid #d8e4ef;border-radius:.9rem;padding:1rem}.step-config h3:focus{outline-offset:.25rem;border-radius:.25rem;outline:3px solid #f4b942}.step-config label,.process-slot p{margin:.45rem 0;display:block}.process-slot-broken{border:2px solid #b73535}.slot-controls,.plan-controls{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.slot-controls button,.plan-controls button,.step-config>button{cursor:pointer;background:#fff;border:1px solid #9db5c9;border-radius:.6rem;padding:.55rem .75rem}.process-preview ol{gap:.5rem;display:grid}.preview-arrow{color:var(--accent);text-align:center;font-size:1.35rem;font-weight:800;line-height:1.2;display:block}.gi-pulse{z-index:0;position:relative}.gi-pulse:after{content:"";z-index:0;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 42%, transparent);opacity:.9;animation:1.6s ease-in-out infinite gi-pulse-aura;position:absolute;inset:-.2rem}@keyframes gi-pulse-aura{50%{opacity:.25;box-shadow:0 0 0 .55rem #0000}}@media (prefers-reduced-motion:reduce){.gi-pulse:after{box-shadow:0 0 0 .2rem var(--accent-soft);opacity:1;animation:none}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:0s!important}}@media (width<=560px){.app-header{align-items:flex-start}table{font-size:.78rem}th,td{padding:.45rem}.property-table thead{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.property-table,.property-table tbody,.property-table tr,.property-table th,.property-table td{width:100%;display:block}.property-table-row{border:1px solid #d6e1eb;border-radius:.75rem;margin-bottom:.75rem;overflow:hidden}.property-table-row th{border:0;border-bottom:1px solid #d6e1eb}.property-table-row td{border:0;border-bottom:1px solid #d6e1eb;grid-template-columns:8rem 1fr;gap:.5rem;display:grid}.property-table-row td:last-child{border-bottom:0}.property-table-row td:before{content:attr(data-label);font-weight:800}}.prediction-prompt{gap:.65rem;display:grid}.prediction-prompt label{border:1px solid #d8e4ef;border-radius:.5rem;padding:.6rem;display:block}.live-region{min-height:1.5rem;font-weight:700}.movement-scenes{grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;display:grid}.movement-scene{border:1px solid #d8e4ef;border-radius:.8rem;padding:1rem}.token-travel{animation:.7s ease-in-out token-travel}@keyframes token-travel{0%{opacity:.45;transform:translate(-.7rem)}to{opacity:1;transform:translate(.7rem)}}@media (prefers-reduced-motion:reduce){.token-travel{animation:none}}.scene-arrow{color:var(--accent);font-size:2rem}.simulation-preview{margin-top:1.5rem}.recovery-claims{gap:.8rem;margin:1.5rem 0;display:grid}.recovery-claims label,.revision-reason label{gap:.35rem;font-weight:700;display:grid}.recovery-claims select,.revision-reason textarea{width:100%;max-width:38rem;font:inherit;background:#fff;border:1px solid #9db5c9;border-radius:.5rem;padding:.7rem}.revision-reason{margin:1.5rem 0}.revision-reason textarea{resize:vertical;min-height:5rem}.revision-reason p,.quality-note{color:var(--ink-soft)}.guiding-question{border-left:5px solid var(--accent);background:var(--accent-soft);padding:1rem;font-weight:800}.problem-step-badge{color:#8b4c08;background:#fff0dc;border-radius:999px;padding:.45rem .7rem;font-weight:800;display:inline-block}.app-footer{border-top:1px solid #d9e3ed;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem;display:flex}.update-history-trigger{min-width:44px;min-height:44px;color:var(--ink);background:#fff;border:1px solid #9db5c9;border-radius:999px;font-weight:700}.update-history-panel{z-index:10;background:#14202a55;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.update-history-dialog{background:var(--surface);border-radius:1rem;width:min(32rem,100%);padding:1.5rem;box-shadow:0 1rem 3rem #0004}.update-history-dialog li{gap:.25rem;margin:.8rem 0;display:grid}.update-history-dialog button,.report-actions button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:.75rem 1.2rem;font-weight:800}.process-comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.process-comparison>section{border:1px solid #d8e4ef;border-radius:.9rem;padding:1rem}.comparison-step{border-top:1px solid #d8e4ef;padding:.75rem 0}.comparison-step dl{grid-template-columns:max-content 1fr;gap:.3rem .7rem;display:grid}.comparison-step dt{font-weight:800}.comparison-step dd{margin:0}.changed-badge{color:#8b4c08;background:#fff0dc;border-radius:999px;padding:.2rem .45rem;font-size:.78rem;display:inline-block}.reflection-field{margin-top:1.5rem;font-weight:800;display:block}.report-screen textarea{width:100%;min-height:6rem;font:inherit;border:1px solid #9db5c9;border-radius:.5rem;padding:.7rem}.report-actions{flex-wrap:wrap;gap:.7rem;margin-top:1.5rem;display:flex}@media (width<=560px){.movement-scenes{grid-template-columns:1fr}.scene-arrow{text-align:center;transform:rotate(90deg)}.movement-scene .material-token{min-width:0;max-width:100%}.movement-scene .token-copy{overflow-wrap:anywhere;min-width:0}.movement-scenes,.movement-scene,.simulation-preview,.movement-scene .token-list{width:100%;min-width:0;max-width:100%}}@media (width<=700px){.process-comparison{grid-template-columns:1fr}}button,select,input[type=radio],input[type=checkbox]{min-height:44px}.process-board-screen{gap:1.25rem;display:grid}.process-board-screen>*,.screen{min-width:0}.action-cards,.process-slots{margin:0;padding:0}.process-slots{gap:.75rem;list-style-position:inside;display:grid}.simulation-screen{gap:1rem;display:grid}@media print{.stage-nav,.app-header,.update-history-trigger,.update-history-panel,.report-actions,button{display:none!important}.app-shell{max-width:none;padding:0}.screen{box-shadow:none;border:0;margin:0}.process-comparison{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.comparison-step,.quality-ledger{break-inside:avoid}.virtual-model-notice{border:2px solid #000;padding:.75rem}}
