:root{--ink:#1a1a1a;--muted:#666;--line:#ddd;--accent:#1a4b8c;--bg:#fafaf8;--card:#fff}*{box-sizing:border-box}body{margin:0;font-family:Georgia,Times New Roman,serif;color:var(--ink);background:var(--bg);line-height:1.55}main{max-width:64rem;margin:0 auto;padding:2.5rem 1.5rem 5rem}main p{max-width:46rem}main .next-action p,main .stage-panel-body p,main .stage-progress p,main table p{max-width:none}h1{font-size:1.6rem;margin:0 0 .5rem}h1,h2{font-weight:400}h2{font-size:1.15rem;margin:2rem 0 .5rem}a{color:var(--accent)}.site-header{border-bottom:1px solid var(--line);background:var(--card)}.site-header .inner{max-width:64rem;margin:0 auto;padding:.8rem 1.5rem;display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.site-header .name{display:inline-flex;align-items:center;gap:.55rem;font-feature-settings:"smcp";font-variant:small-caps;letter-spacing:.045em;font-size:1.35rem;font-weight:700;text-decoration:none;color:var(--ink)}.site-header .name .compass{width:26px;height:26px;color:var(--accent);flex:none}.site-header .tag{font-size:.8rem;color:var(--muted)}.muted{color:var(--muted);font-size:.9rem}label{display:block;margin:1.2rem 0 .3rem}input[type=text],textarea{width:100%;font:inherit;padding:.6rem;border:1px solid var(--line);border-radius:3px;background:var(--card)}textarea{min-height:12rem;resize:vertical}textarea.short{min-height:5rem}fieldset{border:1px solid var(--line);border-radius:3px;padding:.8rem 1rem;margin:1.2rem 0 0;background:var(--card)}fieldset legend{padding:0 .4rem;color:var(--muted);font-size:.9rem}fieldset label{display:block;margin:.35rem 0}button{font:inherit;margin-top:1.5rem;padding:.6rem 1.4rem;border:1px solid var(--accent);border-radius:3px;background:var(--accent);color:#fff;cursor:pointer}button:hover{opacity:.92}.run-list{list-style:none;padding:0}.run-list li{border:1px solid var(--line);border-radius:3px;background:var(--card);padding:.9rem 1.1rem;margin-bottom:.7rem}.run-list .meta{font-size:.85rem;color:var(--muted);margin-top:.2rem}.status-pill{display:inline-block;font-size:.75rem;letter-spacing:.03em;border:1px solid var(--line);border-radius:999px;padding:.05rem .6rem;color:var(--muted);background:var(--bg)}.verbatim{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:3px;background:var(--card);padding:1rem 1.2rem;white-space:pre-wrap}.error{color:#a02020;margin-top:1rem}.grid-2col{display:grid;grid-template-columns:1fr 1fr;grid-gap:2rem;gap:2rem}@media (max-width:900px){.grid-2col{grid-template-columns:1fr}}main:has(.grid-2col){max-width:72rem}h3{font-size:1rem;margin:1.2rem 0 .4rem}h4{font-size:.9rem;margin:.8rem 0 .2rem}.element-card{border:1px solid var(--line);border-radius:3px;background:var(--card);padding:.55rem .8rem;margin-bottom:.5rem;font-size:.92rem}.element-evidence{color:var(--muted);font-size:.85rem;font-style:italic;margin-top:.2rem}.none{font-style:italic}.audit-pass,.audit-revise{border:1px solid var(--line);border-radius:3px;padding:.8rem 1.1rem;margin:1rem 0;background:var(--card)}.audit-pass{border-left:3px solid #2e7d32}.audit-revise{border-left:3px solid #b26a00}textarea.code{font-size:.8rem;min-height:20rem}.hash,textarea.code{font-family:ui-monospace,SF Mono,Menlo,monospace}.hash{font-size:.75rem;word-break:break-all}.saved{color:#2e7d32}.working{display:inline-block;width:.7rem;height:.7rem;border:2px solid var(--accent);border-top:2px solid transparent;border-radius:50%;animation:spin .9s linear infinite;margin-right:.35rem;vertical-align:baseline}@keyframes spin{to{transform:rotate(1turn)}}.guidance{font-size:.85rem;margin-top:.35rem}.funnel{font-family:ui-monospace,SF Mono,Menlo,monospace;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:3px;padding:.9rem 1.2rem;white-space:pre;overflow-x:auto}.funnel,table.candidates-table{font-size:.85rem;background:var(--card)}table.candidates-table{width:100%;border-collapse:collapse;margin-bottom:1rem}table.candidates-table td,table.candidates-table th{border:1px solid var(--line);padding:.4rem .6rem;text-align:left;vertical-align:top}table.candidates-table th{background:var(--bg);font-weight:600}.toc{background:var(--card);border:1px solid var(--border,#e4e2dc);border-radius:6px;padding:.5rem .9rem;margin:.8rem 0 1.4rem;font-size:.92rem;line-height:1.7}.defs{margin:.6rem 0 1rem}.defs-row{display:flex;gap:.6rem;padding:.18rem 0;border-bottom:1px solid var(--border,#eceae4)}.defs-row dt{flex:0 0 11.5rem;font-weight:600}.defs-row dd{margin:0;color:var(--muted-ink,#555)}.map-figure{background:var(--card);border:1px solid var(--border,#e4e2dc);border-radius:6px;padding:.8rem;margin:.8rem 0 .4rem;overflow-x:auto}.map-figure svg{display:block;max-width:100%;height:auto}.map-legend{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;align-items:center;font-size:.88rem;color:var(--muted-ink,#555);margin:.4rem 0 1rem}.map-legend .swatch{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:.35rem;vertical-align:-1px}.map-tip{position:fixed;display:none;border:1px solid #cfcdc5;border-radius:6px;padding:.45rem .65rem;font-size:.85rem;line-height:1.45;color:#333;max-width:340px;box-shadow:0 2px 10px rgba(0,0,0,.08);pointer-events:none;z-index:50}.map-tip,.stages{background:var(--card)}.stages{display:flex;flex-wrap:wrap;gap:.3rem 0;align-items:flex-start;border:1px solid var(--border,#e4e2dc);border-radius:6px;padding:.6rem .4rem .5rem;margin:.9rem 0 1.2rem}.stage{flex:1 1;min-width:60px;display:flex;flex-direction:column;align-items:center;gap:.28rem;text-align:center;text-decoration:none;position:relative;padding:0 .35rem;box-sizing:border-box}.stage:not(:first-child):before{content:"";position:absolute;top:.72rem;right:50%;width:100%;height:2px;background:var(--border,#e4e2dc);z-index:0}.stage-dot{position:relative;z-index:1;width:1.45rem;height:1.45rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.78rem;background:#fff;border:2px solid var(--border,#e4e2dc);color:#6b6b6b}.stage-label{font-size:.72rem;line-height:1.15;color:#6b6b6b;max-width:100%;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.stage-done .stage-dot{border-color:#4a7c59;color:#4a7c59}.stage-done:hover .stage-label{text-decoration:underline}.stage-current .stage-dot{background:#4a7c59;border-color:#4a7c59;color:#fff;font-weight:700}.stage-current .stage-label{color:#333;font-weight:600}.stage-future{opacity:.45}.twocol{display:flex;gap:1.2rem;flex-wrap:wrap;align-items:flex-start}.twocol>table{flex:1 1 280px}.linklike{background:none;border:none;padding:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}.buttonlink{display:inline-block;margin-top:.5rem;padding:.6rem 1.4rem;border:1px solid var(--accent);border-radius:3px;background:var(--accent);color:#fff;text-decoration:none}.buttonlink:hover{opacity:.92}.next-action{margin:.75rem 0 1.25rem;padding:.8rem 1rem;border:1px solid var(--grid,#e4e2dc);border-left:4px solid var(--accent);border-radius:3px;background:#fbfbf9}.next-action p{margin:.4rem 0 0}.next-action .next-action-button{margin-top:0;padding:.45rem 1.1rem}.next-action .buttonlink.next-action-link{margin-top:0;padding:.35rem .9rem}.run-story{list-style:none;margin:1rem 0 2rem;padding:0}.run-story-step{display:flex;gap:1rem;border-left:3px solid var(--accent);padding:.9rem 0 .9rem 1.1rem;margin-left:.4rem;position:relative}.run-story-step+.run-story-step{border-top:1px dashed var(--grid,#e4e2dc)}.run-story-count{font-size:1.9rem;font-weight:700;min-width:3.2rem;text-align:right;line-height:1.1}.run-story-body p{margin:.25rem 0 0}.run-story-split{display:flex;gap:1rem;margin-top:.7rem;flex-wrap:wrap}.run-story-branch{flex:1 1 240px;border:1px solid var(--grid,#e4e2dc);border-radius:4px;padding:.6rem .8rem;background:#fff}.run-story-branch-count{font-size:1.25rem;font-weight:700}.editor-card label{display:block;font-size:.82rem;color:#6b6862;margin:.5rem 0 .15rem}.editor-card input[type=text],.editor-card select,.editor-card textarea{width:100%;box-sizing:border-box;font:inherit;padding:.35rem .5rem;border:1px solid var(--grid,#d8d5cf);border-radius:4px;background:#fff}.editor-card textarea{min-height:3.2rem;resize:vertical}.editor-controls{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap;margin-top:.4rem}.editor-controls select{width:auto;font:inherit;padding:.2rem .35rem}.editor-controls .remove{color:#a03d33}.stringlist-row textarea.short{flex:1 1;min-height:2.4rem}.content-editor section{margin-top:1.1rem}.section-head{display:flex;justify-content:flex-start;align-items:baseline;gap:.9rem}.section-head h3{margin-bottom:.2rem}button.add-entry{font:inherit;font-size:.85rem;margin-top:0;padding:.15rem .7rem;border:1px solid var(--accent);border-radius:4px;background:#fff;color:var(--accent);font-weight:600;cursor:pointer;white-space:nowrap}button.add-entry:hover{background:var(--accent);color:#fff}.has-tip{border-bottom:1px dotted #8b877f;cursor:help}td.has-tip,th.has-tip{border-bottom-style:dotted}.table-divider td{background:#f3f1ec;padding:.55rem .6rem;font-size:.9rem}.table-rehead td{font-weight:600;border-bottom:2px solid var(--grid,#d8d5cf)}.stage-progress{border-left:1px solid var(--accent);border:1px solid var(--accent);border-left-width:4px;border-radius:4px;background:#eef3fa;padding:.75rem 1rem .6rem;margin:1rem 0}.stage-progress-line{margin:0;font-size:1rem}.progress-track{height:8px;background:#d5deeb;border-radius:4px;margin-top:.55rem;overflow:hidden}.progress-fill{height:100%;background:var(--accent);transition:width .6s ease}.stage-progress.stalled{border-color:#b26a00;background:#faf3e6}.stage-progress-stall{margin:.5rem 0 0;font-size:.92rem;color:#7a4a00}.stage-progress form button{margin-top:.6rem}.compass{width:1.15em;height:1.15em;vertical-align:-.18em;margin-right:.15rem}.compass-needle{transform-origin:12px 12px;animation:compass-seek 3.4s ease-in-out infinite}@keyframes compass-seek{0%{transform:rotate(-26deg)}46%{transform:rotate(24deg)}60%{transform:rotate(14deg)}to{transform:rotate(-26deg)}}.compass-stopped .compass-needle{animation:none}@media (prefers-reduced-motion:reduce){.compass-needle{animation:none}}.stage-progress.stalled .compass{color:#b26a00}.element-key{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:3px;background:var(--bg);padding:.5rem .8rem;font-size:.84rem;line-height:1.6;margin:.6rem 0}.ref-id{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.88em}.enter-door{max-width:26rem;margin:10vh auto 0;text-align:center}.enter-door .enter-mark svg{width:44px;height:44px;opacity:.85}.enter-door form{margin-top:1.2rem;display:flex;flex-direction:column;gap:.9rem;text-align:left}.enter-door input[type=text]{text-transform:uppercase;letter-spacing:.08em}.entered-as{margin-top:2.5rem;font-size:.85rem}.code-issue{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap;margin:1.2rem 0 1.8rem}.code-issue label{display:flex;flex-direction:column;gap:.3rem;margin:0}.codes-table{width:100%;border-collapse:collapse}.codes-table td,.codes-table th{text-align:left;padding:.45rem .7rem;border-bottom:1px solid var(--line,#e3e3e0)}.codes-table code{font-size:.95em}.start-new{margin:1.1rem 0 1.9rem}a.button-link{display:inline-block;padding:.6rem 1.4rem;border:1px solid var(--accent);border-radius:3px;background:var(--accent);color:#fff;text-decoration:none;font-weight:600}a.button-link:hover{opacity:.92}.stage-panels{display:flex;flex-wrap:wrap;gap:.9rem;margin:0 0 2.1rem}.stage-panel{flex:1 1 260px;border:1px solid #c3c89e;border-radius:4px;background:#f1f2e3}.stage-panel[open]{order:2;flex-basis:100%}.stage-panel summary{cursor:pointer;padding:.7rem .95rem;font-weight:600;font-size:1.05rem;list-style-position:inside;color:#4f5a2e}.stage-panel summary:hover{background:#e7e9d0;border-radius:4px}.stage-panel-body{padding:.8rem .95rem 1rem;background:#fdfdf8;border-top:1px solid #d9dcbd;border-radius:0 0 4px 4px}.table-scroll{overflow-x:auto}.stage-table{width:100%;border-collapse:collapse;font-size:1rem;line-height:1.5;table-layout:fixed}.stage-table th.col-stage{width:10.6rem}.stage-table th.col-happens{width:36%}.stage-table td,.stage-table th{text-align:left;vertical-align:top;padding:.6rem .75rem;border-bottom:1px solid #e3e3e0;overflow-wrap:break-word}.stage-table td.stage-name{font-weight:600}.stage-map-wrap{max-width:540px;margin:0 auto}.stage-map{width:100%;height:auto;display:block}.stage-map-legend{font-size:.95rem;margin-top:.5rem}.gate-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--accent);margin-right:.15rem}