:root{--surface-0: #0f1114;--surface-1: #15181d;--surface-2: #1b1f26;--fill: #232833;--fill-hover: #2c323f;--paper: #05070a;--line-soft: #262b33;--line: #333a47;--line-strong: #4a5262;--grid: #1e2228;--wire: #4e5663;--metal: #8d949f;--text-0: #c8cede;--text-1: #9aa4b6;--text-2: #7d8698;--text-3: #5f6875;--text-4: #4c5462;--text-5: #39404c;--accent: #e0a03a;--accent-lift: #f0c070;--accent-wash: #3a3322;--accent-lit: rgba(224, 160, 58, .42);--accent-band: rgba(224, 160, 58, .07);--par: #e9c46a;--par-wash: #4a3f24;--ok: #5fd07a;--warn: #e0895f;--warn-wash: #2c1f1a;--held: #a58ad8;--held-wash: #3a2f52;--quick: #6c8a99;--quick-wash: #2f5f74;--shadow-panel: 0 10px 30px rgba(0, 0, 0, .53);--shadow-sheet: 0 18px 50px rgba(0, 0, 0, .66);--shadow-pop: 0 8px 22px rgba(0, 0, 0, .5);--scrim: rgba(10, 12, 15, .55);--scrim-deep: rgba(10, 12, 15, .93);--level-0: #3878a0;--level-1: #5fd07a;--level-2: #e05555;--level-3: #9a7fd0;--level-4: #a9b6c9;color-scheme:dark}@media(prefers-color-scheme:light){:root:not([data-scheme=dark]){--surface-0: #eceef1;--surface-1: #f5f6f8;--surface-2: #ffffff;--fill: #e8eaee;--fill-hover: #dde0e6;--paper: #12151a;--line-soft: #e2e5ea;--line: #cbd0d8;--line-strong: #a6adb9;--grid: #e6e9ee;--wire: #9aa2b0;--metal: #6b7280;--text-0: #12151a;--text-1: #3c4350;--text-2: #5a6373;--text-3: #7b8494;--text-4: #98a0ad;--text-5: #b6bcc7;--accent: #b5730a;--accent-lift: #8a5606;--accent-wash: #fdf0d8;--accent-lit: rgba(181, 115, 10, .3);--accent-band: rgba(181, 115, 10, .08);--par: #8a6a16;--par-wash: #e8dfc4;--ok: #1c7a3e;--warn: #b3431a;--warn-wash: #f7e2d9;--held: #6d4bab;--held-wash: #e3dcf2;--quick: #2f6a80;--quick-wash: #bcd4dd;--shadow-panel: 0 10px 30px rgba(20, 25, 35, .12);--shadow-sheet: 0 18px 50px rgba(20, 25, 35, .18);--shadow-pop: 0 8px 22px rgba(20, 25, 35, .14);--scrim: rgba(30, 35, 45, .3);--scrim-deep: rgba(235, 238, 242, .94);--level-0: #1f5c85;--level-1: #1c7a3e;--level-2: #c02626;--level-3: #6d4bab;--level-4: #5a6473;color-scheme:light}}:root[data-scheme=light]{--surface-0: #eceef1;--surface-1: #f5f6f8;--surface-2: #ffffff;--fill: #e8eaee;--fill-hover: #dde0e6;--paper: #12151a;--line-soft: #e2e5ea;--line: #cbd0d8;--line-strong: #a6adb9;--grid: #e6e9ee;--wire: #9aa2b0;--metal: #6b7280;--text-0: #12151a;--text-1: #3c4350;--text-2: #5a6373;--text-3: #7b8494;--text-4: #98a0ad;--text-5: #b6bcc7;--accent: #b5730a;--accent-lift: #8a5606;--accent-wash: #fdf0d8;--accent-lit: rgba(181, 115, 10, .3);--accent-band: rgba(181, 115, 10, .08);--par: #8a6a16;--par-wash: #e8dfc4;--ok: #1c7a3e;--warn: #b3431a;--warn-wash: #f7e2d9;--held: #6d4bab;--held-wash: #e3dcf2;--quick: #2f6a80;--quick-wash: #bcd4dd;--shadow-panel: 0 10px 30px rgba(20, 25, 35, .12);--shadow-sheet: 0 18px 50px rgba(20, 25, 35, .18);--shadow-pop: 0 8px 22px rgba(20, 25, 35, .14);--scrim: rgba(30, 35, 45, .3);--scrim-deep: rgba(235, 238, 242, .94);--level-0: #1f5c85;--level-1: #1c7a3e;--level-2: #c02626;--level-3: #6d4bab;--level-4: #5a6473;color-scheme:light}:root[data-scheme=dark]{--surface-0: #0f1114;--surface-1: #15181d;--surface-2: #1b1f26;--fill: #232833;--fill-hover: #2c323f;--paper: #05070a;--line-soft: #262b33;--line: #333a47;--line-strong: #4a5262;--grid: #1e2228;--wire: #4e5663;--metal: #8d949f;--text-0: #c8cede;--text-1: #9aa4b6;--text-2: #7d8698;--text-3: #5f6875;--text-4: #4c5462;--text-5: #39404c;--accent: #e0a03a;--accent-lift: #f0c070;--accent-wash: #3a3322;--accent-lit: rgba(224, 160, 58, .42);--accent-band: rgba(224, 160, 58, .07);--par: #e9c46a;--par-wash: #4a3f24;--ok: #5fd07a;--warn: #e0895f;--warn-wash: #2c1f1a;--held: #a58ad8;--held-wash: #3a2f52;--quick: #6c8a99;--quick-wash: #2f5f74;--shadow-panel: 0 10px 30px rgba(0, 0, 0, .53);--shadow-sheet: 0 18px 50px rgba(0, 0, 0, .66);--shadow-pop: 0 8px 22px rgba(0, 0, 0, .5);--scrim: rgba(10, 12, 15, .55);--scrim-deep: rgba(10, 12, 15, .93);--level-0: #3878a0;--level-1: #5fd07a;--level-2: #e05555;--level-3: #9a7fd0;--level-4: #a9b6c9;color-scheme:dark}:root{--narrow: 0;--mono: ui-monospace, SFMono-Regular, Menlo, monospace;--prose: ui-sans-serif, -apple-system, "Segoe UI", Roboto, system-ui, sans-serif;--t-eyebrow: 10.5px;--t-ui: 11.5px;--t-code: 12px;--t-body: 13px;--t-prose: 13.5px;--t-head: 16px;--lh-prose: 1.6;--lh-code: 1.45;--h: 28px;--h-small: 22px;--bar: 44px;--r: 5px;--r-lg: 8px;--ease: .12s ease-out;--z-float: 14;--z-drawer: 24;--z-handle: 25;--z-reference: 26;--z-picker: 27;--z-pop: 28;--z-sheet: 30;--z-door: 40;--z-elsewhere: 50;--z-touchtip: 60}@media(pointer:coarse){:root{--h: 36px;--h-small: 30px;--bar: 52px}}[data-icon=undo]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M6 3.5 3 6.5l3 3'/><path d='M3.5 6.5h6.25a3.25 3.25 0 0 1 0 6.5H7'/></svg>")}[data-icon=redo]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='m10 3.5 3 3-3 3'/><path d='M12.5 6.5H6.25a3.25 3.25 0 0 0 0 6.5H9'/></svg>")}[data-icon=restart]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M2.25 8a5.75 5.75 0 1 0 1.7-4.07L2.25 5.5'/><path d='M2.25 2.25V5.5H5.5'/></svg>")}[data-icon=tidy]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='1.75' y='2.25' width='4.5' height='4.5' rx='1'/><rect x='9.75' y='9.25' width='4.5' height='4.5' rx='1'/><path d='M6.25 4.5h2.5a2 2 0 0 1 2 2v2.75'/></svg>")}[data-icon=run]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M4.5 2.9v10.2a.6.6 0 0 0 .92.5l7.9-5.1a.6.6 0 0 0 0-1L5.42 2.4a.6.6 0 0 0-.92.5z'/></svg>")}[data-icon=run].live{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><rect x='3.5' y='2.75' width='3.25' height='10.5' rx='.8'/><rect x='9.25' y='2.75' width='3.25' height='10.5' rx='.8'/></svg>")}[data-icon=step]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M3 3.1v9.8a.6.6 0 0 0 .93.5l7.1-4.9a.6.6 0 0 0 0-1L3.93 2.6A.6.6 0 0 0 3 3.1z'/><rect x='11.5' y='2.75' width='2' height='10.5' rx='.8'/></svg>")}[data-icon=wave]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M1 11.5h2.75v-7h4v7h4v-7H15'/></svg>")}[data-icon=check]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'><path d='m3 8.5 3.25 3.25L13 5'/></svg>")}[data-icon=search]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round'><circle cx='7' cy='7' r='4.5'/><path d='m10.4 10.4 3.35 3.35'/></svg>")}[data-icon=help]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round'><circle cx='8' cy='8' r='6.25'/><path d='M6.1 6.2a2 2 0 0 1 3.85.6c0 1.35-1.95 1.65-1.95 2.85'/><circle cx='8' cy='11.75' r='.35' fill='black'/></svg>")}[data-icon=more]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><circle cx='3.25' cy='8' r='1.3'/><circle cx='8' cy='8' r='1.3'/><circle cx='12.75' cy='8' r='1.3'/></svg>")}[data-icon=ladder]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='1.75' y='2.25' width='12.5' height='11.5' rx='1.75'/><path d='M6.25 2.25v11.5'/></svg>")}[data-icon=palette]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='1.75' y='2.25' width='12.5' height='11.5' rx='1.75'/><path d='M1.75 9.75h12.5'/></svg>")}[data-icon=goal]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M3.5 14.25V2'/><path d='M3.5 2.75h8.75l-2 3.25 2 3.25H3.5'/></svg>")}[data-icon=part]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='4' y='4' width='8' height='8' rx='1.25'/><path d='M6.5 1.5V4M9.5 1.5V4M6.5 12v2.5M9.5 12v2.5M1.5 6.5H4M1.5 9.5H4M12 6.5h2.5M12 9.5h2.5'/></svg>")}[data-icon=signals]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='1.75' y='4.75' width='12.5' height='6.5' rx='3.25'/><circle cx='11' cy='8' r='1.25' fill='black'/></svg>")}[data-icon=machine]{--icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><rect x='1.5' y='2.25' width='13' height='9.25' rx='1.5'/><path d='M5.5 14.25h5M8 11.5v2.75'/></svg>")}.caret{--caret: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'><path d='m4.5 6.25 3.5 3.5 3.5-3.5'/></svg>")}[data-icon]:before,.caret:after{content:"";flex:none;width:16px;height:16px;background:currentColor;-webkit-mask:var(--icon) center / 16px 16px no-repeat;mask:var(--icon) center / 16px 16px no-repeat}.caret:after{width:12px;height:12px;-webkit-mask-image:var(--caret);mask-image:var(--caret);-webkit-mask-size:12px;mask-size:12px;opacity:.7}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;touch-action:manipulation}[hidden]{display:none!important}body{margin:0;display:grid;height:100vh;height:100dvh;--ladder: 212px;--side: 384px;grid-template-columns:var(--ladder) minmax(0,1fr) var(--side);grid-template-rows:var(--bar) minmax(0,1fr);font:var(--t-body) / 1.35 var(--prose);background:var(--surface-0);color:var(--text-0);-webkit-font-smoothing:antialiased}.hint{color:var(--text-3)}.spacer{flex:1}.row{display:flex;gap:8px;align-items:center}.keys{line-height:var(--lh-prose)}label{display:flex;gap:6px;align-items:center;color:var(--text-2)}button,label.btn,label.tiny,button.tiny{font:inherit;color:var(--text-0);background:var(--fill);border:1px solid var(--line-soft);border-radius:var(--r);min-height:var(--h);padding:3px 10px;cursor:pointer;text-align:left}button:hover,label.btn:hover,label.tiny:hover{background:var(--fill-hover)}button:disabled{color:var(--text-4);background:transparent;border-color:var(--line-soft);cursor:default}button:disabled:hover{background:transparent}button.active{border-color:var(--accent);color:var(--accent)}button.live{border-color:var(--ok);color:var(--ok)}button.stubbed{color:var(--held)}button[data-icon]{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}button.icon{width:var(--h);padding:0}button.icon:not(:hover):not(.active):not([aria-pressed=true]),button.quiet:not(:hover){background:transparent;border-color:transparent}button.primary{background:var(--accent);border-color:var(--accent);color:var(--surface-2);font-weight:600}button.primary:hover{background:var(--accent-lift);border-color:var(--accent-lift)}button.tiny,label.tiny{min-height:var(--h-small);padding:1px 8px;font:var(--t-ui) var(--prose);letter-spacing:normal;text-transform:none;font-weight:400;display:inline-flex;align-items:center;white-space:nowrap}button.tiny.active{border-color:var(--accent);color:var(--accent)}label.btn{display:flex;align-items:center;white-space:nowrap}select{font:inherit;color:var(--text-0);background-color:var(--fill);border:1px solid var(--line-soft);border-radius:var(--r);min-height:var(--h);padding:2px 6px;letter-spacing:normal;text-transform:none;font-weight:400}textarea{font:var(--t-code) var(--mono);background:var(--surface-0);color:var(--text-0);border:1px solid var(--line-soft);border-radius:var(--r);padding:8px 10px;resize:vertical;min-height:120px;line-height:var(--lh-prose)}textarea:focus{outline:none;border-color:var(--accent)}textarea::placeholder{color:var(--text-5)}input[type=checkbox]{accent-color:var(--accent);margin:0}kbd{font:var(--t-eyebrow) var(--prose);color:var(--text-3);border:1px solid var(--line);border-radius:4px;padding:1px 5px}.seg{display:inline-flex;align-items:center;gap:2px;padding:2px;flex:none;background:var(--surface-0);border:1px solid var(--line-soft);border-radius:calc(var(--r) + 2px)}.seg>button{min-height:calc(var(--h) - 6px);padding:2px 10px;background:transparent;border-color:transparent;color:var(--text-2)}@media(hover:hover){.seg>button:hover{background:var(--fill);color:var(--text-0)}}.seg>button[aria-pressed=true]{background:var(--surface-2);border-color:var(--line);color:var(--text-0);box-shadow:0 1px 2px #0000001f}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}#findquery:focus-visible{outline-offset:-2px}textarea:focus-visible,#wiring input:focus-visible{outline:none}button,select,label.btn,.chip,#findlist .find,#languagenav button{transition:background var(--ease),border-color var(--ease),color var(--ease)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:0ms!important;animation-duration:0ms!important}}h2,.floathead,#palette button.fold,#modules button.chapter,#findlist .findhead,#story .chapter-line,#passeyebrow,#language h3,#language th,.pane h3,#families .kits,button.family .tag.here{font-family:var(--prose);font-size:var(--t-eyebrow);font-weight:600;text-transform:uppercase;letter-spacing:.08em}h2{display:flex;align-items:center;gap:6px;color:var(--text-2);margin:16px 0 6px;min-height:var(--h-small)}header{grid-column:1 / -1;display:flex;align-items:center;gap:8px;min-width:0;padding:0 10px 0 14px;border-bottom:1px solid var(--line-soft);background:var(--surface-2)}header>*{flex:none}header h1{font:600 var(--t-code) var(--mono);margin:0 6px 0 0;color:var(--accent);white-space:nowrap}#mode>button[aria-pressed=true]{color:var(--accent)}#decade{display:inline-flex;align-items:center;gap:6px;background:transparent;border-color:transparent;white-space:nowrap}#decade:hover{background:var(--fill)}#decade .era{color:var(--text-3);font:var(--t-code) var(--mono)}#trail{display:flex;align-items:center;gap:1px;flex:0 1 auto;min-width:0;overflow:hidden;padding-left:10px;margin-left:2px;border-left:1px solid var(--line-soft);white-space:nowrap}#trail button{flex:none;min-height:var(--h-small);padding:1px 5px;border-color:transparent;background:transparent;color:var(--text-2);font:inherit}#trail button:hover{background:var(--fill);color:var(--text-0)}#trail button:last-child{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--text-0);font-weight:600}#trail .arrow{color:var(--text-4)}#find.search{justify-content:flex-start;width:232px;margin-left:4px;padding:3px 6px 3px 9px;background:var(--surface-0);border-color:var(--line-soft);color:var(--text-3)}#find.search:hover{border-color:var(--line);color:var(--text-1)}#find kbd{margin-left:auto}#views>button{gap:6px;padding:2px 9px 2px 7px}#help,#menu{position:relative;display:flex}aside{grid-area:2 / 1;border-right:1px solid var(--line-soft);padding:12px 10px 16px 12px;overflow:auto;background:var(--surface-1)}aside>h2:first-child{margin-top:0}#stack{grid-area:2 / 2;position:relative;display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}canvas{width:100%;flex:1;min-height:0;display:block}#canvas,#refcanvas{cursor:crosshair;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}#side{grid-area:2 / 3;border-left:1px solid var(--line-soft);overflow:auto;display:flex;flex-direction:column;gap:1px;background:var(--line-soft)}#side:after{content:"";flex:1 0 0;order:99;background:var(--surface-1)}aside,#side,#tray,#memorybody,#findlist,#language,#wavebody,#chooser,#passed{overscroll-behavior:contain}#foot{flex:none;display:flex;flex-direction:column;container:foot / inline-size}#dock{display:flex;align-items:center;gap:6px 10px;min-height:var(--bar);padding:6px 10px;background:var(--surface-2);border-top:1px solid var(--line-soft)}#dock .group{display:flex;align-items:center;gap:4px;flex:none}#dock .group+.group{padding-left:10px;border-left:1px solid var(--line-soft)}#dock .field{gap:5px;margin-left:4px;color:var(--text-3);font-size:var(--t-ui);white-space:nowrap}#dock .field select{font-size:var(--t-body)}#wavebutton.active,#signalsbutton.active{background:var(--accent-wash)}#status{flex:1 1 auto;min-width:120px;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:var(--t-code) var(--mono);font-variant-numeric:tabular-nums}#status:empty{min-width:0}#status.ok{color:var(--ok)}#status.warn{color:var(--warn)}#check{flex:none}@container foot (max-width: 1000px){#tidy,#levelreset,#wavebutton,#signalsbutton{font-size:0;gap:0;width:var(--h);padding:0}#tidy:not(:hover),#levelreset:not(:hover){background:transparent;border-color:transparent}#dock #ratebox{font-size:0;gap:0;margin-left:0}#dock #ratebox select{font-size:var(--t-body)}}@container foot (max-width: 880px){#step{font-size:0;gap:0;width:var(--h);padding:0}#dock #tierbox{font-size:0;gap:0;margin-left:0}#dock #tierbox select{font-size:var(--t-body)}}@container foot (max-width: 640px){#dock{flex-wrap:wrap;gap:6px;padding:6px 8px}#dock .group{display:contents}#clock{font-size:0;gap:0;width:var(--h);padding:0}#tidy:not(:hover),#levelreset:not(:hover),#wavebutton:not(:hover):not(.active),#signalsbutton:not(:hover):not(.active),#step:not(:hover){background:transparent;border-color:transparent}#clock:not(.live):not(:hover){background:transparent;border-color:transparent}#dock:after{content:"";order:2;flex-basis:100%}#tierbox,#ratebox,#status{order:3}}#tray{border-top:1px solid var(--line-soft);background:var(--surface-1);padding:8px 12px 10px;max-height:30vh;overflow:auto}#palette{display:grid;grid-template-columns:max-content 1fr;gap:6px 10px;align-items:start}#palette .group{display:contents}#palette .parts{display:flex;flex-wrap:wrap;gap:4px;min-width:0}#palette button.fold{border:none;background:none;padding:0 6px 0 0;min-height:var(--h-small);color:var(--text-3)}#palette button.fold:hover{background:none;color:var(--text-0)}#palette .count{color:var(--text-4)}#palette button.part{min-height:var(--h-small);padding:1px 8px}#palette button.sheets{min-height:var(--h-small);padding:1px 6px;border-color:transparent;background:none;color:var(--text-3)}#palette button.sheets:hover{color:var(--text-0)}#palette button.sheets.active{color:var(--accent)}.float{position:absolute;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-panel)}#wiringpanel.off,#wavepanel.off,#languagepanel.off,#sheetpanel.off,#signalspanel.off{display:none}.pop{position:absolute;right:0;top:calc(100% + 6px);z-index:var(--z-pop);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-pop)}#touchtip{position:fixed;z-index:var(--z-touchtip);max-width:220px;padding:6px 10px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);color:var(--text-0);font:var(--t-ui) var(--prose);white-space:pre-line;overflow-wrap:break-word;pointer-events:none}.floatclose{border:none;background:none;min-height:0;padding:2px 4px;color:var(--text-3);font-size:15px;line-height:1;cursor:pointer;border-radius:var(--r)}.floatclose:hover{background:var(--fill);color:var(--text-0)}.floathead{touch-action:none}.floathead{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 8px 7px 12px;border-bottom:1px solid var(--line-soft);color:var(--text-2);cursor:grab;-webkit-user-select:none;user-select:none}.floathead.held{cursor:grabbing}@media(pointer:coarse){.floathead{padding-top:11px;padding-bottom:11px}}#wiringpanel{width:252px;padding-bottom:10px}#wiring{display:flex;flex-direction:column;gap:4px;padding:10px 12px 0;font:var(--t-code) var(--mono)}#wiring .pin{display:grid;grid-template-columns:64px 1fr;gap:6px;align-items:center}#wiring input{font:var(--t-code) var(--mono);background:var(--surface-0);color:var(--text-0);border:1px solid var(--line-soft);border-radius:var(--r);padding:3px 6px;min-width:0}#wiring input:focus{outline:none;border-color:var(--accent)}#wiring select{font:var(--t-code) var(--mono);min-width:0;min-height:var(--h-small);padding:0 4px}#wiring button{font:var(--t-ui) var(--prose);min-height:var(--h-small)}#wiring .section{margin-top:6px;padding-top:8px;border-top:1px solid var(--line-soft)}#wiring .section>button{width:100%}#wiring .section.pair{display:flex;flex-direction:column;gap:4px}#wiring .ticks{display:flex;flex-wrap:wrap;gap:2px 10px}#wiring input[type=checkbox]{margin:0;padding:0}#wiring .open{border:none;background:none;padding:0;color:var(--text-2);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:var(--t-code) var(--mono)}#wiring .open:hover{background:none;color:var(--text-0)}#wiring .bit>span{text-align:right;padding-right:4px;color:var(--text-3)}#wiring .bit{border-left:1px solid var(--line-soft);margin-left:4px}#bitpicker{z-index:var(--z-picker);padding:8px 10px 10px;font:var(--t-code) var(--mono)}#bitpicker .say{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px}#bitpicker .bits{display:grid;grid-template-columns:repeat(8,26px);gap:3px;touch-action:none}#bitpicker .bits button{min-height:20px;padding:1px 0;text-align:center;font:var(--t-ui) var(--mono)}@media(pointer:coarse){#bitpicker .bits{grid-template-columns:repeat(8,30px)}#bitpicker .bits button{min-height:30px}}#bitpicker .bits button.taken{color:var(--text-3);border-style:dashed}#bitpicker .bits button.on{border-color:var(--accent);color:var(--accent)}#bitpicker .bits button.pick{border-color:var(--accent);background:var(--accent-wash);color:var(--accent-lift)}#bitpicker .shut{border:none;background:none;min-height:0;padding:0 2px;color:var(--text-3);line-height:1}#bitpicker .shut:hover{color:var(--text-0)}#signalspanel{width:max-content;min-width:200px;max-width:calc(100% - 28px);display:flex;flex-direction:column;overflow:hidden}#signalshead .tools{display:flex;align-items:center;gap:4px}#watchadd{min-height:var(--h-small);padding:0 4px;font:var(--t-ui) var(--prose);cursor:pointer}#signals{display:grid;grid-template-columns:auto auto 1fr auto auto;gap:4px 8px;align-items:center;padding:10px 12px;max-height:45vh;overflow-y:auto;font:var(--t-code) var(--mono)}#signals .net{color:var(--text-2);white-space:nowrap}#signals .set{display:flex;align-items:center;gap:3px}#signals .set button,#signals .radix,#signals .drop{min-height:var(--h-small);font:inherit}#signals .set button{min-width:26px;padding:1px 6px}#signals .set input{min-height:var(--h-small);font:inherit;padding:1px 5px;text-align:right;background:var(--surface-0);color:var(--text-0);border:1px solid var(--line-soft);border-radius:var(--r)}#signals .set input:focus{outline:none;border-color:var(--accent)}#signals .set input.bad{border-color:var(--warn)}#signals .set .loose{color:var(--text-3)}#signals .set button.z[aria-pressed=true]{border-color:var(--accent);color:var(--accent);background:var(--accent-wash)}#signals .val{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text-0)}#signals .radix{border:none;background:none;padding:0 2px;color:var(--text-3);cursor:pointer;font-size:var(--t-eyebrow)}#signals .radix:hover{background:none;color:var(--accent)}#signals .drop{border:none;background:none;padding:0 2px;color:var(--text-4);line-height:1;cursor:pointer}#signals .drop:hover{background:none;color:var(--warn)}#signals .rule{grid-column:1 / -1;border-top:1px solid var(--line-soft);margin:2px 0}#until{flex-wrap:wrap;gap:6px 12px;padding:8px 12px 10px;border-top:1px solid var(--line-soft);font-size:var(--t-ui)}#until[hidden]{display:none}#untilbox,#shortbox{display:flex;align-items:center;gap:5px;color:var(--text-2)}#untilnet{min-height:var(--h-small);padding:0 3px;font:var(--t-code) var(--mono)}#untilvalue{width:64px;min-height:var(--h-small);font:var(--t-code) var(--mono);padding:1px 5px;background:var(--surface-0);color:var(--text-0);border:1px solid var(--line-soft);border-radius:var(--r)}#untilvalue:focus{outline:none;border-color:var(--accent)}#wavepanel{width:860px;min-width:260px;max-width:calc(100% - 28px);display:flex;flex-direction:column;resize:horizontal;overflow:hidden}#wavebody{overflow-y:auto;max-height:45vh;padding:6px 8px 8px 0}#wave{width:100%;display:block}#languagepanel{width:620px;height:calc(100% - 28px);min-width:280px;min-height:160px;max-width:calc(100% - 28px);max-height:calc(100% - 28px);display:flex;flex-direction:column;resize:both;overflow:hidden}#languagebody{flex:1;min-height:0;display:flex;container-type:inline-size}#languagenav{flex:none;width:132px;padding:8px 6px;overflow-y:auto;display:flex;flex-direction:column;gap:1px;border-right:1px solid var(--line-soft)}#languagenav button{border:none;background:none;min-height:var(--h-small);padding:3px 8px;color:var(--text-2);font:var(--t-ui) var(--prose)}#languagenav button:hover{background:var(--fill-hover);color:var(--text-0)}#languagenav button.here{color:var(--accent)}@container (max-width: 440px){#languagenav{display:none}}#language{position:relative;flex:1;min-width:0;overflow-y:auto;padding:0 16px 24px 14px}#language h3{margin:22px 0 6px;padding-top:12px;border-top:1px solid var(--line-soft);color:var(--text-2)}#language h3:first-child{margin-top:0;border-top:none}#language p{margin:7px 0;font:var(--t-prose) var(--prose);line-height:var(--lh-prose);color:var(--text-1)}#language code{font:var(--t-ui) var(--mono);color:var(--text-0);white-space:nowrap}#language pre{margin:8px 0;padding:7px 9px;font:var(--t-ui) var(--mono);line-height:var(--lh-prose);color:var(--text-0);background:var(--surface-0);border:1px solid var(--line-soft);border-radius:var(--r);overflow-x:auto}#language pre .ports{color:var(--text-4)}#language pre.grammar{color:var(--text-1)}#language table{border-collapse:collapse;margin:6px 0}#language td,#language th{padding:3px 12px 3px 0;vertical-align:top;text-align:left}#language th{font-family:var(--prose);color:var(--text-3);letter-spacing:.06em;padding-bottom:5px}#language td{font:var(--t-body) var(--prose);line-height:var(--lh-prose);color:var(--text-1)}#language td.form{font:var(--t-ui) var(--mono);line-height:var(--lh-prose);color:var(--text-0);white-space:nowrap}#language td .alt{display:inline-block}#language td .alt+.alt{margin-left:1.2em}#language td.says{color:var(--text-2)}#language td.label{color:var(--text-0)}#language table.grid{width:100%}#language table.grid td{border-top:1px solid var(--line-soft);padding-top:5px;padding-bottom:5px}#language table.grid td.form{white-space:normal}#sheetpanel{width:372px;max-width:calc(100% - 28px);max-height:calc(100% - 28px);display:flex;flex-direction:column;overflow:hidden}#sheet{flex:1;min-height:0;overflow-y:auto;padding:12px 14px 14px}#sheet h3{margin:0;font:600 var(--t-head) var(--mono);color:var(--text-0)}#sheet button.back{border:none;background:none;min-height:0;padding:0;margin:0 0 8px;font:var(--t-ui) var(--prose);color:var(--text-3)}#sheet button.back:hover{color:var(--text-0)}#sheet .overview{display:flex;flex-direction:column;margin:-4px -6px}#sheet .overview button.chip{display:grid;grid-template-columns:76px 1fr;gap:10px;align-items:baseline;text-align:left;border:none;background:none;min-height:0;padding:6px;border-radius:var(--r)}#sheet .overview button.chip:hover{background:var(--fill-hover)}#sheet .overview .number{font:600 var(--t-code) var(--mono);color:var(--text-0)}#sheet .overview .title{font:var(--t-body) var(--prose);color:var(--text-2)}#sheet h4{margin:16px 0 4px;padding-top:12px;border-top:1px solid var(--line-soft);font:600 var(--t-eyebrow) var(--prose);text-transform:uppercase;letter-spacing:.08em;color:var(--text-2)}#sheet p{margin:6px 0;font:var(--t-prose) var(--prose);line-height:var(--lh-prose);color:var(--text-1)}#sheet p.title{margin-top:2px;color:var(--text-2)}#sheet p.hint{font-size:var(--t-ui);color:var(--text-3)}#sheet p.source a{color:var(--text-2)}.low{text-decoration:overline}#sheet .package{display:flex;align-items:stretch;width:max-content;margin:14px auto 4px;font:var(--t-code) var(--mono);line-height:1.75}#sheet .package .numbers,#sheet .package .names{display:flex;flex-direction:column;padding:6px 0}#sheet .package .numbers{color:var(--text-4);font-size:var(--t-ui);line-height:calc(var(--t-code) * 1.75)}#sheet .package .numbers.left{text-align:right;padding-right:7px}#sheet .package .numbers.right{padding-left:7px}#sheet .package .body{position:relative;display:flex;gap:34px;padding:0 9px;border:1px solid var(--line);border-radius:var(--r)}#sheet .package .body:before{content:"";position:absolute;left:50%;top:-1px;width:14px;height:7px;transform:translate(-50%);border:1px solid var(--line);border-top-color:var(--surface-2);border-radius:0 0 7px 7px}#sheet .package .names.right{text-align:right}#sheet .package .names span{color:var(--text-0)}#sheet .package .names span.power{color:var(--text-4)}#sheet .function .scroll{overflow-x:auto}#sheet table.truth{margin:6px 0 2px}#sheet table.truth th,#sheet table.truth td{padding:1px 5px}#sheet p.same{margin-top:2px}#sheet table.truth .any{color:var(--text-4)}#sheet table.truth .edge{color:var(--accent)}#sheet table.truth sub{font-size:.75em}#menuitems{min-width:180px;display:flex;flex-direction:column;gap:1px;padding:5px}#menuitems[hidden]{display:none}#menuitems .rule{height:1px;background:var(--line-soft);margin:4px 2px}#menuitems .set{justify-content:space-between;gap:8px;padding:2px 2px 2px 8px;color:var(--text-1)}#menuitems button,#menuitems label.btn{width:100%;background:transparent;border-color:transparent;padding-left:8px}#menuitems button:hover,#menuitems label.btn:hover{background:var(--fill)}#menuitems #helpitem,#menuitems #helprule{display:none}#online{position:relative;display:flex}#onlinebutton{background:transparent;border-color:transparent;color:var(--text-3);font:var(--t-code) var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}#onlinebutton:hover,#onlinebutton.active{background:var(--fill);color:var(--text-1)}#onlinebutton.warn{color:var(--warn)}#onlinesheet{width:min(300px,calc(100vw - 24px));padding:10px 14px 12px}#onlinesheet[hidden]{display:none}#onlinesheet h2{margin:14px 0 4px;min-height:0}#onlinesheet h2:first-child{margin-top:0}#onlinesheet p{margin:0 0 6px;color:var(--text-1)}#onlinesheet p.warn{color:var(--warn)}#onlinesheet .actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}#onlinesheet .link{margin-top:8px}#onlinesheet .link .hint{margin-top:2px}#onlinesheet a{color:var(--accent)}#elsewhere{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-elsewhere);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;background:var(--surface-1);color:var(--text-1);text-align:center}#elsewhere p{max-width:420px;margin:0}#helpsheet{width:260px;padding:10px 14px 12px}#helpsheet[hidden]{display:none}#helpsheet h2{margin:14px 0 4px;min-height:0}#helpsheet h2:first-child{margin-top:0}#version{margin-top:12px;padding-top:9px;border-top:1px solid var(--line-soft);color:var(--text-4);font:var(--t-eyebrow) var(--mono)}#legend{display:flex;flex-wrap:wrap;gap:4px 12px;color:var(--text-3);font-family:var(--mono)}#legend span{display:flex;align-items:center;gap:5px}#legend i{width:12px;height:3px;border-radius:var(--r)}.panel{display:flex;flex-direction:column;gap:8px;flex:none}.panel.off{display:none}.panel>h2{margin:0}.role{display:flex;flex-direction:column;gap:18px;flex:none;padding:14px 16px 18px;background:var(--surface-1)}.role.empty{display:none}#report{color:var(--text-1);background:var(--surface-0);border:1px solid var(--line-soft);border-radius:var(--r);padding:10px 12px;min-height:100px;overflow:auto;white-space:pre-wrap;font:var(--t-prose) var(--prose);line-height:var(--lh-prose)}#report.code{white-space:pre;font:var(--t-ui) var(--mono);line-height:var(--lh-code)}#report.code .why{white-space:pre-wrap;font:var(--t-prose) var(--prose);line-height:var(--lh-prose);margin:0 0 8px}#report.ok{color:var(--ok)}#report.warn{color:var(--warn)}#report button{margin-top:8px;font:var(--t-ui) var(--prose);min-height:var(--h-small)}#ports{flex-wrap:wrap;gap:6px;color:var(--text-2);font:var(--t-code) var(--mono)}#ports .decl{font-size:var(--t-ui)}#ports .dir{color:var(--text-3)}#ports .spacer{min-width:4px}#ports .decl button.leg{font:var(--t-code) var(--mono);min-height:0;padding:0 3px;margin:0 1px;color:var(--text-2);background:none;border:1px solid transparent;border-radius:3px}#ports .decl button.leg:hover{border-color:var(--line-soft);color:var(--text-0)}#ports .decl button.leg[data-bus]{color:var(--text-3)}#ports .decl button.leg.picked{color:var(--text-0);background:var(--fill-hover);border-color:var(--line-soft)}#ports button{font:var(--t-ui) var(--prose);min-height:var(--h-small);padding:1px 8px}#checkrow{gap:12px}#devices{display:flex;flex-direction:column;gap:8px;font:var(--t-code) var(--mono)}#devices canvas{image-rendering:pixelated;display:block;margin:0 auto;width:100%;height:auto;max-height:34vh;object-fit:contain;border:1px solid var(--line-soft);border-radius:var(--r);background:var(--paper)}#devices .keys{color:var(--text-2)}#devices .who{font-size:var(--t-eyebrow);color:var(--text-2)}#devices.armed{outline:1px solid var(--ok);outline-offset:4px;border-radius:var(--r)}#memorypick{min-height:var(--h-small);padding:0 4px;font:var(--t-ui) var(--prose)}#memorybody{max-height:30vh;overflow-y:auto;position:relative;background:var(--surface-0);border:1px solid var(--line-soft);border-radius:var(--r);padding:4px 0;font:var(--t-code) var(--mono)}#memoryrows{position:relative}#memoryrows .row{position:absolute;left:0;right:0;height:17px;display:flex;align-items:center;gap:6px;padding:0 10px}#memoryrows .at{color:var(--text-3)}#memoryrows .cell{border:none;background:none;min-height:0;padding:0 1px;cursor:text;font:inherit;color:var(--text-0);border-radius:2px}#memoryrows .cell:hover{background:var(--fill)}#memoryrows .cell.blank{color:var(--text-5)}#memoryrows .cell.wrote{color:var(--accent);background:var(--accent-wash)}#memoryrows input.cell{background:var(--surface-2);outline:1px solid var(--accent);color:var(--text-0)}#memorypick{max-width:140px;font-family:var(--mono)}#memorypanel textarea{min-height:62px}#memorypanel .blobbar{display:flex;align-items:center;gap:6px}#memorypanel .blobbar>select{flex:1;min-width:0;min-height:var(--h-small);padding:0 4px;font-size:var(--t-ui)}#memorypanel h2 .tiny:first-of-type{margin-left:auto}.panel>h2>select,.panel>h2>button,.panel>h2>label{flex:none}#modules{display:flex;flex-direction:column;gap:2px}#modules button.chapter{display:flex;align-items:center;gap:6px;width:100%;min-height:var(--h-small);border:none;background:none;padding:0 2px;color:var(--text-3);margin:14px 0 4px}#modules button.chapter:hover{background:none}#modules button.chapter:hover .fold{color:var(--text-0)}#modules .chapter:first-child{margin-top:0}#modules .chapter.done{color:var(--ok)}#modules .chapter.par{color:var(--par)}#modules .chapter.locked{color:var(--text-5)}#modules .chapter .fold{width:8px;color:var(--text-4)}#modules .chapter .title{flex:1}#modules .chapter .tally{color:var(--text-4);letter-spacing:0;font-family:var(--mono)}button.level{background:transparent;border-color:transparent;padding:4px 10px;min-height:30px}button.level:hover{background:var(--fill)}button.level.active{background:var(--accent-wash);border-color:transparent;color:var(--accent)}button.level.locked{color:var(--text-5);cursor:default}button.level.locked:hover{background:transparent}button.level.done{color:var(--ok)}button.level.given{color:var(--text-2)}button.level.stale{color:var(--accent)}button.level.par{color:var(--par)}button.level.quick{box-shadow:inset 2px 0 0 var(--quick)}button.level.optional{margin-left:12px;display:flex;justify-content:space-between;gap:6px}button.level.optional:after{content:"optional";color:var(--text-4);font-size:var(--t-eyebrow)}button.level.board{display:flex;justify-content:space-between;gap:6px}button.level.board:after{content:"the board";color:var(--text-4);font-size:var(--t-eyebrow);white-space:nowrap}#story{display:flex;flex-direction:column;align-items:flex-start}#story .chapter-line{color:var(--text-3)}#story p{margin:8px 0;font:var(--t-prose) var(--prose);line-height:var(--lh-prose);color:var(--text-1);white-space:pre-line}#story .goal{color:var(--text-0)}#story .blurb{color:var(--text-2);font-style:italic}#story .hint-text{color:var(--held);border-left:2px solid var(--held-wash);padding-left:10px}#story .history{color:var(--text-2);border-left:2px solid var(--line-soft);padding-left:10px}#story .closing{color:var(--ok)}#story .state{color:var(--text-3);margin:6px 0}button.story-action{margin-top:6px}table.truth{border-collapse:collapse;margin:6px 0 4px;font:var(--t-ui) var(--mono)}table.truth th,table.truth td{padding:1px 8px;text-align:center}table.truth th{color:var(--text-3);font-weight:400;border-bottom:1px solid var(--line-soft)}table.truth td{color:var(--text-2)}table.truth th.sep,table.truth td.sep{border-left:1px solid var(--line-soft)}table.truth tbody td.sep,table.truth tbody td.sep~td{color:var(--text-0)}table.truth th.held,table.truth tbody td.held{color:var(--held)}table.truth th.mem,table.truth td.mem{border-left:1px dotted var(--held-wash)}table.truth caption{caption-side:bottom;text-align:left;padding-top:4px;font:var(--t-ui) var(--prose);line-height:var(--lh-prose);color:var(--text-3)}#stats{display:flex;flex-direction:column;align-items:flex-start;gap:6px}table.stats{border-collapse:collapse;font:var(--t-ui) var(--mono);width:100%}table.stats th{color:var(--text-3);font:400 var(--t-eyebrow) var(--prose);text-align:right;padding:0 0 4px 10px;border-bottom:1px solid var(--line-soft)}table.stats td{padding:3px 0 3px 10px;text-align:right;color:var(--text-0);font-variant-numeric:tabular-nums}table.stats td.label{text-align:left;padding-left:0;color:var(--text-2);font-family:var(--prose)}table.stats tr.sub td{color:var(--text-3);font-size:var(--t-eyebrow);padding-top:0}table.stats tr.sub td.label{padding-left:10px}table.stats td.par{color:var(--par)}table.stats td.quick{color:var(--quick)}#stats .verdict,#passstats .verdict{color:var(--par)}#stats .tower,#passstats .tower{color:var(--text-3)}#finder{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-sheet);display:flex;justify-content:center;align-items:flex-start;padding:44px 16px 16px;background:var(--scrim)}#finder[hidden]{display:none}#findsheet{width:520px;max-width:100%;max-height:100%;display:flex;flex-direction:column;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sheet);overflow:hidden}#findquery{flex:none;font:var(--t-prose) var(--prose);background:var(--surface-2);color:var(--text-0);border:none;border-bottom:1px solid var(--line-soft);padding:14px 16px}#findquery::placeholder{color:var(--text-4)}#findlist{flex:1;min-height:0;overflow-y:auto;padding:6px}#findlist .findhead{display:flex;justify-content:space-between;padding:12px 10px 4px;color:var(--text-3)}#findlist .findhead:first-child{padding-top:6px}#findlist .findhead .count{color:var(--text-4);letter-spacing:0}#findlist .miss{display:flex;justify-content:space-between;gap:10px;padding:10px;color:var(--text-2)}#findlist .miss .count{color:var(--text-3)}#findlist .find{display:flex;gap:2px}#findlist .find .go{flex:1;min-width:0;display:flex;align-items:baseline;gap:12px;border:none;background:none;padding:5px 10px;border-radius:var(--r)}#findlist .find .name{flex:none;color:var(--text-0)}#findlist .find .note{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:right;color:var(--text-3);font:var(--t-ui) var(--mono)}#findlist .find .drop{flex:none;border:none;background:none;color:var(--line);padding:4px 8px;border-radius:var(--r)}#findlist .find:hover .drop{color:var(--text-2)}@media(hover:none){#findlist .find .drop{color:var(--text-3)}}#findlist .find .drop:hover{background:var(--warn-wash);color:var(--warn)}#findlist .find.on .go{background:var(--fill)}#findlist .find.here .name{color:var(--accent)}#findfoot{flex:none;display:flex;align-items:center;gap:6px;padding:8px 10px;border-top:1px solid var(--line-soft);background:var(--surface-1)}#findfoot button{min-height:var(--h-small);font-size:var(--t-ui)}#findfoot .hint{font-size:var(--t-eyebrow)}#passed{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-sheet);display:flex;padding:16px;background:var(--scrim);overflow:auto}#passed[hidden]{display:none}#passsheet{width:460px;max-width:100%;margin:auto;display:flex;flex-direction:column;gap:12px;padding:14px 18px 18px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sheet)}#passhead{display:flex;justify-content:space-between;align-items:center;color:var(--text-3)}#passtitle{margin:0;font:600 var(--t-head) var(--prose);color:var(--ok)}#passtitle.par{color:var(--par)}#passsaid,#passclosing{margin:0;font:var(--t-prose) var(--prose);line-height:var(--lh-prose);white-space:pre-wrap}#passsaid{color:var(--text-1)}#passclosing{color:var(--ok);padding-top:10px;border-top:1px solid var(--line-soft)}#passstats{display:flex;flex-direction:column;gap:4px}#passsheet .actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:4px}#passnext,#chooserstart{background:var(--accent);border-color:var(--accent);color:var(--surface-2);font-weight:600}#passnext:hover,#chooserstart:hover{background:var(--accent-lift);border-color:var(--accent-lift)}#chooser{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-door);display:flex;background:var(--scrim-deep);padding:24px;overflow:auto}#chooser[hidden]{display:none}#chooser .sheet{max-width:860px;width:100%;margin:auto}#chooser h1{margin:0;font:600 20px var(--prose);letter-spacing:-.01em;color:var(--text-0)}#chooser .lede{margin:8px 0 20px;max-width:68ch;font:var(--t-prose) var(--prose);line-height:var(--lh-prose);color:var(--text-2)}#chooser .foot{margin-top:16px;max-width:68ch;font:var(--t-body) var(--prose);line-height:var(--lh-prose);color:var(--text-3)}#chooserbody{display:grid;grid-template-columns:220px 1fr;gap:14px}#families{display:flex;flex-direction:column;gap:4px}button.family{display:grid;grid-template-columns:40px 1fr auto;gap:8px;align-items:baseline;width:100%;padding:8px 12px;border-radius:var(--r);background:var(--surface-1)}button.family:hover{border-color:var(--line-strong)}button.family.picked{border-color:var(--accent);background:var(--accent-wash)}button.family .era{color:var(--text-3);font:var(--t-ui) var(--mono)}button.family .who{color:var(--text-0)}button.family.picked .who{color:var(--accent)}button.family .tag{color:var(--text-3);font:var(--t-eyebrow) var(--mono)}button.family .tag.done{color:var(--ok)}button.family .tag.here{color:var(--accent)}#families .kits{margin:12px 0 2px;padding:0 12px;color:var(--text-3)}#familydetail{display:flex;flex-direction:column;gap:16px;min-width:0;padding:16px 18px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg)}#panes{display:grid}#panes .pane{grid-area:1 / 1;min-width:0}#panes .pane:not(.shown){visibility:hidden}.pane .head{display:flex;justify-content:space-between;align-items:baseline}.pane .name{font:600 var(--t-head) var(--prose);color:var(--text-0)}.pane .era{color:var(--text-3);font-family:var(--mono)}.pane p{margin:6px 0 0;font:var(--t-prose) var(--prose);line-height:var(--lh-prose);color:var(--text-1)}.pane p.pace,.pane p.climb{font-size:var(--t-body);color:var(--text-2)}.pane h3{margin:18px 0 8px;color:var(--text-3)}.pane .paceline{display:flex;align-items:flex-start;gap:14px}.pane .scale{flex:1;min-width:0;padding:0 5px}.pane .axis{position:relative;height:13px}.pane .axis:before{content:"";position:absolute;left:0;right:0;top:6px;height:1px;background:var(--line)}.pane .tick{position:absolute;top:3px;width:1px;height:7px;background:var(--line)}.pane .dot{position:absolute;top:3px;width:7px;height:7px;margin-left:-3px;border-radius:50%;background:var(--line-strong)}.pane .dot.this{top:2px;width:9px;height:9px;margin-left:-4px;z-index:1;background:var(--quick);box-shadow:0 0 0 2px var(--surface-2)}.pane .labels{position:relative;height:15px;font:var(--t-eyebrow) var(--mono);color:var(--text-3)}.pane .labels span{position:absolute;top:3px;transform:translate(-50%);white-space:nowrap}.pane .labels span:last-child{transform:translate(-100%)}.pane .delay{color:var(--quick);line-height:13px;white-space:nowrap;font-family:var(--mono)}.pane .parts{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.pane .chip{padding:2px 8px;font:var(--t-code) var(--mono);color:var(--text-0);background:var(--fill);border:1px solid var(--line-soft);border-radius:var(--r)}.pane .rails{margin-left:4px;font:var(--t-ui) var(--prose);color:var(--text-3)}.pane label.field{display:grid;grid-template-columns:90px 1fr;align-items:center;gap:10px;margin-top:10px}.pane label.field input{font:inherit;color:var(--text-0);background:var(--surface-0);border:1px solid var(--line-soft);border-radius:var(--r);min-height:var(--h);padding:2px 8px}.pane label.field input:focus{outline:none;border-color:var(--accent)}.pane label.field select{width:100%;min-width:0}.pane p.problem{color:var(--warn);font-size:var(--t-body)}.pane p.problem:empty{display:none}.pane button.drop:hover{background:var(--warn-wash);color:var(--warn);border-color:var(--warn)}#familydetail .actions{display:flex;gap:8px;margin-top:auto}@media(max-width:640px){#chooserbody{grid-template-columns:1fr}#families{display:grid;grid-template-columns:1fr 1fr}#families .kits{grid-column:1 / -1}button.family{grid-template-columns:36px 1fr auto;padding:8px 10px}}@media(max-width:640px),(max-height:600px){#familydetail .actions{position:sticky;bottom:-16px;margin:0 -18px -16px;padding:12px 18px;background:var(--surface-2);border-top:1px solid var(--line-soft);border-radius:0 0 var(--r-lg) var(--r-lg)}}#referencepanel{position:absolute;top:12px;right:12px;bottom:12px;left:12px;z-index:var(--z-reference);display:flex;flex-direction:column;background:var(--surface-1);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sheet);overflow:hidden}#refhead{display:flex;align-items:center;gap:10px;padding:8px 10px 8px 14px;border-bottom:1px solid var(--line-soft);background:var(--surface-2)}#reftitle{color:var(--par);font-weight:600}#refcost{color:var(--text-3)}#refhead .spacer{flex:1}#refcanvas{flex:1;width:100%;min-height:0;display:block}#referencepanel[hidden]{display:none}#scrim{display:none;z-index:var(--z-drawer);background:var(--scrim)}body:not(.story)>aside,body.ladder-shut>aside{display:none}body:not(.story),body.ladder-shut{--ladder: 0px}body.goal-shut #goalrole,body.part-shut #partrole,body.machine-shut #machinerole{display:none}body.side-shut>#side{display:none}body.side-shut{--side: 0px}body.palette-shut #tray{display:none}body:not(.story) #ladderfold,body.driven #palettefold{display:none}body:not(.sandbox) #findshelf{display:none}body.driven #machinerole{order:-1}body.driven #devicepanel{order:-3}body.driven #tray,body.story #clear,body.story #stubbox{display:none}body:not(.story) #levelreset{display:none}@media(max-width:1240px){#find.search{width:var(--h);margin-left:0;padding:0;justify-content:center;background:transparent;border-color:transparent}#find .label,#find kbd{display:none}body{--ladder: 196px;--side: 352px}}@media(max-width:960px){:root{--narrow: 1}html,body{overflow:hidden}body{grid-template-columns:minmax(0,1fr);grid-template-rows:var(--bar) minmax(0,1fr)}#stack,aside,#side,#scrim{grid-area:2 / 1}aside,#side{z-index:var(--z-drawer);box-shadow:var(--shadow-sheet);transition:transform var(--ease)}body{--ladder-drawer: min(300px, 84vw);--side-drawer: min(400px, 92vw)}aside{justify-self:start;width:var(--ladder-drawer);transform:translate(-105%)}#side{justify-self:end;width:var(--side-drawer);transform:translate(105%)}body.story.ladder-shut>aside{display:block}body.side-shut>#side{display:flex}body.story:not(.ladder-shut)>aside,body:not(.side-shut)>#side{transform:none}body.story:not(.ladder-shut)>#scrim,body:not(.side-shut)>#scrim{display:block}header{padding:0 6px 0 8px;gap:6px}header h1{display:none}#trail{padding-left:6px}#views>button:before{display:none}#views>button{padding:2px 8px}}@media(max-width:640px){body{--tabs: 56px;padding-bottom:calc(var(--tabs) + env(safe-area-inset-bottom))}#views{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-handle);height:calc(var(--tabs) + env(safe-area-inset-bottom));padding:4px 4px env(safe-area-inset-bottom);border:none;border-top:1px solid var(--line-soft);border-radius:0;background:var(--surface-2);gap:0;align-items:stretch}#views>button{flex:1 1 0;flex-direction:column;gap:3px;min-height:0;padding:4px 0;font-size:var(--t-eyebrow);border-radius:var(--r)}#views>button:before{display:block;width:20px;height:20px;-webkit-mask-size:20px;mask-size:20px}#views>button[aria-pressed=true]{color:var(--accent);background:transparent;border-color:transparent;box-shadow:none}#decade .era{display:none}#onlinebutton{max-width:104px;padding:2px 6px}#helpbutton{display:none}#menuitems #helpitem{display:flex}#menuitems #helprule{display:block}#mode>button{padding:2px 8px}}@media(max-height:560px)and (pointer:coarse){:root{--h: 32px;--h-small: 26px}}@media(max-height:560px){:root{--bar: 40px}#tray{max-height:80px;padding-top:5px;padding-bottom:5px}#report,textarea{min-height:64px}#memorypanel textarea{min-height:44px}#finder,#chooser{padding:12px}#dock{min-height:var(--bar);padding-top:4px;padding-bottom:4px}}
