.shell .workbench-main{max-width:none;margin:0;padding:0}.wb{background:var(--canvas);flex-direction:column;height:100vh;display:flex}.wb-head{background:var(--bg-900);border-bottom:1px solid var(--line-100);flex:none;align-items:center;gap:14px;min-height:62px;padding:8px 16px;display:flex}.wb-back{color:var(--ink-700)}.wb-title{flex:1;min-width:0;display:grid}.wb-kicker{font-size:var(--fs-15);color:var(--ink-500);white-space:normal;overflow-wrap:anywhere}.wb-title h1{font-size:var(--fs-19);letter-spacing:-.015em;white-space:normal;overflow-wrap:anywhere}.wb-head-actions{align-items:center;gap:8px;display:flex}.wb-transport{z-index:30;background:var(--bg-900);border-bottom:1px solid var(--line-100);flex-wrap:wrap;flex:none;align-items:center;gap:10px 14px;padding:10px 16px;display:flex;position:sticky;top:0}.wb-help-controls{align-items:center;gap:8px;margin-left:auto;display:flex}.wb-transport .btn,.wb-transport .speed-select,.wb-fullscreen-controls .btn,.wb-fullscreen-controls .speed-select{min-height:40px}.wb-fullscreen-controls{border-bottom:1px solid var(--line-200);background:var(--surface);flex:none;padding:10px 12px;display:flex}.wb-fullscreen-controls .run-controls{flex-wrap:wrap}.wb .wb-transport .simulation-state{font-size:var(--fs-15)}.wb-layout{border-radius:var(--r-sm);background:var(--canvas-2);gap:2px;padding:3px;display:inline-flex}.wb-layout button{min-height:32px;font-size:var(--fs-15);color:var(--ink-600);border-radius:5px;align-items:center;gap:6px;padding:0 10px;font-weight:560;display:inline-flex}.wb-layout button[aria-pressed=true]{background:var(--surface);color:var(--ink-950);box-shadow:var(--shadow-1)}.wb .draft-recovery{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);font-size:var(--fs-15);flex:none;margin:10px 14px 0;padding:8px 14px}.wb .draft-recovery p{color:var(--ink-600);margin:4px 0 8px}.wb .draft-recovery summary{cursor:pointer;font-weight:600}.wb .draft-recovery-actions{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.wb-main{grid-template-columns:minmax(0, var(--editor-width)) 12px minmax(0, 1fr);flex:1;min-height:520px;padding:12px 14px;display:grid}.wb.plant-focus .wb-main{grid-template-columns:minmax(0,1fr)}.wb.plant-focus .wb-code,.wb.plant-focus .wb-divider{display:none}.wb-divider{cursor:col-resize;touch-action:none;position:relative}.wb-divider:after{content:"";background:var(--line-300);border-radius:2px;width:2px;height:44px;margin-top:-22px;position:absolute;top:50%;left:5px}.wb-divider:hover:after,.wb-divider:focus-visible:after{background:var(--brand-500)}.wb-plant{min-width:0;min-height:0;container:plant/inline-size}.wb .stage-canvas{min-height:240px}.wb .stage-foot{min-height:0;overflow-y:auto}.wb .stage-foot:focus-visible{outline:2px solid var(--brand-700);outline-offset:-2px}.wb-code{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--night-900);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden;container:code/inline-size}.wb-brief{background:var(--surface);border-bottom:1px solid var(--line-200);flex:0 auto;min-height:46px;overflow-y:auto}.wb .brief-toggle{width:100%;min-height:46px;font-size:var(--fs-15);color:var(--ink-950);text-align:left;align-items:center;gap:12px;padding:0 14px;font-weight:620;display:flex}.wb .brief-toggle>span:first-child{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.wb .brief-toggle svg{color:var(--brand-600)}.brief-summary{min-width:0;color:var(--ink-500);white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:500;overflow:hidden}.wb-brief.open .brief-summary{visibility:hidden}.wb .brief-content{max-height:min(34vh,340px);font-size:var(--fs-15);color:var(--ink-800);padding:2px 16px 14px;overflow-y:auto}.wb .brief-objective{font-size:var(--fs-16);color:var(--ink-900);margin:0 0 10px}.wb .criteria{color:var(--ink-700);gap:6px;margin:0 0 12px;padding-left:20px;display:grid}.wb .criteria li::marker{color:var(--brand-600);font-weight:650}.wb .operator-report{border-left:3px solid var(--brand-600);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--brand-50);font-size:var(--fs-15);margin:0 0 12px;padding:12px 14px}.wb .operator-report blockquote{font-size:var(--fs-16);color:var(--ink-900);margin:6px 0}.wb .operator-report span{color:var(--ink-600)}.wb .workbench-guide{border:1px solid var(--line-200);border-radius:var(--r-sm);margin:8px 0;padding:8px 12px;display:block}.wb .workbench-guide summary{cursor:pointer;color:var(--ink-800);font-weight:600}.wb .workbench-guide ol{gap:6px;margin:8px 0;padding-left:20px;display:grid}.wb .brief-actions{gap:8px;margin:10px 0 4px;display:flex}.wb .hint-history{border:1px solid var(--line-200);border-radius:var(--r-sm);background:var(--surface-2);margin:10px 0 0;padding:6px 12px}.wb .hint-history summary{cursor:pointer;color:var(--ink-700);font-weight:600}.wb .hint-history ol{color:var(--ink-800);gap:8px;margin:8px 0 4px;padding:0;list-style:none;display:grid}.wb .hint-history li strong{color:var(--warn-700);display:block}.wb .hint{border-radius:var(--r-sm);background:var(--warn-100);color:var(--ink-900);outline:none;gap:10px;margin:10px 0 0;padding:10px 12px;display:flex}.wb .hint svg{color:var(--warn-700);margin-top:3px}.wb .hint strong{color:var(--warn-700);display:block}.wb .pane-heading{background:var(--night-800);border-bottom:1px solid var(--night-700);min-height:48px;color:var(--night-text);flex:none;align-items:center;gap:8px;padding:6px 8px 6px 10px;display:flex}.wb .pane-heading select{background:var(--night-700);border-color:var(--night-600);max-width:190px;height:34px;color:var(--night-text);font-weight:560}.wb .language-picker{align-items:center;gap:6px;min-width:0;display:flex}.wb .language-maker{padding:0 4px;font-size:13px;font-weight:560}.wb .language-tabs{border-radius:var(--r-sm);background:var(--night-900);border:1px solid var(--night-600);gap:2px;padding:3px;display:inline-flex}.wb .language-tabs button{border-radius:calc(var(--r-sm) - 2px);height:28px;color:var(--night-text);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0 10px;font-size:13px;font-weight:560}.wb .language-tabs button:hover:not(:disabled,[aria-pressed=true]){background:var(--night-700)}.wb .language-tabs button[aria-pressed=true]{background:var(--lamp-on-dark);color:#0b0d10}.wb .language-tabs button:disabled{opacity:.38;cursor:not-allowed}.wb .language-tabs button:focus-visible{outline:2px solid var(--lamp-on-dark);outline-offset:1px}.wb .pane-spacer{flex:1}.wb .editor-tabs{background:var(--night-800);border:0;border-bottom:1px solid var(--night-700);scrollbar-width:none;flex:none;align-items:stretch;gap:2px;min-height:42px;padding:0 8px;display:flex;overflow-x:auto}.wb .editor-tabs::-webkit-scrollbar{display:none}@property --edge-start{syntax:"<length>";inherits:false;initial-value:0}@property --edge-end{syntax:"<length>";inherits:false;initial-value:0}@keyframes scroll-edges{0%{--edge-start:0px;--edge-end:40px}8%,92%{--edge-start:40px;--edge-end:40px}to{--edge-start:40px;--edge-end:0px}}@supports (animation-timeline:scroll()){.wb .editor-tabs,.wb .monitor-tabs,.rig-picker{-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--edge-start), #000 calc(100% - var(--edge-end)), transparent);mask-image:linear-gradient(to right, transparent, #000 var(--edge-start), #000 calc(100% - var(--edge-end)), transparent);animation:linear both scroll-edges;animation-timeline:scroll(self inline)}}.wb .editor-tabs button{min-height:41px;font-family:var(--font-mono);font-size:var(--fs-15);color:var(--night-muted);white-space:nowrap;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.wb .editor-tabs button:hover{color:var(--night-text);background:var(--night-700)}.wb .editor-tabs button:last-child{margin-left:0}.wb .editor-tabs button:focus-visible,.wb .editor-tabs button.active:focus-visible{box-shadow:inset 0 0 0 2px var(--focus-colour)}.wb .editor-tabs button.active{color:var(--night-text);background:var(--night-900);border-bottom-color:var(--editor-accent);box-shadow:none}.wb .tab-count{background:var(--night-600);min-width:22px;height:22px;color:var(--night-text);font-family:var(--font-sans);font-size:var(--fs-15);border-radius:999px;place-items:center;padding:0 6px;font-weight:600;line-height:1;display:inline-grid}.wb .revision{font-family:var(--font-mono);font-size:var(--fs-15);color:var(--night-muted);white-space:nowrap}.wb .pane-heading .icon-btn{border-color:var(--night-600);color:var(--night-text);background:0 0}.wb .pane-heading .icon-btn:hover{background:var(--night-700)}.wb .reset-draft{border-radius:var(--r-sm);border:1px solid var(--night-600);min-height:34px;font-size:var(--fs-15);color:var(--night-text);white-space:nowrap;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.wb .reset-draft:hover:not(:disabled){background:var(--night-700)}.wb .editor-content{background:var(--night-900);flex:1;min-height:180px;overflow:hidden}.wb .interface-strip{background:var(--night-800);border-bottom:1px solid var(--night-700);min-height:37px;color:var(--night-text);font-size:var(--fs-15);flex-direction:column;flex:0 auto;display:flex;overflow:hidden}.wb .interface-strip-bar{flex:none;align-items:center;gap:10px;min-height:36px;padding:0 6px 0 4px;display:flex}.wb .interface-strip-toggle,.wb .interface-strip-edit,.wb .interface-strip-scope{border-radius:var(--r-sm);min-height:30px;color:var(--night-text);white-space:nowrap;align-items:center;gap:7px;padding:0 8px;display:inline-flex}.wb .interface-strip-toggle{font-family:var(--font-mono)}.wb .interface-strip-scope,.wb .interface-strip-edit{color:var(--night-muted);margin-left:auto;font-size:14px}.wb .interface-strip-scope+.interface-strip-edit{margin-left:0}.wb .interface-strip-toggle:hover,.wb .interface-strip-edit:hover,.wb .interface-strip-scope:hover{background:var(--night-700);color:var(--night-text)}.wb .interface-strip-names{max-height:4.6em;color:var(--night-muted);flex-wrap:wrap;gap:2px 16px;margin:-4px 0 0;padding:0 12px 7px 34px;font-size:14px;line-height:1.5;display:flex;overflow-y:auto}.wb .interface-strip-names b{font-family:var(--font-mono);margin-right:6px;font-size:13px;font-weight:600}.wb .interface-strip-names code+code{margin-left:8px}.wb .interface-strip-names code{font-family:var(--font-mono);color:var(--syntax-variable)}.wb .interface-strip-table{resize:vertical;border-top:1px solid var(--night-700);background:var(--night-900);flex:0 auto;min-height:0;max-height:150px;overflow:auto}.wb .interface-strip-table:focus-visible{outline:2px solid var(--focus-colour);outline-offset:-2px}.wb .interface-strip table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.35}.wb .interface-strip thead th{z-index:1;background:var(--night-800);border-bottom:1px solid var(--night-700);color:var(--night-muted);text-align:left;white-space:nowrap;padding:4px 10px;font-weight:560;position:sticky;top:0}.wb .interface-strip thead th:first-child{width:1%}.wb .interface-strip td,.wb .interface-strip .interface-section{vertical-align:top;padding:3px 10px}.wb .interface-strip .interface-first>*{border-top:1px solid var(--night-700)}.wb .interface-strip tbody tr:first-child>*{border-top:0}.wb .interface-strip .interface-section{color:var(--night-muted);font-family:var(--font-mono);text-align:left;white-space:nowrap;font-size:13px;font-weight:600}.wb .interface-strip code{font-family:var(--font-mono);white-space:nowrap;font-size:14px}.wb .interface-strip .interface-name code{color:var(--syntax-variable)}.wb .interface-strip .interface-comment{min-width:180px;color:var(--night-muted)}.wb .editor-status{background:var(--night-800);border-top:1px solid var(--night-700);color:var(--night-muted);font-size:var(--fs-15);white-space:nowrap;flex:none;justify-content:space-between;gap:10px;padding:7px 12px;display:flex}.wb .editor-status .has-diagnostics{color:var(--night-fault-text)}.wb .stage-title strong{display:block}.wb .run-controls{flex:none;align-items:center;gap:6px;display:flex}.wb .speed-select{height:36px;padding:0 8px;font-weight:560}.wb .simulation-state{align-items:center;gap:6px;display:inline-flex}.wb .simulation-state>.chip{min-height:32px;color:var(--ink-800);border-left:0;margin-left:0;padding:0 10px;display:inline-flex}.wb .simulation-state>.chip.ok{color:var(--ok-700)}.wb .simulation-state>.chip.fault{color:var(--fault-700)}.wb .simulation-state>.chip.brand{color:var(--brand-700)}.wb .test-summary.failed{color:var(--warn-700);background:var(--warn-100)}.operator-strip{border-bottom:1px solid var(--line-100);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;display:flex}.operator-label{font-size:var(--fs-15);color:var(--ink-500);margin-right:4px}.operator-strip button{border-radius:var(--r-sm);border:1px solid var(--line-300);background:var(--surface);min-height:34px;font-size:var(--fs-15);color:var(--ink-800);align-items:center;gap:6px;padding:0 10px;font-weight:600;display:inline-flex}.operator-strip button:hover:not(:disabled){border-color:var(--ink-500)}.operator-strip button.cue{border-color:var(--brand-600);animation:1.4s ease-in-out infinite operator-cue}@keyframes operator-cue{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--brand-600) 45%, transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--brand-600) 0%, transparent)}}@media (prefers-reduced-motion:reduce){.operator-strip button.cue{box-shadow:0 0 0 2px var(--brand-600);animation:none}}.operator-strip .op-name{overflow-wrap:normal;min-width:0}.operator-strip .op-state{color:var(--ink-500);font-size:var(--fs-15);font-weight:600}.operator-strip button.on .op-state{color:var(--ok-700)}.operator-strip .lamp{background:var(--bg-650);border-radius:50%;width:10px;height:10px;box-shadow:inset 0 1px 2px #10121640}.operator-strip button.on{border-color:var(--ok-border);background:var(--ok-100);color:var(--ok-700)}.operator-strip button.on .lamp{background:var(--run-400);box-shadow:0 0 0 3px var(--lamp-halo), 0 0 10px #1f9d5a73}.operator-strip button.momentary{touch-action:none;-webkit-user-select:none;user-select:none;box-shadow:0 2px 0 var(--line-300);border-radius:999px;padding-inline:12px}.operator-strip button.momentary.on{box-shadow:none;transform:translateY(2px)}@container plant (max-width:979px){.operator-strip .operator-hold-tip{display:none}}@container plant (max-width:720px){.wb .operator-strip button.momentary .op-state{display:none}}.operator-strip .operator-hold-tip{background:0 0;border:0;min-height:34px;margin-left:auto;font-weight:500}.wb .mission-readouts{border:0;border-bottom:1px solid var(--line-100);background:var(--surface);border-radius:0;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0;padding:0;display:grid}.wb .mission-readouts>div{border-left:1px solid var(--line-100);gap:2px;padding:8px 14px;display:grid}.wb .mission-readouts>div:first-child{border-left:0}.wb .mission-readouts dt{font-size:var(--fs-15);color:var(--ink-500)}.wb .mission-readouts dt code{display:none}.wb .mission-readouts dd{font-size:var(--fs-17);font-variant-numeric:tabular-nums;margin:0;font-weight:640}.wb .mission-readouts dd.value-on{color:var(--ok-700)}.wb .equipment-summary{border-top:1px solid var(--line-100);background:var(--surface-2);font-size:var(--fs-15);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;padding:8px 14px;display:flex}.wb .equipment-summary>div{gap:2px;display:grid}.wb .equipment-summary span{color:var(--ink-600)}.wb .equipment-inspector{border:0;border-top:1px solid var(--line-100);box-shadow:none;background:var(--surface-2);-webkit-backdrop-filter:none;backdrop-filter:none;z-index:auto;border-radius:0;gap:6px;padding:12px 52px 12px 14px;display:grid;position:relative;inset:auto}.wb .equipment-inspector>div:first-child{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.wb .equipment-inspector p{font-size:var(--fs-15);color:var(--ink-600);padding:0;display:block}.wb .equipment-inspector>.icon-btn{position:absolute;top:10px;right:10px}.wb .tag-pills{flex-wrap:wrap;gap:6px;display:flex}.wb .tag-pills span{border-radius:var(--r-xs);background:var(--canvas-2);font-size:var(--fs-15);align-items:center;gap:6px;padding:2px 8px;display:inline-flex}.wb .tag-pills b{font-family:var(--font-mono);color:var(--ink-700);font-weight:600}.wb .tag-pills b.value-on{color:var(--ok-700)}.wb .replay-strip{border-radius:var(--r-md);border:1px solid var(--line-300);background:var(--bg-800);color:var(--ink-950);flex:none;align-items:center;gap:12px;margin:0 14px 10px;padding:10px 14px;display:flex}.wb .replay-strip>div{min-width:0;display:grid}.wb .replay-strip strong{font-size:var(--fs-15)}.wb .replay-strip span{font-size:var(--fs-15);color:var(--night-text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.wb .replay-strip>input{min-width:120px;accent-color:var(--editor-accent);background:0 0;border:0;flex:1;padding:0}.wb .replay-strip .replay-position{font-family:var(--font-mono);color:var(--night-text)}.wb .replay-strip .icon-btn{border-color:var(--line-300);color:var(--night-text);background:0 0}.wb-dock{background:var(--surface);border-top:1px solid var(--line-200);flex:none}.wb-dock-bar{align-items:center;gap:8px;min-height:46px;padding:0 12px;display:flex}.wb .monitor-tabs{background:0 0;border:0;flex:1;gap:2px;min-width:0;padding:0;display:flex;overflow-x:auto}.wb .monitor-tabs button{min-height:46px;font-size:var(--fs-15);color:var(--ink-600);white-space:nowrap;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:8px;padding:0 12px;font-weight:560;display:inline-flex}.wb .monitor-tabs button:hover{color:var(--ink-950)}.wb .monitor-tabs button.active{color:var(--brand-700);border-bottom-color:var(--brand-600)}.wb .scan-counter{font-family:var(--font-mono);font-size:var(--fs-15);color:var(--ink-500);white-space:nowrap}.wb .monitor-body{border-top:1px solid var(--line-100);height:auto;min-height:0;max-height:min(25vh,220px);padding:14px 16px;overflow:auto}.wb .monitor-body[hidden]{display:none}.wb .panel-note{font-size:var(--fs-15);color:var(--ink-600)}.wb .modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f111573}.wb .modal{border-radius:var(--r-lg);max-width:760px;padding:32px}.wb .modal>p{color:var(--ink-700);font-size:var(--fs-16);line-height:1.65}.wb .modal pre{background:var(--night-900);color:var(--night-text);border-radius:var(--r-md);font-size:var(--fs-16)}.wb .modal-close{position:absolute;top:16px;right:16px}@media (max-width:1280px){.wb-layout span,.wb .reset-draft span,.wb-xp{display:none}}@media (max-height:760px) and (min-width:901px){.wb-head{min-height:54px;padding-block:4px}.wb-kicker{display:none}.wb-main{padding-block:8px}.wb .monitor-body{height:30vh}}@media (max-width:900px){.wb-transport{top:var(--header-h);gap:8px;padding:10px 12px}.wb-transport .run-controls{flex-wrap:wrap;flex:0 0 100%;width:100%}.wb-transport .btn,.wb-fullscreen-controls .btn{font-size:var(--fs-15);gap:5px;padding-inline:6px}.wb-transport .speed-select,.wb-fullscreen-controls .speed-select{width:64px;padding-inline:4px}.wb-transport .simulation-state{margin-left:0}.wb-help-controls{flex:auto;justify-content:flex-end;gap:6px;min-width:0;margin-left:auto}.wb{height:auto;min-height:calc(100vh - var(--header-h))}.wb-head{flex-wrap:wrap;padding:8px 12px}.wb-title{flex-basis:100%;order:2}.wb-head-actions{flex-wrap:wrap;order:3;width:100%}.wb-layout{display:none}.wb-main,.wb.plant-focus .wb-main{flex-direction:column;gap:12px;padding:12px;display:flex}.wb.plant-focus .wb-code{display:flex}.wb-divider{display:none}.wb-plant{order:-1;height:72vh;min-height:460px}.wb-code{height:70vh;min-height:420px}.wb .monitor-body{height:auto;max-height:none}}.wb .reading{padding:8px 14px}.wb .reading-value{font-size:var(--fs-19)}.wb .reading-note{white-space:normal;overflow:visible}@container stage (max-width:780px){.operator-label{display:none}.operator-strip{padding-inline:10px}.operator-strip button{gap:5px;padding:0 8px}.stage-view select{max-width:168px}}@container code (max-width:640px){.wb .revision{display:none}.wb .pane-heading select{max-width:150px}.wb .language-tabs button{padding:0 7px}}.wb .tag-interface,.wb .def-panel{height:100%;color:var(--night-text);font-size:var(--fs-15);padding:16px 18px 24px;overflow:auto}.wb .tag-interface>p{color:var(--night-muted)}.wb .tag-interface code,.wb .def-panel code{color:var(--syntax-variable);font-size:var(--fs-15)}.wb .tag-interface th,.wb .def-table th{text-align:left;color:var(--night-muted);border-bottom:1px solid var(--night-700);padding:8px 6px;font-weight:560}.wb .tag-interface td,.wb .def-table td{vertical-align:middle;padding:5px 6px}.wb .tag-interface input,.wb .tag-interface select,.wb .def-panel input,.wb .def-panel select{border:1px solid var(--night-600);border-radius:var(--r-sm);background:var(--night-950);height:36px;color:var(--night-text);font-size:var(--fs-15);padding:0 9px}.wb .tag-interface input[type=checkbox],.wb .def-panel input[type=checkbox]{width:18px;height:18px;accent-color:var(--editor-accent);padding:0}.wb .tag-interface input:hover,.wb .tag-interface select:hover,.wb .def-panel input:hover,.wb .def-panel select:hover{border-color:var(--night-muted)}.wb .def-panel input:not([type=checkbox]):not([type=number]),.wb .tag-interface td:nth-child(-n+2) input{font-family:var(--font-mono)}.wb .def-table input:not([type=checkbox]){width:100%;min-width:96px}.wb .def-table input[type=number]{max-width:120px}.wb .tag-interface>button,.wb .def-add{border:1px dashed var(--night-600);border-radius:var(--r-sm);min-height:36px;color:var(--night-text);white-space:nowrap;align-items:center;gap:6px;padding:0 12px;font-weight:560;display:inline-flex}.wb .tag-interface>button:hover,.wb .def-add:hover:not(:disabled){background:var(--night-700);border-style:solid}.wb .def-add:disabled,.wb .def-icon:disabled{opacity:.4}.wb .def-panel{flex-direction:column;gap:14px;display:flex}.wb .def-panel:has(.def-source){gap:10px;padding-top:12px;padding-bottom:12px}.wb .def-panel:has(.def-source) .def-toolbar p{display:none}.wb .def-toolbar{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.wb .def-toolbar h2{color:var(--night-text);font-size:var(--fs-17);margin:0 0 4px}.wb .def-toolbar p{max-width:62ch;color:var(--night-muted);margin:0;line-height:1.5}.wb .def-seg{border:1px solid var(--night-600);border-radius:var(--r-sm);flex:none;padding:2px;display:inline-flex}.wb .def-seg button{min-height:32px;color:var(--night-muted);white-space:nowrap;border-radius:4px;padding:0 12px;font-weight:560}.wb .def-seg button[aria-pressed=true]{background:var(--night-700);color:var(--night-text)}.wb .def-problem{border:1px solid var(--warn-border);border-radius:var(--r-sm);background:var(--night-warn-bg);color:var(--night-warn-text);align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.wb .def-problem svg{flex:none;margin-top:3px}.wb .def-problem p{margin:0;line-height:1.5}.wb .def-list{flex-direction:column;gap:14px;display:flex}.wb .def-card{border:1px solid var(--night-700);border-radius:var(--r-md);background:var(--night-800);padding:12px 14px 14px}.wb .def-card>header{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:8px;display:flex}.wb .def-card>header strong{color:var(--night-text);font-size:var(--fs-16)}.wb .def-card>.def-add{margin-top:10px}.wb .def-table{border-collapse:collapse;width:100%}.wb .def-table th:last-child,.wb .def-table td:last-child{width:40px}.wb .def-meta{color:var(--night-muted)}.wb .def-card>header .def-meta{flex:1;min-width:12ch}.wb .def-none{color:var(--night-muted)}.wb .def-icon{border-radius:var(--r-sm);width:34px;height:34px;color:var(--night-muted);place-items:center;display:inline-grid}.wb .def-icon:hover:not(:disabled){background:var(--night-700);color:var(--night-text)}.wb .def-ghost{border:1px solid var(--night-600);border-radius:var(--r-sm);min-height:34px;color:var(--night-text);white-space:nowrap;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.wb .def-ghost:hover{background:var(--night-700)}.wb .def-danger{border-radius:var(--r-sm);background:var(--fault-700);min-height:34px;color:var(--bg-950);white-space:nowrap;padding:0 12px;font-weight:600}.wb .def-danger:hover{background:var(--fault-700)}.wb .def-confirm{gap:6px;display:inline-flex}.wb .def-empty{border:1px dashed var(--night-600);border-radius:var(--r-md);color:var(--night-muted);align-items:flex-start;gap:12px;padding:16px;display:flex}.wb .def-empty p{max-width:60ch;margin:0;line-height:1.55}.wb .def-add-main{align-self:flex-start}.wb .def-blockbar{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.wb .def-blockbar .def-new{margin-left:auto}.wb .def-blockbar .def-name{width:150px}.wb .def-blockbar select{max-width:160px}.wb .def-namefield{flex-direction:column;gap:4px;display:inline-flex}.wb .def-panel .def-name{width:190px;min-width:0;color:var(--night-text);font-weight:600}.wb .def-name[aria-invalid=true]{border-color:var(--night-fault-text)}.wb .def-error{color:var(--night-fault-text);max-width:34ch}.wb .def-source{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.wb .def-caption{color:var(--night-muted);margin:0;line-height:1.5}.wb .def-caption svg{vertical-align:-2px}.wb .def-call{border-left:3px solid var(--editor-accent);background:var(--night-800);border-radius:0 var(--r-sm) var(--r-sm) 0;margin:0;padding:7px 10px;line-height:1.5}.wb .def-code{border:1px solid var(--night-700);border-radius:var(--r-sm);flex:1;min-height:200px;overflow:hidden}.wb .def-readonly ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.wb .def-readonly li{flex-wrap:wrap;gap:4px 12px;display:flex}.wb .def-readonly li span{color:var(--night-muted)}.wb .def-instances{flex-wrap:wrap;gap:6px;margin:0;display:flex}.wb .def-instances code{background:var(--night-700);border-radius:999px;padding:3px 9px}.wb .member-values{border:1px solid var(--night-600);border-radius:var(--r-sm);min-height:34px;color:var(--night-text);white-space:nowrap;padding:0 10px}.wb .member-values[aria-expanded=true]{background:var(--night-700)}.wb .member-row>td{padding:4px 6px 12px}.wb .member-values-grid{border:1px solid var(--night-700);border-radius:var(--r-sm);background:var(--night-800);grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px 14px;padding:12px;display:grid}.wb .member-values-grid label{flex-direction:column;gap:4px;display:flex}.wb .member-note{color:var(--night-muted);grid-column:1/-1;margin:0}.wb .watch-internal{background:var(--warn-100);color:var(--warn-700);font-family:var(--font-sans);font-size:var(--fs-15);border-radius:999px;margin-left:6px;padding:1px 6px;font-style:normal}@container code (max-width:640px){.wb .def-toolbar{flex-direction:column}.wb .def-panel .def-name{width:100%;min-width:0}}.wb .structured-editor{background:var(--night-900);color:var(--night-text)}.wb .graph-toolbar{border-bottom:1px solid var(--night-700);background:var(--night-800);color:var(--night-muted);padding:7px 10px 7px 14px}.wb .diagram-guide{border-bottom:1px solid var(--night-700);background:var(--night-800);color:var(--night-muted);flex:none;padding:6px 14px}.wb .diagram-guide summary{cursor:pointer;width:fit-content;color:var(--night-text);font-weight:560}.wb .diagram-guide ol{gap:4px;margin:6px 0 4px;padding-left:22px;line-height:1.5;display:grid}.wb .diagram-guide li::marker{color:var(--editor-accent);font-weight:600}@media (max-height:760px){.wb .brief-content{max-height:26vh}.wb .graph-toolbar{padding-block:4px}}.wb .structured-editor button{border-color:var(--night-600);border-radius:var(--r-sm);min-height:34px;color:var(--night-text);padding:0 10px}.wb .structured-editor button:hover:not(:disabled){background:var(--night-700)}.wb .structured-editor input,.wb .structured-editor select{border-color:var(--night-600);border-radius:var(--r-sm);background:var(--night-950);color:var(--night-text)}.wb .structured-editor input[type=checkbox]{accent-color:var(--editor-accent)}.wb .structured-editor .rung{border-color:var(--night-700)}.wb .structured-editor .rung.selected{border-color:var(--editor-accent);background:var(--night-800)}.wb .rung-number{color:var(--night-muted)}.wb .node-inspector{border-top:1px solid var(--night-700);background:var(--night-800);color:var(--night-text)}.wb .branch-edit,.wb .node-inspector details{border-top-color:var(--night-700)}.wb .contact-edit{border-color:var(--night-600);border-radius:var(--r-sm)}.wb .connection-row{border-bottom-color:var(--night-700)}.wb .flow-node{border-color:var(--night-600);border-radius:var(--r-sm);background:var(--night-800);color:var(--night-text)}.wb .flow-node-title{border-bottom-color:var(--night-600);background:var(--night-700);border-radius:5px 5px 0 0}.wb .flow-node-output{border-top-color:var(--night-600);color:var(--night-muted)}.wb .flow-node.initial{outline-color:var(--night-muted)}.wb .node-status{background:var(--night-muted)}.wb .react-flow{--xy-background-color:var(--night-950);--xy-edge-stroke:var(--editor-wire);--xy-edge-stroke-selected:var(--editor-accent)}.wb .react-flow__handle{background:var(--night-muted)!important;border-color:var(--night-950)!important}.wb .react-flow__controls button{background:var(--night-800)!important;border-color:var(--night-600)!important;color:var(--night-text)!important}.wb .react-flow__controls button svg{fill:currentColor}.wb .structured-editor .transition-label{border-color:var(--night-600);background:var(--night-700)}.wb .structured-editor .transition-label.selected,.wb .structured-editor .transition-label:focus-visible{outline-color:var(--editor-accent)}.wb .flow-node.energised{border-color:var(--editor-power)}.wb .energised .node-status{background:var(--editor-power)}.wb .structured-editor .transition-label.active{border-color:var(--editor-power);background:var(--editor-power-bg)}.mission-signals{border-top:1px solid var(--line-100)}.try-it-line{font-size:var(--fs-15);color:var(--ink-700);background:var(--surface-2);border-bottom:1px solid var(--line-100);margin:0;padding:8px 14px;line-height:1.45}.try-it-line strong{color:var(--brand-700);margin-right:6px}.mission-readings{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));margin:0}.mission-readings .reading{flex-direction:column;display:flex}.mission-readings .reading-label{white-space:normal;flex:1;line-height:1.3}.mission-readings dd{margin:0}.mission-readings .reading-note{white-space:nowrap;text-overflow:ellipsis;min-width:0;max-width:100%;overflow:hidden}.mission-readings .reading-note code{font-size:var(--fs-15);color:var(--ink-500)}@media (min-width:701px){.wb .mission-readings .reading{flex-flow:wrap;align-items:baseline;column-gap:8px;padding-block:6px}.wb .mission-readings .reading-label{-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1 0 100%;display:-webkit-box;overflow:hidden}}.mission-signals .try-it-line{align-items:flex-start;gap:6px;display:flex}.mission-signals .try-it-line strong{flex:none}.mission-signals .try-it-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;display:-webkit-box;overflow:hidden}.mission-signals .try-it-line.open .try-it-text{display:block}.mission-signals .try-it-toggle{border-radius:var(--r-xs);width:26px;height:22px;color:var(--ink-600);flex:none;place-items:center;margin-right:-6px;display:grid}.mission-signals .try-it-toggle:hover{background:var(--canvas-2);color:var(--ink-950)}.mission-signals .try-it-toggle svg{transition:transform .18s}.mission-signals .try-it-line.open .try-it-toggle svg{transform:rotate(180deg)}@container plant (min-width:980px){.wb .stage-body{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) clamp(280px,25cqi,360px);display:grid}.wb .stage-body>.stage-canvas{grid-area:1/1}.wb .stage-body>.stage-consequence{grid-area:2/1}.wb .stage-body>.stage-foot{border-top:0;border-left:1px solid var(--line-100);background:var(--surface-2);flex-direction:column;grid-area:1/2/3/3;display:flex}.wb .stage-foot .operator-strip{background:var(--surface);flex-flow:column;align-items:stretch;gap:8px;padding:14px}.wb .stage-foot .operator-label{color:var(--ink-700);margin:0 0 2px;font-weight:600;display:block}.wb .stage-foot .operator-strip button{min-height:40px;padding-inline:14px}.wb .stage-foot .operator-strip .op-state{margin-left:auto}.wb .stage-foot .operator-strip .operator-hold-tip{align-self:flex-start;min-height:0;margin:2px 0 0;padding:0;display:inline-flex}.wb .stage-foot .mission-signals{border-top:0}.wb .stage-foot .mission-readings{background:var(--surface);border-bottom:1px solid var(--line-100);grid-template-columns:minmax(0,1fr)}.wb .stage-foot .mission-readings .reading{border-left:0;border-top:1px solid var(--line-100);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label value""note value";align-items:center;column-gap:14px;padding:8px 14px;display:grid}.wb .stage-foot .mission-readings .reading-label{color:var(--ink-700);grid-area:label;display:block}.wb .stage-foot .mission-readings .reading-value{text-align:right;max-width:150px;font-size:var(--fs-19);grid-area:value}.wb .stage-foot .mission-readings .reading-note{grid-area:note}.wb .stage-foot .try-it-line{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);margin:12px 14px 14px;padding:10px 12px;line-height:1.5;display:block}.wb .stage-foot .try-it-line strong{margin:0 0 4px;display:block}.wb .stage-foot .try-it-text{display:block}.wb .stage-foot .try-it-toggle{display:none}.wb .stage-foot .process-feedback{grid-template-columns:minmax(0,1fr)}.wb .stage-foot .process-feedback .reading{border-left:0;border-top:1px solid var(--line-100)}.wb .stage-foot .equipment-summary{margin-top:auto}}.wb .tag-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wb .tag-scope-toggle{border:1px solid var(--night-600);border-radius:var(--r-sm);min-height:36px;color:var(--night-text);padding:0 12px;font-weight:560}.wb .tag-scope-toggle:hover{background:var(--night-700)}.wb .tag-scope-note{color:var(--night-muted);margin:8px 0 0}.wb .tag-meaning{max-width:240px;color:var(--night-muted);font-size:var(--fs-15);margin-top:3px;line-height:1.35;display:block}.wb .tag-help{margin:0 0 12px}.wb .tag-help summary{cursor:pointer;width:fit-content;color:var(--night-text);font-weight:560}.wb .tag-help p{color:var(--night-muted);margin:6px 0 0;line-height:1.55}.wb .twincat-declaration{border-radius:var(--r-md);background:var(--night-900);max-height:280px;color:var(--night-text);font-family:var(--font-mono);font-size:var(--fs-15);margin:8px 0 0;padding:12px 14px;line-height:1.5;overflow:auto}.wb-passed{background:var(--ok-100);border-bottom:1px solid var(--ok-border);color:var(--ok-700);flex:none;align-items:center;gap:12px;padding:10px 16px;display:flex}.wb-passed>div{flex:1;min-width:0;display:grid}.wb-passed strong{font-size:var(--fs-17)}.wb-passed span{color:var(--ink-800);font-size:var(--fs-15)}@media (max-width:900px){.wb-passed{scroll-margin-top:180px}}@media (max-width:600px){.wb-passed{flex-wrap:wrap}.wb-passed .btn{width:100%}}.wb-head-actions,.wb-back{flex:none}.wb-title{line-height:1.35}.wb .mission-overview{padding:var(--s-3) var(--s-4);background:var(--surface)}.wb .mission-overview p{font-size:var(--fs-16);color:var(--ink-700);margin:0;line-height:1.5}.wb .mission-site-context>summary{font-size:var(--fs-15);cursor:pointer;color:var(--ink-700);font-weight:600}.wb .draft-menu{color:var(--night-text);flex:none;position:relative}.wb .draft-menu summary{align-items:center;gap:var(--s-1);cursor:pointer;font-size:var(--fs-15);padding:var(--s-2);border-radius:var(--r-sm);border:1px solid var(--night-600);list-style:none;display:flex}.wb .draft-menu summary::-webkit-details-marker{display:none}.wb .draft-popup{z-index:180;width:min(420px,100vw - 48px);padding:var(--s-4);border-radius:var(--r-md);background:var(--surface);color:var(--ink-700);border:1px solid var(--line-200);box-shadow:var(--shadow-2);font-size:var(--fs-15);position:absolute;top:100%;left:0}.wb .draft-popup p{font-size:var(--fs-15);margin-bottom:var(--s-3)}.wb .draft-popup select{background:var(--surface);width:100%;max-width:100%;color:var(--ink-900)}.wb .draft-recovery-actions{gap:var(--s-3);display:grid}.editor-notice{padding:var(--s-2) var(--s-4);font-size:var(--fs-15);color:var(--night-text);background:var(--night-700);margin:0}@media (min-width:901px){.wb-transport{flex-wrap:nowrap}.wb-transport>*{flex-shrink:0}}@media (max-width:1280px) and (min-width:901px){.wb-xp{display:inline-flex}}.failure-summary{color:var(--ink-900);font-weight:560}.failure-summary b{color:var(--warn-700);font-weight:650}.wb-phone-panel{display:contents}.phone-tabs{background:var(--bg-900);border-bottom:1px solid var(--line-200);flex:none;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.phone-tab{min-width:0;min-height:54px;font-size:var(--fs-15);color:var(--ink-600);border-bottom:3px solid #0000;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:6px 2px 3px;font-weight:600;line-height:1.2;display:flex;position:relative}.phone-tab.active{color:var(--brand-700);border-bottom-color:var(--brand-600);background:var(--surface)}.phone-tab:focus-visible{box-shadow:inset 0 0 0 2px var(--focus-colour)}.phone-tab-badge{border-radius:var(--r-pill);background:var(--canvas-2);min-width:20px;color:var(--ink-800);font-size:var(--fs-15);font-variant-numeric:tabular-nums;padding:1px 6px;font-weight:650;line-height:1.25;position:absolute;top:4px;left:calc(50% + 8px)}.phone-tab-badge.ok{background:var(--ok-100);color:var(--ok-700)}.phone-tab-badge.fault{background:var(--warn-100);color:var(--warn-700)}.phone-tab-dot{background:var(--brand-600);width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-600) 22%, transparent);border-radius:50%;animation:1.6s ease-in-out infinite coach-ring;position:absolute;top:7px;right:calc(50% - 20px)}.phone-action-bar{padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:var(--bg-900);border-top:1px solid var(--line-200);flex:none;gap:8px;display:flex;box-shadow:0 -6px 18px #1012160f}.phone-action-bar>*{flex:1 1 0;min-width:0}.phone-action-bar .btn,.phone-action-bar .button{min-height:48px;font-size:var(--fs-16);justify-content:center;padding-inline:10px}.phone-action-bar>.btn-primary:first-child,.phone-action-bar>.phone-bar-side{flex:none}.phone-action-bar>.btn-primary:first-child{min-width:104px}.phone-empty{color:var(--ink-600);font-size:var(--fs-16);margin:0;padding:18px 16px}@media (max-width:720px){.shell .main-column:has(.wb.phone,.lab.phone){min-height:0;overflow:clip}.shell:has(.wb.phone,.lab.phone){min-height:0}.wb.phone{height:calc(100dvh - var(--header-h));min-height:0;overflow:clip}body.has-spotlight:has(.wb.phone,.lab.phone){padding-bottom:0}body.has-spotlight .wb.phone .wb-phone-panel,body.has-spotlight .lab.phone .lab-body{padding-bottom:46dvh}.wb.phone .wb-head{flex-wrap:nowrap;gap:6px;min-height:0;padding:4px 10px}.wb.phone .wb-back{justify-content:center;gap:0;min-width:44px;min-height:44px;padding-inline:6px;font-size:0}.wb.phone .wb-head .coach-preferences summary{min-height:44px}.wb.phone .wb-title{flex:auto;order:0}.wb.phone .wb-kicker,.wb.phone .wb-xp{display:none}.wb.phone .wb-title h1{font-size:var(--fs-17);line-height:1.25}.wb.phone .wb-head-actions{flex-wrap:nowrap;order:0;width:auto}.wb.phone .wb-passed{flex-wrap:nowrap;gap:8px;padding:8px 12px}.wb.phone .wb-passed span{font-size:var(--fs-15)}.wb.phone .wb-phone-panel{overscroll-behavior:contain;background:var(--canvas);flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.wb.phone .wb-main,.wb.phone.plant-focus .wb-main{flex-direction:column;flex:none;gap:0;min-height:0;padding:0;display:flex}.wb.phone .wb-code,.wb.phone .wb-plant{order:0;height:auto;min-height:0}.wb.phone .wb-code{border:0;border-radius:0}.wb.phone:not([data-phone-tab=task]) .wb-brief,.wb.phone[data-phone-tab=task] .wb-code>:not(.wb-brief),.wb.phone:is([data-phone-tab=task],[data-phone-tab=code]) .wb-plant,.wb.phone:is([data-phone-tab=task],[data-phone-tab=code]) .wb-dock,.wb.phone:not([data-phone-tab=machine]) .replay-strip,.wb.phone[data-phone-tab=machine] .wb-code,.wb.phone[data-phone-tab=results] .wb-main{display:none}.wb.phone.plant-focus:not([data-phone-tab=machine]) .wb-code{display:flex}.wb.phone[data-phone-tab=task] .wb-code{background:var(--surface)}.wb.phone .wb-brief{border-bottom:0;min-height:0;overflow:visible}.wb.phone .brief-toggle{display:none}.wb.phone .brief-content{max-height:none;padding-bottom:20px;overflow:visible}.wb.phone .brief-content .criteria{display:grid}.wb-phone-help{padding:0 16px 10px}.wb.phone[data-phone-tab=code] .wb-phone-panel{overflow:hidden}.wb.phone[data-phone-tab=code] .wb-main,.wb.phone[data-phone-tab=code] .wb-code{flex:1}.wb.phone .editor-content{min-height:220px}.wb.phone .wb-code[data-typing]{top:var(--typing-top);z-index:200;height:var(--typing-height);position:fixed;left:0;right:0}.wb.phone .wb-code[data-typing]>:not(.wb-typing-bar,.editor-content){display:none}.wb.phone .wb-code[data-typing] [data-coach-active=true]{outline:none;animation:none}body:has(.wb-code[data-typing]) .mobile-bar{visibility:hidden}.wb.phone .wb-code[data-typing] .editor-content{flex-direction:column;min-height:0;display:flex}.wb.phone .wb-code[data-typing] .editor-content>:first-child{flex:1 1 0;min-height:0;height:auto!important}.wb-typing-bar{border-bottom:1px solid var(--night-700);background:var(--night-800);color:var(--night-text);font-family:var(--font-mono);font-size:var(--fs-15);flex:none;justify-content:space-between;align-items:center;gap:10px;padding:5px 8px 5px 14px;display:flex}.wb-typing-bar .btn{min-height:36px}.wb .editor-keys{display:none}.wb.phone .wb-code[data-typing] .editor-keys{overscroll-behavior-x:contain;scrollbar-width:none;border-top:1px solid var(--night-700);background:var(--night-800);flex:none;gap:6px;padding:6px 8px;display:flex;overflow-x:auto}.wb .editor-keys button{border:1px solid var(--night-700);background:var(--night-900);min-width:44px;height:40px;color:var(--night-text);font-family:var(--font-mono);touch-action:manipulation;border-radius:8px;flex:none;padding:0 12px;font-size:16px;font-weight:600}.wb .editor-keys button:active{background:var(--night-700)}.wb.phone .pane-heading{gap:6px;min-height:44px;padding:4px 6px 4px 8px}.wb.phone .wb-phone-machine-bar{background:var(--surface);border-bottom:1px solid var(--line-100);align-items:center;gap:6px;padding:8px 10px;display:flex}.wb.phone .wb-phone-machine-bar .simulation-state{flex:1;min-width:0}.wb.phone .wb-phone-machine-bar .btn{min-width:44px;min-height:44px;padding-inline:10px}.wb.phone .wb-phone-machine-bar .btn-label{display:none}.wb.phone .wb-phone-machine-bar .speed-select{width:72px;height:44px}.wb.phone .wb-plant .stage{border:0;border-radius:0;height:auto}.wb.phone .wb-plant .stage-canvas{flex:none;height:clamp(250px,36dvh + 50px,430px);min-height:0}.wb.phone .wb-plant .stage.is-fullscreen .stage-canvas{flex:1 0 auto}.wb.phone .wb-plant .stage-title>strong{display:none}.wb.phone .wb-plant .stage-bar-overlay{flex-wrap:nowrap;gap:8px;padding:6px 6px 0}.wb.phone .wb-plant .stage-bar-overlay .stage-tools{width:auto;margin-left:auto;padding:2px}.wb.phone .wb-plant .stage-bar-overlay .stage-view{flex:0 200px}.wb.phone .wb-plant .stage-bar-overlay .stage-view select{height:44px}.wb.phone .wb-plant .stage-bar-overlay .icon-btn{flex:none;width:44px;height:44px}.wb.phone .stage-foot{overflow:visible}.wb.phone .operator-strip button{min-height:48px;font-size:var(--fs-16);padding-inline:14px}.wb.phone .replay-strip{flex-wrap:wrap;order:-1;gap:6px 10px;margin:8px}.wb.phone .replay-strip>div{flex:calc(100% - 60px)}.wb.phone .replay-strip>input{flex:160px;order:3;min-height:32px}.wb.phone .replay-strip .replay-position{flex:none;order:4}.wb.phone .replay-strip>div:has(.replay-summary)>span{display:none}.wb.phone .replay-summary{color:var(--ink-950);font-size:var(--fs-15);white-space:normal;margin:4px 0 0;font-weight:560}.wb.phone .wb-dock{border-top:1px solid var(--line-200)}.wb.phone[data-phone-tab=results] .wb-dock{border-top:0;flex:1}.wb.phone[data-phone-tab=results] .wb-dock-bar>.icon-btn{display:none}.wb.phone .monitor-body{max-height:none;padding:12px}.wb.phone .test-summary{align-items:flex-start;gap:10px;padding:14px}.wb.phone .test-summary>span{display:none}.wb.phone .test-summary:has(.failure-summary) .failure-summary+p{display:none}.wb.phone .test-results>.solution-shortcut{margin:12px 0 4px}.wb.phone .test-case{gap:8px 12px;padding:14px 2px}.wb.phone .test-case .btn{min-height:44px}.wb.phone[data-tour-space] .wb-main,.wb.phone[data-tour-space] .wb-dock,.wb.phone[data-tour-space] .replay-strip,.wb.phone[data-tour-space] .wb-passed{margin-left:0}}@media (max-width:720px) and (max-height:760px){.wb.phone .wb-plant .stage-canvas{height:clamp(230px,30dvh + 50px,430px)}.wb.phone .operator-strip{padding-block:6px}}
.hmi{height:100%;color:var(--night-text);font-size:var(--fs-15);overscroll-behavior:contain;padding:14px 14px 28px;overflow:auto;container:hmi/inline-size}.hmi-layout{align-content:start;gap:16px;display:grid}.hmi-device{background:linear-gradient(#24272d,#16181c);border-radius:14px;margin:0;padding:10px 10px 8px;box-shadow:inset 0 0 0 1px #ffffff0f,0 18px 40px -22px #000c;container:screen/inline-size}.hmi-foot{color:#9097a1;align-items:center;gap:8px;padding:8px 4px 0;font-size:12.5px;display:flex}.hmi-foot i{background:#4b5058;border-radius:50%;flex:none;width:7px;height:7px}.hmi-foot i.on{background:#2bb46a;box-shadow:0 0 8px #2bb46a}.hmi-screen{--hmi-bg:#cdd0d4;--hmi-head:#bfc3c8;--hmi-panel:#e2e4e7;--hmi-ink:#1d2228;--hmi-muted:#59606a;--hmi-line:#a9aeb5;--hmi-run:#3b4149;--hmi-stop:#868c95;--hmi-key:#eceef0;--hmi-key-line:#8f959d;--hmi-key-ink:#1d2228;--hmi-value:#1d2228;--hmi-band:#aebccb;--hmi-p1:#d1242f;--hmi-p2:#e7a300;--hmi-p3:#f4d81a;background:var(--hmi-bg);color:var(--hmi-ink);font-family:var(--font-sans);border-radius:5px;min-height:220px;font-size:13px;line-height:1.3;transition:background .35s;position:relative;overflow:hidden}.hmi-screen *,.hmi-screen :before{transition:background-color .3s,color .3s,border-color .3s,fill .3s,stroke .3s}.hmi-head{background:var(--hmi-head);border-bottom:1px solid var(--hmi-line);align-items:center;gap:10px;min-height:44px;padding:6px 10px;display:flex}.hmi-corner{align-items:center;min-width:0;display:flex}.hmi-title{min-width:0;color:var(--hmi-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;overflow:hidden}.hmi-title strong{color:var(--hmi-ink);font-size:13px}.hmi-title strong span{color:var(--hmi-muted);font-weight:500}.hmi-summary{flex:none;align-items:center;gap:8px;display:flex}.hmi-count{font-variant-numeric:tabular-nums;align-items:center;gap:3px;font-weight:700;display:inline-flex}.hmi-clock{font-family:var(--font-mono);color:var(--hmi-muted);font-variant-numeric:tabular-nums;font-size:12px}.hmi-horn{background:var(--hmi-p1);color:#fff;border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-size:11.5px;font-weight:700;animation:1s step-end infinite hmi-blink;display:inline-flex}.hmi-status{align-items:center;gap:7px;min-width:0;font-size:14.5px;display:inline-flex}.hmi-status b{white-space:nowrap;text-overflow:ellipsis;font-weight:650;overflow:hidden}.hmi-status.tone-alarm b{color:#9b1219}.hmi-logo{color:#fff;background:linear-gradient(135deg,#ff7a00,#d40078 55%,#4b00c8);border-radius:4px;align-items:center;gap:6px;padding:3px 8px 3px 4px;display:inline-flex;box-shadow:0 2px #00000040}.hmi-logo b{font-family:"Arial Black", Impact, var(--font-sans);letter-spacing:-.5px;font-size:19px;font-style:italic}.hmi-logo span{text-transform:uppercase;letter-spacing:.5px;font-size:8.5px;font-weight:700;line-height:1.05}.hmi-big-clock{line-height:1.05;display:inline-grid}.hmi-big-clock b{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:19px}.hmi-big-clock span{color:var(--hmi-muted);font-size:10.5px}.hmi-body{gap:10px;padding:10px;display:grid}.hmi-values{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.hmi-value{background:var(--hmi-panel);border:1px solid var(--hmi-line);border-radius:4px;align-content:start;gap:3px;min-width:0;padding:8px 10px;display:grid}.hmi-label{color:var(--hmi-muted);letter-spacing:.1px;font-size:11.5px;font-weight:600}.hmi-label small{opacity:.8;font-weight:500}.hmi-reading{align-items:center;gap:5px;min-height:26px;display:flex}.hmi-reading b{color:var(--hmi-value);font-variant-numeric:tabular-nums;letter-spacing:-.3px;font-size:21px;font-weight:650}.hmi-reading small{color:var(--hmi-muted);font-size:12px;font-weight:600}.hmi-reading.abnormal b{color:#b67700}.hmi-switch .hmi-reading b{font-size:15px}.hmi-bar{border:1px solid var(--hmi-line);background:#f2f3f4;border-radius:2px;height:10px;margin-top:3px;position:relative}.hmi-bar .band{background:var(--hmi-band);position:absolute;top:0;bottom:0}.hmi-bar .pointer{border-left:6px solid #0000;border-right:6px solid #0000;border-top:9px solid var(--hmi-ink);width:0;height:0;margin-left:-6px;transition:left .18s linear;position:absolute;top:-4px}.hmi-scale{color:var(--hmi-muted);font-size:10.5px}.hmi-trend{gap:1px;margin-top:2px;display:grid}.hmi-trend svg{background:#ffffff59;border-radius:2px;width:100%;height:26px}.hmi-trend .band{fill:var(--hmi-band);opacity:.55}.hmi-trend polyline{fill:none;stroke:var(--hmi-ink);stroke-width:1.6px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.palette-retro .hmi-trend svg,.palette-neon .hmi-trend svg{background:#000}.palette-retro .hmi-trend polyline{stroke:#fff200}.palette-neon .hmi-trend polyline{stroke:#ff36d8}.hmi-dock{z-index:4;height:0;margin:0 -14px;position:sticky;top:0}.hmi-mini{background:color-mix(in srgb, var(--night-900) 94%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--night-700);pointer-events:none;justify-content:center;padding:8px 14px 10px;animation:.2s ease-out hmi-dock-in;display:flex;box-shadow:0 12px 20px -16px #000000b3}.hmi-mini>div{container:screen/inline-size}.hmi-mini .hmi-screen{border-radius:6px;box-shadow:0 0 0 8px #1b1d22}@keyframes hmi-dock-in{0%{opacity:0;transform:translateY(-8px)}}.hmi-equipment{flex-wrap:wrap;gap:8px;display:flex}.hmi-eq{background:var(--hmi-panel);border:1px solid var(--hmi-line);border-radius:4px;flex:140px;align-items:center;gap:8px;min-width:0;padding:6px 10px 6px 6px;display:flex}.hmi-eq-text{min-width:0;display:grid}.hmi-state{align-items:center;gap:5px;font-size:13.5px;font-weight:650;display:inline-flex}.hmi-state.abnormal{color:#b67700}.hmi-sym{flex:none;width:36px;height:36px}.hmi-sym .body{stroke-width:2.4px;stroke-linejoin:round}.hmi-sym .glyph{fill:none;stroke-linecap:round}.hmi-sym .glyph.fill{stroke:none}.run-grey .hmi-sym .body{fill:var(--hmi-run);stroke:var(--hmi-run)}.run-grey .hmi-sym .glyph{stroke:var(--hmi-panel)}.run-grey .hmi-sym .glyph.fill{fill:var(--hmi-panel)}.stop-outline .hmi-sym .body{fill:#0000;stroke:var(--hmi-stop)}.stop-outline .hmi-sym .glyph{stroke:var(--hmi-stop)}.stop-outline .hmi-sym .glyph.fill{fill:var(--hmi-stop)}.run-green .hmi-sym .body,.run-flash .hmi-sym .body{fill:#12d443;stroke:#078a28}.run-green .hmi-sym .glyph,.run-flash .hmi-sym .glyph{stroke:#fff}.run-green .hmi-sym .glyph.fill,.run-flash .hmi-sym .glyph.fill{fill:#fff}.run-flash .hmi-sym{animation:.9s step-end infinite hmi-blink}.stop-red .hmi-sym .body{fill:#f01414;stroke:#8f0000}.stop-red .hmi-sym .glyph{stroke:#fff}.stop-red .hmi-sym .glyph.fill{fill:#fff}.hmi-marker{flex:none;width:18px;height:18px;overflow:visible}.hmi-marker rect,.hmi-marker path,.hmi-marker circle{stroke:#1d2228;stroke-width:1.2px}.hmi-marker text{font:800 11.5px var(--font-sans);fill:#1d2228}.hmi-marker.p1 rect,.hmi-marker.p1 circle{fill:var(--hmi-p1)}.hmi-marker.p1 text{fill:#fff}.hmi-marker.p2 path,.hmi-marker.p2 circle{fill:var(--hmi-p2)}.hmi-marker.p3 path,.hmi-marker.p3 circle{fill:var(--hmi-p3)}.hmi-marker.dot circle{stroke:none}.hmi-marker.dot.p2 circle{fill:#e0461f}.hmi-marker.dot.p3 circle{fill:#e86a1a}.hmi-faceplates{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;display:grid}.hmi-faceplate{background:var(--hmi-panel);border:1px solid var(--hmi-line);border-radius:5px;gap:6px;padding:8px;display:grid}.hmi-faceplate h4{color:var(--hmi-muted);text-transform:uppercase;letter-spacing:.6px;margin:0;font-size:12px}.hmi-faceplate .hmi-eq{background:0 0;border:0;padding:0}.hmi-why{min-height:2.6em;color:var(--hmi-ink);margin:0;font-size:12px;font-weight:600}.hmi-keys{flex-wrap:wrap;gap:8px;display:flex}.hmi-faceplate .hmi-keys{flex-wrap:nowrap;gap:6px}.hmi-faceplate .hmi-keys .hmi-key{flex:1 1 0;gap:5px;min-width:0;padding:0 6px;font-size:13.5px}.hmi-faceplate .hmi-keys.fixed .key-stop{margin-left:auto}.hmi-bar-keys{border-top:1px solid var(--hmi-line);background:var(--hmi-head);padding:8px 10px 10px}.hmi-bar-keys .gap{flex:1}.hmi-key{border:1px solid var(--hmi-key-line);background:linear-gradient(180deg, #f6f7f8, var(--hmi-key));min-width:44px;min-height:44px;color:var(--hmi-key-ink);touch-action:manipulation;-webkit-user-select:none;user-select:none;border-radius:5px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:14px;font-weight:650;display:inline-flex;box-shadow:0 1px #0000001f}.hmi-key:hover:not(:disabled){border-color:#5e646c}.hmi-key:focus-visible{outline-offset:2px;outline:3px solid #2563eb}.hmi-key.down,.hmi-key:active:not(:disabled){background:#c9cdd2;box-shadow:inset 0 2px 3px #0003}.hmi-key:disabled{opacity:.55}.hmi-key.greyed{cursor:not-allowed;color:#7c828a;box-shadow:none;background:#d8dadd;border-style:dashed}.hmi-key.irreversible{border-width:2px;border-color:#6f747b}.size-small .hmi-key{border-radius:3px;gap:4px;min-width:24px;min-height:24px;padding:0 6px;font-size:11.5px}.size-small .hmi-keys{gap:3px}.size-small .hmi-faceplate .hmi-keys .hmi-key{flex:none}.hmi-alarms{background:var(--hmi-panel);border:1px solid var(--hmi-line);border-radius:4px;margin:0 10px 10px}.hmi-alarms-head{border-bottom:1px solid var(--hmi-line);justify-content:space-between;align-items:center;gap:8px;padding:5px 6px 5px 10px;display:flex}.hmi-alarms-head strong{text-transform:uppercase;letter-spacing:.6px;color:var(--hmi-muted);font-size:12px}.hmi-alarms-head .hmi-key{min-height:34px}.hmi-alarms ol{margin:0;padding:0;list-style:none}.hmi-alarms li{border-top:1px solid #00000012;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:6px 10px;font-size:12.5px;display:grid}.hmi-alarms li:first-child{border-top:0}.hmi-alarms li .text{font-weight:600}.hmi-alarms li.cleared .text{color:var(--hmi-muted)}.hmi-alarms li .when,.hmi-alarms li .time{color:var(--hmi-muted);white-space:nowrap;font-size:11.5px}.hmi-alarms li .time{font-family:var(--font-mono)}.hmi-alarms li.flash{animation:1s step-end infinite hmi-row-flash}.hmi-none{color:var(--hmi-muted);margin:0;padding:8px 10px;font-size:12.5px}.hmi-flash-all{pointer-events:none;background:#ff000038;animation:.6s step-end infinite hmi-blink;position:absolute;inset:0;box-shadow:inset 0 0 0 6px #ff1a1a}.hmi-dialog-layer{z-index:2;background:#14181e73;place-items:center;padding:12px;display:grid;position:absolute;inset:0}.hmi-dialog{background:var(--hmi-panel);border:1px solid var(--hmi-line);border-radius:6px;width:min(100%,360px);padding:14px;box-shadow:0 14px 30px -10px #00000080}.hmi-dialog h4{color:var(--hmi-ink);margin:0 0 6px;font-size:16px}.hmi-dialog p{margin:0 0 8px;font-size:13px}.hmi-dialog-time{color:var(--hmi-muted);font-size:12px!important}.hmi-dialog-keys{gap:10px;margin-top:10px;display:flex}.hmi-dialog-keys.apart{justify-content:space-between}.hmi-dialog-keys.same{justify-content:flex-start}.hmi-key.confirm{border-width:2px;border-color:#6f747b}.hmi-key.confirm.same{z-index:3;padding:0 8px;position:absolute}.palette-retro{--hmi-bg:linear-gradient(180deg, #1b4fd8, #0a2378);--hmi-head:linear-gradient(180deg, #f2f2f2, #b5b5b5);--hmi-panel:#0c2b8f;--hmi-ink:#fff;--hmi-muted:#c9d6ff;--hmi-line:#7f9cff;--hmi-value:#fff200;font-family:Tahoma,Verdana,Segoe UI,sans-serif}.palette-retro .hmi-head{color:#111;border-bottom:2px solid #4f4f4f}.palette-retro .hmi-head .hmi-title,.palette-retro .hmi-head .hmi-title strong,.palette-retro .hmi-head .hmi-title strong span,.palette-retro .hmi-clock,.palette-retro .hmi-big-clock span{color:#1b1b1b}.palette-retro .hmi-value,.palette-retro .hmi-eq,.palette-retro .hmi-faceplate,.palette-retro .hmi-alarms{border:2px outset #9db2ff;border-radius:0}.palette-retro .hmi-reading b{font-family:"Courier New", var(--font-mono);background:#000;padding:0 6px;font-weight:700}.palette-retro .hmi-alarms{background:#000}.palette-retro .hmi-alarms li{color:#ff3b3b;border-top-color:#222}.palette-retro .hmi-alarms-head strong{color:#ff3b3b}.palette-retro .hmi-bar-keys{background:silver;border-top:2px solid #fff}.palette-retro .hmi-key{color:#000;box-shadow:none;background:#d4d0c8;border:3px outset #f0f0f0;border-radius:0}.palette-retro .hmi-key.key-start{color:#fff;background:#00a000;border-color:#3fd23f}.palette-retro .hmi-key.key-stop,.palette-retro .hmi-key.key-abort{color:#fff;background:#d00000;border-color:#ff4a4a}.palette-retro .hmi-key.down,.palette-retro .hmi-key:active:not(:disabled){border-style:inset}.palette-neon{--hmi-bg:#000;--hmi-head:#050b10;--hmi-panel:#04080b;--hmi-ink:#4dffe4;--hmi-muted:#19b6c9;--hmi-line:#00b7ff;--hmi-value:#ff36d8;--hmi-key:#00141c;--hmi-key-line:#00e1ff;--hmi-key-ink:#00e1ff;font-family:"Courier New", var(--font-mono)}.palette-neon .hmi-reading b{text-shadow:0 0 8px #ff36d8}.palette-neon .hmi-key{background:#00141c;box-shadow:0 0 10px #00e1ff73}.palette-neon .hmi-key.key-stop,.palette-neon .hmi-key.key-abort{color:#ff2d6f;border-color:#ff2d6f;box-shadow:0 0 10px #ff2d6f8c}.palette-neon .run-green .hmi-sym,.palette-neon .run-flash .hmi-sym{filter:drop-shadow(0 0 6px #12d443)}.palette-neon .stop-red .hmi-sym{filter:drop-shadow(0 0 6px #ff1414)}.palette-retro .hmi-reading.abnormal b,.palette-neon .hmi-reading.abnormal b,.palette-retro .hmi-state.abnormal,.palette-neon .hmi-state.abnormal{color:#ffd400}.palette-retro .hmi-bar,.palette-neon .hmi-bar{background:#000}.palette-retro .hmi-why,.palette-neon .hmi-why{color:var(--hmi-ink)}.hmi-dump{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:3px;display:grid}.hmi-dump span{background:#000;border:1px solid #3a3a3a;min-width:0;padding:3px 5px;display:grid}.hmi-dump small{color:#8fd3ff;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.hmi-dump b{color:#fff200;font-family:"Courier New", var(--font-mono);font-variant-numeric:tabular-nums;font-size:12.5px}.hmi-screen[data-highlight~=background]{box-shadow:0 0 0 2px #16181c,0 0 0 4px #6f9bff}.hmi-screen[data-highlight~=header] [data-area=header],.hmi-screen[data-highlight~=status] [data-area=status],.hmi-screen[data-highlight~=values] [data-area=values],.hmi-screen[data-highlight~=equipment] [data-area=equipment],.hmi-screen[data-highlight~=alarms] [data-area=alarms],.hmi-screen[data-highlight~=buttons] [data-area=buttons],.hmi-screen[data-highlight~=dialog] [data-area=dialog]{outline-offset:-1px;border-radius:4px;outline:2px dashed #3f6fe6}@keyframes hmi-blink{50%{opacity:.2}}@keyframes hmi-row-flash{50%{background:#d1242f38}}.hmi-choices{min-width:0;container:choices/inline-size}.hmi-choices header h3{margin:0 0 4px;font-size:15px}.hmi-choices header p{color:var(--night-muted);margin:0 0 10px;font-size:13.5px}.hmi-choices ol{gap:10px;margin:0;padding:0;list-style:none;display:grid}.hmi-choice{border:1px solid var(--night-700);background:var(--night-800);border-radius:10px;padding:12px;transition:border-color .2s,box-shadow .2s}.hmi-choice:hover,.hmi-choice:focus-within{border-color:var(--night-600)}.hmi-choice.focus{box-shadow:0 0 0 2px var(--focus-colour)}.hmi-choice.pass{border-color:var(--ok-border)}.hmi-choice.fail{border-color:var(--fault-border)}.hmi-choice-head{align-items:center;gap:8px;display:flex}.hmi-choice-head .num{background:var(--night-700);width:22px;height:22px;color:var(--night-text);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:700;display:inline-grid}.hmi-choice-head strong{flex:1;font-size:14.5px}.hmi-choice.pass .hmi-choice-head svg{color:var(--ok-600)}.hmi-choice.fail .hmi-choice-head svg{color:var(--fault-700)}.hmi-question{color:var(--night-muted);margin:4px 0 8px 30px;font-size:13.5px}.hmi-options{flex-wrap:wrap;gap:6px;margin-left:30px;display:flex}.hmi-options button{border:1px solid var(--night-600);min-height:40px;color:var(--night-text);text-align:left;background:0 0;border-radius:8px;padding:7px 12px;font-size:13.5px;line-height:1.25}.hmi-options button:hover:not(:disabled){background:var(--night-700)}.hmi-options button:focus-visible{box-shadow:var(--focus);outline:none}.hmi-options button.chosen{border-color:var(--focus-colour);background:color-mix(in srgb, var(--focus-colour) 16%, transparent);font-weight:600}.hmi-result{margin:8px 0 0 30px;font-size:13.5px;line-height:1.45}.hmi-choice.pass .hmi-result{color:var(--ok-700)}.hmi-choice.fail .hmi-result{color:var(--fault-700)}@container hmi (min-width:540px){.hmi-layout{grid-template-columns:minmax(0,1.5fr) minmax(230px,1fr);align-items:start}.hmi-device{top:var(--hmi-stick,0);grid-area:1/1;position:sticky}.hmi-choices{grid-area:1/2}.hmi-dock{display:none}}@container screen (max-width:440px){.hmi-head{flex-wrap:wrap;row-gap:2px;min-height:0}.hmi-corner{flex:100%}.hmi-title{order:2}.hmi-summary{order:3}.hmi-body{gap:8px;padding:8px}.hmi-values{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:6px}.hmi-value{padding:6px 8px}.hmi-reading b{font-size:18px}.hmi-eq{flex-basis:120px}.hmi-alarms{margin:0 8px 8px}.hmi-alarms li{grid-template-columns:auto minmax(0,1fr) auto}.hmi-alarms li .time{display:none}.hmi-bar-keys{padding:6px 8px 8px}}@media (max-width:767px){.hmi{padding:10px 8px 24px}.hmi-dock{margin:0 -8px}.hmi-device{border-radius:10px;padding:6px}}@container choices (max-width:360px){.hmi-question,.hmi-options,.hmi-result{margin-left:0}.hmi-options{display:grid}}@media (prefers-reduced-motion:reduce){.hmi-horn,.run-flash .hmi-sym,.hmi-alarms li.flash,.hmi-flash-all{animation:none}.hmi-alarms li.flash{box-shadow:inset 4px 0 0 var(--hmi-p1);background:#d1242f24}.run-flash .hmi-sym{outline-offset:2px;outline:2px dashed #12d443}.hmi-screen *,.hmi-bar .pointer{transition:none}}
.shell .page-content{max-width:var(--page-max);margin:0 auto;padding:clamp(22px,2.4vw,40px) clamp(18px,2.8vw,48px) 56px}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--s-6);margin-bottom:var(--s-6);display:flex}.page-header h1{font-size:var(--fs-36);margin-bottom:6px}.page-header p{max-width:68ch;color:var(--ink-600);font-size:var(--fs-17)}.header-stat{white-space:nowrap;justify-items:end;display:grid}.header-stat strong{font-size:var(--fs-28);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:650}.header-stat strong span{font-size:var(--fs-17);color:var(--ink-500);font-weight:500}.header-stat>span{font-size:var(--fs-15);color:var(--ink-500)}.section-head{justify-content:space-between;align-items:baseline;gap:var(--s-4);margin:var(--s-10) 0 var(--s-4);display:flex}.section-head h2{font-size:var(--fs-22)}.empty-state{padding:var(--s-12) var(--s-6);text-align:center;color:var(--ink-600);justify-items:center;gap:8px;display:grid}.empty-state h2{font-size:var(--fs-19)}.callout{align-items:center;gap:var(--s-4);margin-bottom:var(--s-6);border:1px solid var(--brand-border);border-radius:var(--r-md);background:var(--brand-50);padding:14px 18px;display:flex}.callout>svg{color:var(--brand-600)}.callout>div{flex:1}.callout p{color:var(--ink-600);font-size:var(--fs-15)}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.rig-preview{border-left:1px solid var(--line-200);flex-direction:column;min-width:0;display:flex}.rig-picker{border-radius:var(--r-sm);background:var(--canvas-2);gap:2px;padding:3px;display:inline-flex}.rig-picker button{min-height:32px;font-size:var(--fs-15);color:var(--ink-600);white-space:nowrap;border-radius:5px;align-items:center;gap:6px;padding:0 10px;font-weight:600;display:inline-flex}.rig-picker button:hover{color:var(--ink-950)}.rig-picker button svg{flex:none}.rig-picker button[aria-pressed=true]{color:var(--brand-700);background:var(--surface);box-shadow:var(--shadow-1)}@container stage (max-width:620px){.rig-picker button svg{display:none}.rig-picker button{padding:0 8px}}@container stage (max-width:1000px){.rig-preview .stage-bar{flex-wrap:wrap}.rig-preview .stage-title{flex:1 0 100%}.rig-preview .rig-picker{flex-wrap:wrap;max-width:100%}.rig-preview .stage-bar>.stage-tools{flex:100%}}.rig-preview .dash-hero-stage{border:0;flex:1;min-height:340px}.rig-preview-note{border-top:1px solid var(--line-200);color:var(--ink-600);font-size:var(--fs-15);background:var(--surface-2);padding:12px 16px;line-height:1.45}.dash-hero-stage{border-left:1px solid var(--line-200);min-height:clamp(420px,56vh,680px);display:flex}.dash-hero-stage>.stage{flex:1;height:auto}.dash-hero-stage .stage{border:0;border-radius:0}.dash-hero-stage .stage-canvas{contain:size;min-height:280px}.track-list{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);display:grid;overflow:hidden}.track-row{align-items:center;gap:var(--s-6);text-align:left;border-top:1px solid var(--line-100);color:var(--ink-500);grid-template-columns:minmax(0,1fr) 220px 20px;padding:14px 18px;display:grid}.track-row:first-child{border-top:0}.track-row:hover{background:var(--surface-2)}.track-name{gap:2px;display:grid}.track-name strong{color:var(--ink-950);font-size:var(--fs-16)}.track-name span{font-size:var(--fs-15)}.track-progress{font-size:var(--fs-15);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:10px;display:flex}.library-toolbar{margin-bottom:var(--s-6);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.difficulty-key{font-size:var(--fs-15);color:var(--ink-600);flex-wrap:wrap;flex-basis:100%;align-items:baseline;gap:8px 20px;margin-top:2px;display:flex}.difficulty-key dl{grid-template-columns:repeat(2,max-content minmax(0,max-content));align-items:center;gap:8px 10px;margin:0;display:grid}.difficulty-key dl>div{display:contents}.difficulty-key dt{justify-self:start}.difficulty-key dd{margin:0 18px 0 0}.difficulty-key-title{font-family:var(--font-mono);font-size:var(--fs-15);color:var(--ink-500)}.segmented{border-radius:var(--r-sm);background:var(--canvas-2);flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.segmented button{min-height:34px;font-size:var(--fs-15);color:var(--ink-600);border-radius:5px;padding:0 12px;font-weight:560}.segmented button.active,.segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink-950);box-shadow:var(--shadow-1)}.library-filters{gap:8px;display:flex}.library-filters select{height:40px}.shell .search-box{border:1px solid var(--line-300);border-radius:var(--r-sm);background:var(--surface);height:40px;color:var(--ink-500);align-items:center;gap:8px;padding:0 12px;display:flex}.shell .search-box input{background:0 0;border:0;min-width:180px;height:100%;padding:0}.shell .search-box input:focus-visible{box-shadow:none}.shell .search-box:focus-within{box-shadow:var(--focus)}.track{margin-bottom:var(--s-10)}.track-head{justify-content:space-between;align-items:flex-end;gap:var(--s-4);margin-bottom:var(--s-4);border-bottom:1px solid var(--line-200);padding-bottom:10px;display:flex}.track-head h2{font-size:var(--fs-22)}.track-head p{color:var(--ink-600);font-size:var(--fs-15)}.track-head .track-progress{min-width:170px}.m-grid{gap:var(--s-3);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.m-card{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);text-align:left;min-height:176px;transition:border-color .12s var(--ease), box-shadow .12s var(--ease), transform .12s var(--ease);flex-direction:column;gap:8px;padding:16px 18px;display:flex}.m-card:hover{border-color:var(--line-300);box-shadow:var(--shadow-2)}.m-card.done{background:linear-gradient(var(--surface), var(--surface)) padding-box;border-color:var(--ok-border)}.m-card-top{align-items:center;gap:8px;display:flex}.m-num{font-family:var(--font-mono);font-size:var(--fs-15);color:var(--ink-500)}.m-rig{font-size:var(--fs-15);color:var(--ink-500);align-items:center;gap:6px;margin-left:auto;display:inline-flex}.m-card .mission-title{font-size:var(--fs-17);letter-spacing:-.012em;color:var(--ink-950);font-weight:640}.m-sub{font-size:var(--fs-15);color:var(--ink-600);line-height:1.5}.m-card-foot{border-top:1px solid var(--line-100);font-size:var(--fs-15);color:var(--ink-500);justify-content:space-between;gap:10px;margin-top:auto;padding-top:10px;display:flex}.m-langs{color:var(--ink-700);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.m-meta{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.lesson-path{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.lesson-path li+li{border-top:1px solid var(--line-100)}.lesson-row{align-items:center;gap:var(--s-4);text-align:left;width:100%;color:var(--ink-500);grid-template-columns:36px minmax(0,1fr) auto 20px;padding:16px 18px;display:grid}.lesson-row:hover{background:var(--surface-2)}.lesson-num{border:1px solid var(--line-300);width:32px;height:32px;font-size:var(--fs-15);color:var(--ink-700);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-weight:600;display:grid}.explored .lesson-num{background:var(--ok-100);color:var(--ok-700);border-color:#0000}.lesson-body{gap:2px;min-width:0;display:grid}.lesson-topic{font-size:var(--fs-15);color:var(--brand-600);font-weight:600}.lesson-body h2{font-size:var(--fs-17);letter-spacing:-.012em}.lesson-intro{font-size:var(--fs-15);color:var(--ink-600);-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.lesson-time{font-size:var(--fs-15);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.shell .lesson-reader{max-width:780px;font-size:var(--fs-17);margin:0 auto}.lesson-reader>.back-link,.reference-heading .back-link{margin-bottom:var(--s-4);font-size:var(--fs-15);color:var(--brand-600);align-items:center;gap:6px;font-weight:600;display:inline-flex}.lesson-reader h1{font-family:var(--font-serif);letter-spacing:-.02em;text-wrap:balance;margin:6px 0 14px;font-size:clamp(40px,4.2vw,64px);font-weight:400;line-height:1}.lesson-reader .lesson-intro{-webkit-line-clamp:unset;font-size:var(--fs-19);color:var(--ink-700);margin-bottom:var(--s-6);display:block}.lesson-reader section{margin:var(--s-8) 0}.lesson-reader section h2{font-size:var(--fs-22);margin-bottom:8px}.lesson-reader p{color:var(--ink-800)}.lesson-reader .worked-lesson,.lesson-reader .try-it{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);padding:22px 24px}.lesson-reader .try-it{margin:var(--s-8) 0 var(--s-4);border-color:var(--brand-border);background:var(--brand-50)}.lesson-reader .trace-table{border-collapse:collapse;width:100%;font-size:var(--fs-15)}.lesson-reader .trace-table th,.lesson-reader .trace-table td{border-bottom:1px solid var(--line-200);text-align:left;padding:8px 10px}.lesson-reader .lesson-reasoning summary{cursor:pointer;color:var(--brand-600);font-weight:600}.shell .quiz-layout{gap:var(--s-6);grid-template-columns:minmax(0,1fr) 300px;align-items:start;display:grid}.shell .quiz-card,.shell .quiz-aside,.shell .white-card,.shell .reference-card{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);box-shadow:none;padding:24px 26px}.shell .quiz-card h2{font-size:var(--fs-22);margin:12px 0 18px}.shell .quiz-heading{font-size:var(--fs-15);color:var(--ink-500);justify-content:space-between;display:flex}.shell .progress-track{background:var(--bg-650);border-radius:999px;height:6px;overflow:hidden;box-shadow:inset 0 1px 1px #1012161a}.shell .progress-track>span{background:linear-gradient(90deg, var(--signal-600), var(--signal-400));height:100%;box-shadow:0 0 10px var(--signal-glow);border-radius:inherit;display:block}.shell .quiz-options{gap:8px;display:grid}.shell .quiz-options button{border:1px solid var(--line-300);border-radius:var(--r-sm);background:var(--surface);text-align:left;min-height:52px;font-size:var(--fs-16);color:var(--ink-900);align-items:center;gap:12px;padding:10px 14px;display:flex}.shell .quiz-options button>span:first-child{background:var(--canvas-2);width:28px;height:28px;font-size:var(--fs-15);border-radius:50%;flex:none;place-items:center;font-weight:650;display:grid}.shell .quiz-options button.selected{border-color:var(--brand-600);box-shadow:inset 0 0 0 1px var(--brand-600)}.shell .quiz-options button.correct{border-color:var(--ok-border);background:var(--ok-100)}.shell .quiz-options button.incorrect,.shell .quiz-options button.wrong{border-color:var(--fault-border);background:var(--fault-100)}.shell .quiz-options button:disabled{opacity:1}.shell .answer-explanation{border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--line-200);margin-top:16px;padding:14px 16px}.shell .quiz-actions{justify-content:flex-end;margin-top:18px;display:flex}.shell .quiz-aside h3{font-size:var(--fs-17);margin:10px 0 6px}.shell .quiz-aside p{font-size:var(--fs-15);color:var(--ink-600)}.shell .reference-profiles{margin-bottom:var(--s-6);flex-wrap:wrap;gap:6px;display:flex}.shell .reference-profiles button{border-radius:var(--r-sm);border:1px solid var(--line-300);background:var(--surface);min-height:36px;font-size:var(--fs-15);padding:0 12px;font-weight:560}.shell .reference-profiles button.active,.shell .reference-profiles button[aria-pressed=true]{background:var(--signal-tint);border-color:var(--signal-line);color:var(--ink-950);box-shadow:0 0 0 1px var(--signal-line) inset}.shell .reference-profiles button.active span,.shell .reference-profiles button[aria-pressed=true] span{color:var(--signal-300)}.shell .progress-summary{gap:var(--s-3);margin-bottom:var(--s-6);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.shell .progress-summary>div{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);color:var(--ink-500);font-size:var(--fs-15);gap:4px;padding:18px 20px;display:grid}.shell .progress-summary svg{color:var(--brand-600)}.shell .progress-summary strong{font-size:var(--fs-28);color:var(--ink-950);font-variant-numeric:tabular-nums}.shell .progress-columns{gap:var(--s-4);margin-bottom:var(--s-4);grid-template-columns:minmax(0,3fr) minmax(0,2fr);display:grid}@media (max-width:1100px){.dash-hero-stage{border-left:0;border-top:1px solid var(--line-200);height:auto;min-height:clamp(340px,48vh,520px)}.rig-preview{border-left:0;border-top:1px solid var(--line-200)}.shell .quiz-layout,.shell .progress-columns{grid-template-columns:minmax(0,1fr)}}@media (max-width:900px){.shell .page-content{padding:20px 16px 40px}.page-header{flex-direction:column;align-items:flex-start}.header-stat{justify-items:start}.page-header h1,.lesson-reader h1{font-size:var(--fs-36)}.track-row{grid-template-columns:minmax(0,1fr) 20px}.track-row .track-progress{grid-column:1}.library-filters{width:100%}.shell .search-box{flex:1}.shell .search-box input{width:100%;min-width:0}.shell .progress-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-row{grid-template-columns:32px minmax(0,1fr) 18px}.lesson-row .lesson-time{display:none}.callout{flex-wrap:wrap}}.lesson-path .lesson-time{color:var(--ink-500);margin-top:0}.lesson-path .lesson-intro{font-size:var(--fs-15);color:var(--ink-600);margin:0;line-height:1.5}.shell .progress-summary{background:0 0;border:0;border-radius:0;padding:0}.shell .progress-summary>div,.shell .progress-summary>div:last-child{border-right:1px solid var(--line-200)}.shell .progress-summary span,.shell .progress-summary small{color:var(--ink-500);font-size:var(--fs-15)}.shell .progress-summary strong small{font-size:var(--fs-17)}.shell .white-card>p,.shell .white-card p,.shell .skill-row span,.shell .panel-note,.shell .completion-row>span{color:var(--ink-600)}.shell .white-card>h2{font-size:var(--fs-22)}.shell .skill-row{margin:16px 0}.shell .page-footer{max-width:var(--page-max);color:var(--ink-500);margin:0 auto;padding:20px 32px 28px}.shell .page-footer>span:first-child{color:var(--ink-700)}.shell .lesson-reader section p,.shell .lesson-reader .worked-lesson p,.shell .lesson-reader .try-it p{color:var(--ink-800);font-size:var(--fs-17);line-height:1.65}.shell .lesson-reader .eyebrow{font-size:var(--fs-15)}@media (max-width:900px){.track-head{flex-direction:column;align-items:stretch}.track-head .track-progress{min-width:0}}.shell.focus-view .page-content{max-width:none;margin:0;padding:14px 18px 18px}.shell .page-content:has(.wb){max-width:none;margin:0;padding:0}.shell .page-content:has(.wb) .expert-live>:not(.wb){margin:12px 14px 0}.shell .user-block-ref{margin-top:var(--s-6)}.user-block-ref .readable-list{margin:0 0 var(--s-4)}.user-block-ref h3{margin:var(--s-6) 0 8px}.ref-vendor-note{border-left:3px solid var(--brand-600);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--brand-50);color:var(--ink-800);font-size:var(--fs-15);padding:12px 16px}.shell .readable-list li{color:var(--ink-800)}.shell .readable-list li::marker{color:var(--brand-600)}.ref-code-grid{align-items:start;gap:var(--s-4);margin-top:var(--s-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));display:grid}.ref-code-grid figure{flex-direction:column;gap:8px;min-width:0;margin:0;display:flex}.ref-code-grid figcaption{font-size:var(--fs-15);color:var(--ink-700);font-weight:600}.ref-code-grid pre{border-radius:var(--r-md);background:var(--night-900);color:var(--night-text);font-size:var(--fs-15);margin:0;padding:14px 16px;line-height:1.6;overflow-x:auto}.ref-table{border-collapse:collapse;width:100%;font-size:var(--fs-15)}.ref-table th,.ref-table td{border-bottom:1px solid var(--line-200);text-align:left;padding:7px 10px}.ref-table th{color:var(--ink-500);font-weight:600}.lesson-nav{gap:var(--s-3);margin-top:var(--s-8);grid-template-columns:1fr 1fr;display:grid}.lesson-nav button{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);text-align:left;gap:4px;padding:14px 18px;display:grid}.lesson-nav button span{font-size:var(--fs-15);color:var(--ink-500)}.lesson-nav button strong{font-size:var(--fs-17);color:var(--ink-950)}.lesson-nav .lesson-nav-next{text-align:right;border-color:var(--brand-600);background:var(--brand-50);grid-column:2}.lesson-nav .lesson-nav-next span{color:var(--brand-700);font-weight:600}.lesson-nav button:hover{border-color:var(--brand-600)}@media (max-width:600px){.difficulty-key-title{flex-basis:100%}.difficulty-key dl{grid-template-columns:max-content minmax(0,1fr)}.difficulty-key dd{margin:0}.lesson-nav{grid-template-columns:1fr}.lesson-nav .lesson-nav-next{order:-1;grid-column:1}}.quiz-scope{font-size:var(--fs-15);color:var(--ink-700);gap:4px;font-weight:600;display:grid}.quiz-scope select{max-width:320px;height:40px}.glossary-tools{z-index:2;background:var(--canvas);gap:10px;padding:10px 0 12px;display:grid;position:sticky;top:0}.glossary-tools .search-box{max-width:420px}.glossary-letters{flex-wrap:wrap;gap:4px;display:flex}.glossary-letters a,.glossary-letters span{border-radius:var(--r-sm);min-width:30px;height:30px;font-weight:650;font-size:var(--fs-15);place-items:center;display:grid}.glossary-letters a{color:var(--brand-700);background:var(--surface);border:1px solid var(--line-200);text-decoration:none}.glossary-letters a:hover{border-color:var(--brand-600)}.glossary-letters span{color:var(--ink-400)}.glossary-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:12px;margin:0;display:grid}.glossary-entry{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);padding:16px 18px;scroll-margin-top:110px}.glossary-entry dt{font-size:var(--fs-19);color:var(--ink-950);font-weight:680}.glossary-entry dt a{color:inherit;text-decoration:none}.glossary-entry dt a:hover{text-decoration:underline;-webkit-text-decoration-color:var(--line-input);text-decoration-color:var(--line-input)}.glossary-aka{font-size:var(--fs-15);color:var(--ink-500);margin-left:8px;font-weight:500}.glossary-entry dd{margin:8px 0 0;line-height:1.55}.glossary-plain{color:var(--ink-900)}.glossary-site strong,.glossary-vendors strong{color:var(--brand-700);margin-right:6px}.glossary-site,.glossary-vendors{font-size:var(--fs-15);color:var(--ink-700)}.glossary-vendors{gap:4px;display:grid}.glossary-empty{color:var(--ink-600)}.glossary-term{max-width:780px}.glossary-term>.back-link{margin-bottom:var(--s-4);font-size:var(--fs-15);color:var(--brand-600);align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.glossary-term-facts{gap:var(--s-4);margin:0 0 var(--s-5);display:grid}.glossary-term-facts dt{font-size:var(--fs-15);color:var(--brand-700);font-weight:650}.glossary-term-facts dd{color:var(--ink-800);margin:4px 0 0;line-height:1.55}.glossary-term-nav{gap:var(--s-4);margin-top:var(--s-6);padding-top:var(--s-4);border-top:1px solid var(--line-200);flex-wrap:wrap;display:flex}.glossary-term-nav a{color:var(--ink-800);align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.glossary-term-nav a:hover{color:var(--ink-950)}.glossary-term-nav .next{margin-left:auto}.supervisor-open{margin-bottom:var(--s-5)}.supervisor-print{margin-bottom:var(--s-6)}.supervisor-print-tools{padding:var(--s-5);background:var(--surface);border:1px solid var(--line-200);border-radius:var(--r-md)}.supervisor-print-tools label{gap:var(--s-2);max-width:440px;font-weight:600;display:grid}.supervisor-print-tools input{width:100%;padding:var(--s-3)}.supervisor-print-tools p{margin:var(--s-3) 0;color:var(--ink-600)}.supervisor-sheet{max-width:1000px;margin:var(--s-4) auto;padding:var(--s-6);background:var(--surface);color:var(--ink-950);font-size:var(--fs-15);border:1px solid var(--line-200);line-height:1.3}.supervisor-sheet header h2{font-size:var(--fs-22)}.supervisor-sheet header p{justify-content:space-between;gap:var(--s-2);flex-wrap:wrap;display:flex}.supervisor-sheet h3{font-size:var(--fs-16);margin:var(--s-3) 0 var(--s-1)}.supervisor-sheet p{margin:var(--s-1) 0}.supervisor-note{color:var(--ink-600)}.supervisor-stages,.supervisor-missions{gap:var(--s-1) var(--s-4);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.supervisor-stages li{justify-content:space-between;gap:var(--s-2);display:flex}.supervisor-languages{column-gap:var(--s-4);margin-top:var(--s-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.supervisor-sheet footer{border-top:1px solid var(--line-200);margin-top:var(--s-3);padding-top:var(--s-2)}.supervisor-lesson-numbers{display:none}@media (max-width:600px){.supervisor-stages,.supervisor-missions,.supervisor-languages{grid-template-columns:1fr}}@media print{@page{size:A4;margin:10mm}body:has(.supervisor-print){background:#fff}.shell:has(.supervisor-print){display:block}.supervisor-print-tools,nextjs-portal{display:none!important}.shell:has(.supervisor-print)>:not(.main-column){display:none!important}.main-column:has(.supervisor-print)>:not(main){display:none!important}.page-content:has(.supervisor-print)>:not(.supervisor-print){display:none!important}.main-column:has(.supervisor-print){width:auto!important;margin:0!important}.page-content:has(.supervisor-print){opacity:1!important;max-width:none!important;margin:0!important;padding:0!important;transform:none!important}.supervisor-print{margin:0}.supervisor-sheet{color:#000;border:0;width:190mm;max-width:none;margin:0;padding:0;font-size:15px;line-height:1.2}.supervisor-sheet h2{font-size:19px}.supervisor-sheet h3{margin-top:8px;font-size:15px}.supervisor-sheet p{line-height:1.2}.supervisor-stages{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px 10px}.supervisor-stage-title,.supervisor-lesson-titles{display:none}.supervisor-lesson-numbers{display:block}.supervisor-missions{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 12px}.supervisor-languages{grid-template-columns:repeat(2,minmax(0,1fr))}.supervisor-sheet section,.supervisor-sheet footer{break-inside:avoid}}.m-body{flex-direction:column;flex:1;gap:8px;display:flex}.m-card.has-thumb{gap:0;padding:0}.m-card.has-thumb .m-body{padding:14px 18px 16px}.m-card.has-thumb .m-rig{margin-left:0}.m-thumb{aspect-ratio:16/10;border-bottom:1px solid var(--line-100);background:linear-gradient(180deg, var(--showroom-800), var(--showroom-900));display:block;position:relative;overflow:hidden}.m-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .42s var(--ease-out);display:block;transform:scale(1.01)}.m-card.has-thumb:hover .m-thumb img{transform:scale(1.06)}.m-thumb-chips{align-items:center;gap:6px;display:flex;position:absolute;top:10px;left:10px;right:10px}.m-thumb-chips .m-num,.m-thumb-chips .chip{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f1115b8;border:1px solid #ffffff24;border-radius:999px}.m-thumb-chips .m-num{color:var(--ink-700);padding:2px 8px}.m-card.has-thumb .m-sub{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.m-card.done .m-thumb:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#1f9d5a24);position:absolute;inset:0}.shell .legal-page{max-width:780px}.legal-page .legal-date{margin:0 0 var(--s-5);color:var(--ink-500);font-size:var(--fs-15)}.legal-page p,.legal-page .readable-list li{color:var(--ink-800);font-size:var(--fs-17);line-height:1.65}.legal-page p{margin:0 0 var(--s-3)}.legal-section{margin-top:var(--s-10)}.legal-section h2{margin:0 0 var(--s-3);font-size:var(--fs-22)}.legal-section h3{margin:var(--s-6) 0 var(--s-2)}.legal-page .readable-list{margin:0 0 var(--s-4);padding-left:1.25em}.legal-page .readable-list li+li{margin-top:6px}.legal-details{margin:var(--s-4) 0 0;padding:var(--s-4) var(--s-5);border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--bg-900);gap:10px;display:grid}.legal-details>div{gap:var(--s-4);grid-template-columns:minmax(0,150px) minmax(0,1fr);display:grid}.legal-details dt{color:var(--ink-500)}.legal-details dd{color:var(--ink-900);overflow-wrap:anywhere;margin:0}.legal-page .legal-table{margin:var(--s-4) 0 var(--s-5)}.legal-page .legal-table tbody th{white-space:normal;min-width:150px}.legal-cookie-button{margin-top:var(--s-2);align-items:center;gap:8px;display:inline-flex}.delete-account{margin-top:var(--s-6)}.delete-account p{max-width:62ch}.delete-account .delete-account-yes{border-color:var(--fault-border);color:var(--fault-700)}.delete-account-problem{margin-top:var(--s-3);color:var(--fault-700)}
.course-resume{align-items:center;gap:var(--s-6);padding:var(--s-6);background:var(--brand-50);border:1px solid var(--brand-100);border-radius:var(--r-lg);margin:var(--s-6) 0;flex-wrap:wrap;display:flex}.course-resume>div{flex:1;gap:8px;min-width:220px;display:grid}.course-resume strong{font-size:var(--fs-19)}.course-resume p,.course-resume span{color:var(--ink-600);font-size:var(--fs-15)}.course-resume label{font-size:var(--fs-15);gap:6px;font-weight:600;display:grid}.course-resume select{font-size:var(--fs-15);border:1px solid var(--line-300);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-900);max-width:100%;padding:10px}.course-resume progress{width:100%;max-width:400px;height:10px;accent-color:var(--brand-600)}.course-labs{padding:var(--s-6);margin-bottom:var(--s-8);background:var(--surface);border:1px solid var(--line-200);border-radius:var(--r-lg)}.course-labs h2{font-size:var(--fs-22)}.course-labs p{color:var(--ink-600);margin:8px 0 16px}.course-labs>div{flex-wrap:wrap;gap:12px;display:flex}.course-lab{border:1px solid var(--line-300);border-radius:var(--r-sm);background:var(--surface-2);color:var(--ink-900);font-size:var(--fs-16);justify-content:space-between;align-items:center;gap:24px;padding:14px 18px;font-weight:600;display:flex}.course-stages{gap:var(--s-6);padding:0;list-style:none;display:grid}.course-stage{background:var(--surface);border:1px solid var(--line-200);border-radius:var(--r-lg);scroll-margin-top:24px;overflow:hidden}.course-stage.complete{border-color:var(--ok-600)}.course-stage>header{align-items:center;gap:var(--s-4);padding:var(--s-6);background:var(--surface-2);border-bottom:1px solid var(--line-200);display:flex}.course-stage h3{font-size:var(--fs-22)}.course-stage>header p{color:var(--ink-600);font-size:var(--fs-16);margin-top:5px}.course-stage-number{background:var(--brand-100);width:42px;height:42px;color:var(--brand-700);font-size:var(--fs-17);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:grid}.course-columns{grid-template-columns:1fr 1.25fr 1fr;display:grid}.course-columns>section{padding:var(--s-5);min-width:0}.course-columns>section+section{border-left:1px solid var(--line-200)}.course-columns h4{color:var(--brand-700);font-size:var(--fs-16);align-items:center;gap:8px;margin-bottom:12px;display:flex}.course-item{border:0;border-top:1px solid var(--line-100);text-align:left;width:100%;color:var(--ink-900);font-size:var(--fs-16);background:0 0;justify-content:space-between;align-items:center;gap:10px;padding:13px 0;line-height:1.45;display:flex}.course-item>svg{color:var(--ok-700);flex-shrink:0}.course-item:hover{color:var(--brand-700)}.course-item small{color:var(--ink-600);font-size:var(--fs-15);margin-top:5px;display:block}.course-stage-checks{padding:var(--s-6);border-top:1px solid var(--line-200)}.course-checks{gap:24px;display:grid}.course-question h3{font-size:var(--fs-19);margin-bottom:12px;line-height:1.5}.course-question fieldset{border:0;gap:8px;margin:0 0 16px;padding:0;display:grid}.course-question label{font-size:var(--fs-16);background:var(--surface-2);border:1px solid var(--line-200);border-radius:var(--r-sm);cursor:pointer;align-items:center;gap:12px;padding:12px 16px;line-height:1.5;display:flex}.course-question label:has(input:checked){border-color:var(--brand-600);background:var(--brand-50)}.course-question input{width:18px;height:18px;accent-color:var(--brand-600);flex-shrink:0}.course-question fieldset:disabled{opacity:1}.course-answer{background:var(--warn-100);color:var(--ink-900);border-left:3px solid var(--warn-700);font-size:var(--fs-16);margin-bottom:16px;padding:12px 16px}.course-answer.correct{background:var(--ok-100);border-color:var(--ok-700)}.course-scope{font-size:var(--fs-15);color:var(--ink-600);margin-top:24px}.course-workbench-return{background:var(--surface-2);border-bottom:1px solid var(--line-200);font-size:var(--fs-15);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 20px;display:flex}.course-workbench-return>span{color:var(--ink-600);flex:1}@media (max-width:850px){.course-columns{grid-template-columns:1fr}.course-columns>section+section{border-left:0;border-top:1px solid var(--line-200)}.course-columns>section{padding:16px 20px}}@media (max-width:600px){.course-resume{gap:16px;padding:18px}.course-resume>div,.course-resume label,.course-resume>button{width:100%;min-width:0}.course-labs{padding:18px}.course-lab{width:100%}.course-stage>header{align-items:flex-start;padding:18px}.course-stage h3{font-size:var(--fs-19)}.course-stage-checks{padding:18px}.course-workbench-return>span{display:none}}.lesson-shape{border-block:1px solid var(--line-300);font-size:var(--fs-15);color:var(--brand-700);flex-wrap:wrap;gap:8px 20px;padding:16px 0;font-weight:600;display:flex}.course-lesson section{scroll-margin-top:24px}.course-lesson section>p+p{margin-top:14px}.course-lesson .worked-lesson h3{font-size:var(--fs-19);margin:20px 0 10px}.lesson-vendor-tabs{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.lesson-vendor-tabs button{min-width:200px;font-size:var(--fs-15);border:1px solid var(--line-300);background:var(--surface);color:var(--ink-800);border-radius:var(--r-sm);flex:1;padding:12px 14px}.lesson-vendor-tabs [aria-selected=true]{border-color:var(--brand-600);background:var(--brand-100);color:var(--brand-800);font-weight:700}.lesson-platform{font-size:var(--fs-15);color:var(--brand-700);margin-bottom:14px;font-weight:600}.lesson-practice{text-align:left;justify-content:space-between;gap:12px;width:100%;margin-top:14px;display:flex}.lesson-nav strong{align-items:center;gap:8px;display:flex}.course-lesson .course-checks{margin-top:20px}.course-lesson .course-question{margin:0}.course-lesson .figure-scroll{max-width:100%}@media (max-width:600px){.course-lesson .worked-lesson,.course-lesson .try-it{padding:18px}.lesson-vendor-tabs button{flex-basis:100%;min-width:0}}.site-context{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);font-size:var(--fs-16);margin:16px 0;padding:14px 16px}.site-context-head{gap:2px;display:grid}.site-context-head strong{font-size:var(--fs-17);color:var(--ink-950)}.site-story{color:var(--ink-800);margin:8px 0 0;line-height:1.55}.site-flow{align-items:stretch;gap:22px;margin:12px 0 4px;padding:0;list-style:none;display:flex}.site-flow li{border-radius:var(--r-sm);text-align:center;flex-direction:column;flex:1 1 0;align-items:center;gap:4px;min-width:0;padding:8px 6px;display:flex;position:relative}.site-flow li+li:before{content:"→";color:var(--ink-400);font-size:18px;line-height:1;position:absolute;top:26px;left:-19px}.site-flow li.here{background:var(--brand-50);box-shadow:inset 0 0 0 2px var(--brand-600)}.site-flow svg{fill:none;width:72px;height:48px;stroke:var(--ink-700);stroke-width:2px}.site-flow .here svg{stroke:var(--brand-700)}.site-flow strong{font-size:var(--fs-15);color:var(--ink-900);line-height:1.3}.site-flow-detail{font-size:var(--fs-15);color:var(--ink-600);line-height:1.4}.site-flow em{font-size:var(--fs-15);color:var(--brand-700);font-style:normal;font-weight:650}.site-more{margin-top:8px}.site-more summary{cursor:pointer;width:fit-content;color:var(--brand-700);font-size:var(--fs-15);padding:4px 0;font-weight:600}.site-settings{flex-wrap:wrap;gap:6px;margin:10px 0 14px;padding:0;list-style:none;display:flex}.site-settings li{background:var(--canvas-2);color:var(--ink-800);font-size:var(--fs-15);border-radius:999px;padding:4px 10px}.site-components{gap:10px;margin:12px 0 18px;padding-left:20px;display:grid}.site-context h3{font-size:var(--fs-19)}.site-safety{border-left:3px solid var(--info-700);background:var(--info-100);padding:12px 16px}.site-safety p{margin:0}.site-safety p+p{margin-top:10px}.site-fiction{font-size:var(--fs-15);color:var(--ink-600);margin-top:12px}.on-site-line{margin:14px 0;line-height:1.6}.on-site-line strong{color:var(--brand-700);margin-right:8px}.mission-site-context{max-width:85ch;font-size:var(--fs-16);margin-bottom:16px}.rig-preview>.site-context{border-width:1px 0 0;border-radius:0;margin:0}.site-context.compact .site-flow{gap:16px}.site-context.compact .site-flow li+li:before{top:18px;left:-14px}.site-context.compact .site-flow svg{width:52px;height:34px}.site-context.compact .site-flow-detail{display:none}@media (max-width:600px){.site-flow,.site-context.compact .site-flow{flex-direction:column;gap:18px}.site-flow li{text-align:left;grid-template-columns:56px 1fr;align-items:center;column-gap:10px;display:grid}.site-flow li svg,.site-context.compact .site-flow svg{grid-row:1/4;width:52px;height:34px}.site-flow li+li:before,.site-context.compact .site-flow li+li:before{content:"↓";top:-18px;left:22px}}.tank-overflow-alert{border-top:3px solid var(--fault-700);background:var(--fault-100);color:var(--ink-900);font-size:var(--fs-15);padding:10px 16px}.tank-overflow-alert strong{color:var(--fault-700);font-size:var(--fs-16)}.tank-overflow-alert p{margin-top:4px;line-height:1.5}.tank-lab-feedback .reading.alert{background:var(--fault-100)}.lab-restart-note{font-size:var(--fs-15);color:var(--ink-600);padding:10px 0}.schematic-overflow{color:var(--fault-700);background:var(--fault-100);border-radius:var(--r-sm);padding:12px;font-weight:600}.tank-lab-feedback .reading-label,.tank-lab-feedback .reading-note.reading-process-value{white-space:normal;text-overflow:clip;overflow:visible}@media (max-width:900px){.lab-stage:has(.tank-overflow-alert){height:76vh;min-height:650px}}.worked-trace-prompt{color:var(--ink-800);margin:4px 0 10px;font-weight:560}.trace-table tr.latest td{background:var(--brand-50)}.trace-hidden{border-radius:var(--r-xs);background:var(--canvas-2);min-width:28px;color:var(--ink-500);place-items:center;padding:0 8px;font-weight:700;display:inline-grid}.worked-trace-actions{flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0 4px;display:flex}.lesson-reasoning-open{border-left:3px solid var(--ok-600);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--ok-100);margin-top:12px;padding:12px 16px}.lesson-reasoning-open p{color:var(--ink-900);margin:4px 0 0}.lesson-vendor-note{font-size:var(--fs-15);color:var(--ink-600);margin:8px 0 0}.course-newcomer{margin:var(--s-4) 0 0;border:1px solid var(--line-200);border-left:3px solid var(--lamp-500);border-radius:var(--r-md);background:var(--bg-900);flex-wrap:wrap;align-items:center;gap:10px 14px;padding:12px 16px;display:flex}.course-newcomer>svg{color:var(--lamp-600);flex:none}.course-newcomer p{min-width:220px;color:var(--ink-700);flex:1;margin:0}.course-newcomer strong{color:var(--ink-950)}.course-modules{gap:var(--s-2);margin:0 0 var(--s-6);grid-template-columns:repeat(8,minmax(0,1fr));display:grid}.course-module-tab{border:1px solid var(--line-200);border-radius:var(--r-lg);background:var(--bg-900);color:var(--ink-800);text-align:left;transition:border-color .14s var(--ease), box-shadow .14s var(--ease);grid-template-rows:auto 1fr auto auto;gap:6px;padding:14px 14px 12px;display:grid}.course-module-tab:hover{border-color:var(--ink-700)}.course-module-tab[aria-selected=true]{border-color:var(--ink-950);box-shadow:inset 0 0 0 1px var(--ink-950)}.course-module-number{font-family:var(--font-mono);color:var(--ink-500);align-items:center;gap:6px;font-size:13px;display:inline-flex}.course-module-tab.complete .course-module-number{color:var(--lamp-700)}.course-module-tab strong{font-size:var(--fs-16);color:var(--ink-950);font-weight:650;line-height:1.25}.course-module-meter{background:var(--bg-650);border-radius:2px;height:4px;margin-top:auto;display:block;overflow:hidden;box-shadow:inset 0 1px 1px #1012161a}.course-module-meter>span{background:var(--lamp-500);height:100%;display:block}.course-module-tab small{color:var(--ink-500);font-size:13px}.course-module-head{margin:0 0 var(--s-4)}.course-module-head h2{font-size:var(--fs-28);letter-spacing:-.02em;margin:4px 0}.course-module-head p{color:var(--ink-600);margin:0}@media (max-width:1360px){.course-modules{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:640px){.course-modules{margin-bottom:var(--s-5);grid-template-columns:repeat(2,minmax(0,1fr))}.course-module-tab:last-child:nth-child(odd){grid-column:1/-1}.course-module-tab{border-radius:var(--r-md);gap:4px;padding:10px 12px}.course-module-tab strong{font-size:var(--fs-15)}}
.countdown{background:var(--canvas-2);min-height:36px;color:var(--ink-900);font-family:var(--font-mono);font-size:var(--fs-16);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-weight:600;display:inline-flex}.countdown.warn{background:var(--warn-100);color:var(--warn-700)}.countdown.urgent{background:var(--fault-100);color:var(--fault-700)}.assess-page{background:var(--canvas);min-height:100vh}.assess-top{background:var(--surface);border-bottom:1px solid var(--line-200);justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:0 clamp(16px,4vw,40px);display:flex}.assess-brand{color:var(--ink-600);align-items:center;gap:12px;font-weight:560;line-height:1.2;display:inline-flex}.assess-brand>span{display:grid}.assess-brand svg{border-radius:8px;box-shadow:0 1px 2px #1012162e}.assess-brand-name{font-family:var(--font-display);font-stretch:var(--display-stretch);letter-spacing:-.015em;color:var(--ink-950);font-weight:720}.assess-main{padding:clamp(20px,4vw,48px) 16px 64px}.assess-card{border:1px solid var(--line-200);border-radius:var(--r-lg);background:var(--surface);max-width:820px;margin:0 auto;padding:clamp(20px,3vw,36px)}.assess-card h1{font-size:clamp(26px, 3vw, var(--fs-36));margin:10px 0 8px}.assess-card h2{font-size:var(--fs-19);margin:26px 0 8px}.assess-meta{flex-wrap:wrap;gap:8px;display:flex}.assess-objective{font-size:var(--fs-17);color:var(--ink-800)}.assess-report{border-left:3px solid var(--warn-700);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--warn-100);color:var(--ink-900);margin:16px 0 0;padding:12px 16px}.assess-report strong{color:var(--warn-700);display:block}.assess-criteria,.assess-rules{color:var(--ink-800);gap:8px;margin:0;padding-left:22px;line-height:1.55;display:grid}.assess-criteria li::marker{color:var(--brand-600);font-weight:700}.assess-notice{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface-2);gap:14px;margin-top:26px;padding:16px 18px;display:flex}.assess-notice>svg{color:var(--info-700);flex:none;margin-top:3px}.assess-notice h2{font-size:var(--fs-17);margin:0 0 6px}.assess-notice p{color:var(--ink-800);font-size:var(--fs-15);margin:0 0 8px}.assess-note{color:var(--ink-500)!important;margin-top:8px!important}.assess-agree{color:var(--ink-900);align-items:flex-start;gap:10px;margin:22px 0 16px;font-weight:560;display:flex}.assess-agree input{width:20px;height:20px;accent-color:var(--brand-600);margin-top:2px}.assess-start{min-height:46px;font-size:var(--fs-16);padding:0 22px}.assess-done{text-align:center}.assess-done>svg{color:var(--ok-600)}.assess-done p{max-width:56ch;color:var(--ink-800);margin:0 auto}.assess-prototype{border:1px dashed var(--line-300);border-radius:var(--r-md);background:var(--surface-2);margin-top:28px;padding:16px}.assess-prototype p{font-size:var(--fs-15);color:var(--ink-600);margin:4px auto 12px}.assess-card[role=alert]>svg{color:var(--fault-700)}.assess-live .wb{height:100vh}@media (min-width:901px){.assess-live .wb-code{contain:size}.assess-live .wb-main{min-height:min-content}.assess-live .stage-foot{flex:none}.assess-live .wb .stage-canvas{min-height:320px}}@media (min-width:901px) and (max-height:900px){.assess-live .operator-strip{gap:var(--s-1);padding:var(--s-2);flex-wrap:nowrap}.assess-live .operator-strip button{padding-inline:var(--s-1);gap:var(--s-1);overflow-wrap:anywhere;flex:1 1 0;min-width:0}.assess-live .operator-strip .lamp,.assess-live .operator-strip .op-state{flex:none}.assess-live .operator-strip .operator-label,.assess-live .operator-strip .operator-hold-tip,.assess-live .operator-strip .momentary .op-state{display:none}.assess-live .process-feedback{grid-template-columns:repeat(auto-fit,minmax(125px,1fr))}.assess-live .process-feedback .reading{padding:var(--s-2)}.assess-live .process-feedback .reading-value{font-size:var(--fs-19)}.assess-live .process-feedback .reading-note{white-space:normal;overflow:visible}}@media (max-width:900px){.assess-live .wb-transport{top:0}.assess-live .wb{height:auto;min-height:100vh}}.assess-backdrop{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f111573;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.assess-dialog{border-radius:var(--r-lg);background:var(--surface);width:min(640px,100%);max-height:calc(100vh - 32px);box-shadow:var(--shadow-2);padding:24px;overflow:auto}.assess-dialog h2{font-size:var(--fs-22);margin:0 0 6px}.assess-dialog>p{color:var(--ink-600);margin:0 0 16px}.assess-answer{color:var(--ink-900);gap:6px;margin-bottom:16px;font-weight:560;display:grid}.assess-answer textarea{resize:vertical;width:100%;font:inherit;font-weight:400;line-height:1.5}.assess-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.hiring-prototype{border-color:var(--warn-border);background:var(--warn-100);align-items:flex-start}.hiring-prototype>svg,.hiring-prototype strong{color:var(--warn-700)}.hiring-prototype p{color:var(--ink-800)}.hiring-grid{gap:var(--s-5);margin-bottom:var(--s-5);grid-template-columns:minmax(0,7fr) minmax(0,5fr);display:grid}.hiring-create>p{color:var(--ink-600)}.hiring-field{border:0;gap:6px;margin:16px 0;padding:0;display:grid}.hiring-field>span:first-child,.hiring-field legend{color:var(--ink-900);padding:0;font-weight:600}.hiring-field select{max-width:440px;height:42px}.hiring-profiles{grid-template-columns:repeat(2,minmax(0,max-content));width:fit-content;display:grid}.hiring-profiles button{text-align:left}.hiring-minutes{grid-template-columns:auto 96px auto;justify-content:start;align-items:center;column-gap:12px}.hiring-minutes>span:last-child{color:var(--ink-500)}.hiring-link{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface-2);gap:10px;margin-top:16px;padding:12px 14px;display:grid}.hiring-link code{overflow-wrap:anywhere;font-size:var(--fs-15);color:var(--ink-900)}.hiring-link>div{flex-wrap:wrap;gap:8px;display:flex}.hiring-advice{border-left:3px solid var(--info-700);background:var(--info-100);color:var(--ink-800);font-size:var(--fs-15);margin-top:14px;padding:12px 14px}.hiring-reports{gap:2px;margin:0;padding:0;list-style:none;display:grid}.hiring-reports li{border-bottom:1px solid var(--line-100);align-items:center;gap:12px;padding:10px 4px;display:flex}.hiring-reports li>span:nth-child(2){flex:1;display:grid}.hiring-reports small{color:var(--ink-500);font-size:var(--fs-15)}.rep-back{margin-bottom:8px}.rep-head{margin-bottom:var(--s-5);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.rep-head h1{font-size:var(--fs-36);margin:6px 0 4px}.rep-code{color:var(--ink-500);overflow-wrap:anywhere}.rep-actions{gap:8px;display:flex}.rep-summary{gap:var(--s-4);margin-bottom:var(--s-5);grid-template-columns:minmax(240px,4fr) minmax(0,8fr);display:grid}.rep-verdict{border-radius:var(--r-md);align-items:center;gap:14px;padding:18px 20px;display:flex}.rep-verdict strong{font-size:var(--fs-19);display:block}.rep-verdict.ok{background:var(--ok-100);color:var(--ok-700)}.rep-verdict.fault{background:var(--fault-100);color:var(--fault-700)}.rep-verdict span{color:var(--ink-800)}.rep-stats{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:0;display:grid}.rep-stats>div{border-left:1px solid var(--line-100);padding:12px 16px}.rep-stats>div:first-child{border-left:0}.rep-stats dt{font-size:var(--fs-15);color:var(--ink-500)}.rep-stats dd{font-size:var(--fs-19);color:var(--ink-950);font-variant-numeric:tabular-nums;margin:2px 0 0;font-weight:640}.rep-source{border-radius:var(--r-md);background:var(--code-bg,var(--night-950));max-height:480px;color:var(--code-ink,var(--night-text));font-family:var(--font-mono);font-size:var(--fs-16,16px);white-space:pre;margin:0;padding:14px 16px;line-height:1.55;overflow:auto}.rep-readonly{border:0;min-width:0;max-height:560px;margin:0;padding:0;overflow:auto}.rep-readonly .graph-toolbar,.rep-readonly .diagram-guide,.rep-readonly .node-inspector{display:none}.rep-activity .rep-stats{margin-bottom:var(--s-4)}.rep-grid{gap:var(--s-5);margin-bottom:var(--s-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.rep h2{font-size:var(--fs-22);margin-bottom:12px}.rep>.white-card+.white-card{margin-top:var(--s-5)}.rep-checks,.rep-flags{gap:8px;margin:0;padding:0;list-style:none;display:grid}.rep-checks li,.rep-flags li{align-items:flex-start;gap:10px;line-height:1.45;display:flex}.rep-checks li svg,.rep-flags li svg{flex:none;margin-top:2px}.rep-checks li.ok svg{color:var(--ok-600)}.rep-checks li.fault svg{color:var(--fault-700)}.rep-flags li.review svg{color:var(--warn-700)}.rep-flags li.info svg{color:var(--info-700)}.rep-caveat{font-size:var(--fs-15);color:var(--ink-500);margin-top:12px}.rep-timeline{margin:0}.rep-track{border-radius:var(--r-sm);background:var(--canvas);height:44px;position:relative;overflow:hidden}.rep-away{background:repeating-linear-gradient(135deg,#1012161f 0 6px,#1012160a 6px 12px);position:absolute;top:0;bottom:0}.rep-edit{background:var(--ink-400);width:2px;height:10px;position:absolute;top:30px}.rep-mark{background:var(--ink-500);border-radius:50%;width:12px;height:12px;margin-left:-6px;position:absolute;top:8px}.rep-mark.run{background:var(--ok-600)}.rep-mark.check{background:var(--info-700)}.rep-mark.paste{background:var(--warn-700);border-radius:2px}.rep-mark.submit,.rep-mark.timeout{background:var(--brand-600)}.rep-axis{font-family:var(--font-mono);font-size:var(--fs-15);color:var(--ink-500);justify-content:space-between;margin-top:4px;display:flex}.rep-legend{font-size:var(--fs-15);color:var(--ink-600);flex-wrap:wrap;gap:6px 18px;margin-top:10px;display:flex}.rep-legend span{align-items:center;gap:6px;display:inline-flex}.rep-legend i{margin:0;display:inline-block;position:static}.rep-legend i.rep-away{width:18px;height:12px}.rep-events{margin-top:14px}.rep-events summary{cursor:pointer;color:var(--brand-600);font-weight:600}.rep-events ol{max-height:320px;font-size:var(--fs-15);margin:8px 0 0;padding:0;list-style:none;overflow:auto}.rep-events li{border-bottom:1px solid var(--line-100);padding:4px 0}.rep-events code{min-width:52px;color:var(--ink-500);display:inline-block}.rep-answer h3{font-size:var(--fs-16);margin:14px 0 4px}.rep-answer p{white-space:pre-wrap;color:var(--ink-800);margin:0}@media (max-width:900px){.hiring-grid,.rep-grid,.rep-summary{grid-template-columns:minmax(0,1fr)}}@media print{.rail,.mobile-bar,.rep-actions,.rep-back{display:none!important}.rep-events ol{max-height:none}}.assess-prototype-line{border-radius:var(--r-sm);background:var(--warn-100);color:var(--warn-700);margin:22px 0 0;padding:10px 14px}.interview-order,.interview-rubric{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0;display:grid}.interview-order>div{background:var(--surface);border:1px solid var(--line-200);border-radius:var(--r-lg);padding:20px}.interview-order strong,.interview-order span{display:block}.interview-order span{color:var(--ink-700);font-size:var(--fs-16);margin-top:8px}.interview-running-order,.interview-discussion{margin:20px 0}.interview-running-order summary,.interview-discussion summary{cursor:pointer;font-size:var(--fs-17);padding:8px 0;font-weight:600}.interview-notes{margin-top:20px}.interview-notes textarea{border:1px solid var(--line-200);border-radius:var(--r-md);width:100%;font:inherit;color:var(--ink-900);background:var(--surface);padding:12px}@media (max-width:760px){.interview-order,.interview-rubric{grid-template-columns:1fr}}
.expert-arena{gap:28px;display:grid}.expert-hero{isolation:isolate;background:linear-gradient(#16181c0a 1px, transparent 1px) 0 0 / 32px 32px, linear-gradient(90deg, #16181c0a 1px, transparent 1px) 0 0 / 32px 32px, var(--bg-900);color:var(--ink-900);border:1px solid var(--line-200);border-radius:var(--r-xl);box-shadow:var(--shadow-soft);grid-template-columns:minmax(0,1fr) auto;gap:32px;padding:clamp(28px,4vw,52px);display:grid;position:relative;overflow:hidden}.expert-hero .eyebrow{color:var(--ink-500)}.expert-hero h1{color:var(--ink-950);font-family:var(--font-serif);letter-spacing:-.02em;margin:12px 0 18px;font-size:clamp(46px,5vw,84px);font-weight:400;line-height:.98}.expert-arena>.section-head{margin:0}.expert-arena>.section-head h2{flex:1;margin:0}.expert-arena>.section-head .chip{flex:none;width:auto}.expert-hero p{max-width:760px;font-size:var(--fs-17);color:var(--ink-600);line-height:1.65}.expert-hero-mark{border-left:1px solid var(--line-300);font-family:var(--font-display);font-stretch:var(--display-stretch);font-size:var(--fs-22);letter-spacing:-.02em;color:var(--ink-950);align-self:center;gap:16px;padding:20px 8px 20px 32px;font-weight:700;line-height:1.4;display:grid}.expert-hero-mark svg{color:var(--signal-500);filter:drop-shadow(0 0 12px var(--signal-glow))}.expert-settings{align-items:end;gap:24px;display:flex}.expert-settings p{max-width:720px;color:var(--ink-700);margin:0;line-height:1.6}.expert-settings label,.expert-run-setup label{gap:8px;min-width:240px;font-weight:600;display:grid}.expert-settings select,.expert-run-setup select{border:1px solid var(--line-300);border-radius:var(--r-sm);background:var(--bg-900);min-height:44px;font-size:var(--fs-16);color:var(--ink-900);padding:12px}.expert-missions{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.expert-mission{flex-direction:column;gap:12px;padding:24px;display:flex}.expert-mission h3{font-size:var(--fs-22);margin:0;line-height:1.3}.expert-mission p{color:var(--ink-700);margin:0;line-height:1.6}.expert-mission ul{margin:0 0 12px;padding-left:20px;line-height:1.6}.expert-mission li+li{margin-top:10px}.expert-mission .btn{align-self:start;margin-top:auto}.expert-passed{color:var(--ok-700);gap:6px;display:flex}.expert-gauntlet{grid-template-columns:minmax(0,1fr) minmax(300px,.75fr);gap:36px;padding:clamp(20px,3vw,36px);display:grid}.expert-gauntlet h2{font-size:var(--fs-28);margin:8px 0}.expert-gauntlet p{line-height:1.6}.expert-rounds{gap:16px;margin:24px 0 0;padding:0;list-style:none;display:grid}.expert-rounds li{align-items:start;gap:14px;display:flex}.expert-rounds li>span{background:var(--signal-tint);border:1px solid var(--signal-line);min-width:32px;height:32px;color:var(--signal-300);font-family:var(--font-mono);border-radius:50%;place-items:center;font-weight:600;display:grid}.expert-rounds p{color:var(--ink-700);margin:2px 0 0}.expert-run-setup{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--bg-800);padding:24px}.expert-run-setup ul{padding-left:20px;line-height:1.6}.expert-run-setup li+li{margin-top:10px}.expert-local-note{font-size:var(--fs-15);color:var(--ink-700)}.expert-score{border-left:4px solid var(--brand-600);gap:20px;padding:28px;display:flex}.expert-score h2{margin:8px 0}.expert-score p{line-height:1.6}.expert-run-bar{background:var(--bg-800);border:1px solid var(--line-200);color:var(--ink-900);border-radius:var(--r-sm);flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:16px;padding:12px 16px;display:flex}.expert-run-bar>span{align-items:center;gap:8px;display:flex}.expert-run-bar .text-button{color:var(--signal-400);margin-left:auto}.expert-confirm{background:var(--warn-100);border:1px solid var(--warn-border);color:var(--ink-900);border-radius:var(--r-sm);margin-bottom:20px;padding:20px}.expert-confirm p{margin-top:0}.expert-confirm .btn+.btn{margin-left:12px}.expert-result{justify-items:start;gap:14px;padding:36px;display:grid}.expert-result h1,.expert-result p{margin:0}.expert-save-error{color:var(--fault-700);background:var(--fault-100);border-radius:var(--r-sm);padding:16px}.expert-splits{line-height:1.8}@media (max-width:1150px){.expert-missions{grid-template-columns:1fr}.expert-mission{display:grid}.expert-hero-mark{display:none}}@media (max-width:760px){.expert-hero,.expert-gauntlet{grid-template-columns:1fr}.expert-settings{display:grid}.expert-run-setup{padding:20px}.expert-settings label,.expert-run-setup label{min-width:0}.expert-score{padding:20px}}
