/* Learning and procurement workspace. Scoped so existing search pages stay stable. */
[x-cloak]{display:none!important}
.workbench{--ink:#163b38;--accent:#087f72;--line:#d9e5e2;--wash:#edf6f3;color:#243d43}
.workbench h1{line-height:1.45;letter-spacing:-.035em;max-width:32em}
.workbench h2{font-size:1.25rem;line-height:1.6;margin-top:1.5rem}
.workbench h3{font-size:1rem}
.workbench p,.workbench li,.workbench dd{line-height:1.85}
.workbench .text-sm{font-size:1rem}
.workbench .text-xs{font-size:.8125rem}
.workbench :is(input,select,button,a,summary):focus-visible{outline:3px solid #14b8a6;outline-offset:3px}
.workbench :is(input,select){min-height:44px;max-width:100%}
.workbench :is(section,h2,h3){scroll-margin-top:145px}
.workbench .eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.16em;color:var(--accent);margin-bottom:.65rem}
.workbench .visual-panel{background:linear-gradient(125deg,#edf6f3,#f8faf9);border:1px solid var(--line);border-radius:18px;padding:24px;margin:24px 0}
.workbench .visual-panel svg{width:100%;height:auto;max-height:240px;display:block}
.workbench .visual-panel svg text{font-family:inherit;fill:var(--ink);font-size:14px}
.workbench .visual-caption{font-size:.8125rem;color:#516663;margin-top:12px}
.workbench .section-nav{position:sticky;top:var(--site-nav-height,65px);z-index:30;display:flex;gap:8px;background:#fffffff5;border:1px solid var(--line);border-radius:12px;padding:8px;margin:24px 0;overflow-x:auto;box-shadow:0 4px 16px #163b3808}
.workbench .section-nav a{white-space:nowrap;padding:10px 14px;border-radius:7px;font-size:.875rem;color:var(--ink)}
.workbench .section-nav a:hover,.workbench .section-nav a[aria-current]{background:var(--wash)}
.workbench .choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}
.workbench .choice-card{border:1px solid var(--line);border-top:4px solid #087f72;border-radius:12px;padding:24px;background:#fff}
.workbench .choice-card:nth-child(2){border-top-color:#5875ad}
.workbench .choice-card h2{margin:0 0 12px}
.workbench .choice-tag{display:inline-block;font-size:.75rem;letter-spacing:.1em;color:#087f72;margin-bottom:12px;font-weight:700}
.workbench .reading{font-size:1rem;line-height:1.9;max-width:76ch}
.workbench .sources{border-top:1px solid var(--line);margin:32px 0;padding:18px 0;color:#526966;font-size:.8125rem}
.workbench .sources summary{cursor:pointer;font-weight:600;min-height:32px}
.workbench .sources ul{margin:16px 0}.workbench .sources a{overflow-wrap:anywhere}
.workbench .table-scroll{max-height:70vh;overflow:auto;border:1px solid var(--line);border-radius:12px;background:white}
.workbench table{border-collapse:separate;border-spacing:0;width:100%}
.workbench th{position:sticky;top:0;z-index:2;background:#eff5f3;color:#36544f;font-weight:600}
.workbench td{line-height:1.8;border-bottom:1px solid #edf1ef}
.workbench tbody tr:nth-child(even){background:#f8faf9}
.workbench .compare-table th:nth-child(2){color:#087f72}.workbench .compare-table th:nth-child(3){color:#46679e}
.workbench .compare-table td:first-child{width:20%;white-space:normal}
.workbench .check-row{display:grid;grid-template-columns:24px 1fr;gap:12px;padding:16px;border-bottom:1px solid var(--line);background:#fff}
.workbench .check-row input[type=checkbox]{min-height:20px;width:20px;margin-top:5px;accent-color:var(--accent)}
.workbench .check-row label{display:block;font-weight:500}
.workbench .check-row input[type=text]{display:block;width:100%;border:1px solid var(--line);border-radius:6px;padding:8px 12px;margin-top:8px;font-size:.9rem}
.workbench .primary-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;background:var(--ink);color:#fff;border-radius:8px;font-size:.875rem;font-weight:600}
.workbench .primary-action:hover{background:#24635b}
.workbench .directory-search{display:block;width:100%;border:1px solid #a4bfb7;border-radius:12px;padding:15px 18px;background:#fff;font-size:1rem}
.workbench .purpose-filters{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 24px}
.workbench .purpose-filters button{border:1px solid var(--line);border-radius:24px;padding:10px 16px;font-size:.875rem;background:white}
.workbench .purpose-filters button[aria-pressed=true]{background:var(--ink);color:white}
.workbench .tool-card{border-radius:12px;transition:box-shadow .15s,border-color .15s}
.workbench .tool-card:hover{border-color:#72a89a;box-shadow:0 6px 20px #163b3810}
.workbench .tool-card .card-kind{font-size:.7rem;color:#526966;letter-spacing:.08em;margin-bottom:12px}
.workbench .result-panel{background:#163b38;color:#fff;border-radius:16px;border:0}
.workbench .result-panel :is(dt,dd,.text-emerald-800,.text-gray-600,.text-slate-900){color:#fff}
.workbench .result-panel dd{font-size:1.25rem}.workbench .result-panel dl>div:first-child dd{font-size:1.8rem}
.workbench .mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.workbench .mini-card{border:1px solid var(--line);border-radius:12px;padding:16px;background:white;min-width:0}
.workbench .mini-card svg{height:120px}
.workbench .guide-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:0;background:transparent}
.workbench .guide-types>div{display:block;border:1px solid var(--line);border-radius:12px;background:white;padding:20px}
.workbench .guide-types dd{margin-top:10px}
.workbench .selection-steps{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:18px 0 28px;font-size:.875rem}
.workbench .selection-steps b{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#163b38;color:white;margin-right:5px;font-size:.75rem}
.workbench .selection-steps a{text-decoration:underline;text-underline-offset:4px}
.workbench .selection-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.workbench .selection-column h3{font-weight:600;margin-bottom:14px}
.workbench .topic-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}
.workbench .topic-buttons button{min-height:44px;text-align:left;padding:8px 12px;border:1px solid #c3d5cf;background:white;border-radius:8px;font-size:.875rem}
.workbench .topic-buttons button[aria-pressed=true]{background:#163b38;border-color:#163b38;color:white}
.workbench .selection-note{padding:20px;background:white;border:1px solid var(--line);border-radius:12px;min-height:150px}
.workbench .selection-note h4{font-weight:700;margin-bottom:8px}
.workbench .selection-note p{font-size:1rem}
.workbench .focus-heading{font-weight:700;margin-top:24px}
.workbench .related-desk{border-top:1px solid var(--line);padding:24px 0}
.workbench .related-desk h3{margin-bottom:16px;font-weight:600}
.workbench .reference-picker{border:1px solid var(--line);border-radius:12px;padding:18px;margin:24px 0;background:#fff}
.workbench .reference-picker summary{font-weight:600;cursor:pointer;min-height:30px}
.workbench .reference-facts>div{border-top:1px solid var(--line);padding:14px 0}
.workbench .reference-facts dt{font-size:.8rem;color:#56746b;margin-bottom:6px}
.workbench .reference-facts dd{font-size:1rem;overflow-wrap:anywhere}
.workbench .visual-status{font-size:.875rem;border-left:3px solid #087f72;padding-left:12px}
.workbench .visual-status.is-warning{border-color:#b45309;color:#92400e}
.workbench .chart-legend{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:16px;font-size:.875rem}
.workbench .chart-legend span::before{content:'';display:inline-block;width:9px;height:9px;background:#087f72;border-radius:50%;margin-right:8px}
.workbench .chart-legend span+span::before{background:#5875ad}
.workbench .diagram-wire{fill:none;stroke:#087f72;stroke-width:2.5;stroke-linejoin:round}
.workbench .diagram-box{fill:white;stroke:#b0cbc2;stroke-width:2}
.workbench .diagram-axis{fill:none;stroke:#90aaa1;stroke-width:1.5}
.workbench .diagram-line{fill:none;stroke:#087f72;stroke-width:3;stroke-linejoin:round}
.workbench .diagram-line.secondary{stroke:#5875ad;stroke-dasharray:7 3}
.workbench .diagram-ideal{fill:none;stroke:#5875ad;stroke-width:2;stroke-dasharray:5 5}
.workbench .diagram-resonance{fill:none;stroke:#a65e1c;stroke-width:1.5;stroke-dasharray:2 5}
.workbench .learning-diagram h3,.workbench .connection-guide h3{font-weight:650;margin-bottom:16px}
.workbench .learning-diagram svg{max-height:310px}
.workbench .diagram-pair{gap:14px}.workbench .diagram-pair .choice-card{padding:16px;min-width:0}
.workbench .diagram-pair svg{max-height:none}.workbench .diagram-pair svg text{font-size:15px}
.workbench .diagram-pair figcaption,.workbench .connection-guide figcaption{font-size:.875rem;line-height:1.8;margin-top:16px}
.workbench .diagram-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:16px 0}
.workbench .diagram-facts p{font-size:.8125rem;background:white;padding:12px;border:1px solid var(--line);border-radius:8px}
.workbench .diagram-facts strong{display:block;font-size:1.05rem;color:var(--ink);overflow-wrap:anywhere}
.workbench .circuit-scroll{overflow:auto;max-height:320px;padding:15px 2px;margin:16px 0}
.workbench .circuit-pair .choice-card{min-width:0;padding:16px}
.workbench .component-series{display:flex;align-items:center;width:max-content;min-width:100%}
.workbench .component-branch{display:flex;align-items:center;justify-content:center;position:relative;min-height:75px}
.workbench .component-branch::before,.workbench .component-branch::after{content:'';height:2px;min-width:15px;background:#087f72;flex:1}
.workbench .component-box{display:flex;flex-direction:column;align-items:center;border:2px solid #087f72;padding:7px 10px;min-width:70px;background:white;font-size:.8125rem}
.workbench .component-parallel{border-left:2px solid #087f72;border-right:2px solid #087f72;margin:0 10px}
.workbench .component-parallel .component-branch{min-height:80px}
.workbench .marking-parts{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;padding:24px 0}
.workbench .marking-parts span{background:#163b38;color:white;padding:12px 22px;border-radius:8px;font-family:monospace;font-size:2rem;overflow-wrap:anywhere;max-width:100%}
.workbench .marking-parts .multiplier{background:#46679e}
.workbench .marking-result{font-size:1.5rem;font-weight:700;text-align:center}
.workbench .power-route{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:24px 0;text-align:center;font-size:.875rem}
.workbench .power-route b{border:1px solid var(--line);border-radius:8px;padding:20px 16px;background:white}
.workbench .secondary-text{color:#46679e}
.workbench .ratio-bar{display:flex;height:32px;background:#e0e8e5;border-radius:5px;overflow:hidden;margin-bottom:16px}
.workbench .ratio-bar span{background:#087f72}.workbench .ratio-bar span+span{background:#5875ad}
.workbench .process-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0;padding:0;list-style:none}
.workbench .process-flow.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.workbench .process-flow li{position:relative;border-top:3px solid #087f72;background:white;border-radius:8px;padding:16px 12px;min-width:0;font-size:.8125rem}
.workbench .process-flow li+li::before{content:'→';position:absolute;left:-15px;top:20px;color:#5875ad}
.workbench .process-flow b,.workbench .process-flow span{display:block}.workbench .process-flow b{font-size:.9375rem;margin-bottom:8px}
.workbench .procurement-flow .reference-picker{margin:16px 0 0}
@media(max-width:640px){.workbench .selection-columns{grid-template-columns:1fr}.workbench .selection-steps{gap:6px;font-size:.75rem}.workbench .selection-steps b{width:23px;height:23px}.workbench .reference-picker{padding:14px}}
@media(max-width:640px){
 .workbench .choice-grid,.workbench .guide-types{grid-template-columns:1fr}
 .workbench .visual-panel{padding:16px}.workbench .choice-card{padding:18px}
 .workbench .visual-panel svg text{font-size:19px}
 .workbench .diagram-pair svg text{font-size:18px}
 .workbench .process-flow,.workbench .process-flow.three{grid-template-columns:1fr}
 .workbench .process-flow li+li::before{content:'↓';left:20px;top:-23px}
 .workbench .compare-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .workbench .compare-table,.workbench .compare-table tbody,.workbench .compare-table tr,.workbench .compare-table td{display:block;width:100%}
 .workbench .compare-table td:first-child{width:100%;background:#edf6f3;font-weight:700}
 .workbench .compare-table td[data-label]::before{content:attr(data-label);display:block;color:var(--accent);font-weight:600;font-size:.8125rem;margin-bottom:6px}
 .workbench .compare-table td:last-child::before{color:#46679e}
 .workbench .compare-scroll{max-height:none;overflow:visible}
 .workbench .section-nav a{padding:8px 10px;font-size:.8rem}
}
@media print{.workbench .section-nav{position:static}.workbench .table-scroll{max-height:none;overflow:visible}.workbench .sources{break-inside:avoid}}
.workbench .lab-visual h3{font-weight:650;margin-bottom:20px}
.workbench .lab-visual h4{font-weight:650;margin-bottom:12px}
.workbench .lab-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}
.workbench .lab-controls label,.workbench .lab-select{font-size:.875rem;display:block;min-width:0}
.workbench .lab-controls input,.workbench .lab-controls select,.workbench .lab-select select{display:block;width:100%;max-width:100%;margin-top:8px;border:1px solid #bdcdc7;border-radius:7px;background:white;padding:10px;min-height:44px}
.workbench .lab-select input{display:block;width:100%;margin:18px 0}
.workbench .lab-visual svg{max-height:340px}
.workbench .lab-visual .diagram-pair svg{max-height:260px}
.workbench .lab-visual .diagram-pair p{font-size:.875rem}
.workbench .circuit-muted{fill:none;stroke:#9aacaa;stroke-width:2;stroke-linejoin:round}
.workbench .current-path{fill:none;stroke:#b45309;stroke-width:3.5;stroke-linejoin:round}
.workbench .diagram-box.energized{fill:#cbe9dc;stroke:#087f72}
.workbench .magnitude-bars>div{height:32px;background:#e6ece9;border-radius:4px;overflow:hidden;margin:8px 0 20px}
.workbench .magnitude-bars span{display:block;height:100%;background:#087f72}
.workbench .magnitude-bars span.second{background:#5875ad}
.workbench .cost-bar,.workbench .power-bar{display:flex;height:32px;background:#e6ece9;overflow:hidden;border-radius:4px;margin:14px 0}
.workbench .cost-bar .part-0,.workbench .power-bar span{background:#087f72}
.workbench .cost-bar .part-1,.workbench .power-bar span+span{background:#b45309}
.workbench .cost-bar .part-2{background:#5875ad}
.workbench .power-legend span+span::before{background:#b45309}
.workbench .lab-visual .chart-legend span:nth-child(3)::before{background:#b45309}
.workbench .structure-visual h2{font-size:1.15rem;margin:12px 0 24px;line-height:1.7}
.workbench .mechanism-visual>h2{margin-bottom:12px}
.workbench .diagram-instruction{font-size:.8rem;color:#61736a;margin-bottom:20px}
.workbench .mechanism-visual svg{max-width:540px;max-height:none;margin:0 auto}
.workbench .mechanism-visual .diagram-pair svg{max-height:none}
.workbench .mechanism-visual svg text{font-size:16px}
.workbench .mechanism-visual svg a:hover .diagram-box,.workbench .mechanism-visual svg a:focus .diagram-box{fill:#c7eadb;stroke-width:3}
.workbench .chip-boundary{fill:#fff;stroke:#5875ad;stroke-width:2;stroke-dasharray:6 5}
.workbench .chart-grid{fill:none;stroke:#cbd9d2;stroke-width:1}
.workbench .curve-a,.workbench .curve-b,.workbench .curve-z{fill:none;stroke:#087f72;stroke-width:3}
.workbench .curve-b{stroke:#b45309;stroke-dasharray:8 4}
.workbench .curve-z{stroke:#5875ad;stroke-dasharray:2 5;stroke-width:4}
.workbench .chart-cursor{stroke:#61736a;stroke-width:1;stroke-dasharray:3 3}
.workbench .chart-readouts{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}
.workbench .chart-readouts p{flex:1;min-width:130px;background:white;padding:14px;border:1px solid #d8e5de;border-radius:8px}
.workbench .chart-readouts b{display:block;font-size:.8rem}.workbench .chart-readouts span{display:block;font-size:1.25rem;font-variant-numeric:tabular-nums;margin-top:8px}
.workbench .mechanism-takeaway{padding:18px;background:white;border-left:3px solid #087f72;margin-top:20px;font-size:.875rem;line-height:1.8}
.workbench .memory-cell{fill:#fff;stroke:#b5c6bd;stroke-width:1}
.workbench .memory-cell.selected{fill:#b9dfce;stroke:#087f72;stroke-width:2}
.workbench .diagram-link-text{fill:#087f72;text-decoration:underline}
.workbench .diagram-table-links,.workbench .reading-next{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;font-size:.85rem;align-items:center}
.workbench .diagram-table-links a,.workbench .reading-next a,.workbench .procurement-next a{padding:11px 14px;background:white;border:1px solid #bdcdc7;border-radius:8px;color:#176d61;min-height:44px}
.workbench .reading-next a:first-child{background:#163b38;color:white}
.workbench .diagram-return{display:block;font-size:.75rem;margin-top:10px;text-decoration:underline;color:#087f72}
.workbench tr:target{background:#e3f2ea;outline:2px solid #087f72;outline-offset:-2px}
.workbench .procurement-checks>p,.workbench .procurement-next p{font-size:.8rem;color:#61736a;line-height:1.7;margin:12px 0}
.workbench .procurement-checks label{display:flex;align-items:flex-start;gap:12px;padding:15px;background:white;border:1px solid #d8e5de;border-radius:8px;margin:8px 0;font-size:.875rem;line-height:1.8}
.workbench .procurement-checks input{width:20px;height:20px;min-width:20px;margin-top:3px;accent-color:#087f72}
.workbench .procurement-next{padding:20px;background:#edf5ef;border-radius:10px;margin-top:20px}
.workbench .procurement-next a{display:inline-block;margin:5px 5px 0 0;font-size:.85rem}
.workbench .mechanism-visual .segmented{flex-wrap:wrap}
@media(max-width:640px){.workbench .mechanism-visual svg text{font-size:17px}.workbench .mechanism-visual{padding:20px 14px}.workbench .diagram-table-links strong{flex-basis:100%}.workbench .mechanism-visual .diagram-pair{gap:26px}}
.workbench .structure-visual h3{font-weight:650;margin:24px 0 16px}
.workbench .structure-visual figure{min-width:0}
.workbench .structure-visual svg{width:100%;height:auto;display:block}
.workbench .structure-visual .diagram-pair svg{max-height:300px}
.workbench .reference-wire{fill:none;stroke:#5875ad;stroke-width:2;stroke-dasharray:6 4}
.workbench .isolation-line{stroke:#b45309;stroke-width:2;stroke-dasharray:6 4}
.workbench .toggle-label{display:flex;align-items:center;gap:12px}
.workbench .toggle-label input{width:20px;min-height:20px;margin:0;flex-shrink:0}
.workbench .segmented{display:flex;gap:8px;margin:20px 0}
.workbench .segmented button{min-height:44px;padding:10px 18px;border:1px solid #bdcdc7;border-radius:8px;background:white}
.workbench .segmented button[aria-pressed=true]{background:#163b38;color:white;border-color:#163b38}
.workbench .frame-flow{display:grid;grid-template-columns:1fr 2fr 1fr;gap:8px;margin:20px 0;padding:0;list-style:none}
.workbench .frame-flow li{padding:16px 8px;border:1px solid #bdcdc7;background:white;border-radius:8px;text-align:center;font-size:.85rem}
.workbench .frame-flow li.active{background:#e0eee7;border-color:#087f72}
.workbench .byte-grid{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:4px;margin:12px 0 24px}
.workbench .byte-grid span{aspect-ratio:1.8;border:1px solid #b7cdc4;border-radius:3px;background:white}
.workbench .byte-grid .filled{background:#087f72;border-color:#087f72}
.workbench .range-label{display:flex;justify-content:space-between;gap:12px;margin:8px 0;font-size:.875rem;flex-wrap:wrap}
.workbench .range-label strong{font-weight:600}
.workbench .range-row{margin:24px 0}
.workbench .range-track{position:relative;height:32px;background:repeating-linear-gradient(to right,#dce8e2 0 1px,transparent 1px 25%),#fff;border-radius:4px}
.workbench .available-range,.workbench .required-range{position:absolute;display:block;height:12px;top:3px;background:#087f72;min-width:2px}
.workbench .required-range{top:19px;height:8px;background:#b45309}
.workbench .range-axis{display:flex;justify-content:space-between;font-size:.75rem;margin-top:24px}
.workbench .log-axis{height:30px;position:relative;margin:24px 12px 0;font-size:.8rem}
.workbench .log-axis span{position:absolute;transform:translateX(-50%)}
.workbench .log-track{position:relative;height:18px;border-bottom:1px solid #a9c3b9;margin:0 12px}
.workbench .log-track i{position:absolute;top:11px;width:12px;height:12px;transform:translateX(-50%);border-radius:50%;background:#087f72}
.workbench .log-interval{position:absolute;top:15px;height:4px;background:#087f72}
.workbench .spectrum-strip{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));margin:22px 0 8px;border:1px solid #a9c3b9;border-radius:7px;overflow:hidden}
.workbench .spectrum-strip span{padding:25px 2px;font-size:.75rem;text-align:center;background:#e0eee7;border-right:1px solid white}
.workbench .spectrum-strip span.active{background:#163b38;color:white}
.workbench .stage-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.workbench .stage-buttons button{padding:12px 16px;border:1px solid #bdcdc7;border-radius:8px;background:white;text-align:left;min-height:48px}
.workbench .stage-buttons small{display:block;color:#087f72}
.workbench .stage-buttons button[aria-pressed=true]{background:#163b38;color:white}
.workbench .stage-buttons button[aria-pressed=true] small{color:#c7eadb}
.workbench .term-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.workbench .term-cards>div{padding:20px;background:white;border:1px solid #d6e2db;border-radius:10px}
.workbench .term-cards dt{font-weight:650}.workbench .term-cards small{display:block;font-weight:400;font-size:.8rem;margin-top:8px}.workbench .term-cards dd{margin-top:12px;font-size:.875rem;line-height:1.8}
.workbench tr[id]{scroll-margin-top:150px}
.workbench .visual-resources{margin:36px 0}
.workbench .visual-resources>p{font-size:.875rem;color:#61736a;margin:12px 0}
.workbench .visual-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}
.workbench .visual-link-card{display:block;background:white;border:1px solid #cbded3;border-radius:14px;padding:18px;min-width:0;text-decoration:none}
.workbench .visual-link-card:hover{border-color:#087f72;box-shadow:0 5px 18px #163b3810}
.workbench .visual-link-card:focus-visible{outline:3px solid #087f72;outline-offset:3px}
.workbench .visual-preview{display:block;width:100%;height:100px;background:#f0f6f3;border-radius:8px;margin-bottom:16px}
.workbench .visual-link-card strong{display:block;font-size:1rem;margin:8px 0;line-height:1.6}
.workbench .visual-link-card p{font-size:.8125rem;color:#61736a;line-height:1.8}
@media(max-width:640px){
 .workbench .term-cards,.workbench .visual-card-grid{grid-template-columns:1fr}
 .workbench .structure-visual svg text{font-size:17px}
 .workbench .structure-visual svg[viewBox^="0 0 620"] text,.workbench .structure-visual svg[viewBox^="0 0 600"] text{font-size:22px}
 .workbench .frame-flow{grid-template-columns:1fr}.workbench .frame-flow li+li::before{content:'↓';display:block;margin-bottom:8px}
 .workbench .byte-grid{gap:3px;grid-template-columns:repeat(16,minmax(0,1fr))}
 .workbench .spectrum-strip span{font-size:.6rem;padding:22px 0}
 .workbench .range-label span{font-size:.8rem}
}
.workbench .power-comparison-row{margin:24px 0}.workbench .power-comparison-row p{font-size:.875rem}
.workbench .size-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}
.workbench .size-gallery .mini-card{min-width:0;overflow-wrap:anywhere}
.workbench .size-gallery svg{width:100%;height:auto;display:block}
.workbench .size-gallery h3{font-size:.95rem;min-height:2.5em}
.workbench .package-gallery p{font-size:.8125rem;line-height:1.7}
.workbench .ip-code{display:flex;gap:16px;align-items:flex-start;justify-content:center;margin:24px 0}
.workbench .ip-code b{font-size:2.8rem}.workbench .ip-code span{border-bottom:3px solid #087f72;min-width:65px;text-align:center}.workbench .ip-code span+span{border-color:#5875ad}.workbench .ip-code small{display:block}
.workbench .trade-route{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:0;margin:24px 0;list-style:none}
.workbench .trade-route li{border-top:4px solid #c5d3cd;background:white;padding:16px 8px;font-size:.8125rem;border-radius:5px;min-width:0}
.workbench .trade-route li.risk-point{border-color:#b45309;background:#fff6e9}
.workbench .trade-route b{display:block;margin-top:8px;color:#93480a}
@media(max-width:640px){
 .workbench .lab-controls{grid-template-columns:1fr}
 .workbench .size-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .workbench .size-gallery .mini-card{padding:10px}
 .workbench .trade-route{grid-template-columns:1fr}
 .workbench .trade-route li{padding:12px;display:flex;align-items:center;justify-content:space-between}
 .workbench .trade-route b{margin:0 0 0 8px}
 .workbench .lab-visual svg text{font-size:18px}
}

/* Category hub: connect discovery, learning and procurement. */
.category-directory .category-hero{padding:8px 0 24px}
.category-directory .category-hero>p{margin:12px 0 20px;color:#526966}
.category-directory .category-intents{display:flex;flex-wrap:wrap;gap:10px 24px;font-size:.875rem;color:#087f72;font-weight:600}
.category-directory .category-intents a{display:inline-flex;align-items:center;min-height:44px;border-bottom:1px solid #b5cfc6}
.category-directory .category-search{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:16px;padding:22px;background:#edf6f3;border:1px solid #d9e5e2;border-radius:16px}
.category-directory .category-search label{display:block;font-size:.8125rem;font-weight:600;margin-bottom:8px}
.category-directory .category-search select{width:100%;min-height:56px;background:white;border:1px solid #a4bfb7;border-radius:12px;padding:12px;font-size:.875rem}
.category-directory .category-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:32px 0 16px;flex-wrap:wrap}
.category-directory .category-section-heading h2{margin:0;font-size:1.125rem;font-weight:700}
.category-directory .category-section-heading>a,.category-directory .category-section-heading>span{font-size:.8125rem;color:#087f72}
.category-directory .category-featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.category-directory .category-featured .choice-tag{margin-bottom:0}
.category-directory .category-group{margin:0 0 24px;border:1px solid #d9e5e2;border-radius:16px;overflow:hidden;background:#fff}
.category-directory .category-group-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:18px 22px;background:#f1f6f4;flex-wrap:wrap}
.category-directory .category-group-heading h3{font-size:1.125rem;font-weight:700;margin:0}
.category-directory .category-group-heading h3 span{margin-left:8px;color:#087f72}
.category-directory .category-group-heading>span{font-size:.75rem;color:#526966}
.category-directory .category-leaves{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px}
.category-directory .category-leaf{border:1px solid #e1e9e5;border-radius:10px;display:flex;flex-direction:column;min-width:0}
.category-directory .category-maker-link{padding:14px 14px 10px;display:flex;flex-direction:column;flex:1;gap:8px}
.category-directory .category-maker-link strong{font-size:.875rem;font-weight:600;line-height:1.6}
.category-directory .category-maker-link span{font-size:.75rem;color:#526966}
.category-directory .category-guide-link{padding:10px 14px;border-top:1px solid #e8efeb;color:#087f72;font-size:.8125rem;min-height:44px}
.category-directory .category-leaf a:hover{background:#f1f7f4;color:#087f72}
.category-directory .category-reading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;border-top:1px solid #e1e9e5;margin:0 20px;padding:18px 0}
.category-directory .category-reading h4{font-size:.75rem;color:#526966;font-weight:600;margin-bottom:8px}
.category-directory .category-reading a{display:block;min-height:38px;padding:7px 0;font-size:.8125rem;color:#087f72;line-height:1.7}
.category-directory .category-reading a:hover{text-decoration:underline;text-underline-offset:4px}
.category-directory .category-reading summary{font-size:.8125rem;cursor:pointer;padding:12px 0;color:#526966}
.category-directory .category-filter-status{margin-bottom:20px}
.category-directory .category-filter-status button{min-height:44px;color:#087f72;text-decoration:underline;font-size:.875rem}
.category-directory .category-next{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;background:#edf6f3;padding:24px;border-radius:16px;margin-top:32px}
.category-directory .category-next h2{margin:0 0 8px;font-size:1.125rem;font-weight:700}
.category-directory .category-next p{font-size:.875rem;color:#526966}
@media(max-width:760px){
 .category-directory .category-search{grid-template-columns:1fr;padding:16px}
 .category-directory .category-leaves{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;gap:10px}
 .category-directory .category-featured-grid{grid-template-columns:1fr}
 .category-directory .category-featured .visual-link-card{display:grid;grid-template-columns:84px minmax(0,1fr);column-gap:14px;padding:14px}
 .category-directory .category-featured .visual-preview{grid-row:1/4;height:84px;margin:0;align-self:center}
 .category-directory .category-featured .visual-link-card strong{font-size:.875rem;margin:4px 0}
 .category-directory .category-featured .visual-link-card p{font-size:.75rem}
 .category-directory .category-reading{grid-template-columns:1fr;gap:14px;margin:0 14px}
 .category-directory .category-group-heading{padding:16px}
}
@media(max-width:360px){.category-directory .category-leaves{grid-template-columns:1fr}}

/* Homepage reading area; search remains the primary entrance. */
.home-reading-shortcuts{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 24px;margin:20px auto 0;font-size:.875rem;font-weight:600;color:#087f72}
.home-reading-shortcuts a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.home-editorial{padding-top:48px;padding-bottom:40px;scroll-margin-top:90px}
.home-editorial .home-section-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;margin-bottom:22px}
.home-editorial .home-section-heading h2{font-size:1.75rem;font-weight:700;margin:0}
.home-editorial .home-section-heading h3{font-size:1.125rem;font-weight:700;margin:0}
.home-editorial .home-section-heading p{font-size:.875rem;color:#526966;margin-top:8px}
.home-editorial .home-section-heading>a{font-size:.875rem;font-weight:600;color:#087f72;min-height:44px;display:inline-flex;align-items:center}
.home-editorial .home-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-editorial .visual-link-card{display:flex;flex-direction:column}
.home-editorial .home-article-label{font-size:.75rem;color:#526966}
.home-editorial .home-article-more{font-size:.8125rem;color:#087f72;font-weight:600;padding-top:16px;margin-top:auto}
.home-editorial .home-guide-index{margin-top:28px;padding:24px;background:#edf6f3;border:1px solid #d9e5e2;border-radius:16px}
.home-editorial .home-guide-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.home-editorial .home-guide-links a{display:flex;flex-direction:column;justify-content:space-between;gap:8px;font-size:.875rem;font-weight:600;background:white;border:1px solid #d9e5e2;border-radius:10px;padding:14px}
.home-editorial .home-guide-links a:hover{border-color:#087f72}
.home-editorial .home-guide-links span{font-size:.75rem;font-weight:400;color:#087f72}
.home-manufacturers{padding-top:24px;padding-bottom:48px}
@media(max-width:760px){
 .home-editorial .home-article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .home-editorial .home-guide-links{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-editorial .home-guide-index{padding:18px}
}
@media(max-width:480px){
 .home-editorial .home-article-grid{grid-template-columns:1fr}
 .home-editorial .visual-link-card{display:grid;grid-template-columns:82px minmax(0,1fr);column-gap:14px;padding:14px}
 .home-editorial .visual-preview{grid-row:1/5;height:82px;align-self:center;margin:0}
 .home-editorial .visual-link-card strong{font-size:.875rem;margin:5px 0}
 .home-editorial .visual-link-card p{font-size:.75rem}
 .home-editorial .home-article-more{padding-top:10px}
 .home-editorial .home-section-heading h2{font-size:1.5rem}
}

/* Comparison article previews, with compact mobile reading rows. */
.compare-directory .compare-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.compare-directory .compare-article-card{display:block;background:white;border:1px solid #d9e5e2;padding:18px;border-radius:14px;min-width:0}
.compare-directory .visual-preview{height:118px;margin-bottom:18px}
.compare-directory .compare-article-card h2{font-size:1rem;font-weight:600;color:#163b38;line-height:1.7;margin:0 0 10px}
.compare-directory .compare-article-card p{font-size:.8125rem;color:#526966;line-height:1.85}
.compare-directory .compare-article-card .card-kind{margin-bottom:8px}
.compare-directory .compare-read-more{display:block;margin-top:16px;font-size:.8125rem;font-weight:600;color:#087f72}
@media(max-width:1000px){.compare-directory .compare-article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 .compare-directory .compare-article-grid{grid-template-columns:1fr;gap:12px}
 .compare-directory .compare-article-card{padding:14px}
 .compare-directory .has-preview{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px}
 .compare-directory .visual-preview{height:86px;margin:0;align-self:start}
 .compare-directory .compare-article-card h2{font-size:.875rem}
 .compare-directory .compare-article-card p{font-size:.75rem}
}

/* 比較記事の追加図。説明用の色と線種は全図で共通。 */
.workbench .additional-diagrams svg{max-height:none!important;background:#fff;border:1px solid #d8e5de;border-radius:12px}
.workbench .additional-diagrams svg text{font-size:16px;fill:#243f38}
.workbench .additional-diagrams h3{min-height:3.4em;line-height:1.7}
.workbench .concept-a{fill:#d7e8e0;stroke:#087f72;stroke-width:1.5}
.workbench .concept-b{fill:#f5e3cf;stroke:#b45309;stroke-width:1.5}
.workbench .concept-muted{fill:#edf1f5;stroke:#a5b7c7;stroke-width:1.5}
.workbench .concept-outline{fill:none;stroke:#5875ad;stroke-width:2;stroke-dasharray:6 4}
.workbench .concept-axis{fill:none;stroke:#90a89e;stroke-width:1.5}
.workbench .concept-line{fill:none;stroke:#34675d;stroke-width:2.5}
.workbench .concept-current{fill:none;stroke:#b45309;stroke-width:3}
@media(max-width:640px){.workbench .additional-diagrams h3{min-height:0}.workbench .additional-diagrams svg text{font-size:16px}}
/* Selection diagrams and category-local comparison expansion. */
.workbench .selection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}
.workbench .selection-grid figure{background:white;border:1px solid var(--line);border-radius:12px;padding:18px;min-width:0}
.workbench .selection-grid h3{font-weight:650;line-height:1.7;margin:0 0 16px}
.workbench .selection-grid figcaption{font-size:.9rem;line-height:1.8;margin-top:12px;color:#49635e}
.workbench .selection-diagrams svg{max-height:280px}
.workbench .selection-diagrams svg text{font-size:16px;fill:#163b38}
.sv-a{fill:#dcefe8;stroke:#087f72;stroke-width:2}.sv-b{fill:#e1e8f6;stroke:#5875ad;stroke-width:2}.sv-muted{fill:#f1f4f3;stroke:#91a59f;stroke-width:2}
.sv-line,.sv-arrow{fill:none;stroke:#087f72;stroke-width:3;stroke-linejoin:round}.sv-secondary{fill:none;stroke:#5875ad;stroke-width:3}.sv-warm{fill:none;stroke:#b47726;stroke-width:3}
.sv-dim{fill:none;stroke:#6d8580;stroke-width:1.5;stroke-dasharray:4 3}.sv-axis{fill:none;stroke:#526963;stroke-width:2}
.workbench .diagram-number{display:inline-grid;place-items:center;background:#e8f4ef;border-radius:50%;width:26px;height:26px;margin-right:8px;color:#087f72;font-size:.8rem}
.workbench .diagram-checks{background:#fff;border-left:3px solid #087f72;padding:16px 20px;margin-top:18px}.workbench .diagram-checks ul{padding-left:20px;list-style:disc;font-size:.9rem}
.category-diagram-entry{display:flex;gap:16px;align-items:center;border:1px solid #d9e5e2;border-radius:12px;background:#f2f8f5;padding:14px 18px;margin:0 0 24px}
.category-diagram-entry svg{width:110px;height:52px;flex-shrink:0}.category-diagram-entry span span,.category-diagram-entry small,.category-diagram-entry strong{display:block}.category-diagram-entry small{color:#087f72;font-size:.75rem}.category-diagram-entry strong{margin:4px 0}.category-diagram-entry span span{font-size:.8125rem;color:#526963}
.workbench .expandable-visual-card{min-width:0}.workbench .expandable-visual-card:has(.category-diagram-expand[open]){grid-column:1/-1}
.workbench .category-diagram-expand{margin:8px 0 0;border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px}
.workbench .category-diagram-expand>summary{cursor:pointer;color:#087f72;font-weight:600;padding:8px;font-size:.875rem}
.category-diagram-frame{display:block;width:100%;height:900px;border:0;margin-top:8px}.diagram-load-status,.diagram-full-link{display:block;font-size:.875rem;padding:12px;color:#49635e}
.diagram-frame-body{margin:0;background:white}.diagram-frame-body #diagram-frame-content{display:flow-root;padding:2px 4px}.diagram-frame-body .workbench .visual-panel{margin:0;padding:16px}.diagram-frame-body .workbench :is(section,h2,h3){scroll-margin-top:8px}
@media(max-width:640px){.workbench .selection-grid{grid-template-columns:1fr}.workbench .selection-grid figure{padding:12px}.workbench .selection-diagrams{padding:16px}.category-diagram-entry{gap:10px;padding:12px}.category-diagram-entry svg{width:70px}.workbench .category-diagram-expand{padding:6px}}

.category-diagram-entry>span{min-width:0;overflow-wrap:anywhere}
