:root{--bg:#07111e;--bg2:#091827;--panel:#0c1c2d;--panel2:#10243a;--line:#1d3852;--text:#eaf5ff;--muted:#89a4bd;--blue:#2f7df4;--cyan:#38bdf8;--green:#2fcf8c;--red:#ef5b64;--amber:#f3b64b;--memory:#9b7cff;--shadow:0 18px 55px rgba(0,0,0,.22);--radius:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(135deg,#06101c,#09192a 55%,#081522);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:15px;line-height:1.5}button,input{font:inherit}button{color:inherit}.skip{position:fixed;left:12px;top:-80px;z-index:1000;background:var(--cyan);color:#04101c;padding:10px 14px;border-radius:8px}.skip:focus{top:12px}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:#071522;border-right:1px solid var(--line);padding:26px 20px;z-index:20;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;margin-bottom:28px}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--cyan);border-radius:10px;color:var(--cyan);font-weight:900;font-size:20px}.brand strong,.brand span{display:block}.brand strong{font-size:17px;letter-spacing:.14em}.brand span{font-size:9px;color:var(--muted);letter-spacing:.24em}.revision-card{border:1px solid var(--line);background:#0a1b2b;padding:14px;border-radius:12px;margin-bottom:22px}.revision-card>*{display:block}.revision-card strong{margin:5px 0 2px;font-size:15px}.revision-card>span:last-child{font-size:10px;color:var(--muted)}.eyebrow,.kicker{font-size:10px;letter-spacing:.18em;font-weight:800;color:var(--cyan)}nav{display:grid;gap:4px}nav a{text-decoration:none;color:var(--muted);padding:11px 10px;border-radius:9px;display:flex;gap:11px;align-items:center}nav a span{font:700 10px ui-monospace,monospace;color:#51718d}nav a b{font-weight:650}nav a:hover,nav a.active{background:#10263d;color:var(--text)}nav a.active{box-shadow:inset 3px 0 var(--cyan)}.sidebar-tip{margin-top:auto;border-top:1px solid var(--line);padding-top:18px;display:flex;gap:9px;color:var(--muted);font-size:11px}.sidebar-tip p{margin:0}.status-dot{width:8px;height:8px;margin-top:4px;background:var(--green);border-radius:50%;flex:none}main{margin-left:244px;min-width:0}.topbar{min-height:92px;padding:20px clamp(22px,4vw,54px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:rgba(7,17,30,.86);backdrop-filter:blur(12px);position:sticky;top:0;z-index:15}.topbar h1{margin:3px 0 0;font-size:22px}.crumb{font-size:10px;letter-spacing:.16em;color:var(--muted)}.top-actions,.language-switch{display:flex;align-items:center;gap:8px}.language-switch{border:1px solid var(--line);padding:3px;border-radius:9px;background:#071522}.language-switch button,.icon-button{border:0;background:transparent;border-radius:7px;cursor:pointer}.language-switch button{padding:7px 10px;font-size:10px;font-weight:800;color:var(--muted)}.language-switch button.active{background:var(--blue);color:white}.icon-button{width:36px;height:36px;border:1px solid var(--line);color:var(--cyan)}.section-shell{margin:24px clamp(18px,3.5vw,50px);background:linear-gradient(145deg,rgba(14,34,53,.98),rgba(10,25,41,.98));border:1px solid var(--line);border-radius:var(--radius);padding:clamp(20px,3vw,34px);box-shadow:var(--shadow);scroll-margin-top:112px}.hero-shell{background:linear-gradient(120deg,#0b2034,#0e2a47 70%,#0b2238);overflow:hidden;position:relative}.hero-shell:after{content:"";position:absolute;width:360px;height:360px;border:70px solid rgba(56,189,248,.045);border-radius:50%;right:-90px;top:-150px;pointer-events:none}.hero-copy{max-width:780px}.hero-copy h2{font-size:clamp(30px,4.3vw,56px);line-height:1.04;letter-spacing:-.045em;margin:10px 0 14px}.hero-copy p{color:#b2c7da;font-size:17px;max-width:720px}.model-picker{display:flex;gap:10px;margin:26px 0}.model-option{min-width:190px;text-align:left;padding:14px 16px;border:1px solid var(--line);background:#0a1b2c;border-radius:12px;cursor:pointer}.model-option span,.model-option strong,.model-option small{display:block}.model-option span{font-size:9px;letter-spacing:.16em;color:var(--cyan);font-weight:800}.model-option strong{font-size:17px;margin:2px 0}.model-option small{color:var(--muted)}.model-option.active{border-color:var(--cyan);background:#102d49;box-shadow:inset 0 0 0 1px rgba(56,189,248,.22)}.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;position:relative;z-index:1}.path-card{border:1px solid var(--line);background:rgba(7,19,31,.78);border-radius:12px;padding:16px;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer}.path-card:hover{border-color:var(--cyan);transform:translateY(-1px)}.path-card div{display:grid;gap:3px;flex:1}.path-card strong{font-size:14px}.path-card small{color:var(--muted)}.path-no{font:800 11px ui-monospace;color:var(--cyan)}.path-card i{font-style:normal;color:var(--cyan)}.section-heading{display:flex;justify-content:space-between;gap:26px;align-items:flex-start;margin-bottom:24px}.section-heading h2{font-size:clamp(24px,3vw,36px);letter-spacing:-.035em;margin:4px 0 6px}.section-heading p,.section-subheading p{color:var(--muted);margin:0;max-width:760px}.legend-inline{display:flex;gap:8px;flex-wrap:wrap}.legend-inline span,.model-badge{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#081827;font:700 10px ui-monospace;color:#b8d2e8}.read-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.read-card{border:1px solid var(--line);background:#081827;border-radius:14px;padding:16px}.read-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.read-title strong{font:800 12px ui-monospace;letter-spacing:.12em}.read-digit{width:30px;height:30px;border-radius:8px;background:#102b44;display:grid;place-items:center;color:var(--cyan);font-weight:900}.ring-visual{position:relative;width:110px;height:110px;margin:4px auto 16px}.ring-visual svg{width:100%;height:100%;display:block}.ring-seg{fill:#173047;stroke:#224764;stroke-width:1.5;transition:.2s}.ring-seg.on{fill:var(--green);stroke:#62e6ad}.ring-core{fill:#071522;stroke:#34516a;stroke-width:2}.ring-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.ring-buttons button{border:1px solid var(--line);background:#0c2034;border-radius:7px;padding:7px 0;color:var(--muted);cursor:pointer}.ring-buttons button.active{background:var(--blue);border-color:var(--blue);color:white}.decoder-bottom{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.5fr);gap:14px;margin-top:14px}.manual-code,.result-card{border:1px solid var(--line);border-radius:14px;background:#081827;padding:18px}.manual-code label{display:block;font-weight:700;margin-bottom:9px}.manual-code>div{display:flex}.manual-code input{min-width:0;flex:1;background:#06121e;color:white;border:1px solid var(--line);border-radius:8px 0 0 8px;padding:11px;font:800 18px ui-monospace;letter-spacing:.16em}.manual-code button{border:0;background:var(--blue);padding:0 16px;border-radius:0 8px 8px 0;font-weight:800;cursor:pointer}.manual-code small{display:block;color:var(--muted);margin-top:8px}.result-card{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;border-left:4px solid var(--cyan)}.result-card.unknown{border-left-color:var(--amber)}.result-card.error{border-left-color:var(--red)}.result-code{font:900 clamp(28px,4vw,48px) ui-monospace;color:var(--cyan)}.result-card h3{margin:3px 0}.result-card p{margin:0;color:var(--muted)}.result-links{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.result-links button{border:1px solid var(--line);background:#10263d;border-radius:7px;padding:6px 9px;font-size:11px;cursor:pointer}.board-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.7fr);gap:14px}.board-panel,.detail-panel,.photo-detail{border:1px solid var(--line);border-radius:14px;background:#081827;overflow:hidden}.board-toolbar{display:flex;justify-content:space-between;padding:11px 14px;border-bottom:1px solid var(--line);color:var(--muted);font:700 10px ui-monospace;letter-spacing:.08em}.board-overview{position:relative;aspect-ratio:1.12/1;overflow:hidden;background:#050d15}.board-overview img{width:100%;height:100%;object-fit:contain;display:block}.region-marker{position:absolute;transform:translate(-50%,-50%);border:1px solid currentColor;background:rgba(5,16,28,.82);border-radius:8px;padding:5px 7px;font:800 9px ui-monospace;cursor:pointer;color:var(--cyan);box-shadow:0 3px 12px rgba(0,0,0,.45)}.region-marker:before{content:"";position:absolute;inset:-5px;border:1px solid currentColor;border-radius:11px;opacity:.35}.region-marker.power{color:var(--amber)}.region-marker.logic{color:var(--cyan)}.region-marker.memory{color:var(--memory)}.region-marker.io{color:var(--green)}.region-marker.active{background:currentColor;color:#06111e}.region-marker.active:before{border-color:white}.board-legend{padding:11px 14px;display:flex;gap:14px;flex-wrap:wrap;border-top:1px solid var(--line)}.board-legend span{display:flex;gap:6px;align-items:center;color:var(--muted);font-size:10px}.board-legend b{font-weight:700}.legend-dot{width:8px;height:8px;border-radius:50%;background:var(--cyan)}.legend-dot.power{background:var(--amber)}.legend-dot.io{background:var(--green)}.legend-dot.memory{background:var(--memory)}.detail-panel{padding:22px}.detail-panel h3{font-size:24px;margin:6px 0}.detail-panel p{color:var(--muted)}.detail-panel dl,.rail-card dl{margin:18px 0;display:grid;gap:8px}.detail-panel dl div,.rail-card dl div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(29,56,82,.7);padding-bottom:7px}.detail-panel dt,.rail-card dt{color:var(--muted)}.detail-panel dd,.rail-card dd{margin:0;text-align:right;font-weight:700}.detail-status{font-size:11px;color:var(--green);display:flex;gap:7px;align-items:center}.secondary-button{border:1px solid #2c526f;background:#102a42;border-radius:8px;padding:9px 12px;font-weight:750;cursor:pointer}.photo-detail{margin-top:14px}.photo-detail-head{padding:14px 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.photo-detail-head h3{margin:3px 0 0}.zoom-controls{display:flex;gap:5px;align-items:center}.zoom-controls button,.zoom-controls output{border:1px solid var(--line);background:#0e2438;border-radius:7px;min-width:34px;height:32px;display:grid;place-items:center;padding:0 9px}.zoom-controls button{cursor:pointer}.zoom-controls output{font:700 10px ui-monospace;color:var(--muted)}.photo-viewport{height:min(62vw,600px);min-height:380px;position:relative;overflow:hidden;background:#03080d;cursor:grab;touch-action:none}.photo-viewport:active{cursor:grabbing}.photo-world{position:absolute;transform-origin:0 0;will-change:transform}.photo-world img{width:100%;height:100%;display:block;user-select:none;pointer-events:none}.photo-labels{position:absolute;inset:0;pointer-events:none}.photo-pin{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:6px}.photo-pin:before{content:"";width:12px;height:12px;border-radius:50%;background:var(--pin,var(--cyan));border:3px solid white;box-shadow:0 0 0 3px rgba(7,17,30,.72);flex:none}.photo-pin span{max-width:180px;background:rgba(5,15,25,.92);border:1px solid var(--pin,var(--cyan));border-radius:7px;padding:6px 8px;box-shadow:0 5px 18px rgba(0,0,0,.45)}.photo-pin b,.photo-pin small{display:block}.photo-pin b{font:800 10px ui-monospace;color:white}.photo-pin small{font-size:9px;color:#c6d9e8}.photo-pin.power{--pin:var(--amber)}.photo-pin.ok{--pin:var(--green)}.photo-pin.warn{--pin:var(--red)}.drag-hint{position:absolute;left:12px;bottom:12px;padding:6px 9px;border-radius:6px;background:rgba(5,15,25,.82);font-size:10px;color:#a9c2d7;pointer-events:none}.zoom-tabs{display:flex;gap:6px;padding:10px;border-top:1px solid var(--line)}.zoom-tabs button{border:1px solid var(--line);background:#0c2034;color:var(--muted);border-radius:7px;padding:7px 10px;cursor:pointer}.zoom-tabs button.active{background:#133b5e;color:white;border-color:var(--cyan)}.symptom-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.symptom-card{border:1px solid var(--line);background:#081827;border-radius:13px;padding:14px;text-align:left;cursor:pointer}.symptom-card.active,.symptom-card:hover{border-color:var(--cyan);background:#10283f}.symptom-art{height:100px;display:grid;place-items:center}.console-svg{width:140px;max-width:100%;height:82px}.console-body{fill:#12283b;stroke:#3c607a;stroke-width:2}.console-ring{fill:none;stroke:#304b60;stroke-width:5}.console-led{fill:#2fcf8c}.symptom-card.dead .console-led{fill:#233a4b}.symptom-card.pulse .console-led{animation:pulse 1.1s infinite}.symptom-card.red .console-led{fill:var(--red)}.symptom-card.off .console-led{fill:var(--green);animation:blinkoff 1.7s infinite}@keyframes pulse{50%{opacity:.18}}@keyframes blinkoff{55%,100%{opacity:.1}}.symptom-card strong,.symptom-card small{display:block}.symptom-card small{margin-top:4px;color:var(--muted)}.diagnosis-panel{margin-top:14px;border:1px solid var(--line);border-radius:14px;background:#081827;padding:18px}.diagnosis-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:15px}.diagnosis-head h3{margin:4px 0}.diagnosis-head p{margin:0;color:var(--muted)}.diagnosis-grid{display:grid;grid-template-columns:.65fr 1.2fr .9fr;gap:12px}.meter-card,.question-card,.diagnosis-result{min-height:235px;border:1px solid var(--line);border-radius:12px;padding:17px;background:#0a1c2c}.meter-card{position:relative;overflow:hidden}.meter-display{border:1px solid #2b506b;border-radius:9px;background:#06111c;padding:14px}.meter-display span,.meter-display strong,.meter-display small{display:block}.meter-display span{color:var(--cyan);font:700 10px ui-monospace}.meter-display strong{font:900 23px ui-monospace;margin:8px 0}.meter-display small{color:var(--muted)}.probe{position:absolute;width:5px;height:120px;border-radius:5px;bottom:-35px;transform:rotate(25deg)}.probe.red{background:var(--red);left:38%}.probe.black{background:#52687b;left:61%}.question-card h3,.diagnosis-result h3{font-size:20px;margin:5px 0}.question-card p,.diagnosis-result p{color:var(--muted)}.answer-row{display:flex;gap:7px;margin-top:16px}.answer-row button,.measure-link{border:1px solid var(--line);background:#102840;border-radius:8px;padding:9px 13px;font-weight:800;cursor:pointer}.answer-row button:first-child{border-color:#277558}.answer-row button:last-child{border-color:#713741}.measure-link{width:100%;margin-top:7px;color:var(--cyan)}.section-subheading{margin:28px 0 14px}.section-subheading h3{font-size:24px;margin:4px 0}.sequence{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.sequence-step{border:1px solid var(--line);background:#081827;border-radius:11px;padding:14px;text-align:left;cursor:pointer}.sequence-step:hover{border-color:var(--cyan)}.sequence-step b{font:800 10px ui-monospace;color:var(--cyan)}.sequence-step h3{font-size:14px;margin:7px 0 4px}.sequence-step p{font-size:11px;color:var(--muted);margin:0}.state-tabs{display:flex;border:1px solid var(--line);border-radius:9px;padding:3px}.state-tabs button{border:0;background:transparent;color:var(--muted);border-radius:6px;padding:7px 9px;font-size:10px;font-weight:800;cursor:pointer}.state-tabs button.active{background:var(--blue);color:white}.rail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.rail-card{border:1px solid var(--line);border-radius:11px;background:#081827;padding:14px;cursor:pointer}.rail-card:hover{border-color:var(--cyan)}.rail-card .rail-name{font:800 11px ui-monospace;color:var(--cyan)}.rail-value{font-size:24px;font-weight:900;margin:7px 0}.rail-card dl{font-size:10px;margin:8px 0 0}.reference-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:22px}.search-mini input{width:100%;background:#071522;color:white;border:1px solid var(--line);border-radius:8px;padding:10px;margin-bottom:8px}.error-list,.ic-grid{display:grid;gap:7px;max-height:510px;overflow:auto;padding-right:3px}.error-row,.ic-card{border:1px solid var(--line);background:#081827;border-radius:9px;padding:11px;cursor:pointer}.error-row{display:grid;grid-template-columns:56px 1fr auto;gap:10px;align-items:center}.error-row>strong{font:900 15px ui-monospace;color:var(--cyan)}.error-row b,.error-row small{display:block}.error-row small,.ic-card small{color:var(--muted)}.error-row span{font-size:9px;color:var(--muted)}.ic-card{display:grid;grid-template-columns:54px 1fr;gap:10px}.ic-ref{border-radius:7px;background:#12314c;color:var(--cyan);display:grid;place-items:center;font:800 11px ui-monospace}.ic-card h3{font-size:13px;margin:0 0 3px}footer{margin:24px clamp(18px,3.5vw,50px) 40px;padding:18px 4px;display:flex;justify-content:space-between;color:var(--muted);border-top:1px solid var(--line)}footer strong,footer span{display:block}.footer-links{display:flex;gap:8px}.footer-links button{border:0;background:transparent;color:var(--cyan);cursor:pointer}dialog{width:min(720px,calc(100% - 30px));background:#0b1b2b;color:var(--text);border:1px solid var(--line);border-radius:15px;padding:25px;box-shadow:0 30px 90px rgba(0,0,0,.65)}dialog::backdrop{background:rgba(2,7,13,.78)}.dialog-close{position:absolute;right:14px;top:12px;border:0;background:transparent;color:white;font-size:25px;cursor:pointer}.legal-copy h2{margin-top:0}.legal-copy h3{color:var(--cyan);margin:22px 0 5px}.legal-copy p,.legal-copy li{color:#b5c9da}.legal-copy a{color:var(--cyan)}.legal-copy code{color:#d8e9f5}.high-contrast{--line:#365a77;--muted:#b9ccda;--panel:#0f2942;--panel2:#14314b}.high-contrast .section-shell{border-color:#416a88}
@media(max-width:1100px){.sidebar{width:204px}.sidebar nav a{padding:9px 7px}.sidebar-tip{display:none}main{margin-left:204px}.read-grid,.rail-grid{grid-template-columns:repeat(2,1fr)}.decoder-bottom{grid-template-columns:1fr}.symptom-grid{grid-template-columns:repeat(2,1fr)}.sequence{grid-template-columns:repeat(3,1fr)}.diagnosis-grid{grid-template-columns:1fr 1.2fr}.diagnosis-result{grid-column:1/-1;min-height:auto}.board-layout{grid-template-columns:1fr}.detail-panel{min-height:0}.reference-grid{grid-template-columns:1fr}}
@media(max-width:760px){.sidebar{position:static;width:auto;height:auto;padding:16px}.brand{margin-bottom:12px}.revision-card,.sidebar nav{display:none}main{margin-left:0}.topbar{position:relative;padding:15px;align-items:flex-start;gap:12px}.topbar h1{font-size:18px}.top-actions{flex-direction:column;align-items:flex-end}.section-shell{margin:12px;padding:17px}.hero-copy h2{font-size:34px}.path-grid,.read-grid,.decoder-bottom,.symptom-grid,.diagnosis-grid,.rail-grid,.reference-grid{grid-template-columns:1fr}.model-picker{display:grid;grid-template-columns:1fr 1fr}.model-option{min-width:0}.section-heading{display:block}.legend-inline,.model-badge,.state-tabs{margin-top:12px}.photo-viewport{height:440px}.photo-pin span{max-width:130px}.sequence{display:flex;overflow-x:auto}.sequence-step{min-width:180px}.result-card{grid-template-columns:1fr}footer{display:grid;gap:14px}.language-switch button{padding:6px}.board-toolbar{font-size:8px}.region-marker{font-size:7px;padding:4px}.diagnosis-head{display:block}.diagnosis-head button{margin-top:10px}}

.model-picker{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr))}.model-option.planned{opacity:.48;cursor:not-allowed;border-style:dashed}.model-option.planned strong{color:#9ab0c3}.board-heading-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.side-switch{display:flex;border:1px solid var(--line);border-radius:9px;padding:3px;background:#071522}.side-switch button{border:0;background:transparent;color:var(--muted);border-radius:6px;padding:7px 10px;font:800 10px ui-monospace;cursor:pointer}.side-switch button.active{background:var(--blue);color:white}.side-switch button:disabled{opacity:.3;cursor:not-allowed}.component-explorer{margin-top:14px;border:1px solid var(--line);border-radius:14px;background:#081827;padding:18px}.component-explorer-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.component-explorer-head h3{font-size:24px;margin:4px 0}.component-explorer-head p{color:var(--muted);margin:0;max-width:680px}.component-stats{display:grid;grid-template-columns:auto auto;gap:2px 9px;min-width:205px;border:1px solid var(--line);background:#071522;border-radius:10px;padding:10px 12px}.component-stats strong{color:var(--cyan);font:900 15px ui-monospace}.component-stats span{color:var(--muted);font-size:11px}.component-controls{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:9px;margin:16px 0 9px}.component-controls input,.component-controls select{width:100%;border:1px solid var(--line);background:#06121e;color:white;border-radius:8px;padding:11px}.component-note{color:var(--muted);font-size:12px;margin-bottom:9px}.component-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:480px;overflow:auto;padding-right:3px}.component-row{display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--line);background:#0a1c2c;border-radius:9px;padding:10px;text-align:left;cursor:pointer}.component-row:hover,.component-row.active{border-color:var(--cyan);background:#10283f}.component-ref{display:grid;place-items:center;min-height:38px;border-radius:7px;background:#12314c;color:var(--cyan);font:900 12px ui-monospace}.component-row b,.component-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.component-row b{font-size:12px}.component-row small{color:var(--muted);font-size:10px}.value-badge{font:800 9px ui-monospace;line-height:1.2;text-transform:uppercase;border:1px solid #256e56;border-radius:6px;padding:5px 6px;color:#65dfa9;text-align:center;max-width:100px}.value-badge.unknown{border-color:#6e5b2c;color:#e7bd55}.component-focus-meta{padding:7px 10px;color:var(--muted);font:700 10px ui-monospace}.photo-pin small{font-size:10px}.photo-pin b{font-size:11px}

@media(max-width:1100px){.model-picker{grid-template-columns:repeat(2,1fr)}.component-list{grid-template-columns:1fr}}
@media(max-width:760px){.board-heading-tools{justify-content:flex-start}.component-explorer-head{display:block}.component-stats{margin-top:12px}.component-controls{grid-template-columns:1fr}.component-row{grid-template-columns:58px minmax(0,1fr)}.value-badge{grid-column:2;justify-self:start}.model-picker{grid-template-columns:1fr 1fr}}
.region-marker.active{background:#14577d;color:white;border-color:#62d5ff}.region-marker.power.active{background:#77571d;border-color:#ffd477}.region-marker.memory.active{background:#4f3e82;border-color:#c0adff}.region-marker.io.active{background:#185d46;border-color:#67e4b0}.region-marker.active:before{border-color:white}

.diagnostic-context{margin-top:14px;border:1px solid #2a5675;border-left:4px solid var(--cyan);border-radius:12px;background:#081827;padding:16px 18px}.diagnostic-context[hidden]{display:none}.diagnostic-context-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.diagnostic-context-head strong{color:var(--cyan);font:800 11px ui-monospace;text-align:right}.diagnostic-context h3{margin:5px 0 12px;font-size:20px}.diagnostic-context dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.diagnostic-context dl div{border:1px solid var(--line);border-radius:8px;background:#071522;padding:9px 11px}.diagnostic-context dt{color:var(--muted);font-size:11px}.diagnostic-context dd{margin:3px 0 0;font-weight:700}.rail-card{width:100%;text-align:left;color:var(--text)}.rail-card .rail-value{display:block}.rail-details{display:grid;gap:7px;margin-top:8px}.rail-details>span{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid rgba(29,56,82,.7);padding-bottom:6px}.rail-details b{color:var(--muted);font-size:10px}.rail-details em{font-style:normal;font-weight:700;font-size:10px;text-align:right}.error-row{width:100%;color:var(--text);text-align:left}.error-row>span{font-size:inherit;color:inherit}.error-row i{font-style:normal;font-size:9px;color:var(--muted)}.ic-card{width:100%;color:var(--text);text-align:left}.ic-card strong{display:block;font-size:13px;margin-bottom:3px}
.rail-trace-layer{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;overflow:visible}.rail-trace-line{fill:none;stroke:#52d8ff;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:2 1.35;vector-effect:non-scaling-stroke}.rail-trace-glow{stroke:#06111e;stroke-width:2.2;stroke-dasharray:none;opacity:.88}.rail-trace-stop circle{fill:#092033;stroke:#8ce7ff;stroke-width:.55;vector-effect:non-scaling-stroke}.rail-trace-stop text{fill:white;font:800 2px ui-monospace,monospace}.rail-trace-key{position:absolute;z-index:4;left:12px;bottom:12px;width:min(330px,calc(100% - 24px));padding:9px 11px;border:1px solid #3385a8;border-radius:8px;background:rgba(4,15,25,.9);box-shadow:0 8px 24px rgba(0,0,0,.4);pointer-events:none}.rail-trace-key[hidden]{display:none}.rail-trace-key strong,.rail-trace-key span{display:block}.rail-trace-key strong{color:#8ce7ff;font:800 10px ui-monospace,monospace}.rail-trace-key span{margin-top:2px;color:#bdd5e5;font-size:9px}.rail-card.active{border-color:var(--cyan);background:#10304a;box-shadow:inset 0 0 0 1px rgba(82,216,255,.2)}.rail-detail{margin-top:12px;border:1px solid #2a5675;border-radius:12px;background:#081827;padding:16px}.rail-detail-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.rail-detail-head h3{margin:3px 0 0;font-size:22px}.rail-detail-head h3 small{color:var(--green);font-size:14px}.rail-detail-head p{max-width:420px;margin:0;color:var(--muted);font-size:11px;text-align:right}.rail-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:10px;align-items:stretch;margin-top:14px}.rail-flow>div{min-width:0;border:1px solid var(--line);border-radius:9px;background:#071522;padding:10px}.rail-flow>div>span{display:block;color:var(--cyan);font:800 9px ui-monospace,monospace}.rail-flow small,.rail-flow strong{display:block}.rail-flow small{color:var(--muted);margin:3px 0}.rail-flow strong{font-size:12px}.rail-flow>i{align-self:center;color:var(--cyan);font-style:normal}.rail-detail-data{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 0}.rail-detail-data>div{border-top:1px solid var(--line);padding-top:9px}.rail-detail-data dt{color:var(--muted);font-size:10px}.rail-detail-data dd{margin:3px 0 0;font-weight:650;font-size:11px}.rail-area-chain{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.rail-area-chain span{padding:3px 6px;border-radius:5px;background:#102a42;color:#cbe9f5}.rail-area-chain i{color:var(--cyan);font-style:normal}
.calibration-badge{color:#67e4b0;border:1px solid #286c57;border-radius:6px;padding:3px 7px;background:#0a211d;font:800 9px ui-monospace,monospace;letter-spacing:.04em}.calibration-badge[hidden]{display:none}.calibration-note{border-top:1px solid var(--line);padding:10px 14px;background:#071522}.calibration-note[hidden]{display:none}.calibration-note>span{display:flex;align-items:center;justify-content:space-between;gap:12px}.calibration-note b{color:#67e4b0;font:800 10px ui-monospace,monospace}.calibration-note strong{color:#c8dcea;font:750 10px ui-monospace,monospace}.calibration-note p{margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.4}
.context-return{margin-top:12px;border:1px solid #2c526f;background:#102a42;border-radius:8px;padding:9px 12px;color:var(--cyan);font-weight:750;cursor:pointer}.context-return:hover{border-color:var(--cyan);color:white}
.psu-module{margin-top:14px;border:1px solid var(--line);border-radius:14px;background:#071725;padding:18px;scroll-margin-top:110px}.psu-module-head h3{font-size:23px;margin:4px 0}.psu-module-head p{margin:0;color:var(--muted)}.psu-layout{display:grid;grid-template-columns:minmax(380px,1fr) minmax(300px,.85fr);gap:12px;margin-top:14px}.psu-state-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.psu-state{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:10px;background:#091b2b;padding:10px;text-align:left;cursor:pointer}.psu-state:hover,.psu-state.active{border-color:var(--cyan);background:#10283f}.psu-state span{display:grid;gap:2px}.psu-state strong{font:900 11px ui-monospace;letter-spacing:.1em}.psu-state small{color:var(--muted);font-size:10px}.psu-svg{width:105px;max-width:44%;height:auto;flex:none}.psu-body{fill:#12283b;stroke:#3c607a;stroke-width:2}.psu-cable,.psu-vent{fill:none;stroke:#49677d;stroke-width:4;stroke-linecap:round}.psu-led{fill:#263d4e;stroke:#7591a5;stroke-width:2}.psu-orange .psu-led{fill:#f3a83b;filter:drop-shadow(0 0 5px rgba(243,168,59,.65))}.psu-green .psu-led{fill:#39d98f;filter:drop-shadow(0 0 5px rgba(57,217,143,.65))}.psu-red .psu-led{fill:#ef5b64;filter:drop-shadow(0 0 5px rgba(239,91,100,.65))}.psu-none .psu-led{fill:#152532;filter:none}.psu-result{border:1px solid var(--line);border-left:4px solid var(--cyan);border-radius:11px;background:#081827;padding:15px}.psu-result.state-orange{border-left-color:var(--amber)}.psu-result.state-green{border-left-color:var(--green)}.psu-result.state-red{border-left-color:var(--red)}.psu-result.state-none{border-left-color:#60798d}.psu-result-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.psu-result-head strong{text-align:right}.psu-result dl{margin:12px 0 0;display:grid;gap:7px}.psu-result dl div{border-top:1px solid var(--line);padding-top:7px}.psu-result dt{color:var(--muted);font-size:10px}.psu-result dd{margin:3px 0 0;font-size:12px}.psu-result dd b{color:var(--cyan)}

/* Ring of Light pattern recognizer — original neutral service visualization */
.rol-heading{align-items:center}.rol-orientation{min-width:250px;border:1px solid #28506c;background:#071725;border-radius:11px;padding:11px 14px;text-align:right}.rol-orientation span,.rol-orientation b{display:block}.rol-orientation span{color:var(--cyan);font:800 9px ui-monospace;letter-spacing:.17em}.rol-orientation b{margin-top:5px;font:800 12px ui-monospace;color:#d8ebf8}.rol-workspace{display:grid;grid-template-columns:minmax(420px,1.35fr) minmax(300px,.65fr);gap:14px}.rol-ring-card,.rol-result-panel,.rol-examples-wrap,.secondary-code-module{border:1px solid var(--line);border-radius:14px;background:#071725}.rol-ring-card{position:relative;min-height:610px;padding:18px;display:grid;grid-template-rows:auto 1fr auto}.rol-instruction{position:absolute;left:20px;top:22px;z-index:2;display:flex;gap:10px;align-items:center;max-width:190px;border:1px solid #2c6c59;border-radius:10px;padding:10px 12px;background:rgba(7,23,37,.94)}.rol-instruction-icon{width:34px;height:34px;display:grid;place-items:center;border:1px solid #34866b;border-radius:8px;color:#62dfa9;font:900 15px ui-monospace}.rol-instruction strong,.rol-instruction small{display:block}.rol-instruction strong{color:#61dfa9}.rol-instruction small{color:var(--muted);font-size:11px}.rol-ring-stage{width:min(100%,590px);margin:auto;aspect-ratio:1;display:grid;place-items:center}.rol-ring-svg{width:100%;height:100%;display:block;overflow:visible}.rol-guide{fill:none;stroke:#163146;stroke-width:1;stroke-dasharray:4 8}.rol-track,.rol-segment{fill:none;stroke-width:42}.rol-track{stroke:#172c3c}.rol-segment{stroke:#294052;stroke-linecap:round;transition:stroke .16s ease,filter .16s ease,transform .16s ease;transform-origin:210px 210px}.rol-ring-green .rol-segment.active{stroke:#36d992;filter:drop-shadow(0 0 7px rgba(54,217,146,.38))}.rol-ring-red .rol-segment.active{stroke:#ef5b64;filter:drop-shadow(0 0 6px rgba(239,91,100,.32))}.rol-ring-main .rol-segment{cursor:pointer}.rol-ring-main .rol-segment:hover{stroke:#41627b}.rol-ring-main .rol-segment.active:hover{stroke:#60e7ad}.rol-ring-main .rol-segment:focus-visible{outline:none;stroke:#7fecc0;filter:drop-shadow(0 0 9px rgba(56,189,248,.62))}.rol-center{fill:#0b1d2c;stroke:#3a5b71;stroke-width:2}.rol-center-inner{fill:#102b3f;stroke:#507187;stroke-width:2}.rol-center-dot{fill:#6f93aa}.rol-center-mark{fill:none;stroke:#6f93aa;stroke-width:5;stroke-linecap:round}.rol-svg-label{pointer-events:none;fill:#eff8ff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.rol-label-number{font-size:25px;font-weight:900}.rol-label-id{font-size:14px;font-weight:800;fill:#96b3c8}.rol-axis{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:11px;color:#7795aa;font:800 9px ui-monospace;letter-spacing:.14em}.rol-axis:before,.rol-axis:after{content:"";height:1px;background:#1d3b50}.rol-geometry-note{margin:8px auto 0;max-width:520px;text-align:center;color:var(--muted);font-size:12px}.rol-result-panel{padding:18px;min-width:0;transition:border-color .18s ease}.rol-result-panel.has-selection{border-color:rgba(239,91,100,.68);box-shadow:inset 0 0 0 1px rgba(239,91,100,.08)}.rol-result-panel.is-unknown{border-color:rgba(243,182,75,.7)}.rol-result-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.rol-result-head .eyebrow{color:var(--red)}.rol-clear{border:1px solid var(--line);background:#0d2234;border-radius:7px;padding:6px 9px;color:var(--muted);font-size:11px;cursor:pointer}.rol-clear:hover{border-color:var(--cyan);color:white}.rol-result-ring{width:190px;max-width:65%;margin:3px auto -8px}.rol-pattern-code{text-align:center;color:var(--red);font:900 14px ui-monospace;letter-spacing:.12em;margin-bottom:12px}.rol-stats{margin:0;border:1px solid var(--line);border-radius:9px;overflow:hidden}.rol-stats div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px}.rol-stats div+div{border-top:1px solid var(--line)}.rol-stats dt{color:var(--muted)}.rol-stats dd{margin:0;text-align:right;font:800 12px ui-monospace;color:#f4f9fd}.rol-diagnosis{margin-top:15px}.rol-diagnosis h3{font-size:18px;margin:4px 0}.rol-diagnosis p{color:#b2c7d7;margin:0 0 12px}.rol-field-label{display:block;margin-top:11px;color:#f27880;font:800 10px ui-monospace;letter-spacing:.11em;text-transform:uppercase}.rol-field-value{margin-top:4px!important}.rol-diagnosis ul{padding-left:18px;margin:5px 0 0;color:#b2c7d7}.rol-diagnosis li{margin:4px 0}.rol-diagnosis li::marker{color:var(--red)}.rol-examples-wrap{margin-top:14px;padding:17px}.rol-examples-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:12px}.rol-examples-head h3{margin:3px 0 0;font-size:20px}.rol-examples-head p{margin:0;color:var(--muted);font-size:12px}.rol-examples{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.rol-example{border:1px solid var(--line);background:#0a1c2c;border-radius:11px;padding:10px;cursor:pointer;text-align:center}.rol-example:hover,.rol-example:focus-visible{border-color:var(--red);background:#102437;outline:none}.rol-example-ring{display:block;width:106px;max-width:100%;margin:auto}.rol-example strong,.rol-example small{display:block}.rol-example strong{font-size:13px}.rol-example small{color:var(--muted);font:700 9px ui-monospace;margin-top:2px}.secondary-code-module{margin-top:14px;padding:18px}.secondary-code-head{margin-bottom:14px}.secondary-code-head h3{font-size:22px;margin:4px 0}.secondary-code-head p{margin:0;color:var(--muted)}
.secondary-code-instructions{display:flex;align-items:center;gap:13px;border:1px solid #2a5675;border-radius:10px;background:#091d2e;padding:11px 13px;margin-bottom:12px}.secondary-code-instructions p{margin:0;color:#bad0e1;font-size:12px}.instruction-step{flex:none;border:1px solid var(--cyan);border-radius:7px;padding:7px 9px;color:var(--cyan);font:900 10px ui-monospace;letter-spacing:.1em}.read-grid{display:block}.read-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:9px}.read-progress-step{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);background:#081827;border-radius:8px;padding:8px 10px;color:var(--muted);cursor:pointer}.read-progress-step span{font:800 9px ui-monospace;letter-spacing:.08em}.read-progress-step strong{font:900 17px ui-monospace}.read-progress-step.done{color:#b9d7cb;border-color:#2b6654}.read-progress-step.current{color:white;border-color:var(--cyan);background:#102b44}.read-wizard-card{max-width:760px;margin:auto;padding:18px 22px}.read-wizard-card .read-title span:first-child{display:grid}.read-wizard-card .read-title small{color:var(--cyan);font:800 9px ui-monospace;letter-spacing:.12em}.read-wizard-card .read-title strong{font-size:17px}.read-wizard-card .read-digit{width:44px;height:44px;font-size:22px}.read-question{text-align:center;color:#b9cfe0;margin:0}.read-wizard-card .ring-visual{width:150px;height:150px;margin:10px auto 14px}.read-wizard-card .ring-buttons{grid-template-columns:repeat(4,1fr);gap:8px}.read-wizard-card .ring-buttons button{display:grid;gap:2px;padding:9px 6px}.read-wizard-card .ring-buttons b{font-size:17px}.read-wizard-card .ring-buttons small{font-size:9px}.read-wizard-nav{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin-top:15px;padding-top:13px;border-top:1px solid var(--line)}.read-wizard-nav>button{border:1px solid #2c526f;background:#102a42;border-radius:8px;padding:9px 11px;font-weight:750;cursor:pointer}.read-wizard-nav>button:last-child{justify-self:end}.read-wizard-nav>button:disabled{opacity:.35;cursor:not-allowed}.read-wizard-nav>span{display:grid;text-align:center}.read-wizard-nav small{color:var(--muted);font:800 8px ui-monospace;letter-spacing:.1em}.read-wizard-nav strong{font:900 17px ui-monospace;letter-spacing:.15em;color:var(--cyan)}

@media(max-width:1100px){.rol-workspace{grid-template-columns:1fr}.rol-ring-card{min-height:560px}.rol-result-panel{display:grid;grid-template-columns:190px minmax(0,1fr);gap:0 18px}.rol-result-head{grid-column:1/-1}.rol-result-ring{grid-column:1;grid-row:2/5;width:180px;max-width:100%}.rol-pattern-code{grid-column:1;align-self:end}.rol-stats,.rol-diagnosis{grid-column:2}.rol-stats{align-self:start}.rol-diagnosis{margin-top:12px}.rol-examples{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.rol-heading .rol-orientation{margin-top:14px;text-align:left}.rol-workspace{display:block}.rol-ring-card{min-height:0;padding:13px}.rol-instruction{position:static;max-width:none;margin-bottom:5px}.rol-ring-stage{width:100%;max-width:520px}.rol-result-panel{display:block;margin-top:12px}.rol-result-ring{width:170px;max-width:70%;margin:3px auto -8px}.rol-examples-head{display:block}.rol-examples-head p{margin-top:4px}.rol-examples{grid-template-columns:repeat(2,1fr)}.secondary-code-module{padding:13px}.rol-label-number{font-size:22px}.rol-label-id{font-size:13px}}
.rol-pointer{width:34px;height:34px;display:grid;place-items:center;border:1px solid #34866b;border-radius:8px;color:#62dfa9;font:900 20px ui-monospace;flex:none}.rol-axis-note{display:block;border-top:1px solid #1d3b50;padding-top:10px;color:#7795aa;font:800 9px ui-monospace;letter-spacing:.14em;text-align:center}.rol-axis-note:before,.rol-axis-note:after{display:none}
@media(max-width:1100px){.rol-heading{display:block}.rol-heading .rol-orientation{min-width:0;width:max-content;max-width:100%;margin-top:14px;text-align:left}.rol-axis-note{border-top:1px solid #1d3b50;padding-top:10px}.rol-axis-note:before,.rol-axis-note:after{display:none}}
.section-heading.rol-heading{display:block}.section-heading.rol-heading .rol-orientation{min-width:0;width:max-content;max-width:100%;margin-top:14px;text-align:left}
@media(max-width:760px){.photo-detail-head{align-items:flex-start;gap:10px}.zoom-controls{flex-wrap:wrap;justify-content:flex-end}.diagnostic-context dl{grid-template-columns:1fr}.diagnostic-context-head{align-items:flex-start}.diagnostic-context-head strong{max-width:55%}}
@media(max-width:760px){.rail-detail-head{display:block}.rail-detail-head p{text-align:left;margin-top:6px}.rail-flow{grid-template-columns:1fr}.rail-flow>i{justify-self:center;transform:rotate(90deg)}.rail-detail-data{grid-template-columns:1fr}.rail-trace-key{left:7px;bottom:7px;width:calc(100% - 14px);padding:6px 8px}.rail-trace-key span{font-size:8px}}
.result-card.detailed{display:block;padding:20px;border-left-color:var(--cyan)}.error-result-head{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center}.error-result-head h3{font-size:19px}.error-confidence{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}.error-confidence span{color:var(--muted);font-size:12px}.error-confidence strong,.error-row em{color:var(--green);font:800 10px ui-monospace,monospace;letter-spacing:.05em}.error-evidence{margin:14px 0 0!important;padding:10px 12px;border:1px solid #28516e;border-radius:8px;background:#0a1b2b;color:#bdd3e4!important;font-size:12px}.error-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.error-summary-grid>div{border:1px solid var(--line);border-radius:9px;background:#071522;padding:10px}.error-summary-grid small,.error-summary-grid strong{display:block}.error-summary-grid small{color:var(--muted);font-size:10px;margin-bottom:3px}.error-summary-grid strong{font-size:12px}.error-detail-grid{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(0,1.45fr);gap:12px;margin-top:12px}.error-detail-grid>section{border:1px solid var(--line);border-radius:10px;background:#071522;padding:13px}.error-detail-grid h4{margin:0 0 10px;font-size:13px;color:#d8eaf5}.error-detail-grid ul{margin:0;padding-left:19px;color:#b7ccdc;font-size:12px}.error-detail-grid li+li{margin-top:7px}.error-checks ol{list-style:none;padding:0;margin:0;display:grid;gap:8px}.error-checks li{display:grid;grid-template-columns:28px 1fr auto;gap:9px;align-items:start;padding:9px;border:1px solid rgba(42,86,117,.7);border-radius:8px;background:#091b2b}.error-checks li>span{width:26px;height:26px;display:grid;place-items:center;border-radius:7px;background:#123652;color:var(--cyan);font:800 10px ui-monospace,monospace}.error-checks li strong,.error-checks li small,.error-checks li em{display:block}.error-checks li strong{font-size:12px}.error-checks li small{margin-top:2px;color:#c2d8e7;font-size:10px}.error-checks li em{margin-top:3px;color:var(--muted);font-size:10px;font-style:normal}.error-checks button{align-self:center;border:1px solid #2d6486;background:#10304a;color:#d9f4ff;border-radius:7px;padding:7px 9px;font-size:10px;font-weight:800;cursor:pointer}.error-checks button:hover,.error-checks button:focus-visible{border-color:var(--cyan);outline:none}.error-area-strip{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.error-area-strip span{border:1px solid var(--line);border-radius:7px;padding:6px 8px;color:var(--muted);font-size:10px}.error-area-strip b{color:#d9eaf5}.error-row em{display:block;margin-top:5px;font-style:normal}.error-row:has(em){align-items:start}
@media(max-width:980px){.error-summary-grid,.error-detail-grid{grid-template-columns:1fr}.error-checks li{grid-template-columns:28px 1fr}.error-checks button{grid-column:2;justify-self:start}}
@media(max-width:760px){.error-result-head{grid-template-columns:1fr}.error-summary-grid{grid-template-columns:1fr}.error-checks li{grid-template-columns:26px 1fr}.error-checks button{grid-column:1/-1;width:100%}}
@media(max-width:760px){.calibration-note>span{display:grid;gap:3px}.calibration-badge{font-size:8px}.board-toolbar{align-items:center;gap:8px}}
@media(max-width:760px){.secondary-code-instructions{align-items:flex-start}.read-progress-step{display:grid;text-align:center;padding:7px 4px}.read-progress-step span{font-size:7px}.read-wizard-card{padding:14px 11px}.read-wizard-card .ring-buttons{grid-template-columns:repeat(2,1fr)}.read-wizard-nav{grid-template-columns:1fr 1fr}.read-wizard-nav>span{grid-column:1/-1;grid-row:1}.read-wizard-nav>button:last-child{justify-self:stretch}.read-wizard-nav>button{width:100%}}
@media(max-width:980px){.psu-layout{grid-template-columns:1fr}}
@media(max-width:760px){.psu-module{padding:13px}.psu-state-grid{grid-template-columns:1fr}.psu-state{padding:8px}.psu-svg{width:90px}.psu-result-head{align-items:flex-start}}

/* Jasper V1 search remains a board-data index until each photo location is checked. */
.component-controls:has(#componentSide:not([hidden])){grid-template-columns:minmax(210px,1fr) repeat(4,minmax(130px,185px))}
.component-workspace>div:first-child{min-width:0}
.component-workspace>div:first-child .component-list{grid-template-columns:1fr;max-height:820px}
.component-ref small{font-size:9px;color:#a5c6dc}
.component-pager{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:10px;color:var(--muted);font:700 11px ui-monospace,monospace}
.component-pager:empty{display:none}
.component-pager button{border:1px solid var(--line);border-radius:7px;background:#102a42;color:#d9f4ff;padding:8px 10px;cursor:pointer}
.component-pager button:disabled{opacity:.38;cursor:not-allowed}
#componentExplorer .value-badge{max-width:155px;overflow-wrap:anywhere;font-size:10px;line-height:1.25}
#componentExplorer .value-badge.conflict{border-color:#a94b50;color:#ff9098;background:#36191f}
@media(max-width:1000px){.component-controls:has(#componentSide:not([hidden])){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.component-controls:has(#componentSide:not([hidden])){grid-template-columns:1fr}.component-workspace>div:first-child .component-list{max-height:520px}}

/* Package 2.10 — curated component service profiles */
.component-workspace{display:grid;grid-template-columns:minmax(310px,.72fr) minmax(0,1.28fr);gap:12px;align-items:start}.component-workspace>.component-list{grid-template-columns:1fr;max-height:820px}.component-profile{min-width:0;border:1px solid #28516e;border-radius:12px;background:#071522;padding:16px}.profile-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.profile-head h3{font-size:20px;margin:4px 0}.profile-head>strong{color:var(--green);font:800 9px ui-monospace,monospace;letter-spacing:.06em;text-align:right}.component-profile>p{color:var(--muted)}.profile-role{margin:8px 0 12px!important;color:#c6d9e8!important}.profile-picker{display:flex;flex-wrap:wrap;gap:5px;margin:11px 0}.profile-picker button{border:1px solid var(--line);background:#0d2234;color:#9db7ca;border-radius:6px;padding:5px 7px;font:800 9px ui-monospace,monospace;cursor:pointer}.profile-picker button:hover,.profile-picker button.active{border-color:var(--cyan);background:#123651;color:white}.profile-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:12px 0}.profile-summary>div{border:1px solid var(--line);border-radius:8px;background:#091b2b;padding:8px 10px}.profile-summary dt{color:var(--muted);font-size:10px}.profile-summary dd{margin:3px 0 0;font-size:11px;font-weight:700;overflow-wrap:anywhere}.profile-flow{display:flex;align-items:center;gap:5px;flex-wrap:wrap;border:1px solid #28516e;border-radius:9px;background:#0a1d2d;padding:9px;margin:10px 0}.profile-flow span{border-radius:6px;background:#12314a;color:#d7eafa;padding:5px 7px;font:750 9px ui-monospace,monospace}.profile-flow i{color:var(--cyan);font-style:normal}.profile-symptoms{border-top:1px solid var(--line);padding-top:10px}.profile-symptoms h4{margin:0 0 6px;font-size:12px}.profile-symptoms ul{margin:0;padding-left:18px;color:#b5cad9;font-size:11px}.profile-symptoms li::marker{color:var(--cyan)}.profile-details{border-top:1px solid var(--line);margin-top:11px;padding-top:10px}.profile-details summary{cursor:pointer;color:#dcecf7;font-weight:800;font-size:12px}.profile-signal-table{display:grid;margin-top:8px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.profile-signal-head,.profile-signal-table>div{display:grid;grid-template-columns:minmax(90px,.55fr) minmax(150px,1fr) minmax(110px,.72fr);gap:8px;align-items:start;padding:8px 9px}.profile-signal-head{background:#102a42;color:#8fb0c6;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.profile-signal-table>div+div{border-top:1px solid var(--line)}.profile-signal-table span{font-size:10px;overflow-wrap:anywhere}.profile-signal-table span strong,.profile-signal-table span small{display:block}.profile-signal-table span strong{color:var(--cyan);font:800 10px ui-monospace,monospace}.profile-signal-table span small{color:var(--muted);margin-top:2px}.profile-checks{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:6px}.profile-checks li{display:grid;grid-template-columns:27px minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:8px;background:#091b2b;padding:8px}.profile-checks li>span{display:grid;place-items:center;width:25px;height:25px;border-radius:6px;background:#123651;color:var(--cyan);font:800 9px ui-monospace}.profile-checks strong,.profile-checks small,.profile-checks em{display:block}.profile-checks strong{font-size:11px}.profile-checks small{color:var(--muted);font-size:9px}.profile-checks em{color:var(--green);font:700 9px ui-monospace;font-style:normal}.profile-checks button,.profile-actions button{border:1px solid #2d6486;background:#10304a;color:#d9f4ff;border-radius:7px;padding:7px 9px;font-size:9px;font-weight:800;cursor:pointer}.profile-checks button:hover,.profile-actions button:hover{border-color:var(--cyan)}.profile-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.value-badge.profiled{border-color:#2d6486;color:var(--cyan);background:#0c263b}.ic-card.profiled{border-color:#2a5877}.ic-card em{display:block;margin-top:4px;color:var(--green);font:800 8px ui-monospace;font-style:normal;letter-spacing:.05em}
@media(max-width:1180px){.component-workspace{grid-template-columns:1fr}.component-workspace>.component-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:420px}}
@media(max-width:900px){.component-workspace>.component-list{grid-template-columns:1fr}}
@media(max-width:760px){.component-workspace>.component-list{grid-template-columns:1fr}.profile-head{display:block}.profile-head>strong{display:block;text-align:left;margin-top:6px}.profile-summary{grid-template-columns:1fr}.profile-signal-table{overflow-x:auto}.profile-signal-head,.profile-signal-table>div{min-width:520px}.profile-checks li{grid-template-columns:26px 1fr}.profile-checks button{grid-column:1/-1;width:100%}.profile-actions{display:grid}.profile-actions button{width:100%}}

/* Package 2.9 — guided symptom paths and board-aware boot sequence */
.diag-progress{display:flex;gap:5px;margin:10px 0 14px}.diag-progress span{width:27px;height:5px;border-radius:999px;background:#1a354a;color:transparent;overflow:hidden}.diag-progress span.done{background:var(--green)}.diag-progress span.current{background:var(--cyan);box-shadow:0 0 0 2px rgba(56,189,248,.12)}.step-facts{display:grid;gap:7px;margin:12px 0}.step-facts div{display:grid;grid-template-columns:130px 1fr;gap:10px;border-top:1px solid rgba(45,78,103,.55);padding-top:7px}.step-facts dt{color:var(--muted);font-size:11px}.step-facts dd{margin:0;font-size:11px;font-weight:700}.diagnosis-result small{display:block;margin-top:12px;color:#c6d9e8;font-weight:700}.sequence-step.active{border-color:var(--cyan);background:#102d49;box-shadow:inset 0 0 0 1px rgba(56,189,248,.14)}.sequence-step.outcome{border-style:dashed}.sequence-step.outcome b{color:var(--green)}.sequence-detail{margin-top:10px;border:1px solid var(--line);border-radius:13px;background:#071725;padding:18px}.sequence-detail-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.sequence-detail-head h3{font-size:22px;margin:4px 0}.sequence-detail-head>strong{max-width:42%;text-align:right;color:var(--cyan);font:800 12px ui-monospace}.sequence-detail dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin:14px 0}.sequence-detail dl div{display:grid;grid-template-columns:145px 1fr;gap:12px;padding:10px 0;border-top:1px solid rgba(45,78,103,.55)}.sequence-detail dt{color:var(--muted);font-size:11px}.sequence-detail dd{margin:0;font-weight:700;font-size:12px;overflow-wrap:anywhere}.sequence-detail .measure-link{max-width:280px}
@media(max-width:760px){.step-facts div,.sequence-detail dl div{grid-template-columns:1fr;gap:3px}.sequence-detail-head{display:block}.sequence-detail-head>strong{display:block;max-width:none;text-align:left;margin-top:8px}.sequence-detail dl{grid-template-columns:1fr}.sequence-detail .measure-link{max-width:none}.diag-progress{overflow:hidden}.diag-progress span{min-width:18px}}

/* Package 2.11 — bilingual accessibility and legibility pass */
.sr-only,html,body{max-width:100%}
html,body{overflow-x:hidden}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
:where(a,button,input,select,summary,[tabindex]):focus-visible{outline:3px solid #7ddcff;outline-offset:3px;box-shadow:0 0 0 2px #06111e}
.photo-viewport:focus-visible{outline-offset:4px}
button,input,select{font-size:13px}
button:not(.dialog-close),input,select{min-height:36px}
nav a{font-size:14px}
.sidebar-tip,.hero-copy p,.section-heading p,.component-profile>p,.rol-diagnosis p{font-size:13px}
.eyebrow,.kicker,.crumb{font-size:11px}
.path-card small,.rol-instruction small,.rol-geometry-note,.rol-examples-head p,.secondary-code-instructions p,.read-question{font-size:13px}
.detail-panel dt,.diagnostic-context dt,.rail-details b,.rail-detail-data dt,.psu-result dt,.step-facts dt,.sequence-detail dt,.profile-summary dt,.error-summary-grid small{font-size:12px}
.detail-panel dd,.diagnostic-context dd,.rail-details em,.rail-detail-data dd,.psu-result dd,.step-facts dd,.sequence-detail dd,.profile-summary dd,.profile-symptoms ul,.profile-signal-table span,.profile-checks strong,.profile-checks small,.profile-checks em{font-size:13px}
.profile-picker button,.profile-flow span,.profile-checks button,.profile-actions button,.error-checks button{font-size:12px}
.rail-trace-key strong,.calibration-badge,.calibration-note b,.calibration-note strong{font-size:11px}
.rail-trace-key span,.calibration-note p,.error-checks li small,.error-checks li em,.error-area-strip span,.psu-state small{font-size:12px}
.component-row b,.component-row small,.value-badge,.ic-card small,.ic-card em{font-size:12px}
.photo-viewport{cursor:grab}.photo-viewport:active{cursor:grabbing}
.region-selector{display:grid;gap:6px;margin-bottom:18px}.region-selector label{color:var(--muted);font-size:12px;font-weight:700}.region-selector select{width:100%;max-width:100%;padding:9px 10px;color:var(--text);background:#0d273d;border:1px solid var(--line);border-radius:8px}.region-selector select:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.photo-pin{transform:none;display:block;width:0;height:0;overflow:visible}
.photo-pin:before{position:absolute;left:-6px;top:-6px;z-index:2}
.photo-pin span{position:absolute;display:block;width:max-content;z-index:1;overflow-wrap:anywhere}
.photo-pin i{position:absolute;left:0;top:0;height:1px;background:var(--pin,var(--cyan));transform-origin:0 50%;opacity:.8}
.photo-pin-focus{z-index:4;--pin:#67d7f3}
.photo-pin-focus:before{box-shadow:0 0 0 3px #071522,0 0 0 6px #67d7f3}
.photo-pin-focus span{border-color:#67d7f3!important;background:#10314a!important;box-shadow:0 0 0 1px #67d7f3}
.photo-pin.provisional{--pin:#e7bd55}
.photo-pin.provisional:before{width:var(--vicinity-size,52px);height:var(--vicinity-size,52px);left:0;top:0;transform:translate(-50%,-50%);border-radius:5px;background:rgba(231,189,85,.12);border:2px dashed #e7bd55;box-shadow:0 0 0 3px rgba(7,17,30,.8)}
.photo-pin.provisional:after{content:"";position:absolute;left:0;top:0;width:7px;height:7px;transform:translate(-50%,-50%);border:1px solid #071522;border-radius:50%;background:#e7bd55;z-index:3}
.photo-pin.provisional span{border-style:dashed;background:rgba(34,29,15,.94);min-width:165px;max-width:220px;padding:8px 10px}
.photo-pin.provisional b,.photo-pin.provisional small{color:#f5d68d}
.photo-pin.provisional b{font-size:13px}
.photo-pin.provisional small{font-size:11px;line-height:1.3;white-space:normal}
.photo-pin.provisional em{display:block;margin-top:5px;color:#f1f6fa;font:800 11px ui-monospace,monospace;font-style:normal}
.context-photo-focus{margin:12px 0 0;padding:10px 12px;border-left:3px solid #67d7f3;background:#10283a;color:#cce4f0;font-size:12px}.context-photo-focus strong{color:#9de8f8;font:800 13px ui-monospace,monospace;margin-left:5px}.context-photo-focus small{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.context-closeup-note{margin:12px 0 0;padding:10px 12px;border:1px solid #395d70;border-radius:8px;background:#10283a;color:#cce4f0;font-size:12px}.context-closeup-note strong{display:block;color:var(--cyan);margin-top:3px}
@media(max-width:760px){button:not(.dialog-close),input,select{min-height:42px}.top-actions{align-items:flex-end}.language-switch button{font-size:11px}.zoom-controls{width:100%;justify-content:flex-start}.photo-viewport{min-height:360px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.sequence-point-picker{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.sequence-point-picker>span{display:block;margin-bottom:9px;color:var(--muted);font-size:12px;font-weight:700}
.sequence-point-picker>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}
.sequence-point-picker button{min-height:58px;padding:10px 12px;text-align:left;border:1px solid var(--line);border-radius:9px;background:#10263a;cursor:pointer}
.sequence-point-picker button:hover,.sequence-point-picker button:focus-visible{border-color:var(--cyan);background:#14354d}
.sequence-point-picker button strong,.sequence-point-picker button small{display:block}
.sequence-point-picker button strong{color:var(--cyan);font:800 12px ui-monospace,monospace}
.sequence-point-picker button small{margin-top:3px;color:var(--text);font-size:12px}
.calibration-note{color:var(--muted);font-size:12px;line-height:1.45}

/* Xbox 360 review theme: green is the interaction accent; amber/red keep diagnostic meaning. */
:root{--blue:#137a4b;--cyan:#67e49f;--green:#50d68c}
nav a:hover,nav a.active{background:#102e26}
.model-option.active{background:#103628;box-shadow:inset 0 0 0 1px rgba(103,228,159,.25)}
.ring-buttons button.active,.language-switch button.active,.state-tabs button.active,.side-switch button.active{background:var(--blue);border-color:var(--blue);color:#fff}
.zoom-tabs button.active{background:#164b33;border-color:var(--cyan)}
.symptom-card.active,.symptom-card:hover,.component-row:hover,.component-row.active{background:#102e26}
.read-progress-step.current{background:#103628;border-color:var(--cyan)}
.sequence-step.active{background:#103628;box-shadow:inset 0 0 0 1px rgba(103,228,159,.2)}
.rol-ring-main .rol-segment:hover{stroke:#46a975}
.rol-ring-main .rol-segment:focus-visible{filter:drop-shadow(0 0 9px rgba(103,228,159,.55))}
.photo-pin-focus{--pin:#67e49f}
.photo-pin-focus:before{box-shadow:0 0 0 3px #071522,0 0 0 6px #67e49f}
.photo-pin-focus span{border-color:#67e49f!important;background:#103628!important;box-shadow:0 0 0 1px #67e49f}
.context-photo-focus{border-left-color:#67e49f;background:#102e26}
.context-photo-focus strong{color:#9af2be}
:where(a,button,input,select,summary,[tabindex]):focus-visible{outline-color:#9af2be}
