:root{font-family:Inter,'Segoe UI',Arial,sans-serif;color:#373b3b;background:#f8f7f3;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button{font:inherit;cursor:pointer}button:focus-visible,[role=button]:focus-visible{outline:3px solid #d97735;outline-offset:3px}header{height:85px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;border-bottom:1px solid #e4e0d9;background:#faf9f6}.brand{border:0;background:none;display:flex;align-items:center;gap:12px;text-align:left;font-weight:800;letter-spacing:.05em;font-size:16px;color:#373b3b}.brand b{color:#d97735}.brand small{display:block;font-size:8px;letter-spacing:.17em;color:#8a8c85;margin-top:3px}.brandmark{background:#d97735;color:white;border-radius:7px;font-size:19px;letter-spacing:-2px;width:42px;height:42px;display:grid;place-content:center}.brandmark span{font-size:14px}.header-right{display:flex;gap:20px;align-items:center;font-size:10px;letter-spacing:.13em;font-weight:700;color:#8a8d84}.header-line{height:18px;width:1px;background:#d9d5cc}.home{max-width:1450px;margin:auto;padding:0 6%}.hero{display:grid;grid-template-columns:1fr 1.12fr;gap:5%;align-items:center;min-height:650px;padding:60px 0}.eyebrow,.side-label{font-size:10px;font-weight:800;letter-spacing:.16em;color:#a56339}.eyebrow span{display:inline-block;width:24px;height:2px;background:#d97735;vertical-align:middle;margin-right:10px}h1,h2,p{margin-top:0}.hero h1{font-family:Georgia,serif;font-size:clamp(54px,5.5vw,82px);line-height:1.04;letter-spacing:-.045em;margin:24px 0}.hero h1 em{color:#d97735;font-weight:normal}.hero-copy>p{font-size:18px;line-height:1.7;color:#737975;max-width:460px}.hero-actions{display:flex;align-items:center;gap:20px;margin:32px 0 48px}.primary,.secondary{border-radius:7px;padding:15px 21px;font-weight:700;border:1px solid #d97735}.primary{background:#d97735;color:white;box-shadow:0 6px 16px #d9773525}.primary:hover{background:#bf6228}.primary span{margin-left:22px}.secondary{background:#fff;color:#4a504c;border-color:#ddd9d0}.secondary:hover{border-color:#d97735}.action-note{font-size:11px;color:#93978f}.mode-select{border-top:1px solid #e1ddd5;padding-top:24px;display:flex;align-items:center;justify-content:space-between;max-width:480px}.mode-select strong,.mode-select small{display:block;font-size:12px}.mode-select small{font-size:11px;color:#999d94;margin-top:6px}.segmented{background:#eae7e0;border-radius:7px;padding:4px;display:flex}.segmented button{border:0;background:none;color:#777e77;padding:9px 15px;font-size:11px;font-weight:700;border-radius:5px}.segmented .active{background:white;color:#bd652f;box-shadow:0 2px 6px #0001}.hero-art{background:#e9e8df;border:1px solid #dfdfd5;border-radius:12px;padding:20px 23px 18px;box-shadow:0 20px 50px #77745d18}.art-top,.art-bottom{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.14em;font-weight:800;color:#777f75}.art-bottom i,.status i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#8aa58c;margin-right:6px}.hero-board{padding:25px 5px 10px}.hero-board svg{width:100%;filter:drop-shadow(0 14px 15px #0003)}.intro{border-top:1px solid #e2ded6;padding:65px 0 85px;display:grid;grid-template-columns:1fr 1fr;gap:20px 70px}.intro h2,.workspace h2,.sidebar h2{font-family:Georgia,serif;font-weight:normal}.intro h2{font-size:32px;margin:18px 0}.intro>p{color:#777d77;line-height:1.7;max-width:480px}.lab-tag{grid-column:1/-1;background:white;border:1px solid #e9e5dd;border-radius:9px;padding:22px;display:flex;align-items:center;gap:20px}.lab-tag>b{color:#d97735;font-family:Georgia,serif;font-size:26px}.lab-tag span{font-weight:700;flex:1}.lab-tag small{display:block;color:#969a92;font-size:11px;font-weight:400;margin-top:6px}.lab-tag button{background:#f8eee6;border:0;border-radius:50%;width:40px;height:40px;color:#c86d31}footer{border-top:1px solid #e6e2da;padding:25px 6%;display:flex;justify-content:space-between;color:#92978e;font-size:10px;gap:20px}footer b{color:#59615b}.work{max-width:1600px;margin:auto;padding:30px 4% 60px}.work-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.back{position:relative;border:0;background:none;color:#858b83;padding:0;margin-bottom:25px;font-size:11px}.back::before{content:"";position:absolute;inset:-6px 0}.work-heading h1,.results h1{font-family:Georgia,serif;font-weight:normal;font-size:38px;margin:12px 0 8px;letter-spacing:-.03em}.work-heading p,.results>p,.result-heading p{color:#878d85;font-size:13px;margin:0}.heading-actions{display:flex;gap:8px}.work-grid{display:grid;grid-template-columns:270px minmax(0,1fr);gap:20px;align-items:start}.sidebar,.workspace{background:#fff;border:1px solid #e8e4dc;border-radius:10px}.sidebar{padding:25px}.side-label{color:#9d9f95;font-size:9px}.side-label span{float:right;color:#d97735}.sidebar h2{font-size:25px;line-height:1.2;margin:17px 0}.sidebar p{font-size:12px;color:#757d75;line-height:1.75}.sidebar .small{font-size:11px}.divider{height:1px;background:#ece9e2;margin:22px 0}.progress{padding-top:20px;border-top:1px solid #eeeae3;font-size:11px}.progress div:first-child{display:flex;justify-content:space-between}.progress span{color:#d97735}.progress-track{height:5px;background:#eceae3;border-radius:5px;margin-top:12px}.progress-track i{display:block;background:#7c9b80;height:100%;border-radius:5px}.hint{margin-top:20px;background:#faf2e8;border-radius:7px;padding:14px;font-size:11px;color:#a15a2b}.hint p{margin:7px 0 0;color:#846d58}.side-note{background:#f5f5f0;border-radius:6px;padding:14px;margin-top:25px;color:#8b948a;font-size:10px;line-height:1.8}.side-note b{color:#697469;font-size:9px;letter-spacing:.1em}.workspace{padding:25px}.workspace-head,.inventory-head{display:flex;justify-content:space-between;align-items:center}.workspace h2{font-size:25px;margin:8px 0 0}.workspace h2 span{color:#c6c7bd;font-size:14px}.status{font-size:9px;letter-spacing:.1em;font-weight:800;color:#93998f}.status i{background:#b8beb5}.status i.on{background:#7caa82}.bench{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);align-items:center;gap:10px;background:#efeee8;border-radius:8px;margin:20px 0 0;padding:14px}.case-wrap svg{width:100%;display:block}.target{cursor:pointer}.target:hover{filter:brightness(1.5)}.board-caption,.monitor-label{font-size:8px;font-weight:800;letter-spacing:.13em;color:#969b92;display:flex;justify-content:space-between;padding:0 8px}.monitor-wrap{text-align:center}.monitor{margin:auto;max-width:260px}.monitor-screen{height:145px;border:8px solid #363d39;border-bottom-width:12px;border-radius:5px;background:#141b19;position:relative;color:#d7e1d4;overflow:hidden}.monitor-off{font-size:9px;letter-spacing:.15em;color:#68746b;position:absolute;top:45%;width:100%}.monitor-off small{display:block;font-size:7px;letter-spacing:0;margin-top:8px}.monitor-neck{height:18px;width:38px;background:#69726a;margin:auto}.monitor-neck:after{content:'';display:block;position:relative;top:16px;left:-24px;width:86px;height:5px;background:#69726a;border-radius:4px}.power{margin:25px 0 15px;background:#fff;border:1px solid #d8ddd4;border-radius:20px;padding:9px 16px;color:#66746a;font-size:10px;font-weight:700}.power span{color:#d97735;font-size:16px;vertical-align:middle;margin-right:6px}.monitor-label{display:block}.boot-logo{position:absolute;top:40%;width:100%;font-size:13px;letter-spacing:.2em}.boot-logo span{color:#d97735}.boot-logo small{display:block;letter-spacing:0;font-size:8px;margin-top:10px}.firmware{text-align:left;padding:10px;font:9px/1.6 monospace;color:#d6ddd3}.desktop{height:100%;background:linear-gradient(135deg,#8ba896,#d4d9c6);text-align:left}.os-brand{padding:10px;color:white;font-size:9px;font-weight:800}.os-brand small{display:block;font-size:6px}.os-window{margin:12px auto;background:#f8faf6;border-radius:3px;width:70%;padding:10px;color:#53665b;font-size:9px}.os-window p{font-size:8px;margin:5px 0}.os-window span{color:#628b6c;font-size:7px}.taskbar{position:absolute;bottom:0;background:#f3f5eddd;width:100%;padding:4px;color:#556b5c;font-size:8px}.taskbar span{float:right}.feedback{background:#faf8f3;color:#81877d;padding:12px 15px;font-size:11px;min-height:38px}.inventory-head{margin:27px 0 15px}.inventory-head>span{font-size:9px;letter-spacing:.1em;color:#a4a79e}.inventory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.part{display:flex;align-items:center;gap:11px;text-align:left;border:1px solid #e8e6df;background:white;border-radius:6px;padding:10px;color:#444c45;min-width:0}.part:hover,.part.selected{border-color:#d97735;background:#fffaf5}.part.used{opacity:.5;cursor:default}.part-icon{width:34px;height:34px;border-radius:5px;background:#eaf0e8;display:grid;place-items:center;color:#60806a;font-size:23px;flex:none}.part-icon.ssd{background:#eeeae0;color:#a18358}.part-icon.cable{background:#f4eae3;color:#b7734e}.part b,.part small{display:block}.part b{font-size:11px}.part small{font-size:9px;color:#9a9f96;margin-top:4px}.part-status{margin-left:auto;font-size:8px;color:#bd7c51}.results{max-width:850px;margin:75px auto;padding:0 25px 100px}.result-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e3dfd6;padding-bottom:28px}.score{display:flex;align-items:center;color:#d97735}.score strong{font:70px Georgia,serif}.score span{font-size:15px;color:#a3a79d}.score small{display:block;font-size:8px;letter-spacing:.12em}.result-list{background:white;border:1px solid #e8e5dd;border-radius:8px;margin-top:25px}.result-row{display:flex;align-items:center;gap:16px;padding:18px 20px;border-bottom:1px solid #f0ede7}.result-row:last-child{border:0}.result-icon{border-radius:50%;width:28px;height:28px;display:grid;place-items:center;background:#f3ebe7;color:#b8766d;flex:none}.result-icon.pass{background:#eaf1e9;color:#628b6c}.result-row div{flex:1}.result-row b{font-size:13px}.result-row p,.result-extra p{color:#858d84;font-size:11px;line-height:1.5;margin:5px 0 0}.result-row strong{font-size:14px}.result-row strong small{color:#b5b9b1}.result-extra{padding:24px 0;font-size:12px}.result-actions{display:flex;gap:10px}@media(max-width:900px){.hero{grid-template-columns:1fr;gap:30px}.hero-art{max-width:650px}.work-grid{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:10px 25px}.sidebar .divider{display:none}.side-note{margin:0}.bench{grid-template-columns:1.5fr 1fr}}@media(max-width:600px){header{padding:0 5%;height:70px}.header-right{display:none}.hero{padding:40px 0}.hero h1{font-size:55px}.intro{grid-template-columns:1fr}.lab-tag{grid-column:auto}.work-heading{align-items:start;flex-direction:column}.sidebar{display:block}.bench{grid-template-columns:1fr}.monitor-wrap{padding:10px}.inventory{grid-template-columns:1fr}.inventory-head>span{display:none}footer{flex-direction:column}.result-heading{align-items:end}.score strong{font-size:50px}}
/* Repair bench: a warm work surface surrounding realistic hardware. */
.work .bench{position:relative;grid-template-columns:minmax(0,2.25fr) minmax(180px,.85fr);gap:24px;align-items:end;padding:22px 22px 19px;background:linear-gradient(180deg,#eeeee8 0%,#e8e9e1 82%,#d6d4c8 82%,#e4e1d6 86%,#e4e1d6 100%);border:1px solid #e2e2d8;overflow:hidden}
.work .case-wrap{position:relative;z-index:1;min-width:0}.work .case-wrap svg{filter:drop-shadow(0 10px 9px #41463d26)}
.work .board-caption{padding:4px 18px 0;color:#858d82}.work .monitor-wrap{position:relative;z-index:1;padding:0 0 11px}.work .monitor{max-width:275px;filter:drop-shadow(0 7px 5px #55584c20)}
.work .monitor-screen{height:auto;aspect-ratio:16/10;border:7px solid #343c38;border-bottom-width:14px;border-radius:6px;background:radial-gradient(ellipse at 50% 35%,#202b25,#111714 85%);box-shadow:inset 0 0 0 1px #6a736a,0 1px 2px #31382f55}
.work .monitor-screen:after{content:'';position:absolute;bottom:-10px;left:50%;width:4px;height:4px;border-radius:50%;background:#80918a}
.work .monitor-neck{height:24px;width:34px;background:linear-gradient(90deg,#66726a,#8d9990,#5e6962);clip-path:polygon(20% 0,80% 0,100% 100%,0 100%)}
.work .monitor-neck:after{display:none}.work .monitor:after{content:'';display:block;width:100px;height:7px;background:linear-gradient(#86918a,#5a655e);border-radius:50% 50% 4px 4px;margin:auto}
.work .power{margin:17px 0 13px;box-shadow:0 2px 5px #77796b16}.work .monitor-label{color:#858d82}
.hardware-target{cursor:pointer;outline:none}.hardware-target .target-hit{stroke:transparent;stroke-width:2;transition:stroke .15s ease,fill .15s ease}.hardware-target:hover .target-hit,.hardware-target:focus-visible .target-hit{stroke:#e7af81;fill:#fff8e8;fill-opacity:.12}.hardware-target:hover{filter:none}.hardware-target.occupied{animation:hardware-arrive .22s ease-out}@keyframes hardware-arrive{from{opacity:.68}to{opacity:1}}
.work .part.selected{box-shadow:inset 3px 0 #d97735,0 2px 6px #b46c3820}.work .feedback{border-left:2px solid #d8b89e}
.work .monitor-off{color:#89978c;line-height:1.5}.work .boot-logo{animation:boot-pulse 1s ease-in-out infinite alternate}@keyframes boot-pulse{from{opacity:.55}to{opacity:1}}
.work .firmware{background:linear-gradient(#1d2922,#111915);height:100%;padding:12px;color:#d4ded0}.work .firmware hr{border:0;border-top:1px solid #687969}.work .desktop{background:linear-gradient(135deg,#71917d,#c2d0b9)}
@media(max-width:900px){.work .bench{grid-template-columns:minmax(0,1.55fr) minmax(165px,.8fr);gap:12px;padding:15px}}
@media(max-width:600px){.work .bench{grid-template-columns:1fr;gap:8px}.work .monitor-wrap{padding:10px 0 5px}.work .monitor{max-width:220px}}
@media(prefers-reduced-motion:reduce){.hardware-target.occupied,.work .boot-logo{animation:none}}
/* A physical parts tray, with the same illustrations used during dragging. */
.work .inventory{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.work .part{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden;min-width:0;border:1px solid #e3e5dc;background:#fff;touch-action:none;user-select:none;text-align:left;transition:border-color .16s,box-shadow .16s,transform .16s}
.work .part:not(:disabled):hover{border-color:#cfa988;box-shadow:0 4px 14px #736a5615;transform:translateY(-2px)}
.work .part.selected{border-color:#d97735;box-shadow:0 0 0 2px #d977352e}
.work .part.used{opacity:.62}.part-art{display:grid;place-items:center;height:112px;padding:12px;background:linear-gradient(145deg,#f2f3ed,#e7ebe3);border-bottom:1px solid #e7ebe2}
.part-art svg{width:100%;height:100%;max-width:225px;filter:drop-shadow(0 4px 3px #4c584b2b)}
.part-copy{padding:13px 12px 5px;min-height:54px}.work .part b{font-size:12px}.work .part small{font-size:10px;line-height:1.45;margin-top:5px}.work .part-status{margin:0;padding:4px 12px 12px;font-size:9px;font-weight:800;letter-spacing:.1em;color:#7d9480}.work .part.selected .part-status{color:#bf682f}.work .part.used .part-status{color:#8d9288}
.drag-preview{position:fixed;top:0;left:0;z-index:9999;width:210px;height:85px;pointer-events:none;filter:drop-shadow(0 12px 9px #27362d65);will-change:transform}.drag-preview svg{width:100%;height:100%}.dragging-part,.dragging-part *{cursor:grabbing!important}.hardware-target.drop-hover .target-hit{stroke:#e7af81;fill:#fff8e8;fill-opacity:.2;stroke-width:3}
.inspect-panel{display:flex;align-items:center;gap:12px;padding:13px 15px;background:#f3f5ef;border-left:2px solid #8ba78b}.inspect-panel div{flex:1}.inspect-panel b,.inspect-panel small{display:block}.inspect-panel b{font-size:12px;margin-top:6px}.inspect-panel small{font-size:10px;color:#828b80;margin-top:4px}.inspect-remove{font-size:10px;padding:9px 12px}.inspect-close{border:0;background:none;color:#7b857b;font-size:20px}
@media(max-width:1050px){.work .inventory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.work .inventory{grid-template-columns:repeat(2,minmax(0,1fr))}.part-art{height:85px;padding:8px}.part-copy{padding:10px 9px 4px}.work .part-status{padding:4px 9px 10px}.work .part b{font-size:11px}.work .part small{font-size:9px}}
.objectives{border-top:1px solid #eeeae3;margin-top:20px;padding-top:18px}.objectives ul{list-style:none;margin:12px 0 0;padding:0;color:#7e867c;font-size:11px;line-height:1.55}.objectives li{padding:4px 0}.objectives li:before{content:'—';color:#b6b9ac;margin-right:8px}
/* Compact workbench layout; homepage and results retain their original layout. */
.return-zone{border:1px dashed #cfc7b8;border-radius:6px;margin-top:9px;padding:10px;text-align:center;color:#8a8e82;font-size:10px;font-weight:700;background:#faf9f5;transition:background .15s,border-color .15s}
.return-zone.drop-hover,.inventory.drop-hover{background:#f9eee4;border-color:#d97735}.hardware-target.lifting{opacity:.35;transition:opacity .15s}.hardware-target.occupied{touch-action:none}
@media(min-width:1000px) and (min-height:600px){
 body.work-page{height:100vh;overflow-x:hidden;overflow-y:auto}
 .work-page header{height:58px;padding:0 2%;}
 .work-page .brandmark{width:35px;height:35px;font-size:17px}.work-page .brand small{font-size:7px}
 .work-page footer{display:none}
 .work-page .work{max-width:none;height:calc(100vh - 58px);padding:12px 1.5% 14px;display:flex;flex-direction:column;min-height:0}
 .work-page .work-heading{margin:0 0 10px;align-items:center;flex:none}.work-page .work-heading h1{font-size:26px;margin:5px 0}.work-page .work-heading p{font-size:11px}.work-page .back{margin:0 0 5px}.work-page .work-heading .primary,.work-page .work-heading .secondary{padding:11px 14px;font-size:12px}
 .work-page .work-grid{grid-template-columns:clamp(190px,16vw,250px) minmax(0,1fr);gap:12px;align-items:stretch;flex:1;min-height:0}
 .work-page .sidebar{padding:16px;overflow:auto;min-height:0}.work-page .sidebar h2{font-size:21px;margin:11px 0}.work-page .sidebar p{font-size:11px;line-height:1.55}.work-page .divider{margin:13px 0}.work-page .objectives{margin-top:13px;padding-top:13px}.work-page .objectives ul{margin-top:8px}.work-page .objectives li{padding:2px 0}.work-page .side-note{margin-top:14px;padding:10px;line-height:1.5}
 .work-page .workspace{padding:14px;min-width:0;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) clamp(300px,25vw,400px);grid-template-rows:auto minmax(0,1fr) auto auto;gap:8px 14px}
 .work-page .workspace-head{grid-column:1;grid-row:1}.work-page .workspace h2{font-size:21px;margin:4px 0 0}.work-page .bench{grid-column:1;grid-row:2;min-height:0;margin:0;padding:10px;grid-template-columns:minmax(0,1fr) minmax(125px,.36fr);gap:8px;align-items:center}
 .work-page .case-wrap{display:flex;min-height:0;height:100%;flex-direction:column;align-items:center;justify-content:center}.work-page .case-wrap svg{width:100%;height:auto;max-height:calc(100% - 18px);object-fit:contain}.work-page .board-caption{width:100%;font-size:7px}.work-page .monitor-wrap{padding:0}.work-page .monitor-label{font-size:8px}.work-page .power{margin:10px 0;padding:7px 10px}.work-page .monitor-screen{border-width:5px;border-bottom-width:10px}.work-page .monitor-neck{height:17px}
 .work-page .inspect-panel{grid-column:1;grid-row:3;padding:7px 10px}.work-page .feedback{grid-column:1;grid-row:4;padding:8px 10px;min-height:30px;font-size:11px}
 .work-page .inventory-dock{grid-column:2;grid-row:1 / 5;min-height:0;display:flex;flex-direction:column;border-left:1px solid #eeeae4;padding-left:14px}.work-page .inventory-head{margin:0 0 8px;flex:none}.work-page .inventory-head>span{display:none}
 .work-page .inventory{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;overflow:auto;min-height:0;align-content:start;padding:2px;flex:1}
 .work-page .part-art{height:51px;padding:3px 8px}.work-page .part-copy{min-height:0;padding:6px 8px 2px}.work-page .part b{font-size:11px;line-height:1.2}.work-page .part small{font-size:9px;line-height:1.3;margin-top:2px}.work-page .part-status{font-size:8px;padding:3px 8px 6px}.work-page .return-zone{flex:none;margin-top:7px;padding:8px}
}
@media(min-width:1000px) and (max-height:800px){.work-page .work{padding-top:8px;padding-bottom:8px}.work-page .work-heading{margin-bottom:7px}.work-page .sidebar{padding:12px}.work-page .part-art{height:39px}.work-page .part-copy{padding:4px 7px 1px}.work-page .part-status{padding:2px 7px 4px}.work-page .inventory{gap:5px}.work-page .workspace{padding:10px;gap:6px 10px}.work-page .inventory-dock{padding-left:10px}.work-page .return-zone{padding:6px}}
@media(min-width:1000px) and (min-height:600px){.work-page .part-art,.work-page .part-copy,.work-page .part-status{flex:none}.work-page .part small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
/* Compact, native keyboard-accessible review accordions. */
.result-heading p{max-width:540px;line-height:1.6}.review-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:27px;color:#969c91;font-size:9px;font-weight:800;letter-spacing:.13em}.review-controls div{display:flex;gap:14px}.review-controls button{border:0;background:none;padding:7px 0;color:#a8683e;font-size:11px;font-weight:700;letter-spacing:0}.review-controls button:hover{text-decoration:underline}.results .result-list{margin-top:7px}.result-accordion{border-bottom:1px solid #f0ede7}.result-accordion:last-child{border-bottom:0}.results .result-row{list-style:none;cursor:pointer;border:0;transition:background .15s ease}.results .result-row::-webkit-details-marker{display:none}.results .result-row:hover{background:#fcfaf6}.results .result-row:focus-visible{outline:3px solid #d97735;outline-offset:-3px}.result-title{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}.result-status{font-size:10px;color:#929991}.result-status.pass{color:#628b6c}.result-status.incorrect{color:#a9675d}.result-status.partial{color:#ae793f}.result-icon.partial{background:#f8efe3;color:#ae793f}.result-chevron{font-size:20px;line-height:1;color:#9b9f95;transition:transform .18s}.result-accordion[open] .result-chevron{transform:rotate(180deg)}.result-explanation{padding:0 65px 20px;background:#fcfbf8}.result-explanation section{padding-top:14px}.result-explanation h3{margin:0 0 4px;font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:#9d6949}.result-explanation p{margin:0;color:#657067;font-size:12px;line-height:1.65}.result-accordion[open] .result-explanation{animation:review-reveal .18s ease-out}@keyframes review-reveal{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.review-controls{align-items:flex-start;flex-direction:column;gap:4px}.review-controls div{flex-wrap:wrap}.results .result-row{gap:10px;padding:15px 12px}.result-explanation{padding:0 16px 18px 50px}.result-heading{gap:10px}.result-heading p{font-size:12px}}
@media(prefers-reduced-motion:reduce){.result-accordion[open] .result-explanation{animation:none}.result-chevron{transition:none}}
/* Student hub */
.hub{max-width:1380px;margin:auto;padding:65px 5% 90px}.hub-intro{display:flex;justify-content:space-between;align-items:end;gap:30px}.hub-intro h1{font:normal clamp(43px,4.5vw,66px)/1.05 Georgia,serif;letter-spacing:-.04em;margin:20px 0}.hub-intro h1 em{color:#d97735;font-weight:normal}.hub-intro p,.library-heading p{color:#7c837b;line-height:1.65;font-size:15px;max-width:570px}.hub-index{font-size:9px;letter-spacing:.16em;color:#a7aaa1;text-align:right;white-space:nowrap}.hub-index b{display:block;color:#69746a;font:normal 25px Georgia,serif;letter-spacing:0;margin-top:9px}.random-strip{margin:38px 0 65px;border:1px solid #e1dfd5;border-radius:10px;background:#eeeee7;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 30px}.random-strip h2,.library-heading h2{font:normal 28px Georgia,serif;margin:9px 0}.random-strip p{font-size:12px;color:#858c81;margin:0}.random-controls{display:flex;gap:12px;align-items:center}.library-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:20px}.library-heading p{font-size:12px;margin:0}.hub-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.hub-card{background:white;border:1px solid #e7e3da;border-radius:10px;overflow:hidden}.hub-preview{height:215px;background:#e9ebe2;display:grid;place-items:center;overflow:hidden}.hardware-preview svg{width:300px;height:210px;filter:drop-shadow(0 9px 9px #273b2b33);pointer-events:none}.network-preview{background:#e6e8de}.preview-monitor{width:280px;height:160px;background:linear-gradient(145deg,#567567,#9eb3a0);border:8px solid #37443d;border-bottom-width:13px;border-radius:6px;box-shadow:0 12px 20px #44544830;padding:13px;color:#f1f6ed}.preview-title{font-size:8px;letter-spacing:.15em}.preview-terminal{margin:14px auto;background:#1c2722;width:200px;height:90px;border-radius:4px;box-shadow:0 5px 12px #21372c33}.preview-terminal span{display:block;background:#e7ebe3;color:#47554b;padding:5px 8px;font-size:8px}.preview-terminal code{display:block;padding:8px;font:8px/1.7 monospace;color:#d1ded0}.preview-terminal i{color:#d97735}.hub-card-body{padding:24px}.hub-meta{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.13em;font-weight:800;color:#a5a79c}.hub-meta span:first-child{color:#bd703c}.hub-card h3{font:normal 26px Georgia,serif;margin:14px 0 9px}.hub-card p{color:#858d83;font-size:12px;line-height:1.6;min-height:39px}.hub-card-actions{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eeebe5;padding-top:17px}.hub-launch{border:0;background:none;color:#bb682f;font-size:12px;font-weight:800;padding:10px}.hub-launch span{margin-left:8px}
/* Browser-based workstation */
.network-work{max-width:1600px;margin:auto;padding:22px 3% 50px}.network-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.network-heading .back{margin-bottom:12px}.network-heading h1{font:normal 34px Georgia,serif;letter-spacing:-.03em;margin:10px 0}.network-heading p{font-size:12px;color:#899087;margin:0}.network-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;min-height:0}.network-assignment{overflow:auto}.network-lab{background:white;border:1px solid #e8e4dc;border-radius:10px;padding:18px;min-width:0;min-height:0;display:flex;flex-direction:column}.network-lab h2{font:normal 24px Georgia,serif;margin:7px 0}.network-lab h2 span{color:#c6c7bd;font-size:14px}.virtual-desktop{position:relative;flex:1;min-height:480px;overflow:hidden;border-radius:6px;background:radial-gradient(ellipse at 75% 15%,#b9c8b4,#6e9381 55%,#4d7264);border:1px solid #a5b6a3}.desktop-label{position:absolute;top:14px;right:16px;color:#e8f0e3;font-size:8px;font-weight:800;letter-spacing:.14em}.desktop-shortcuts{position:absolute;top:20px;left:16px;display:grid;gap:8px}.desktop-shortcuts button{border:0;background:transparent;color:#f7faf4;text-align:center;width:83px;padding:7px 2px;font-size:10px;text-shadow:0 1px 4px #2e4936}.desktop-shortcuts button:hover{background:#ffffff29;border-radius:4px}.desktop-shortcuts span{display:block;font-size:24px;margin-bottom:4px}.desktop-welcome{position:absolute;top:35%;left:35%;color:#f4f8f0}.desktop-welcome span{font-size:10px;letter-spacing:.16em}.desktop-welcome b{display:block;font:normal 36px Georgia,serif;margin:12px 0}.desktop-welcome p{font-size:12px}.virtual-taskbar{position:absolute;bottom:0;left:0;right:0;min-height:43px;background:#ecf0e9eF;display:flex;align-items:center;gap:4px;padding:4px 10px}.virtual-taskbar button{border:0;background:transparent;color:#40564a;padding:8px 9px;border-radius:4px;font-size:10px}.virtual-taskbar button:hover{background:#d5dfd4}.taskbar-brand{color:#bc6f3b;font-size:19px;padding:0 8px}.net-indicator{margin-left:auto;color:#587165;font-size:10px;white-space:nowrap}.net-window{position:absolute;top:8%;left:17%;width:min(75%,760px);height:76%;background:#f8f9f6;border:1px solid #bac8b9;border-radius:7px;box-shadow:0 16px 35px #223c2c4d;overflow:hidden;display:flex;flex-direction:column}.net-title{height:36px;flex:none;background:#edf0eb;display:flex;justify-content:space-between;align-items:center;padding-left:13px;color:#3f5045;font-size:11px;font-weight:700}.net-title button{height:36px;width:38px;border:0;background:transparent;font-size:19px;color:#6b786c}.net-title button:hover{background:#e1d5d0}.terminal-body{background:#18221e;color:#e3eee0;padding:12px 15px;overflow:auto;flex:1;font:13px/1.5 Consolas,monospace}.terminal-body pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.terminal-body form{display:flex;align-items:center;gap:5px}.terminal-body label{white-space:nowrap}.terminal-body input{font:inherit;color:inherit;background:none;border:0;outline:0;min-width:0;flex:1}.net-settings{overflow:auto;padding:18px 22px;color:#4d5b51;font-size:12px}.net-status-line{display:flex;justify-content:space-between;align-items:center}.net-status-line b{font-size:16px}.net-status-line span{color:#719579;font-size:10px}.net-settings p{font-size:11px;line-height:1.7;color:#79867a}.net-settings fieldset{border:1px solid #dce2d9;border-radius:5px;margin:14px 0;padding:12px}.net-settings legend{font-weight:700;padding:0 5px}.net-settings fieldset>label{display:block;margin:8px 0}.net-settings input[type=radio]{accent-color:#bd753f}.net-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.net-fields label{font-size:10px;color:#788479}.net-fields input,#browser-form input{display:block;width:100%;border:1px solid #cdd6cb;background:#fff;border-radius:4px;padding:8px;color:#34453b;font:12px 'Segoe UI',sans-serif;margin-top:5px}.net-form-actions{text-align:right}.net-form-actions button,#browser-form button{background:#c77944;color:white;border:0;border-radius:4px;padding:9px 14px;font-size:11px;font-weight:700}.net-error{color:#a65b50!important}.browser-window #browser-form{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid #e1e7de}.browser-window #browser-form input{margin:0;flex:1}.browser-content{flex:1;overflow:auto;background:#fff;padding:9%}.browser-site span{font-size:9px;letter-spacing:.16em;color:#a96b42;font-weight:800}.browser-site h2{font:normal 30px Georgia,serif;margin:20px 0 10px}.browser-site p,.browser-failure p{font-size:12px;color:#819083;line-height:1.7}.browser-site div{margin-top:25px;color:#628b6c;font-size:12px}.browser-failure{padding-top:12%;color:#55675a}.browser-failure b{font:normal 24px Georgia,serif}
@media(min-width:1000px) and (min-height:600px){body.network-page{height:100vh;overflow-x:hidden;overflow-y:auto}.network-page header{height:58px;padding:0 2%}.network-page .brandmark{width:35px;height:35px;font-size:17px}.network-page footer{display:none}.network-page .network-work{max-width:none;height:calc(100vh - 58px);padding:10px 1.5% 12px;display:flex;flex-direction:column;min-height:0}.network-page .network-heading{margin-bottom:9px;align-items:center}.network-page .network-heading .back{margin:0 0 5px}.network-page .network-heading h1{font-size:26px;margin:5px 0}.network-page .network-heading .primary,.network-page .network-heading .secondary{padding:11px 14px;font-size:12px}.network-page .network-grid{flex:1;grid-template-columns:clamp(200px,17vw,250px) minmax(0,1fr)}.network-page .network-assignment{padding:16px}.network-page .network-assignment h2{font-size:21px;margin:10px 0}.network-page .network-assignment p{font-size:11px;line-height:1.55}.network-page .network-lab{padding:12px}.network-page .virtual-desktop{min-height:0}.network-page .network-lab h2{font-size:21px;margin:4px 0 8px}}
@media(max-width:999px){.network-grid{grid-template-columns:1fr}.network-assignment{display:block}.virtual-desktop{min-height:540px}.net-window{left:12%;width:83%}}
@media(max-width:600px){.hub{padding:40px 5%}.hub-intro{display:block}.hub-index{display:none}.random-strip,.library-heading{display:block}.random-controls{margin-top:18px;flex-wrap:wrap}.hub-library{grid-template-columns:1fr}.network-heading{align-items:start;flex-direction:column}.network-work{padding:20px 4%}.network-grid{display:block}.network-lab{margin-top:15px}.desktop-shortcuts{left:3px}.desktop-shortcuts button{width:55px;font-size:8px}.net-window{left:5%;width:90%;top:12%;height:75%}.net-fields{grid-template-columns:1fr}.net-indicator{display:none}.virtual-taskbar button{font-size:9px;padding:7px 4px}.terminal-body{font-size:11px}}
@media(min-width:1000px){.settings-window{top:3%;height:87%}.settings-window .net-settings{padding:10px 18px}.settings-window .net-settings p{margin:5px 0}.settings-window .net-settings fieldset{margin:7px 0;padding:8px 10px}.settings-window .net-settings fieldset>label{margin:5px 0}.settings-window .net-fields{margin-top:5px}.settings-window .net-fields input{padding:6px;margin-top:3px}}
/* Library filters and scenario reference. */
.library-filters{border-top:1px solid #e7e3da;padding:15px 0 17px}.core-tabs,.domain-filters{display:flex;gap:7px;flex-wrap:wrap}.core-tabs button,.domain-filters button{background:#fff;border:1px solid #e5e2d9;color:#777f75;border-radius:6px;padding:9px 12px;font-size:11px;font-weight:700}.core-tabs button.active,.domain-filters button.active{border-color:#d97735;background:#fbf2eb;color:#b85f2d}.core-tabs span{font-size:9px;color:#9aa096;margin-left:5px}.domain-filters{margin-top:10px}.domain-filters button{font-size:10px;padding:7px 10px}.library-count{font-size:10px;color:#929b90;margin-top:12px}.card-domain{color:#a26d47;font-size:10px;font-weight:700;letter-spacing:.04em}.hub-empty{grid-column:1/-1;padding:35px;border:1px dashed #ddd8ce;background:#f9f8f4;border-radius:8px;color:#737d73}.hub-empty p{font-size:12px;color:#969b91}.random-filters{display:flex;gap:7px}.random-filters label{font-size:9px;color:#8d9489;font-weight:700}.random-filters select{display:block;margin-top:5px;max-width:190px;border:1px solid #d9ddd3;border-radius:5px;background:white;color:#59665b;padding:8px;font-size:10px}.random-strip button:disabled{opacity:.45;cursor:not-allowed}.random-empty{color:#a66952!important}.net-reference{overflow:auto;padding:20px 24px;color:#55665a}.net-reference h2{font:normal 25px Georgia,serif;margin:12px 0}.net-reference p{font-size:12px;line-height:1.5;color:#7c897c}.net-reference dl{display:grid;grid-template-columns:1fr 1fr;gap:0;font-size:12px;border-top:1px solid #e2e8df}.net-reference dt,.net-reference dd{margin:0;padding:9px 0;border-bottom:1px solid #e2e8df}.net-reference dt{color:#8c988b}.net-reference dd{font-weight:700}.browser-window #browser-form .browser-refresh{background:#edf1ea;color:#526a5b;font-size:18px;padding:3px 9px}.browser-window #browser-form input[readonly]{background:#f5f7f3}
@media(max-width:900px){.random-strip{flex-wrap:wrap}.random-controls,.random-filters{flex-wrap:wrap}.random-filters select{max-width:160px}}
/* Keep a growing exercise library compact without changing the site style. */
@media(min-width:1200px){.hub-library{grid-template-columns:repeat(3,minmax(0,1fr))}.hub-preview{height:160px}.hardware-preview svg{height:155px;width:230px}.preview-monitor{transform:scale(.78)}.hub-card-body{padding:19px}.hub-card h3{font-size:23px;margin:11px 0 7px}.hub-card-actions{padding-top:12px}}
/* Laser printer workbench */
.printer-preview svg{height:155px;width:240px;pointer-events:none;filter:drop-shadow(0 8px 8px #34463830)}.printer-work{max-width:1600px;margin:auto;padding:20px 3% 50px}.printer-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.printer-heading .back{margin-bottom:12px}.printer-heading h1{font:normal 32px Georgia,serif;letter-spacing:-.03em;margin:10px 0}.printer-heading p{font-size:12px;color:#899087;margin:0}.printer-grid{display:grid;grid-template-columns:230px minmax(0,1fr) 320px;gap:12px;min-height:0}.printer-assignment{overflow:auto}.printer-bench,.printer-dock{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:14px;min-width:0;min-height:0}.printer-bench{display:flex;flex-direction:column}.printer-bench h2,.printer-dock h2{font:normal 21px Georgia,serif;margin:5px 0 8px}.printer-bench h2 span,.printer-dock h2 span{font-size:13px;color:#c6c7bd}.printer-scene{flex:1;min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(#eeefe9 80%,#dddcd0 80%);border:1px solid #e2e4d9;border-radius:7px;overflow:hidden}.printer-scene svg{width:100%;height:auto;max-height:calc(100% - 42px);filter:drop-shadow(0 8px 8px #68735d24)}.printer-scene.printing svg{animation:printer-feed .35s ease-in-out infinite alternate}@keyframes printer-feed{to{transform:translateY(2px)}}.printer-target{cursor:pointer;outline:none}.printer-target:hover>rect,.printer-target:focus-visible>rect{stroke:#d97735;stroke-width:3;fill:#fff;fill-opacity:.1}.printer-panels{display:flex;gap:6px;padding:4px;flex-wrap:wrap;justify-content:center}.printer-panels button,.printer-controls button{border:1px solid #d8dfd5;background:#fff;border-radius:5px;padding:8px 11px;font-size:10px;font-weight:700;color:#617065}.printer-panels button[aria-pressed=true]{border-color:#d18d5d;color:#b56938}.printer-controls{display:flex;align-items:center;gap:7px;padding:10px 0}.printer-lcd{margin-right:auto;background:#e5eee0;border:1px solid #ccd9c8;border-radius:4px;padding:6px 10px;min-width:130px;color:#516b55}.printer-lcd small,.printer-lcd b{display:block}.printer-lcd small{font-size:8px;letter-spacing:.1em}.printer-lcd b{font:11px monospace;margin-top:3px}.printer-bench .feedback{font-size:11px;min-height:32px;padding:8px 10px}.printer-inspect{padding:7px 10px}.printer-dock{display:flex;flex-direction:column}.printer-inventory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;overflow:auto;min-height:0;align-content:start}.printer-part{display:flex;flex-direction:column;text-align:left;background:white;border:1px solid #e5e8df;border-radius:5px;padding:0;overflow:hidden;touch-action:none;user-select:none}.printer-part:hover,.printer-part.selected{border-color:#d97735}.printer-part.used{opacity:.5}.printer-part-art{height:48px;width:100%;display:grid;place-items:center;background:#eef1e9}.printer-part-art svg{height:45px;width:90%;filter:drop-shadow(0 3px 2px #4c584b30)}.printer-part>span:nth-child(2){padding:5px 7px 1px;min-width:0;width:100%}.printer-part b,.printer-part small{display:block}.printer-part b{font-size:10px;color:#4c5b50}.printer-part small{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#949d92;margin-top:3px}.printer-part em{font-size:8px;font-style:normal;letter-spacing:.08em;color:#829788;padding:3px 7px 5px}.printer-return{flex:none}.printer-output{margin-top:10px;border-top:1px solid #ecebe4;padding-top:9px}.output-content{display:flex;gap:10px;align-items:start;margin-top:7px}.output-content>b,.output-content div>b{font-size:10px;color:#66736a}.diagnostic-paper{width:105px;min-height:135px;background:#fff;border:1px solid #d8ddd5;box-shadow:0 3px 7px #0001;padding:9px;flex:none}.ink-content{color:#252b27;font-size:5px}.diagnostic-paper.faded .ink-content{opacity:.28}.ink-content b,.ink-content small{display:block}.ink-content small{font-size:4px;margin-top:4px}.ink-content hr{border:0;border-top:1px solid;margin:5px 0}.ink-content p{margin:5px 0;line-height:1.3}.density{display:flex;height:15px}.density i{flex:1;background:#252b27}.density i:nth-child(2){opacity:.75}.density i:nth-child(3){opacity:.5}.density i:nth-child(4){opacity:.3}.density i:nth-child(5){opacity:.1}.fine-lines{height:13px;margin-top:6px;background:repeating-linear-gradient(#252b27 0 1px,transparent 1px 3px)}.page-placeholder{width:105px;min-height:100px;background:#f6f7f2;color:#9aa297;font-size:10px;padding:10px;flex:none}.page-placeholder small{display:block;margin-top:6px}.attempt-list{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.attempt-list button{border:1px solid #dfe5dc;background:#fff;border-radius:4px;padding:5px;font-size:9px;color:#647368}.attempt-list small{color:#9ba49a;font-size:10px}
@media(min-width:1000px) and (min-height:600px){body.printer-page{height:100vh;overflow-x:hidden;overflow-y:auto}.printer-page header{height:58px;padding:0 2%}.printer-page .brandmark{width:35px;height:35px;font-size:17px}.printer-page footer{display:none}.printer-page .printer-work{height:calc(100vh - 58px);max-width:none;padding:8px 1.5%;display:flex;flex-direction:column;min-height:0}.printer-page .printer-heading{margin-bottom:7px;align-items:center}.printer-page .printer-heading .back{margin:0 0 5px}.printer-page .printer-heading h1{font-size:26px;margin:5px 0}.printer-page .printer-heading .primary,.printer-page .printer-heading .secondary{padding:11px 14px;font-size:12px}.printer-page .printer-grid{flex:1;grid-template-columns:clamp(185px,15vw,225px) minmax(0,1fr) clamp(290px,24vw,360px)}.printer-page .printer-assignment{padding:12px;min-height:0}.printer-page .printer-assignment h2{font-size:20px;margin:10px 0}.printer-page .printer-assignment p{font-size:11px;line-height:1.5}.printer-page .printer-bench,.printer-page .printer-dock{padding:10px}.printer-page .printer-inventory{flex:1}.printer-page .printer-output{flex:none}.printer-page .printer-part-art{height:34px}.printer-page .printer-part-art svg{height:32px}.printer-page .printer-controls{padding:7px 0}}
@media(max-width:999px){.printer-grid{grid-template-columns:1fr}.printer-dock{max-height:700px}.printer-scene{min-height:400px}.printer-assignment{display:block}.printer-inventory{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.printer-heading{align-items:start;flex-direction:column}.printer-work{padding:20px 4%}.printer-inventory{grid-template-columns:repeat(2,minmax(0,1fr))}.printer-controls{flex-wrap:wrap}.printer-scene{min-height:300px}.printer-panels button,.printer-controls button{padding:7px}}
@media(prefers-reduced-motion:reduce){.printer-scene.printing svg{animation:none}}
.printer-scene{position:relative}.printer-sheet.is-printing{animation:printer-sheet-out .9s ease-out forwards}@keyframes printer-sheet-out{from{transform:translate(30px,-23px);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.printer-sheet.is-printing{animation:none}}
.feed-sheet{position:absolute;width:11%;height:13%;left:36%;top:20%;background:repeating-linear-gradient(#f9faf4 0 6px,#bec8b9 7px 8px);border:1px solid #bfcab9;box-shadow:0 3px 5px #34473733;animation:sheet-feed .9s ease-in-out forwards;pointer-events:none}@keyframes sheet-feed{from{transform:translateY(25px);opacity:.2}to{transform:translateY(-30px);opacity:1}}.diagnostic-paper{animation:hardware-arrive .3s ease-out}.inspect-page-button{display:block;border:1px solid #d8dfd5;background:white;border-radius:4px;padding:5px 7px;margin-bottom:8px;font-size:10px;color:#a86a3e}.page-overlay{position:fixed;inset:0;z-index:100;background:#27362d88;display:grid;place-items:center;padding:20px}.page-modal{position:relative;background:#f7f7f2;border-radius:8px;padding:25px;box-shadow:0 14px 40px #1115}.page-modal>button{position:absolute;right:8px;top:5px;border:0;background:none;font-size:22px;color:#68766b}.page-modal .diagnostic-paper{width:315px;min-height:410px;padding:28px}.page-modal .ink-content{font-size:14px}.page-modal .ink-content small{font-size:10px}.page-modal .density{height:45px}.page-modal .fine-lines{height:35px}.page-modal p{font-size:11px;color:#788578}.printer-scene svg g[data-printer-target]{animation:hardware-arrive .2s ease-out}
.printer-inventory{grid-auto-rows:max-content}.printer-part>*{flex:none}.printer-part-art{min-height:34px}
/* Clear, separate areas for supplied and removed printer components. */
.printer-reference{font-size:10px;line-height:1.4;color:#828d82;margin:0 0 8px}.printer-removed{flex:none;margin-top:9px;border:1px dashed #c9cfc2;border-radius:6px;padding:8px;background:#f8f9f5;transition:background .15s,border-color .15s}.printer-removed-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;max-height:110px;overflow:auto;margin-top:6px}.removed-empty{grid-column:1/-1;font-size:10px;color:#8d988d;padding:5px 0}.printer-removed.printer-drop-hover{background:#f8eee4;border-color:#d97735}.printer-target.printer-candidate>.printer-hit{stroke:#e4b18b;stroke-width:3;fill:#fff5e6;fill-opacity:.08}.printer-target.printer-drop-hover>.printer-hit{stroke:#df8d52;stroke-width:4;fill:#fff3df;fill-opacity:.2}.printer-target{touch-action:none}.printer-drag-preview{pointer-events:none}.printer-dragging,.printer-dragging *{cursor:grabbing!important}.simulator-help{background:#f1f4ed;border-radius:6px;padding:10px;margin-top:12px;font-size:11px;color:#536a59}.simulator-help p{margin:6px 0 0}.printer-page .printer-inventory{flex:0 0 auto}.printer-page .printer-removed{min-height:55px}.printer-page .printer-dock{overflow:auto}.printer-scene .printer-target.printer-candidate{animation:none}
.printer-scene svg,.printer-target,.printer-removed{user-select:none;-webkit-user-select:none}.printer-dragging,.printer-dragging *{user-select:none!important;-webkit-user-select:none!important}
.printer-warning{display:flex;align-items:flex-start;gap:10px;border:1px solid #b96861;border-radius:6px;background:#fcf0ed;color:#7c413b;padding:10px 12px;margin:0 0 8px}.printer-warning-icon{color:#b4534a;font-size:17px;line-height:1.1}.printer-warning div{flex:1;min-width:0}.printer-warning b{display:block;font-size:12px;line-height:1.35}.printer-warning p{margin:3px 0 0;font-size:11px;line-height:1.45;color:#8b5750}.printer-warning button{border:0;background:transparent;color:#9a5e57;font-size:18px;line-height:1;padding:0 3px}.printer-warning button:hover{color:#6f342e}

/* Interactive printer access panels (front cover, rear door, cassette handle) */
.printer-panel{cursor:pointer;outline:none;touch-action:manipulation}
.printer-panel .panel-hl{fill:none;stroke:#d97735;stroke-width:2.2;stroke-linejoin:round;opacity:0;pointer-events:none;transition:opacity .15s ease}
.printer-panel:hover .panel-hl,.printer-panel:focus-visible .panel-hl{opacity:.8}
.printer-scene[data-motion="moving"] .printer-panel{cursor:progress}

/* PBQ 5 - Laptop Wi-Fi hardware troubleshooting (scoped to lp-/laptop- classes) */
.laptop-preview svg{height:155px;width:240px;pointer-events:none;filter:drop-shadow(0 8px 8px #34463830)}
.laptop-scene{position:relative}
.printer-scene svg.lp-svg{width:100%;height:auto;max-height:100%;filter:drop-shadow(0 8px 8px #68735d24)}
.lp-target{cursor:pointer;outline:none;touch-action:none}
.lp-target:hover>.lp-hit,.lp-target:focus-visible>.lp-hit{stroke:#d97735;stroke-width:3;stroke-dasharray:7 6;fill:#fff;fill-opacity:.1}
.lp-target.lp-candidate>.lp-hit{stroke:#e4b18b;stroke-width:3;stroke-dasharray:7 6;fill:#fff5e6;fill-opacity:.14}
.lp-target.lp-drop-hover>.lp-hit{stroke:#df8d52;stroke-width:4;fill:#fff3df;fill-opacity:.28}
.lp-lead{cursor:pointer;outline:none;touch-action:none}
.laptop-scene svg,.lp-target,.lp-lead,.laptop-work .printer-part{user-select:none;-webkit-user-select:none}
.laptop-drag-preview{pointer-events:none;width:150px;height:70px}
.lp-closeup{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;background:#e9ece4}
.lp-closeup-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:7px 12px;background:#f8f7f3;border-bottom:1px solid #e2e4d9;font-size:12px;color:#6a7568}
.lp-closeup-bar b{font-size:13px;color:#3a4238}.lp-closeup-bar span{flex:1;min-width:160px}.lp-closeup-bar button{padding:7px 12px;font-size:12px}
.printer-scene .lp-closeup svg.lp-svg{flex:1;min-height:0;max-height:none;width:100%;filter:none}
.lp-status{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px;font-size:12px;color:#6a7568}.lp-status li{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #eceee6;padding-bottom:3px}.lp-status b{color:#3a4238;font-weight:600}
/* simulated operating system, rendered inside the laptop display */
.lp-os-wrap{width:688px;height:358px;overflow:hidden;font:13px/1.3 system-ui,-apple-system,"Segoe UI",sans-serif;color:#2b3036}
.lp-os{width:100%;height:100%;display:flex;flex-direction:column;background:linear-gradient(135deg,#e7ecf1,#d9e0e7)}
.lp-os-top{display:flex;align-items:center;gap:14px;padding:5px 12px;background:#2b3036;color:#e9ecef;font-size:12px}.lp-os-top>span:first-child{flex:1;font-weight:600;letter-spacing:.4px}.lp-os-top i{display:inline-block;width:9px;height:9px;border-radius:50%;background:#d97735;margin-right:5px}
.lp-os-clock{display:flex;align-items:center;gap:6px}.lp-os-top button{border:0;border-radius:4px;background:#454c54;color:#fff;font-size:11px;padding:3px 9px;cursor:pointer}
.lp-os-body{flex:1;min-height:0;display:grid;grid-template-columns:1.25fr 1fr;gap:8px;padding:8px}
.lp-os-card{background:#fff;border:1px solid #d0d7de;border-radius:6px;padding:8px 10px;overflow:hidden}.lp-os-card h4{margin:0 0 5px;font-size:12px;letter-spacing:.8px;text-transform:uppercase;color:#6a7480}
.lp-os-row{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin:5px 0}.lp-os-lbl{font-size:11px;color:#6a7480;margin-left:2px}
.lp-chip{border:1px solid #c5ccd3;background:#f4f6f8;border-radius:12px;padding:3px 9px;font-size:11px;color:#3a4048;cursor:pointer}.lp-chip.on{background:#fbe6d5;border-color:#d97735;color:#8a4413;font-weight:600}.lp-chip:disabled{opacity:.45;cursor:not-allowed}
.lp-os-run{border:0;border-radius:5px;background:#d97735;color:#fff;font-weight:600;font-size:12px;padding:6px 12px;cursor:pointer}
.lp-os-status{border-radius:6px;padding:6px 9px;margin:4px 0;background:#eef1f4;border-left:4px solid #9aa3ab}.lp-os-status.ok{background:#e6f4ea;border-color:#34a05a;color:#1f6a3a}.lp-os-status.warn{background:#fdf1dc;border-color:#e09a2b;color:#8a5a0c}.lp-os-status.bad{background:#fbe5e3;border-color:#d4504a;color:#8a2a26}
.lp-os-big{display:flex;align-items:center;gap:10px}.lp-os-big b{display:block;font-size:15px}.lp-os-big em{font-style:normal;font-size:11px;opacity:.85}.lp-os-status p{margin:3px 0 0;font-size:11px}
.lp-bars{width:22px;height:16px;color:currentColor}.lp-os-top .lp-bars{color:#e9ecef;width:18px;height:13px}
.lp-os-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px 8px;margin:5px 0;font-size:11px}.lp-os-grid span{display:block;color:#7a848e;font-size:10px}.lp-os-grid b{font-weight:600;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lp-os-nets,.lp-os-hist{list-style:none;margin:0 0 6px;padding:0;font-size:11px}.lp-os-nets li{display:flex;align-items:center;gap:6px;padding:3px 0;border-bottom:1px solid #eef0f2}.lp-os-nets li span{flex:1}.lp-os-nets li.cur{font-weight:700}.lp-os-nets .lp-bars{width:15px;height:11px;color:#5a626a}.lp-os-nets li b{font-weight:500;color:#7a848e}
.lp-os-hist li{padding:3px 6px;margin-bottom:3px;border-radius:4px;background:#f2f4f6;border-left:3px solid #9aa3ab}.lp-os-hist li.ok{border-color:#34a05a}.lp-os-hist li.bad{border-color:#e09a2b}.lp-os-hist b{display:block}.lp-os-hist span{color:#6a7480}.lp-os .none{color:#9aa3ab;font-style:italic;border:0;background:none}
.lp-os button:focus-visible{outline:2px solid #d97735;outline-offset:1px}
/* gentle mechanical animations; state changes are applied immediately and only the artwork eases */
@keyframes lp-lid-open{from{transform:scaleY(.04);opacity:.4}to{transform:none;opacity:1}}
@keyframes lp-lid-close{from{transform:scaleY(3.2);opacity:.5}to{transform:none;opacity:1}}
@keyframes lp-flip{from{transform:scaleX(.04);opacity:.3}to{transform:none;opacity:1}}
@keyframes lp-cover-on{from{transform:translateY(46px);opacity:.1}to{transform:none;opacity:1}}
@keyframes lp-cover-off{from{transform:none;opacity:1}to{transform:translateY(60px);opacity:0}}
@keyframes lp-spin{from{transform:rotate(-200deg)}to{transform:none}}
.lp-lid-open{animation:lp-lid-open .34s ease-out}.lp-lid-close{animation:lp-lid-close .3s ease-out}.lp-svg.lp-flip{animation:lp-flip .36s ease-out}.lp-cover-on{animation:lp-cover-on .34s ease-out}.lp-cover-off{animation:lp-cover-off .34s ease-in forwards}.lp-spin{animation:lp-spin .28s ease-out}
@media(prefers-reduced-motion:reduce){.lp-lid-open,.lp-lid-close,.lp-svg.lp-flip,.lp-cover-on,.lp-cover-off,.lp-spin{animation:none}.lp-cover-off{display:none}}
.printer-scene svg.lp-bars{width:22px;height:16px;max-height:none;filter:none;flex:none}
.printer-scene .lp-os-top svg.lp-bars{width:18px;height:13px}
.printer-scene .lp-os-nets svg.lp-bars{width:15px;height:11px}
.lp-seat{cursor:default}.lp-seat:not(.lp-candidate):not(.lp-drop-hover):hover>.lp-hit,.lp-seat:not(.lp-candidate):not(.lp-drop-hover):focus-visible>.lp-hit{stroke:none;fill:transparent}

/* PBQ 1 realism: in-case power control and a physical external monitor */
.case-power{cursor:pointer;outline:none}
.case-power .power-hit{stroke:transparent;stroke-width:2.5;transition:stroke .15s ease,fill .15s ease}
.case-power:hover .power-hit{stroke:#e7af81;fill:#fff8e8;fill-opacity:.14}
.case-power:focus-visible .power-hit{stroke:#d97735;stroke-width:3;fill:#fff8e8;fill-opacity:.18}
.case-power[aria-disabled="true"]{cursor:progress}
.work .monitor{max-width:290px;filter:none}
.work .monitor:after{display:none}
.monitor-bezel{position:relative;padding:9px 9px 0;border-radius:10px 10px 7px 7px;background:linear-gradient(165deg,#505753,#1e2421 52%,#0f1311);box-shadow:inset 0 1px 0 #ffffff3a,inset 0 0 0 1px #0a0c0b,0 0 0 1px #0d100e,4px 6px 0 -1px #1f2623,0 14px 14px #3a3f3230}
.monitor-cam{position:absolute;top:3px;left:50%;width:3px;height:3px;margin-left:-1.5px;border-radius:50%;background:#050606;box-shadow:0 0 0 1px #3a423d}
.work .monitor .monitor-screen{border:0;border-radius:3px;box-shadow:inset 0 0 0 1px #000,inset 0 0 16px #000a}
.work .monitor .monitor-screen:after{content:'';position:absolute;inset:0;left:0;bottom:0;width:auto;height:auto;border-radius:3px;background:linear-gradient(115deg,#ffffff1f 0,#ffffff0b 30%,#fff0 31%);pointer-events:none}
.monitor-chin{display:flex;align-items:center;justify-content:space-between;height:17px;padding:0 10px}
.monitor-brand{font-size:5.5px;letter-spacing:.28em;color:#8d9791;font-weight:700}
.monitor-led{display:block;width:4px;height:4px;border-radius:50%;background:#a46a1a;box-shadow:0 0 0 1px #0b0d0c}
.monitor-led.on{background:#7bf0a6;box-shadow:0 0 0 1px #0b0d0c,0 0 5px #7bf0a6}
.work .monitor .monitor-neck{height:26px;width:48px;margin:-1px auto 0;background:linear-gradient(90deg,#3d4540,#8f9a92 38%,#b3bdb5 52%,#4a534d);clip-path:polygon(17% 0,83% 0,100% 100%,0 100%)}
.monitor-base{width:120px;height:9px;margin:-1px auto 0;border-radius:50% 50% 8px 8px/100% 100% 8px 8px;background:linear-gradient(#aab4ac,#5b665f 60%,#2a312d);box-shadow:0 6px 8px #2c332d3a,inset 0 1px 0 #ffffff55}
.work .monitor .os-window{margin:6px auto;padding:6px 8px;width:76%}
.work .monitor .os-brand{padding:6px 8px}
.work .monitor .os-window span{display:block;margin-top:2px}

/* PBQ 06: cable workbench */
.cable-work{max-width:1800px;margin:auto;padding:18px 28px 24px}.cable-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px}.cable-heading h1{font-size:clamp(25px,2vw,34px);margin:4px 0}.cable-heading p{margin:0;color:#66746a}.cable-grid{display:grid;grid-template-columns:minmax(210px,250px) minmax(510px,1fr) minmax(190px,225px);gap:14px;align-items:start}.cable-assignment,.cable-tools{padding:18px;max-height:calc(100vh - 190px);overflow:auto}.cable-assignment h2,.cable-tools h2{font-size:19px;margin:10px 0}.cable-assignment p,.cable-tools p{font-size:13px;line-height:1.45}.cable-bench{background:#fffefa;border:1px solid #dddcd2;border-radius:12px;padding:14px;min-width:0}.cable-bench .workspace-head{margin-bottom:6px}.cable-state{font-size:11px;letter-spacing:.08em;color:#7b6858}.cable-art{display:block;width:100%;height:min(35vh,340px);border-radius:9px}.cable-controls{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.cable-controls button,.cable-wire-head+div button{border:1px solid #c9d0c7;background:#f5f6f1;border-radius:6px;color:#273b30;cursor:pointer}.cable-controls button{padding:7px 10px;font-weight:700;font-size:12px}.cable-controls button[aria-pressed=true]{background:#dcebe1;border-color:#649178}.cable-map{min-height:47px;padding:7px 9px;background:#e8eee4;border-radius:6px;font-size:12px;color:#3d5044;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.cable-map small{display:block;width:100%;font-size:10px}.cb-pass{color:#23683b}.cb-fail{color:#a3422a}.cable-wire-head{display:flex;justify-content:space-between;gap:8px;margin:10px 0 5px;font-size:12px}.cable-wire-head span{font-size:10px;color:#627168}.cable-wires{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}.cable-wire-head+div button{min-width:0;padding:4px 2px;display:flex;flex-direction:column;align-items:center;gap:2px;touch-action:none}.cable-wire-head+div button[aria-pressed=true]{outline:3px solid #cf7d3d;background:#fff4e7}.cable-wire-head+div button:disabled{opacity:1;cursor:default}.wire-pin{font-size:11px;font-weight:800}.wire-color{width:13px;height:28px;border-radius:4px;background:var(--wire);border:1px solid #5b685d}.wire-color.striped{background:repeating-linear-gradient(145deg,#f6f2e8 0 5px,var(--wire) 5px 8px)}.cable-wires small{font-size:clamp(8px,.68vw,10px);overflow-wrap:anywhere}.cable-tools .cable-tool{display:flex;align-items:center;gap:8px;width:100%;margin:7px 0;padding:8px;text-align:left;background:#f7f7f2;border:1px solid #d8ded4;border-radius:8px;color:#273a2f;cursor:pointer}.cable-tool svg{width:52px;height:36px;flex:none}.cable-tool b,.cable-tool small{display:block}.cable-tool b{font-size:12px}.cable-tool small{font-size:10px;color:#718078;margin-top:3px}.cable-note{font-size:11px!important;color:#66746a}.cable-bench .feedback{margin-top:6px}.cable-dragging{cursor:grabbing;user-select:none}.cable-tool:focus-visible,.cable-controls button:focus-visible,.cable-wires button:focus-visible{outline:3px solid #d57b39;outline-offset:2px}@media(max-width:1000px){.cable-grid{grid-template-columns:1fr}.cable-assignment,.cable-tools{max-height:none}.cable-art{height:auto}.cable-work{padding:14px}.cable-heading{align-items:flex-start}.cable-wire-head{flex-direction:column}}
.hub-preview.cable-preview{overflow:hidden;background:#ddd9cd}.cable-preview svg{width:100%;height:100%;object-fit:cover}
@keyframes cable-wire-appear{from{opacity:.7;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.cable-wires button{animation:cable-wire-appear .14s ease-out}@media(prefers-reduced-motion:reduce){.cable-wires button{animation:none}}
/* PBQ 06: compact workbench */
.cable-work .cable-grid{grid-template-columns:minmax(210px,250px) minmax(510px,1fr)}
.cable-repair-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:8px}
.cable-repair-tools .cable-tool{display:flex;align-items:center;gap:5px;min-width:0;padding:5px 8px;text-align:left;background:#f7f7f2;border:1px solid #d8ded4;border-radius:8px;color:#273a2f;cursor:pointer}
.cable-repair-tools .cable-tool svg{width:40px;height:30px;flex:none}
@media(max-width:1000px){.cable-work .cable-grid{grid-template-columns:1fr}.cable-repair-tools{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* PBQ 06: one physical cable and one workbench */
.cable-workbench-art{height:min(34vh,330px)}
.cable-repair-tools{margin-top:8px}
@media(max-width:1000px){.cable-workbench-art{height:auto}}
/* PBQ 07: RAID service bench */
.raid-work{max-width:1800px;margin:auto;padding:18px 28px 24px}.raid-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px}.raid-heading h1{font-size:clamp(25px,2vw,34px);margin:4px 0}.raid-heading p{margin:0;color:#66746a}.raid-grid{display:grid;grid-template-columns:minmax(205px,245px) minmax(700px,1fr);gap:14px}.raid-assignment{padding:18px;max-height:calc(100vh - 190px);overflow:auto}.raid-assignment h2{font-size:20px;margin:10px 0}.raid-assignment p{font-size:13px;line-height:1.48}.raid-bench{background:#fffefa;border:1px solid #dddcd2;border-radius:12px;padding:14px;min-width:0}.raid-main{display:grid;grid-template-columns:minmax(380px,1fr) minmax(330px,.85fr);gap:12px}.raid-device{border-radius:9px;background:#eeece5;padding:8px}.raid-section-label,.raid-supply-head span{font-size:10px;letter-spacing:.1em;color:#6c7a70;font-weight:700}.raid-enclosure{display:block;width:100%;height:min(37vh,330px)}.raid-enclosure .raid-hit{cursor:pointer;stroke:transparent;stroke-width:3}.raid-enclosure [data-raid-bay]:hover .raid-hit,.raid-enclosure [data-raid-bay]:focus-visible .raid-hit{stroke:#df8a4b;outline:none}.raid-tray-pulled{animation:raid-pull .35s ease-out}@keyframes raid-pull{from{opacity:.65;translate:var(--pull-x) -51px}to{opacity:1;translate:0 0}}.raid-device-actions{display:flex;align-items:center;justify-content:space-between;min-height:35px;gap:6px;font-size:11px;color:#53665a}.raid-device-actions button,.raid-console button{border:1px solid #758e7c;border-radius:5px;background:#eaf0e8;color:#243b2c;padding:6px 8px;font-weight:700;font-size:11px;cursor:pointer}.raid-return{min-height:37px;border:1px dashed #b0bdb0;background:#f8f7f1;border-radius:6px;padding:7px;color:#66796c;font-size:11px}.raid-return button{margin-left:5px;border:1px solid #b9c8ba;border-radius:5px;background:#fff;padding:4px;cursor:pointer;font-size:10px}.raid-console{border-radius:9px;overflow:hidden;background:#e9ede8;border:1px solid #899c8e;color:#243a2d}.raid-console-top{background:#25382d;color:#c9d8c9;font-size:10px;letter-spacing:.08em;font-weight:700;padding:9px 12px;display:flex;justify-content:space-between}.raid-console-top small{font-size:9px}.raid-console-body{padding:10px 12px}.raid-console-title{display:flex;justify-content:space-between;align-items:center}.raid-console-title h3{font-size:17px;margin:2px 0 6px}.raid-console-title small,.raid-console-meta small{display:block;color:#718377;font-size:9px;letter-spacing:.07em}.raid-badge{display:inline-block;border-radius:5px;padding:5px 8px;font-size:10px;letter-spacing:.06em;background:#f7e2b8;color:#785515}.raid-badge.healthy{background:#d8ecdb;color:#27623c}.raid-badge.inaccessible{background:#f5d7d1;color:#a53727}.raid-badge.rebuilding{background:#d7e7ee;color:#28556c}.raid-console-meta{display:flex;gap:16px;border-top:1px solid #cbd6cb;border-bottom:1px solid #cbd6cb;padding:7px 0}.raid-console-meta b{font-size:11px}.raid-console-label{font-size:9px;letter-spacing:.1em;font-weight:700;color:#728478;display:flex;justify-content:space-between;align-items:center;margin:6px 0}.raid-member{display:flex;gap:8px;border-bottom:1px solid #d0dbd1;padding:5px 0}.raid-member b,.raid-member small{display:block;font-size:10px}.raid-member small{color:#667a6c;line-height:1.3}.raid-member-led{width:8px;height:8px;flex:none;border-radius:50%;margin-top:4px;background:#6bbd7b}.raid-member-led.failed{background:#d9604e}.raid-member-led.empty{background:#8a948b}.raid-member-led.ready,.raid-member-led.rebuilding{background:#d7a64c}.raid-progress div:first-child{display:flex;justify-content:space-between;font-size:10px;margin:6px 0}.raid-track{height:5px;background:#c8d4c8;border-radius:4px}.raid-track i{display:block;height:100%;background:#d28545;border-radius:4px;transition:width .15s linear}.raid-console-actions{display:flex;gap:6px;margin-top:7px}.raid-events{font-size:10px;line-height:1.35;color:#617568;max-height:38px;overflow:auto}.raid-supply-head{display:flex;justify-content:space-between;align-items:end;margin:9px 0 5px}.raid-supply-head b{font-size:13px}.raid-supplies{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.raid-part{display:flex;align-items:center;gap:6px;border:1px solid #d3dbd1;background:#f8f8f3;border-radius:7px;text-align:left;padding:4px 8px;color:#293e30;cursor:pointer;touch-action:none}.raid-part svg{width:45px;height:37px;flex:none}.raid-part b,.raid-part small{display:block}.raid-part b{font-size:11px}.raid-part small{font-size:9px;color:#728277}.raid-part.selected{outline:2px solid #d3823f;background:#fff2e4}.raid-dragging{cursor:grabbing;user-select:none}.raid-bench .feedback{margin-top:5px}.raid-hit:focus-visible,.raid-part:focus-visible,.raid-return button:focus-visible{outline:3px solid #d57b39}@media(max-width:1050px){.raid-grid{grid-template-columns:1fr}.raid-assignment{max-height:none}.raid-main{grid-template-columns:1fr}.raid-enclosure{height:auto}.raid-work{padding:14px}}@media(prefers-reduced-motion:reduce){.raid-tray-pulled{animation:none}.raid-track i{transition:none}}
.hub-preview.raid-preview{overflow:hidden;background:#e6e4db}.raid-preview svg{width:100%;height:100%}
.raid-tray-in{animation:raid-in .35s ease-out}@keyframes raid-in{from{opacity:.7;translate:0 24px}to{opacity:1;translate:0 0}}@media(prefers-reduced-motion:reduce){.raid-tray-in{animation:none}}
/* PBQ 08: SOHO network workbench */
.soho-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.soho-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:8px}.soho-heading h1{font-size:clamp(25px,2vw,34px);margin:3px 0}.soho-heading p{margin:0;color:#66746a}.soho-grid{display:grid;grid-template-columns:minmax(205px,245px) minmax(700px,1fr);gap:12px}.soho-assignment{padding:16px;max-height:calc(100vh - 180px);overflow:auto}.soho-assignment h2{font-size:19px;margin:9px 0}.soho-assignment p{font-size:12px;line-height:1.42}.soho-requirements{background:#f1f0e9;border-left:3px solid #d28242;padding:8px 10px;font-size:12px}.soho-requirements p{margin:6px 0}.soho-bench{background:#fffefa;border:1px solid #dddcd2;border-radius:12px;padding:10px;min-width:0}.soho-bench .workspace-head{margin-bottom:3px}.soho-link{font-size:11px;color:#4f6b58;font-weight:700}.soho-network-art{display:block;width:100%;height:min(26vh,250px);background:#ebe9e1;border-radius:8px}.soho-port-hit{cursor:pointer;stroke:transparent;stroke-width:2}.soho-network-art [data-soho-port]:hover .soho-port-hit,.soho-network-art [data-soho-port]:focus-visible .soho-port-hit{stroke:#e38a42;outline:none}.soho-network-art [data-soho-end]{cursor:grab}.soho-cable-controls{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:5px 0;font-size:11px;color:#53685b}.soho-cable-controls span{margin-right:auto}.soho-bench button:not(.back){cursor:pointer}.soho-cable-controls button,.soho-diagnostics button,.soho-save button{border:1px solid #b9c9ba;border-radius:5px;background:#f5f8f3;color:#294535;padding:5px 8px;font-size:11px;font-weight:700}.soho-admin{border:1px solid #9aada0;border-radius:8px;overflow:hidden;background:#f4f7f2;color:#253c2d}.soho-admin-bar{background:#263c30;color:#d6e5d5;display:flex;justify-content:space-between;padding:7px 10px;font-size:10px;letter-spacing:.08em}.soho-nav{display:flex;gap:3px;background:#e1e9e0;padding:4px 6px}.soho-nav button{border:0;border-radius:4px;background:transparent;color:#4a6151;padding:6px 10px;font-size:12px;font-weight:700}.soho-nav button[aria-pressed=true]{background:#fff;color:#263f30;box-shadow:0 1px 3px #9eac9c}.soho-admin-content{padding:8px 10px;min-height:180px;max-height:calc(100vh - 520px);overflow:auto}.soho-admin h3{font-size:15px;margin:0 0 8px}.soho-admin h3 span{font-size:11px;color:#75877a;font-weight:400;margin-left:8px}.soho-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.soho-stats>div{background:#fff;border:1px solid #d7e0d5;border-radius:5px;padding:8px;min-width:0}.soho-stats small,.soho-stats b,.soho-stats span{display:block}.soho-stats small{font-size:9px;color:#738677}.soho-stats b{font-size:13px;margin:3px 0}.soho-stats span{font-size:11px;overflow-wrap:anywhere}.soho-overview p{font-size:11px;margin:7px 0}.soho-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.soho-fields label,.soho-diagnostics label{font-size:11px;font-weight:700;display:flex;flex-direction:column;gap:3px}.soho-fields input:not([type=checkbox]),.soho-fields select,.soho-diagnostics input,.soho-diagnostics select{min-width:0;width:100%;border:1px solid #acbead;border-radius:4px;background:#fff;padding:5px;color:#263e2f;font-size:12px}.soho-fields .soho-check{flex-direction:row;align-items:center;align-self:end;padding:8px}.soho-save{display:flex;align-items:center;gap:8px;margin-top:8px}.soho-save span{font-size:11px;color:#697d6e}.soho-scan{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px;font-size:11px;background:#e7eee6;padding:6px;border-radius:5px}.soho-scan small{font-size:10px;color:#667d6b}.soho-client-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:6px;border-top:1px solid #d1ddd0}.soho-client-row b,.soho-client-row small{display:block;font-size:11px}.soho-client-row small{font-size:10px;color:#6c8171;margin-top:2px}.soho-diagnostics{display:grid;grid-template-columns:1fr 2fr;gap:8px;border-top:1px solid #d1ddd0;padding-top:6px;font-size:11px}.soho-diagnostics>div>div{display:flex;gap:4px;flex-wrap:wrap;align-items:end;margin-top:4px}.soho-diagnostics label{max-width:145px}.soho-bench .feedback{margin-top:5px}.soho-dragging{cursor:grabbing;user-select:none}.soho-bench :focus-visible{outline:3px solid #d57b39;outline-offset:2px}.hub-preview.soho-preview{overflow:hidden;background:#ebe9e1}.soho-preview svg{width:100%;height:100%}@media(max-width:1050px){.soho-grid{grid-template-columns:1fr}.soho-assignment{max-height:none}.soho-admin-content{max-height:none}.soho-network-art{height:auto}.soho-work{padding:14px}.soho-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.soho-diagnostics{grid-template-columns:1fr}}
.soho-network-art{height:min(30vh,240px)}.soho-admin-content{max-height:clamp(235px,calc(100vh - 500px),390px);overflow-y:auto}@media(max-width:1050px){.soho-network-art{height:auto}.soho-admin-content{max-height:none}}

/* PBQ 08 refinement: physical cable, Connected Devices cards, Windows-style windows */
.soho-network-art [data-soho-port],.soho-network-art [data-soho-connector=seated]{touch-action:none}.soho-network-art [data-soho-connector=seated]{cursor:grab}.soho-network-art [data-soho-port]{cursor:pointer;outline:none}.soho-port-hot .soho-port-hit{stroke:#e38a42;stroke-width:2.5}.soho-port-deny .soho-port-hit{stroke:#c0392b;stroke-width:3;animation:sohoDeny .7s}@keyframes sohoDeny{0%,40%,80%{transform:translateX(-1.5px)}20%,60%,100%{transform:translateX(1.5px)}}@media(prefers-reduced-motion:reduce){.soho-port-deny .soho-port-hit{animation:none}}
.soho-network-art [data-soho-connector=seated]:focus-visible .soho-connector-hit{stroke:#e38a42;stroke-width:2}
.soho-scan{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.soho-scan button,.soho-client-actions button{border:1px solid #b9c9ba;border-radius:5px;background:#f5f8f3;color:#294535;padding:5px 9px;font-size:11px;font-weight:700;cursor:pointer}.soho-scan button:disabled{opacity:.55;cursor:default}.soho-spin::before{content:"";display:inline-block;width:9px;height:9px;margin-right:6px;border:2px solid #9bb09f;border-top-color:#2a6fb8;border-radius:50%;animation:sohoSpin .8s linear infinite;vertical-align:-1px}@keyframes sohoSpin{to{transform:rotate(360deg)}}
.soho-chans{display:grid;gap:4px;flex:1 1 280px;min-width:240px}.soho-chan{display:grid;grid-template-columns:78px 1fr 150px;gap:8px;align-items:center;font-size:11px}.soho-chan-bar{height:9px;background:#d4ddd3;border-radius:5px;overflow:hidden}.soho-chan-bar i{display:block;height:100%;border-radius:5px}.soho-chan-bar i[data-level=congested]{background:#c4553f}.soho-chan-bar i[data-level=moderate]{background:#d9a13d}.soho-chan-bar i[data-level=clear]{background:#4eaa72}.soho-chan em{font-style:normal;color:#526a58}
.soho-clients{display:grid;grid-template-columns:1fr 1fr;gap:10px}.soho-client{background:#fff;border:1px solid #d1ddd0;border-radius:7px;padding:8px 10px;min-width:0}.soho-client h4{margin:0 0 4px;font-size:13px}.soho-client dl{display:grid;grid-template-columns:auto 1fr;gap:1px 10px;margin:0 0 6px;font-size:11px}.soho-client dt{color:#6c8171}.soho-client dd{margin:0;font-weight:700;overflow-wrap:anywhere}.soho-client-actions{display:flex;gap:6px;flex-wrap:wrap}.soho-result{margin-top:6px;padding:5px 7px;border-radius:5px;border-left:3px solid #9aada0;background:#eef2ec;font-size:11px;line-height:1.35}.soho-result[data-state=ok]{border-color:#3f9a64;background:#e4f2e8}.soho-result[data-state=warn]{border-color:#d9a13d;background:#faf0d8}.soho-result[data-state=bad]{border-color:#c4553f;background:#f8e5e0}
.soho-win{position:fixed;display:flex;flex-direction:column;background:#fff;border:1px solid #6d7580;box-shadow:0 10px 34px rgba(0,0,0,.38),0 2px 6px rgba(0,0,0,.25);max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);font-family:"Segoe UI",system-ui,sans-serif}.soho-win-bar{box-sizing:border-box;height:36px;flex:none;display:flex;justify-content:space-between;align-items:stretch;background:#f1f3f5;color:#222;cursor:move;user-select:none;font-size:12px}.soho-win-title{display:flex;align-items:center;gap:7px;padding:0 10px;line-height:1}.soho-win-title i{font-style:normal;font-weight:700;font-size:11px}.soho-win-x{border:0;background:#c42b1c;color:#fff;width:46px;height:36px;padding:0;font-size:13px;line-height:1;cursor:pointer}.soho-win-x:hover{background:#e0301f}.soho-win :focus-visible{outline:2px solid #2a6fb8;outline-offset:1px}
.soho-win-term{right:28px;bottom:28px;width:min(640px,calc(100vw - 16px));height:min(380px,calc(100vh - 16px));background:#0c0c0c;border-color:#5b6068}.soho-win-term .soho-win-bar{background:#fff}.soho-term-body{flex:1;overflow-y:auto;padding:6px 8px;background:#0c0c0c;color:#cccccc;font:13px/1.3 Consolas,"DejaVu Sans Mono",monospace;cursor:text}.soho-term-line{white-space:pre-wrap;overflow-wrap:anywhere;min-height:1.3em}.soho-term-prompt{display:flex;margin:0}.soho-term-prompt span{white-space:pre}.soho-term-prompt input{flex:1;min-width:40px;background:transparent;border:0;outline:0!important;color:#ccc;font:inherit;caret-color:#fff;padding:0;margin:0}
.soho-win-wifi{right:28px;top:84px;width:min(390px,calc(100vw - 16px))}.soho-win-body{padding:10px 14px 12px;overflow-y:auto;color:#1b1b1b;font-size:13px}.soho-win-body h4{margin:0 0 8px;font-size:20px;font-weight:600}.soho-wifi-toggle{display:flex;align-items:center;gap:10px;margin-bottom:10px}.soho-wifi-toggle span:first-child{font-weight:600}.soho-switch{width:40px;height:20px;border:1px solid #333;border-radius:10px;background:#fff;position:relative;cursor:pointer;padding:0}.soho-switch i{position:absolute;left:3px;top:3px;width:12px;height:12px;border-radius:50%;background:#333;transition:left .12s}.soho-switch.on{background:#0067c0;border-color:#0067c0}.soho-switch.on i{left:23px;background:#fff}.soho-wifi-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.soho-wifi-head button,.soho-net-detail button{border:1px solid #bbb;background:#fdfdfd;border-radius:3px;padding:3px 12px;font-size:12px;cursor:pointer}.soho-wifi-head button:disabled{opacity:.5;cursor:default}.soho-net-detail .primary{background:#0067c0;border-color:#0067c0;color:#fff}.soho-net-list{list-style:none;margin:0;padding:0;max-height:230px;overflow-y:auto;border-top:1px solid #e1e1e1}.soho-net-list li{border-bottom:1px solid #e1e1e1}.soho-net{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:0;background:#fff;padding:7px 6px;cursor:pointer;font:inherit}.soho-net:hover,.soho-net.open{background:#eef4fb}.soho-net span b{display:block;font-weight:600}.soho-net small{color:#555;font-size:11px}.soho-bars{width:20px;height:18px;flex:none}.soho-net-detail{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:end;padding:4px 8px 9px 36px;background:#eef4fb}.soho-net-detail label{display:flex;flex-direction:column;gap:2px;font-size:12px;flex:1 1 100%}.soho-net-detail input[type=password],.soho-net-detail input[type=text]{border:1px solid #777;padding:4px 6px;font-size:13px}.soho-net-detail .soho-show{flex-direction:row;align-items:center;gap:5px;flex:1 1 auto}.soho-wifi-note{color:#555;margin:8px 0;font-size:12px}.soho-wifi-error{color:#a4262c;margin:8px 0 0;font-size:12px}.soho-wifi-status{margin-top:10px;padding-top:8px;border-top:1px solid #e1e1e1;font-size:12px;color:#333}
@media(max-width:1050px){.soho-clients{grid-template-columns:1fr}.soho-chan{grid-template-columns:70px 1fr}.soho-chan em{grid-column:1/-1}}

/* PBQ 09: network services and port troubleshooting */
.svc-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.svc-grid{display:grid;grid-template-columns:minmax(205px,245px) minmax(0,1fr);gap:12px}.svc-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.svc-assignment h2{font-size:19px;margin:9px 0}.svc-assignment p{font-size:12px;line-height:1.42}.svc-env{background:#f1f0e9;border-left:3px solid #6e8fb0;padding:8px 10px;font-size:12px;margin:8px 0}.svc-env dl{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:6px 0 0}.svc-env dt{color:#66746a}.svc-env dd{margin:0;font-weight:700}
.svc-bench{min-width:0}.svc-main{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,1fr);gap:10px;align-items:start}.svc-side{display:grid;gap:10px;min-width:0}.svc-bench .feedback{margin-top:8px}
.svc-term{display:flex;flex-direction:column;height:clamp(390px,calc(100vh - 250px),680px);background:#012456;border:1px solid #3a4a64;border-radius:6px;overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,.2)}.svc-term-bar{display:flex;justify-content:space-between;align-items:center;height:32px;flex:none;padding:0 10px;background:#f1f3f5;color:#222;font:12px "Segoe UI",system-ui,sans-serif}.svc-term-bar span{display:flex;align-items:center;gap:7px}.svc-term-bar i{font-style:normal;font-weight:700;font-size:10px;background:#012456;color:#fff;border-radius:2px;padding:1px 4px}.svc-term-bar small{color:#667}
.svc-term-body{flex:1;overflow-y:auto;padding:8px 10px;color:#eeedf0;font:13px/1.35 Consolas,"DejaVu Sans Mono",monospace;cursor:text}.svc-term-line{white-space:pre-wrap;overflow-wrap:anywhere;min-height:1.35em}.svc-term-prompt{display:flex;margin:0}.svc-term-prompt span{white-space:pre;color:#eeedf0}.svc-term-prompt input{flex:1;min-width:40px;background:transparent;border:0;outline:0!important;color:#fff;font:inherit;caret-color:#fff;padding:0;margin:0}
.svc-panel{background:#fffefa;border:1px solid #cfd8cf;border-radius:8px;overflow:hidden;color:#253c2d;font-size:12px}.svc-panel-bar{display:flex;justify-content:space-between;background:#263c30;color:#d6e5d5;padding:6px 10px;font-size:10px;letter-spacing:.08em}
.svc-list{padding:6px 8px 2px}.svc-list-head{display:grid;grid-template-columns:1fr 70px;padding:0 8px 3px 26px;color:#738677;font-size:10px;letter-spacing:.05em;text-transform:uppercase}.svc-row{display:grid;grid-template-columns:18px 1fr 70px;align-items:center;width:100%;text-align:left;border:1px solid transparent;border-radius:5px;background:transparent;padding:5px 8px;font:inherit;color:inherit;cursor:pointer}.svc-row:hover{background:#eef3ec}.svc-row.sel{background:#e3edf8;border-color:#9bb8d6}.svc-row em{font-style:normal;font-weight:700}.svc-row em[data-status=stopped]{color:#b0432f}.svc-row em[data-status=running]{color:#2f7d4f}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#9aa}.dot.running{background:#3f9a64}.dot.stopped{background:#c4553f}.dot.idle{background:#c8cdc8}
.svc-detail{margin:4px 8px;padding:7px 9px;background:#f4f7f2;border:1px solid #d7e0d5;border-radius:5px}.svc-detail p{margin:3px 0 6px;color:#53685b}.svc-empty{color:#6c8171}.svc-detail-row{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}.svc-btns{margin-left:auto;display:flex;gap:6px}.svc-btns button,.svc-share-row button{border:1px solid #b9c9ba;border-radius:5px;background:#f5f8f3;color:#294535;padding:5px 14px;font-size:12px;font-weight:700;cursor:pointer}.svc-btns button:hover,.svc-share-row button:hover{background:#e8f0e6}
.svc-log-head{padding:5px 10px 2px;font-size:10px;letter-spacing:.06em;color:#738677;text-transform:uppercase}.svc-log{list-style:none;margin:0;padding:0 8px 8px;max-height:104px;overflow-y:auto;font-size:11px}.svc-log li{display:grid;grid-template-columns:38px 76px 1fr;gap:4px;padding:2px 2px;border-top:1px solid #e6ece4}.svc-log li[data-level=warning] b{color:#a9731f}.svc-log li[data-level=error] b{color:#b0432f}.svc-log time{color:#738677}
.svc-share-row{display:flex;gap:6px;padding:8px 10px 4px}.svc-share-row input{flex:1;min-width:0;border:1px solid #acbead;border-radius:4px;padding:5px 7px;font:12px Consolas,"DejaVu Sans Mono",monospace;color:#263e2f}.svc-result{margin:4px 10px 10px;padding:7px 9px;border-radius:5px;border-left:3px solid #9aada0;background:#eef2ec}.svc-result.bad{border-color:#c4553f;background:#f8e5e0}.svc-result.ok{border-color:#3f9a64;background:#e4f2e8}.svc-result p{margin:3px 0}.svc-result small{color:#5c4a45;display:block;line-height:1.35}.svc-files{list-style:none;margin:5px 0 0;padding:0}.svc-files li{display:flex;gap:8px;align-items:baseline;padding:2px 0}.svc-files small{margin-left:auto;color:#5c7061}
.svc-disconnected{padding:14px 16px;color:#53685b}.svc-disconnected p{margin:3px 0 8px}.svc-disconnected button{border:1px solid #b9c9ba;border-radius:5px;background:#f5f8f3;color:#294535;padding:6px 14px;font-size:12px;font-weight:700;cursor:pointer}.svc-disconnected button:hover{background:#e8f0e6}
.svc-bench :focus-visible,.svc-assignment :focus-visible{outline:3px solid #d57b39;outline-offset:2px}.svc-preview{background:#012456;color:#eee;font:10px/1.5 Consolas,monospace;padding:10px 12px;display:grid;grid-template-columns:1.5fr 1fr;gap:10px;overflow:hidden}.svc-pv-term b{color:#9cf}.svc-pv-cursor{display:inline-block;width:6px;height:10px;background:#eee;margin-left:2px;vertical-align:-1px}.svc-pv-list{background:#fffefa;color:#253c2d;border-radius:5px;padding:6px 8px;font:10px sans-serif}.svc-pv-list p{margin:4px 0;display:flex;gap:6px;align-items:center}.svc-pv-list em{margin-left:auto;font-style:normal;color:#738677}
@media(max-width:1050px){.svc-grid{grid-template-columns:1fr}.svc-main{grid-template-columns:1fr}.svc-assignment{max-height:none}.svc-term{height:380px}.svc-work{padding:14px}}

/* PBQ 10: SSD failure diagnostics */
.ssd-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.ssd-grid{display:grid;grid-template-columns:minmax(205px,245px) minmax(0,1fr);gap:12px}.ssd-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.ssd-assignment h2{font-size:19px;margin:9px 0}.ssd-assignment p{font-size:12px;line-height:1.42}.ssd-env{background:#f1f0e9;border-left:3px solid #6e8fb0;padding:8px 10px;font-size:12px;margin:8px 0}.ssd-env p{margin:4px 0 0}
.ssd-bench{min-width:0}.ssd-main{display:grid;grid-template-columns:minmax(0,2fr) minmax(330px,1fr);gap:10px;align-items:start}.ssd-bench .feedback{margin-top:8px}
.ssd-term{display:flex;flex-direction:column;height:clamp(400px,calc(100vh - 250px),700px);background:#012456;border:1px solid #3a4a64;border-radius:6px;overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,.2)}.ssd-term-bar{display:flex;justify-content:space-between;align-items:center;height:32px;flex:none;padding:0 10px;background:#f1f3f5;color:#222;font:12px "Segoe UI",system-ui,sans-serif}.ssd-term-bar span{display:flex;align-items:center;gap:7px}.ssd-term-bar i{font-style:normal;font-weight:700;font-size:10px;background:#012456;color:#fff;border-radius:2px;padding:1px 4px}.ssd-term-bar small{color:#667}
.ssd-term-body{flex:1;overflow:auto;padding:8px 10px;color:#eeedf0;font:clamp(12.5px,.55vw + 5.5px,14px)/1.4 Consolas,"DejaVu Sans Mono",monospace;cursor:text}.ssd-term-line{white-space:pre-wrap;overflow-wrap:anywhere;min-height:1.4em}.ssd-term-prompt{display:flex;margin:0}.ssd-term-prompt span{white-space:pre}.ssd-term-prompt input{flex:1;min-width:40px;background:transparent;border:0;outline:0!important;color:#fff;font:inherit;caret-color:#fff;padding:0;margin:0}
.ssd-panel{background:#fffefa;border:1px solid #cfd8cf;border-radius:8px;overflow:hidden;color:#253c2d;font-size:12px;min-width:0}.ssd-panel-bar{display:flex;justify-content:space-between;background:#263c30;color:#d6e5d5;padding:6px 10px;font-size:10px;letter-spacing:.08em}.ssd-tabs{display:flex;gap:3px;background:#e1e9e0;padding:4px 6px;flex-wrap:wrap}.ssd-tabs button{border:0;border-radius:4px;background:transparent;color:#4a6151;padding:6px 9px;font-size:12px;font-weight:700;cursor:pointer}.ssd-tabs button[aria-pressed=true]{background:#fff;color:#263f30;box-shadow:0 1px 3px #9eac9c}
.ssd-tab-body{padding:8px 10px;max-height:calc(100vh - 330px);min-height:300px;overflow-y:auto}.ssd-bays{display:grid;gap:6px}.ssd-bay,.ssd-opt{display:grid;grid-template-columns:132px 1fr;gap:8px;align-items:center;width:100%;text-align:left;border:1px solid #d1ddd0;border-radius:7px;background:#fff;padding:5px 8px;font:inherit;color:inherit;cursor:pointer}.ssd-bay:hover,.ssd-opt:hover{background:#f1f6ef}.ssd-bay.sel,.ssd-opt.sel{background:#e3edf8;border-color:#7ea3c8;box-shadow:0 0 0 1px #7ea3c8}.ssd-art{width:100%;height:auto;display:block}.ssd-art-wrap{display:block}.ssd-empty{display:grid;place-items:center;height:48px;border:1px dashed #9aada0;border-radius:5px;color:#738677;font-weight:700}.ssd-info{display:grid;gap:1px;min-width:0}.ssd-info b{font-size:13px}.ssd-info small{color:#5d7263;font-size:11px;line-height:1.3}
.ssd-badge{justify-self:start;margin-top:2px;padding:1px 8px;border-radius:9px;font-size:11px;font-weight:700}.ssd-badge.ok{background:#dcefe3;color:#1f6a40}.ssd-badge.warn{background:#faecc9;color:#8a5b0f}.ssd-detail{margin-top:8px;padding:7px 9px;background:#f4f7f2;border:1px solid #d7e0d5;border-radius:5px}.ssd-detail dl{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;margin:4px 0 0}.ssd-detail dt{color:#6c8171}.ssd-detail dd{margin:0;font-weight:700}.ssd-detail p{margin:3px 0 0}
.ssd-hist-head{margin:8px 0 3px;font-size:10px;letter-spacing:.06em;color:#738677;text-transform:uppercase}.ssd-hist{list-style:none;margin:0;padding:0;font-size:11px}.ssd-hist li{display:grid;grid-template-columns:40px 1fr;gap:6px;padding:2px 0;border-top:1px solid #e6ece4}.ssd-hist time,.muted{color:#738677}.ssd-hist li.muted{display:block}.ssd-lead{margin:2px 0 8px}.ssd-opts{display:grid;gap:6px}.ssd-actions{margin-top:8px;display:flex;gap:6px}.ssd-actions button,.ssd-shelf button{border:1px solid #b9c9ba;border-radius:5px;background:#f5f8f3;color:#294535;padding:6px 14px;font-size:12px;font-weight:700;cursor:pointer}.ssd-actions button:hover,.ssd-shelf button:hover{background:#e8f0e6}.ssd-actions button:disabled{opacity:.55;cursor:default}.ssd-shelf{display:flex;align-items:center;gap:8px;justify-content:space-between;padding:3px 0;border-top:1px solid #e6ece4;font-size:11px}
.ssd-card{padding:8px 10px;margin-bottom:8px;background:#f4f7f2;border:1px solid #d7e0d5;border-radius:6px}.ssd-card dl{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;margin:4px 0}.ssd-card dt{color:#6c8171}.ssd-card dd{margin:0;font-weight:700}.ssd-card p{margin:4px 0}.ssd-ok,.ssd-bad{margin:6px 0 0;padding:6px 8px;border-radius:5px;border-left:3px solid #3f9a64;background:#e4f2e8;line-height:1.4}.ssd-bad{border-color:#c4553f;background:#f8e5e0}.ssd-boot{margin:0;border-radius:0}.ssd-progress{margin-top:8px;font-size:11px}.ssd-progress i{display:block;height:8px;border-radius:4px;background:linear-gradient(90deg,#4eaa72 0 100%) left/0 100% no-repeat #d4ddd3;animation:ssdFill 1.2s linear forwards}@keyframes ssdFill{to{background-size:100% 100%}}@media(prefers-reduced-motion:reduce){.ssd-progress i{animation:none;background-size:100% 100%}}
.ssd-files{list-style:none;margin:6px 0 0;padding:0}.ssd-files li{display:flex;justify-content:space-between;padding:2px 2px;border-top:1px solid #e6ece4}.ssd-files li[data-ok=false]{color:#a2392a;font-weight:700}.ssd-files em{font-style:normal}.ssd-work :focus-visible{outline:3px solid #d57b39;outline-offset:2px}
.ssd-preview{background:#012456;color:#eee;font:10px/1.5 Consolas,monospace;padding:12px;display:grid;gap:10px;align-content:center;overflow:hidden}.ssd-pv-term b{color:#9cf}.ssd-pv-cursor{display:inline-block;width:6px;height:10px;background:#eee;margin-left:3px;vertical-align:-1px}.ssd-pv-drives{display:flex;gap:8px}.ssd-pv-drives i{display:block;height:20px;border-radius:3px;background:linear-gradient(#cdd5d1,#8d9894)}.ssd-pv-drives i:nth-child(1){width:34%}.ssd-pv-drives i:nth-child(2){width:30%}.ssd-pv-drives i:nth-child(3){width:36%}
@media(max-width:1050px){.ssd-grid,.ssd-main{grid-template-columns:1fr}.ssd-assignment{max-height:none}.ssd-term{height:380px}.ssd-tab-body{max-height:none}.ssd-work{padding:14px}}

/* PBQ 11: network latency investigation */
.lat-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.lat-grid{display:grid;grid-template-columns:minmax(205px,245px) minmax(0,1fr);gap:12px}.lat-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.lat-assignment h2{font-size:19px;margin:9px 0}.lat-assignment p{font-size:12px;line-height:1.42}.lat-env{background:#f1f0e9;border-left:3px solid #6e8fb0;padding:8px 10px;font-size:12px;margin:8px 0}.lat-env dl{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:6px 0 0}.lat-env dt{color:#66746a}.lat-env dd{margin:0;font-weight:700}
.lat-bench{min-width:0}.lat-diagram{background:#fffefa;border:1px solid #dddcd2;border-radius:10px;padding:6px;margin-bottom:8px}.lat-art{display:block;width:100%;height:min(25vh,190px);border-radius:8px}.lat-link{cursor:pointer;outline:none}.lat-link:hover .lat-link-hover,.lat-link:focus-visible{filter:drop-shadow(0 0 3px #e38a42)}.lat-link:focus-visible path:first-child{stroke:rgba(227,138,66,.35)}.lat-main{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(340px,1fr);gap:10px;align-items:start}.lat-bench .feedback{margin-top:8px}
.lat-term{display:flex;flex-direction:column;height:clamp(300px,calc(100vh - 480px),620px);background:#0c0c0c;border:1px solid #444b55;border-radius:6px;overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,.2)}.lat-term-bar{display:flex;justify-content:space-between;align-items:center;height:32px;flex:none;padding:0 10px;background:#f1f3f5;color:#222;font:12px "Segoe UI",system-ui,sans-serif}.lat-term-bar span{display:flex;align-items:center;gap:7px}.lat-term-bar i{font-style:normal;font-weight:700;font-size:10px;background:#0c0c0c;color:#fff;border-radius:2px;padding:1px 4px}.lat-term-bar small{color:#667}
.lat-term-body{flex:1;overflow:auto;padding:8px 10px;color:#cccccc;font:clamp(12.5px,.55vw + 5.5px,14px)/1.35 Consolas,"DejaVu Sans Mono",monospace;cursor:text}.lat-term-line{white-space:pre-wrap;overflow-wrap:anywhere;min-height:1.35em}.lat-term-prompt{display:flex;margin:0}.lat-term-prompt span{white-space:pre}.lat-term-prompt input{flex:1;min-width:40px;background:transparent;border:0;outline:0!important;color:#fff;font:inherit;caret-color:#fff;padding:0;margin:0}
.lat-panel{background:#fffefa;border:1px solid #cfd8cf;border-radius:8px;overflow:hidden;color:#253c2d;font-size:12px;min-width:0;height:clamp(300px,calc(100vh - 480px),620px);display:flex;flex-direction:column}.lat-panel-bar{display:flex;justify-content:space-between;background:#263c30;color:#d6e5d5;padding:6px 10px;font-size:10px;letter-spacing:.08em;flex:none}.lat-panel-body{padding:8px 10px;overflow-y:auto;flex:1}.lat-hint-text{color:#6c8171;margin:4px 0}.lat-info dl{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;margin:4px 0 6px}.lat-info dt{color:#6c8171}.lat-info dd{margin:0;font-weight:700}
.lat-counters{width:100%;border-collapse:collapse;font-size:11px}.lat-counters th{text-align:left;color:#6c8171;font-weight:700;padding:2px 4px 2px 0;border-bottom:1px solid #d7e0d5}.lat-counters td{padding:3px 4px 3px 0;border-bottom:1px solid #eef2ec}.lat-ev-head,.lat-inv-head{margin:8px 0 3px;font-size:10px;letter-spacing:.06em;color:#738677;text-transform:uppercase}.lat-events{list-style:none;margin:0;padding:0;font-size:11px}.lat-events li{display:grid;grid-template-columns:40px 1fr;gap:6px;padding:2px 0;border-top:1px solid #e6ece4}.lat-events time{color:#738677}
.lat-new{display:grid;grid-template-columns:1fr;gap:2px 10px;margin:6px 0;padding:6px 8px;background:#eef3ec;border-left:3px solid #7ea3c8;font-size:11px}.lat-new b{grid-column:1/-1}.lat-new{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;margin:6px 0;padding:6px 8px;background:#eef3ec;border-left:3px solid #7ea3c8;font-size:11px}.lat-new b{grid-column:1/-1}.lat-actions{margin-top:8px;display:flex;gap:6px}.lat-actions button,.lat-cable-row button{border:1px solid #b9c9ba;border-radius:5px;background:#f5f8f3;color:#294535;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer}.lat-actions button:hover,.lat-cable-row button:hover{background:#e8f0e6}.lat-cable-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 0;border-top:1px solid #e6ece4}.lat-cable-row span{display:grid}.lat-cable-row small{color:#6c8171}.lat-cable-row button[aria-disabled=true]{opacity:.6}.lat-work :focus-visible{outline:3px solid #d57b39;outline-offset:2px}
.lat-preview{background:#0c0c0c;color:#ddd;font:10px/1.5 Consolas,monospace;padding:12px;display:grid;gap:12px;align-content:center;overflow:hidden}.lat-pv-term b{color:#fff}.lat-pv-cursor{display:inline-block;width:6px;height:10px;background:#ddd;margin-left:3px;vertical-align:-1px}.lat-pv-net{display:flex;align-items:center}.lat-pv-net i{display:block;width:26px;height:16px;border-radius:3px;background:linear-gradient(#cdd5d1,#8d9894)}.lat-pv-net u{display:block;flex:1;height:3px;background:#5b7f99}
@media(max-width:1050px){.lat-grid,.lat-main{grid-template-columns:1fr}.lat-assignment{max-height:none}.lat-term,.lat-panel{height:380px}.lat-work{padding:14px}}
.ssd-power{display:flex;align-items:center;gap:8px;padding:6px 8px;flex-wrap:wrap;border-bottom:1px solid #e1e9e0;background:#f7f9f5;font-size:12px}.ssd-led{width:10px;height:10px;border-radius:50%;background:#9aa;box-shadow:0 0 0 1px #fff inset}.ssd-power[data-power=running] .ssd-led{background:#3f9a64}.ssd-power[data-power=noboot] .ssd-led{background:#d9a13d}.ssd-power[data-power=off] .ssd-led{background:#8d9894}.ssd-power-text{flex:1;white-space:nowrap}.ssd-power-btns{display:flex;gap:6px}.ssd-power-btns button{white-space:nowrap;border:1px solid #b9c9ba;border-radius:5px;background:#f5f8f3;color:#294535;padding:4px 8px;font-size:12px;font-weight:700;cursor:pointer}.ssd-power-btns button:disabled{opacity:.45;cursor:default}.ssd-power-btns button:not(:disabled):hover{background:#e8f0e6}.ssd-note{margin:0 0 6px;color:#5d7263;font-size:11px}

/* Shared command reference (PBQs 9-11) */
.term-bar-right{display:flex;align-items:center;gap:10px}.cmdref-btn{border:1px solid #b9bfc7;border-radius:4px;background:#fff;color:#2a3a4a;padding:2px 9px;font-size:11px;font-weight:700;cursor:pointer;font-family:"Segoe UI",system-ui,sans-serif}.cmdref-btn:hover,.cmdref-btn[aria-expanded=true]{background:#e6eef7;border-color:#7ea3c8}.cmdref-btn:focus-visible,.cmdref-close:focus-visible{outline:2px solid #d57b39;outline-offset:1px}
.cmdref-panel{position:fixed;right:24px;top:166px;z-index:70;width:min(400px,calc(100vw - 16px));max-height:calc(100vh - 186px);display:flex;flex-direction:column;background:#fffefa;border:1px solid #6d7580;box-shadow:0 10px 30px rgba(0,0,0,.3);font-family:"Segoe UI",system-ui,sans-serif;color:#1f2a24}.cmdref-bar{box-sizing:border-box;height:36px;flex:none;display:flex;justify-content:space-between;align-items:stretch;background:#f1f3f5;font-size:12px;font-weight:600}.cmdref-bar span{display:flex;align-items:center;padding:0 12px}.cmdref-close{border:0;background:#c42b1c;color:#fff;width:44px;height:36px;padding:0;font-size:13px;line-height:1;cursor:pointer}.cmdref-close:hover{background:#e0301f}.cmdref-body{padding:8px 12px 10px;overflow-y:auto;font-size:12px}.cmdref-body ul{list-style:none;margin:0;padding:0}.cmdref-body li{display:grid;gap:1px;padding:6px 0;border-bottom:1px solid #e6ece4}.cmdref-body code{font:12px Consolas,"DejaVu Sans Mono",monospace;background:#eef2ec;padding:1px 4px;border-radius:3px;overflow-wrap:anywhere}.cmdref-body li>span{color:#46594d}.cmdref-body small{color:#6c8171}.cmdref-note{margin:8px 0 0;color:#6c8171;font-size:11px}

/* PBQ 12: ChrilloLabs VM Manager */
.vm-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.vm-grid{display:grid;grid-template-columns:minmax(205px,245px) minmax(0,1fr);gap:12px}.vm-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.vm-assignment h2{font-size:19px;margin:9px 0}.vm-assignment p{font-size:12px;line-height:1.42}.vm-req{background:#f1f0e9;border-left:3px solid #d28242;padding:8px 10px;font-size:12px;margin:8px 0}.vm-req dl{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:6px 0}.vm-req dt{color:#66746a}.vm-req dd{margin:0;font-weight:700}.vm-req p{margin:4px 0 0}
.vm-bench{min-width:0}.vm-app{background:#fffefa;border:1px solid #cfd8cf;border-radius:8px;overflow:hidden;color:#253c2d;font-size:12px}.vm-app-bar{display:flex;justify-content:space-between;background:#263c30;color:#d6e5d5;padding:7px 12px;font-size:10px;letter-spacing:.08em}.vm-app-body{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:clamp(300px,calc(100vh - 430px),520px)}
.vm-nav{background:#eef2ec;border-right:1px solid #d7e0d5;padding:8px;display:flex;flex-direction:column;gap:3px;overflow-y:auto}.vm-nav-head{margin:8px 4px 2px;font-size:10px;letter-spacing:.07em;color:#738677;text-transform:uppercase}.vm-nav-item,.vm-nav-vm{display:flex;align-items:center;gap:8px;width:100%;text-align:left;border:1px solid transparent;border-radius:5px;background:transparent;padding:6px 8px;font:inherit;color:inherit;cursor:pointer}.vm-nav-item:hover,.vm-nav-vm:hover{background:#e1eadf}.vm-nav-item.sel,.vm-nav-vm.sel{background:#fff;border-color:#9bb8d6;box-shadow:0 1px 3px #b9c6b6}.vm-nav-vm span{display:grid;min-width:0}.vm-nav-vm b{font-size:12px;overflow:hidden;text-overflow:ellipsis}.vm-nav-vm small{color:#6c8171;font-size:10px}.vm-new{margin-top:8px;border:1px dashed #7e9a84;border-radius:5px;background:#f6f9f4;color:#2c4a36;padding:7px;font-weight:700;font-size:12px;cursor:pointer}.vm-new:hover{background:#e8f0e6}
.vm-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#9aa;margin-right:6px;flex:none}.vm-dot.running{background:#3f9a64}.vm-dot.starting,.vm-dot.stopping{background:#d9a13d}.vm-dot.off{background:#9aa5a0}.vm-pane{padding:12px 14px;overflow-y:auto;min-width:0}.vm-pane h3{margin:0 0 8px;font-size:15px}.vm-pane h3 span{font-size:11px;color:#75877a;font-weight:400;margin-left:8px}
.vm-table{width:100%;border-collapse:collapse;font-size:11px}.vm-table th{text-align:left;color:#6c8171;padding:4px 6px 4px 0;border-bottom:1px solid #d7e0d5;font-weight:700}.vm-table td{padding:7px 6px 7px 0;border-bottom:1px solid #eef2ec}.vm-table tr[data-vm-row]{cursor:pointer}.vm-table tr[data-vm-row]:hover{background:#f1f6ef}.vm-note{color:#5d7263;font-size:11px;margin:8px 0 0;line-height:1.4}
.vm-host{display:grid;gap:10px}.vm-card{background:#fff;border:1px solid #d7e0d5;border-radius:7px;padding:8px 10px}.vm-bar{display:flex;height:16px;border-radius:5px;overflow:hidden;background:#dfe6dd;margin:6px 0}.vm-bar i{display:block;min-width:2px}.vm-bar .reserve{background:#8d9894}.vm-bar .vmram{background:#d28242}.vm-bar .free{background:#4eaa72}.vm-bar.single i{background:#6e8fb0}.vm-budget{display:grid;grid-template-columns:1fr auto;gap:3px 14px;margin:4px 0}.vm-budget dt{color:#53685b}.vm-budget dd{margin:0;font-weight:700;text-align:right}.vm-budget .total{border-top:1px solid #d7e0d5;padding-top:4px;color:#1f3a2a}
.vm-vm-head{display:flex;align-items:center;justify-content:space-between}.vm-pill{padding:2px 10px;border-radius:10px;font-size:11px;font-weight:700;background:#e4e8e3;color:#4d5f54}.vm-pill.running{background:#dcefe3;color:#1f6a40}.vm-pill.starting,.vm-pill.stopping{background:#faecc9;color:#8a5b0f}.vm-power{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 8px}.vm-power button,.vm-actions button,.vm-diag button,.vm-gwin-body button{border:1px solid #b9c9ba;border-radius:5px;background:#f5f8f3;color:#294535;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer}.vm-power button:hover:not(:disabled),.vm-actions button:hover:not(:disabled),.vm-diag button:hover{background:#e8f0e6}.vm-power button:disabled,.vm-actions button:disabled{opacity:.45;cursor:default}.vm-power .vm-del{margin-left:auto}.vm-sec{background:#fff!important}
.vm-tabs{display:flex;gap:3px;border-bottom:1px solid #d7e0d5;margin-bottom:8px}.vm-tabs button{border:0;border-radius:5px 5px 0 0;background:transparent;color:#4a6151;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer}.vm-tabs button[aria-selected=true]{background:#fff;box-shadow:0 -1px 0 #9bb8d6 inset,0 1px 3px #cfd8cf}.vm-spec{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;margin:4px 0}.vm-spec dt{color:#6c8171}.vm-spec dd{margin:0;font-weight:700;display:flex;align-items:center}
.vm-ok,.vm-error,.vm-warn{margin:8px 0 0;padding:7px 9px;border-radius:5px;border-left:3px solid #3f9a64;background:#e4f2e8;line-height:1.4}.vm-error{border-color:#c4553f;background:#f8e5e0}.vm-warn{border-color:#d9a13d;background:#faf0d8}.vm-diag{margin-top:12px;padding-top:8px;border-top:1px solid #e1e9e0}.vm-diag p{margin:2px 0 6px;color:#53685b}
.vm-form{display:grid;gap:8px;max-width:420px}.vm-form label,.vm-wiz-body label{display:grid;gap:3px;font-weight:700}.vm-form input,.vm-form select,.vm-wiz-body input,.vm-wiz-body select{border:1px solid #acbead;border-radius:4px;background:#fff;padding:6px;font-size:12px;color:#263e2f}.vm-form input:disabled,.vm-form select:disabled{background:#eef2ec;color:#6b7c70}.vm-form small,.vm-wiz-body small{font-weight:400;color:#6c8171}.vm-cold{background:#faf0d8;padding:6px 8px;border-left:3px solid #d9a13d;margin:0}.vm-actions{display:flex;gap:6px;margin-top:6px}
.vm-steps{display:flex;gap:6px;list-style:none;margin:0 0 10px;padding:0}.vm-steps li{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:14px;background:#eef2ec;color:#6c8171;font-weight:700}.vm-steps li i{font-style:normal;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#cfd8cf;color:#fff;font-size:10px}.vm-steps li.on{background:#fff;color:#263f30;box-shadow:0 0 0 1px #9bb8d6}.vm-steps li.on i{background:#d28242}.vm-steps li.done i{background:#4eaa72}.vm-wiz-body{max-width:640px}.vm-sub{margin:10px 0 4px;font-weight:700;color:#53685b}.vm-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.vm-images,.vm-nets{display:grid;gap:6px}.vm-img,.vm-netcard{display:grid;gap:2px;text-align:left;border:1px solid #d1ddd0;border-radius:7px;background:#fff;padding:7px 10px;font:inherit;color:inherit;cursor:pointer}.vm-img:hover,.vm-netcard:hover{background:#f1f6ef}.vm-img.sel,.vm-netcard.sel{background:#e3edf8;border-color:#7ea3c8;box-shadow:0 0 0 1px #7ea3c8}.vm-img small,.vm-netcard small{color:#5d7263}.vm-nets{grid-template-columns:1fr 1fr}
.vm-log{margin-top:8px;background:#fffefa;border:1px solid #cfd8cf;border-radius:8px;overflow:hidden;font-size:11px}.vm-log-head{padding:5px 10px;background:#eef2ec;color:#6c8171;font-size:10px;letter-spacing:.07em;text-transform:uppercase}.vm-log ul{list-style:none;margin:0;padding:0 8px 4px;max-height:104px;overflow-y:auto}.vm-log li{display:grid;grid-template-columns:40px 72px 1fr;gap:4px;padding:3px 0;border-top:1px solid #e6ece4}.vm-log time{color:#738677}.vm-log li[data-level=warning] b{color:#a9731f}.vm-log li[data-level=error] b{color:#b0432f}.vm-bench .feedback{margin-top:8px}
.vm-work :focus-visible{outline:3px solid #d57b39;outline-offset:2px}
/* guest console */
.vm-console{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:80;width:min(800px,calc(100vw - 16px));display:flex;flex-direction:column;background:#1b1f23;border:1px solid #6d7580;box-shadow:0 14px 44px rgba(0,0,0,.45);font-family:"Segoe UI",system-ui,sans-serif}.vm-console-bar{box-sizing:border-box;height:36px;flex:none;display:flex;align-items:center;gap:10px;background:#f1f3f5;color:#222;font-size:12px;font-weight:600;padding-left:12px}.vm-console-bar>span:first-child{flex:1}.vm-console-bar button{border:0;background:#c42b1c;color:#fff;width:46px;height:36px;padding:0;font-size:13px;cursor:pointer}.vm-console-bar button:hover{background:#e0301f}.vm-console-screen{aspect-ratio:16/9;max-height:calc(100vh - 80px);background:#000;position:relative;overflow:hidden}
.vm-screen{position:absolute;inset:0;display:grid;place-items:center;color:#e7e7e7;text-align:center}.vm-screen.off p{color:#7b8791;font-size:14px}.vm-screen.err{background:#1d1111}.vm-hv-error{max-width:420px;padding:14px 18px;background:#2a1717;border:1px solid #a4402f;border-radius:6px;text-align:left;color:#f4dcd6}.vm-hv-error p{margin:6px 0}.vm-hv-error small{color:#d9b4aa}.vm-screen.fw{place-items:start;text-align:left}.vm-screen.fw pre{margin:14px;font:13px/1.5 Consolas,"DejaVu Sans Mono",monospace;color:#cfd6d2;white-space:pre-wrap}
.vm-screen.boot,.vm-screen.login{background:radial-gradient(circle at 50% 40%,#0b3a73,#061d3a)}.vm-screen.boot p,.vm-screen.login p{margin:12px 0 0;font-size:15px}.vm-winlogo{display:inline-grid;grid-template-columns:1fr 1fr;gap:3px;width:48px;height:48px}.vm-winlogo i{display:block;background:#4aa3ff}.vm-spin{width:26px;height:26px;border:3px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:vmSpin .9s linear infinite;margin-top:14px}@keyframes vmSpin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.vm-spin{animation:none}}.vm-avatar{width:84px;height:84px;border-radius:50%;background:#2c5c92;border:3px solid #cfe3ff;margin:0 auto}
.vm-screen.blocked{background:#1e4f8f}.vm-gdialog{background:#fff;color:#222;padding:16px 20px;border-radius:4px;text-align:left;max-width:470px;font-size:12px}.vm-gdialog h4{margin:0 0 6px;font-size:17px;font-weight:600}.vm-gdialog table{width:100%;border-collapse:collapse;margin-top:8px}.vm-gdialog th,.vm-gdialog td{text-align:left;padding:4px 6px;border-bottom:1px solid #e1e1e1}
.vm-desktop{position:absolute;inset:0;color:#fff;font-size:12px;text-align:left}.vm-desktop.win{background:radial-gradient(ellipse at 70% 30%,#3d86d6 0,#1b5aa6 35%,#0b2d66 75%)}.vm-desktop.ubuntu{background:linear-gradient(135deg,#5a2a52,#c1572b)}.vm-desktop.server{background:linear-gradient(135deg,#143a5c,#2c6a8f)}.vm-icons{position:absolute;left:12px;top:12px}.vm-icon{display:grid;justify-items:center;gap:4px;width:72px;border:1px solid transparent;border-radius:4px;background:transparent;color:#fff;padding:6px 2px;font-size:11px;cursor:pointer}.vm-icon:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.3)}.ic{display:inline-block;width:30px;height:24px;border-radius:3px;background:#dfe9f5}.ic.net{background:linear-gradient(#cfe3ff,#8bb8f0);box-shadow:inset 0 -6px 0 #2a6fb8}.ic.netwarn{background:#f4d37a}.ic.netoff{background:#b8bec5}
.vm-taskbar{position:absolute;left:0;right:0;bottom:0;height:40px;display:flex;align-items:center;gap:10px;padding:0 8px;background:rgba(236,240,246,.92);color:#1b1b1b;backdrop-filter:blur(8px)}.vm-start{border:0;background:transparent;padding:6px;cursor:pointer;border-radius:4px;display:grid;place-items:center}.vm-start:hover{background:rgba(0,0,0,.08)}.vm-start .vm-winlogo{width:20px;height:20px;gap:2px}.vm-task-title{flex:1;font-size:11px;color:#46515c}.vm-tray{display:flex;align-items:center;gap:10px}.vm-tray button{border:0;background:transparent;padding:4px 6px;cursor:pointer;border-radius:4px}.vm-tray button:hover{background:rgba(0,0,0,.08)}.vm-tray .ic{width:20px;height:16px}.vm-tray time{font-size:11px}
.vm-startmenu{position:absolute;left:8px;bottom:46px;width:200px;background:#f4f6fa;color:#1b1b1b;border:1px solid #c9d0da;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.35);padding:6px;display:grid;gap:2px}.vm-startmenu button{border:0;background:transparent;text-align:left;padding:8px 10px;border-radius:4px;font:inherit;cursor:pointer}.vm-startmenu button:hover{background:#dce6f4}
.vm-gwin{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);width:min(360px,calc(100% - 24px));background:#fff;color:#1b1b1b;border:1px solid #7f8a96;box-shadow:0 8px 28px rgba(0,0,0,.4)}.vm-gwin-bar{box-sizing:border-box;height:32px;display:flex;justify-content:space-between;align-items:stretch;background:#f1f3f5;font-size:12px;font-weight:600}.vm-gwin-bar span{display:flex;align-items:center;padding:0 10px}.vm-gwin-bar button{border:0;background:#c42b1c;color:#fff;width:42px;cursor:pointer}.vm-gwin-body{padding:10px 14px 12px}.vm-gwin-body h4{margin:0 0 6px;font-size:15px;font-weight:600}.vm-gwin-body dl{display:grid;grid-template-columns:auto 1fr;gap:3px 14px;margin:6px 0 10px}.vm-gwin-body dt{color:#555}.vm-gwin-body dd{margin:0;font-weight:600}.vm-gwin-body p{margin:8px 0 0;font-size:12px}.vm-gok{color:#1c6a3c}.vm-gbad{color:#a4262c}
.vm-preview{background:#d9e3d8;display:grid;place-items:center;overflow:hidden}.vm-pv-win{width:70%;background:#fffefa;border:1px solid #9aada0;border-radius:6px;overflow:hidden;box-shadow:0 4px 10px rgba(0,0,0,.2)}.vm-pv-bar{height:12px;background:#263c30}.vm-pv-body{display:flex;gap:6px;padding:10px}.vm-pv-body i{display:block;height:26px;border-radius:3px;background:#cfd8cf}.vm-pv-body .a{flex:1}.vm-pv-body .b{flex:1;background:#e7c7a6}.vm-pv-body .c{flex:1;background:#b6cfe6}
@media(max-width:1050px){.vm-grid,.vm-app-body{grid-template-columns:1fr}.vm-assignment{max-height:none}.vm-nav{border-right:0;border-bottom:1px solid #d7e0d5}.vm-fields,.vm-nets{grid-template-columns:1fr}.vm-work{padding:14px}}

/* Application shell: launch notices and loading state */
.hub-notice{margin:0 0 14px;padding:10px 14px;border-radius:8px;border:1px solid #e3b6a9;border-left:4px solid #c4553f;background:#fbeee9;color:#6b2c1f;font-size:13px}
.pbq-loading-toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:90;padding:9px 16px;border-radius:20px;background:#263c30;color:#e8f0e6;font-size:13px;box-shadow:0 6px 20px rgba(0,0,0,.25)}
/* Guided Walkthrough (Practice Mode only). The panel is a non-modal floating window outside #app so simulator re-renders never disturb it. */
.walk-toggle[aria-expanded=true]{border-color:#d97735;background:#faf2e8}
:root{--walk-w:min(380px,calc(100vw - 16px))}
#assist-root{position:fixed;inset:0;z-index:70;pointer-events:none}
.walk-panel{position:fixed;left:auto;top:124px;right:auto;width:var(--walk-w);pointer-events:auto;display:flex;flex-direction:column;max-height:calc(100vh - 132px);max-height:calc(100dvh - 132px);min-height:0;background:#fff;border:1px solid #e1ddd5;border-top:3px solid #d97735;border-radius:10px;box-shadow:0 18px 44px rgba(38,60,48,.24);outline:none}
.walk-panel:focus-visible{outline:3px solid #d97735;outline-offset:2px}
.walk-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding:10px 10px 10px 14px;border-bottom:1px solid #eeeae2;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;flex:none}
.walk-panel.dragging .walk-head{cursor:grabbing}.walk-panel.dragging{box-shadow:0 24px 54px rgba(38,60,48,.32)}
.walk-titlebar{flex:1;min-width:0;border-radius:6px;padding:2px 0;outline:none}.walk-titlebar:focus-visible{outline:3px solid #d97735;outline-offset:2px}
.walk-tools{display:flex;gap:6px;flex:none}.walk-mini-title{display:none;font-size:14px;font-weight:800;color:#373b3b;line-height:40px;white-space:nowrap}
.walk-btn{width:44px;height:44px;border:1px solid #ddd9d0;border-radius:8px;background:#fff;color:#4a504c;font-size:20px;line-height:1;cursor:pointer}.walk-btn:hover{border-color:#d97735}.walk-btn:focus-visible{outline:3px solid #d97735;outline-offset:2px}
.walk-mini{display:none;padding:10px 14px 14px}.walk-mini .walk-progress{position:static;margin:0 0 8px;padding:0}.walk-next{margin:0 0 10px;font-size:13px;line-height:1.45;color:#373b3b;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.walk-next b{color:#a56339}.walk-expand{width:100%;min-height:44px}
.walk-panel.min{width:min(330px,calc(100vw - 16px))}.walk-panel.min .walk-btn{width:40px;height:40px}.walk-panel.min .walk-tools{gap:4px}.walk-panel.min .walk-titlebar{min-width:0}.walk-panel.min .walk-body,.walk-panel.min .walk-titles{display:none}.walk-panel.min .walk-mini{display:block}.walk-panel.min .walk-mini-title{display:block}.walk-panel.min .walk-head{border-bottom:0;padding-bottom:0;align-items:center}
.walk-head h2{margin:4px 0 0;font-size:16px;line-height:1.25;color:#373b3b}
.walk-close{font-size:24px}
.walk-close:hover{border-color:#d97735}
.walk-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:12px 16px 18px;-webkit-overflow-scrolling:touch}
.walk-intro{font-size:13px;line-height:1.55;color:#4a504c;margin:0 0 10px}
.walk-note{font-size:11px;line-height:1.5;color:#8a6a4f;background:#faf2e8;border-radius:6px;padding:8px 10px;margin:0 0 12px}
.walk-progress{display:flex;align-items:center;gap:10px;margin:0 0 12px;position:sticky;top:-12px;background:#fff;padding:6px 0;z-index:1}
.walk-bar{flex:1;height:8px;border-radius:4px;background:#ece8df;overflow:hidden}
.walk-bar i{display:block;height:100%;background:#d97735;border-radius:4px;transition:width .2s}
.walk-count{font-size:11px;font-weight:700;color:#697469;white-space:nowrap}
.walk-steps{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.walk-step{border:1px solid #e8e4dc;border-radius:8px;background:#fbfaf7}
.walk-step.done{background:#f1f5ef;border-color:#cfdccb}
.walk-step label{display:flex;gap:10px;align-items:flex-start;padding:10px 12px 4px;cursor:pointer;min-height:44px}
.walk-step input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:#d97735}
.walk-step input:focus-visible{outline:3px solid #d97735;outline-offset:2px}
.walk-do{font-size:13px;line-height:1.45;font-weight:600;color:#373b3b}
.walk-step.done .walk-do{color:#5d6b5d}
.walk-why{margin:0;padding:0 12px 10px 42px;font-size:12px;line-height:1.5;color:#757d75}
.walk-why b{color:#a56339;font-weight:700}
.walk-panel code{font-family:Consolas,'Courier New',monospace;font-size:.92em;background:#f0ede5;border-radius:3px;padding:0 4px;color:#3d4a41;word-break:break-word}
.guided-note{font-size:12px;color:#697469;background:#f1f5ef;border-radius:6px;padding:9px 12px;margin:0 0 14px}
@media (prefers-reduced-motion:reduce){.walk-bar i{transition:none}}
/* PBQ 13: Mobile Device Bluetooth Troubleshooting */
.bt-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .bt-work{height:calc(100vh - 58px);overflow:auto}
.bt-grid{display:grid;grid-template-columns:minmax(205px,245px) minmax(0,1fr);gap:12px}.bt-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.bt-assignment h2{font-size:19px;margin:9px 0}.bt-assignment p{font-size:12px;line-height:1.42}
.bt-req{background:#f1f0e9;border-left:3px solid #d28242;padding:8px 10px;font-size:12px;margin:8px 0}.bt-req dl{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:6px 0}.bt-req dt{color:#66746a}.bt-req dd{margin:0;font-weight:700}
.bt-bench{min-width:0}.bt-stage{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start;background:#e9ebe2;border:1px solid #d8dccf;border-radius:10px;padding:14px;min-height:calc(var(--ph) + 28px)}
.bt-phone,.bt-stage{--ph:clamp(440px,calc(100vh - 268px),700px)}
.bt-phone{height:var(--ph);aspect-ratio:9/18.5;font-size:calc(var(--ph)/38);color:#253c2d}
.bt-bezel{height:100%;background:linear-gradient(145deg,#2b332f,#131815);border-radius:2.4em;padding:.5em;position:relative;box-shadow:0 14px 30px rgba(38,50,42,.35),inset 0 0 0 1px #4a554f}
.bt-cam{position:absolute;left:50%;top:.9em;width:.8em;height:.8em;margin-left:-.4em;border-radius:50%;background:#0a0d0b;z-index:5;box-shadow:inset 0 0 0 2px #2d3833}
.bt-screen{height:100%;border-radius:1.95em;overflow:hidden;background:#f6f4ee;position:relative;display:flex;flex-direction:column}
.bt-screen button{font:inherit;color:inherit}.bt-status{display:flex;justify-content:space-between;align-items:center;border:0;background:transparent;padding:.7em 1.2em .4em;font-size:.82em;font-weight:700;width:100%;min-height:2.6em;text-align:left}
.bt-st-icons{display:flex;align-items:center;gap:.45em}.bt-ic{display:inline-flex;width:1.1em;height:1.1em;color:#8a948c}.bt-ic.on{color:#2a6fd6}.bt-ic svg{width:100%;height:100%}.bt-bars{display:inline-flex;align-items:flex-end;gap:1px;height:.9em}.bt-bars b{width:.2em;background:#253c2d;display:block}.bt-bars b:nth-child(1){height:30%}.bt-bars b:nth-child(2){height:50%}.bt-bars b:nth-child(3){height:75%}.bt-bars b:nth-child(4){height:100%}
.bt-batt{width:1.7em;height:.8em;border:1.5px solid #253c2d;border-radius:.2em;display:inline-block;padding:1px}.bt-batt i{display:block;height:100%;background:#4a9a62}
.bt-appbar{padding:.5em 1.2em .7em}.bt-appbar b{font-size:1.5em;font-weight:500}.bt-body{flex:1;min-height:0;overflow:auto;padding:0 .7em .7em}
.bt-nav{display:flex;justify-content:center;gap:3em;padding:.3em 0 .5em;background:#f6f4ee}.bt-nav button{border:0;background:transparent;min-width:3.4em;min-height:2.6em;font-size:1.1em;border-radius:1.2em}.bt-nav button:disabled{opacity:.3}.bt-nav i{display:none}
.bt-home{padding:1.6em .6em;display:flex;flex-direction:column;gap:2em}.bt-clock{font-size:3.2em;font-weight:300;line-height:1}.bt-clock small{display:block;font-size:.3em;margin-top:.5em;color:#66746a;letter-spacing:.05em}
.bt-apps{display:grid;grid-template-columns:repeat(3,1fr);gap:1em}.bt-app{border:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:.5em;font-size:.85em;min-height:4.6em;padding:.2em;text-align:center;border-radius:1em}.bt-app:hover{background:#ebe9e0}
.bt-app-ic{width:3.2em;height:3.2em;border-radius:1em;display:grid;place-items:center;color:#fff;background:#6a7f71}.bt-app-ic svg{width:55%;height:55%}.bt-app-ic.media{background:#d97735}.bt-app-ic.call{background:#4a8a62}
.bt-list{display:flex;flex-direction:column;gap:.3em}.bt-row{display:flex;justify-content:space-between;align-items:center;gap:.6em;width:100%;text-align:left;border:0;background:#fff;border-radius:.9em;padding:.6em .9em;min-height:3.3em;margin:0}.bt-row.static{background:#fbfaf6}
.bt-row b{display:block;font-weight:600;font-size:1em}.bt-row small,.bt-about small,.bt-note{display:block;color:#66746a;font-size:.82em;margin-top:.15em}.bt-chev{color:#97a09a;font-size:1.4em}.bt-kind{font-size:.7em;color:#8a948c;text-transform:uppercase;letter-spacing:.08em}
button.bt-row:hover{background:#f0efe7}.bt-sec{font-size:.8em;font-weight:700;color:#a56339;letter-spacing:.06em;text-transform:uppercase;padding:.8em .5em .2em;display:flex;justify-content:space-between;align-items:center}
.bt-scan{border:1px solid #d97735;background:#fff;color:#a56339;border-radius:1em;padding:.3em .9em;font-size:1em;min-height:2.2em;font-weight:700}.bt-scan:hover{background:#faf2e8}
.bt-note{padding:.7em .8em}.bt-about{padding:.8em .8em;color:#66746a}.bt-about b{font-size:.85em;color:#253c2d}
.bt-switch{flex:none;width:3em;height:1.7em;border-radius:1em;border:0;background:#aab4ad;position:relative;padding:0;min-height:0}.bt-switch i{position:absolute;top:.2em;left:.2em;width:1.3em;height:1.3em;background:#fff;border-radius:50%;transition:left .15s;box-shadow:0 1px 3px rgba(0,0,0,.3)}.bt-switch[aria-checked=true]{background:#2a6fd6}.bt-switch[aria-checked=true] i{left:1.5em}
.bt-main-switch{background:#e6eefc}.bt-paired{padding:0;gap:0;overflow:hidden}.bt-rowmain{flex:1;text-align:left;border:0;background:transparent;padding:.6em .9em;min-height:3.3em}.bt-rowmain b{display:block}.bt-rowmain small{display:block;color:#66746a;font-size:.82em}.bt-rowmain:hover,.bt-gearbtn:hover{background:#f0efe7}.bt-gearbtn{border:0;border-left:1px solid #e6e3da;background:transparent;width:3.4em;min-height:3.3em;color:#66746a}.bt-gearbtn svg{width:1.3em;height:1.3em}
.bt-devhead{display:grid;justify-items:center;padding:.8em}.bt-devhead .bt-ic{width:2.6em;height:2.6em}.bt-devhead b{font-size:1.2em}.bt-devhead small{color:#66746a}
.bt-actions{display:flex;gap:.5em;justify-content:center;padding:.3em 0}.bt-btn{border:0;background:#2a6fd6;color:#fff!important;border-radius:1.2em;padding:.55em 1.2em;min-height:2.8em;font-weight:700}.bt-btn.danger{background:#b4513a}.bt-btn.light{background:#e4e9f4;color:#2a4a8a!important}.bt-btn:hover{filter:brightness(1.08)}
.bt-media,.bt-call{display:flex;flex-direction:column;gap:.5em;padding:.3em}.bt-media>b{font-size:1.15em;text-align:center}.bt-media>small{text-align:center;color:#66746a}.bt-art{display:flex;justify-content:center;align-items:flex-end;gap:.3em;height:3em}.bt-art span{width:.6em;height:35%;background:#b7c2ba;border-radius:.3em}.bt-art span:nth-child(2n){height:60%}.bt-art span:nth-child(3){height:90%}.bt-art span.play{background:#d97735;animation:btbar .8s ease-in-out infinite alternate}.bt-art span.play:nth-child(2){animation-delay:.2s}.bt-art span.play:nth-child(3){animation-delay:.1s}.bt-art span.play:nth-child(4){animation-delay:.3s}
@keyframes btbar{from{transform:scaleY(.4)}to{transform:scaleY(1.2)}}
.bt-play{align-self:center;border:0;background:#d97735;color:#fff!important;border-radius:2em;min-width:7em;min-height:2.9em;font-weight:700;font-size:1.05em}.bt-vol{display:flex;align-items:center;gap:.5em}.bt-vol input{flex:1;min-width:0;accent-color:#d97735}.bt-sq{width:2.6em;height:2.6em;border-radius:50%;border:1px solid #c8cfc8;background:#fff;font-size:1.1em;padding:0}
.bt-picker{display:grid;gap:.3em}.bt-picker button{text-align:left;border:1px solid #d5dad3;background:#fff;border-radius:.8em;padding:.6em .8em;min-height:2.8em}.bt-picker button[aria-checked=true]{border-color:#2a6fd6;background:#e6eefc;font-weight:700}.bt-picker button[aria-disabled=true]{opacity:.55}
.bt-result{background:#fff;border-radius:.8em;padding:.7em .8em;font-size:.9em;border-left:4px solid #c8cfc8;min-height:2.6em}.bt-result.pass{border-color:#3f9a62;background:#eaf5ee;color:#1f5a38}.bt-result.fail{border-color:#c8803a;background:#fbf1e4;color:#7a4a18}
.bt-callbox{background:#fff;border-radius:1em;padding:.9em;text-align:center}.bt-callbox.live{background:#eaf5ee;color:#1f5a38}.bt-callbox small{display:block;color:#66746a;font-size:.8em}
.bt-toast{position:absolute;left:.8em;right:.8em;bottom:3.8em;background:#263c30;color:#f4f1e8;border-radius:.9em;padding:.6em .8em;font-size:.85em;z-index:8}
.bt-quick{position:absolute;left:0;right:0;top:2.6em;background:#eef2f8;z-index:6;padding:.8em;border-radius:0 0 1.4em 1.4em;box-shadow:0 10px 20px rgba(0,0,0,.2)}.bt-quick-tiles{display:grid;grid-template-columns:1fr 1fr;gap:.5em}.bt-tile{border:0;border-radius:1.2em;background:#d9dee6;padding:.7em;text-align:left;min-height:4em;display:grid;gap:.1em;align-content:center;font-size:inherit}.bt-tile.on{background:#2a6fd6;color:#fff}.bt-tile.on .bt-ic{color:#fff}.bt-tile b{font-size:.95em}.bt-tile small{font-size:.75em;opacity:.85}.bt-tile.static{cursor:default}
.bt-link{border:0;background:transparent;color:#2a6fd6!important;display:block;margin:.5em auto 0;min-height:2.4em;font-weight:700}
.bt-scrim{position:absolute;inset:0;background:rgba(20,28,24,.45);z-index:9;display:grid;place-items:center;padding:1em}.bt-dialog{background:#fff;border-radius:1.2em;padding:1em;width:100%;display:grid;gap:.6em}.bt-dialog p{margin:0;font-size:.9em;color:#4a5750}.bt-dialog input{font-size:1.3em;letter-spacing:.3em;padding:.4em .6em;border:2px solid #2a6fd6;border-radius:.6em;width:100%}
.bt-right{display:grid;gap:12px;min-width:0;align-content:start}.bt-card{background:#fffefa;border:1px solid #d8dccf;border-radius:10px;padding:12px}.bt-headset{position:relative}.bt-headset-art{display:block;width:100%;max-height:calc(var(--ph)*.44);margin:auto}
.bt-card-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:6px}.bt-pill{font-size:12px;font-weight:700;padding:5px 12px;border-radius:14px;background:#ecebe3;color:#4a5750}.bt-pill.pairing{background:#dfe9fb;color:#1e4fa6}.bt-pill.connected-phone,.bt-pill.connected-laptop{background:#e0f0e5;color:#1f5a38}.bt-pill.off{background:#ecebe3;color:#8a948c}
.bt-mini{border:1px solid #d8d3c8;background:#fff;border-radius:7px;padding:7px 12px;font-size:12px;font-weight:700;min-height:36px}.bt-mini:hover{border-color:#d97735}.bt-label{position:absolute;left:14px;right:14px;top:12px;z-index:2;box-shadow:0 6px 16px rgba(60,50,30,.18);border:1px dashed #b9a98f;background:#fbf6ea;border-radius:6px;padding:8px 12px;font-size:12px;display:grid;gap:3px}.bt-label code{font-size:15px;font-weight:800;letter-spacing:.2em;background:#fff;padding:1px 8px;border-radius:4px}
.bt-headset-art text{font-family:Inter,Arial,sans-serif}.bt-lbl{font-size:8px;fill:#9aa59d;letter-spacing:.1em}.bt-bat{font-size:9px;fill:#6a756e}.bt-brand{font-size:16px;font-weight:800;fill:#7e8a83;letter-spacing:.1em}.bt-hbtn{cursor:pointer}.bt-hbtn:hover rect{stroke:#d97735}.bt-hbtn:focus-visible{outline:3px solid #d97735;outline-offset:2px}
.bt-led text{font-size:6.5px;fill:#8a948c;letter-spacing:.06em}.bt-led .bt-led-dot{fill:#3b4540}.bt-led .bt-led-halo{fill:transparent}.bt-led.on.power .bt-led-dot{fill:#3ecf74}.bt-led.on.power .bt-led-halo{fill:#3ecf7455}.bt-led.on.link .bt-led-dot,.bt-led.on.pair .bt-led-dot{fill:#4a8df0}.bt-led.on.link .bt-led-halo,.bt-led.on.pair .bt-led-halo{fill:#4a8df066}.bt-led.on.pair{animation:btblink .8s steps(2,jump-none) infinite}
@keyframes btblink{0%{opacity:1}100%{opacity:.25}}.bt-wave{animation:btwave 1.2s ease-out infinite;opacity:0}@keyframes btwave{0%{opacity:.9}100%{opacity:0}}
.bt-lp{max-width:clamp(220px,calc(var(--ph)*.52),340px);margin:auto}.bt-lp-screen{background:#1d2622;border:6px solid #2a3430;border-bottom-width:8px;border-radius:9px 9px 2px 2px;aspect-ratio:16/9.5;overflow:hidden;display:flex;flex-direction:column}.bt-lp-bar{display:flex;justify-content:space-between;background:#2d3f6a;color:#e8eefc;font-size:10px;padding:5px 9px}.bt-lp-body{flex:1;background:#f1f4fa;padding:8px;display:grid;gap:6px;align-content:start;font-size:11px;color:#253046}
.bt-lp-sw{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:5px;padding:5px 8px}.bt-lp-on{color:#2a6fd6;font-weight:700}.bt-lp-dev{display:flex;align-items:center;gap:7px;background:#fff;border-radius:5px;padding:6px 8px}.bt-lp-dev>span{flex:1;min-width:0}.bt-lp-dev b{display:block}.bt-lp-dev small{color:#66746a}.bt-lbtn{border:1px solid #2a6fd6;background:#fff;color:#1e4fa6;border-radius:4px;padding:5px 9px;font-size:11px;font-weight:700;min-height:30px}.bt-lbtn:disabled{opacity:.4}
.bt-lp-base{height:9px;background:linear-gradient(#b9c1bb,#8a948c);border-radius:0 0 12px 12px;margin:0 -10px}
.bt-preview{background:#d9e3d8;display:flex;align-items:center;justify-content:center;gap:18px;overflow:hidden}.bt-pv-phone{width:62px;height:118px;background:#1b211e;border-radius:12px;padding:5px;display:grid;gap:4px;align-content:start}.bt-pv-phone i{height:6px}.bt-pv-phone b{height:14px;background:#f6f4ee;border-radius:4px}.bt-pv-phone b.on{background:#2a6fd6}.bt-pv-head{width:110px}
@media (max-width:1000px){.bt-grid{grid-template-columns:1fr}.bt-assignment{max-height:none}.bt-stage{grid-template-columns:1fr;justify-items:center}.bt-phone{--ph:clamp(430px,70vh,640px)}}
@media (prefers-reduced-motion:reduce){.bt-led.on.pair,.bt-wave,.bt-art span.play{animation:none}.bt-switch i{transition:none}}

.bt-call .bt-picker{grid-template-columns:1fr 1fr}.bt-call .bt-row{min-height:2.5em;padding:.3em .8em}.bt-call .bt-callbox{padding:.5em}.bt-call .bt-sec{padding-top:.3em}.bt-call{gap:.35em}.bt-media{gap:.35em}.bt-media .bt-art{height:2.2em}.bt-card{padding:10px}.bt-stage{padding:12px}
/* PBQ 14: Monitor & Display Troubleshooting */
.dp-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .dp-work{height:calc(100vh - 58px);overflow:auto}
.dp-grid{display:grid;grid-template-columns:minmax(205px,240px) minmax(0,1fr);gap:12px}.dp-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.dp-assignment h2{font-size:19px;margin:9px 0}.dp-assignment p{font-size:12px;line-height:1.42}
.dp-req{background:#f1f0e9;border-left:3px solid #d28242;padding:8px 10px;font-size:12px;margin:8px 0}.dp-req dl{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;margin:6px 0}.dp-req dt{color:#66746a}.dp-req dd{margin:0;font-weight:700}
.dp-bench{min-width:0}.dp-stage{display:grid;grid-template-columns:minmax(0,1fr) clamp(300px,30vw,380px);gap:14px;background:#e9ebe2;border:1px solid #d8dccf;border-radius:10px;padding:12px;align-items:start}
.dp-monitors{display:grid;grid-template-columns:1.125fr 1fr;gap:10px;align-items:end;align-content:center;align-self:center;min-width:0}
.dp-sample{grid-column:1/-1;display:flex;gap:8px;align-items:center;justify-content:center;margin-top:12px;font-size:12px;color:#4a5750}.dp-sample span{font-weight:700;margin-right:4px}.dp-mini{border:1px solid #cfd4c8;background:#fff;border-radius:7px;padding:8px 12px;font-size:12px;font-weight:700;min-height:36px}.dp-mini:hover{border-color:#d97735}
.dp-mon{margin:0;display:grid;justify-items:center;min-width:0}.dp-bezel{position:relative;width:100%;background:linear-gradient(145deg,#2a312d,#111513);border-radius:10px;padding:2.6% 2.6% 5.2%;box-shadow:0 8px 18px rgba(38,50,42,.3),inset 0 0 0 1px #46514b}.dp-brand{position:absolute;left:50%;bottom:1.2%;transform:translateX(-50%);font-size:7px;letter-spacing:.2em;color:#7f8b84}.dp-led{position:absolute;right:4%;bottom:1.6%;width:5px;height:5px;border-radius:50%;background:#3b4540}.dp-led.on{background:#46d17a;box-shadow:0 0 5px #46d17a}.dp-led.amber{background:#e8a33d;box-shadow:0 0 5px #e8a33d}
.dp-neck{width:12%;height:18px;background:linear-gradient(90deg,#4a554f,#8c978f,#4a554f)}.dp-foot{width:34%;height:7px;border-radius:50% 50% 3px 3px/100% 100% 3px 3px;background:linear-gradient(#aab4ac,#6d7a72)}
.dp-btns{display:flex;gap:4px;margin-top:6px;justify-content:center}.dp-mb{border:1px solid #b9c0b6;background:#f7f6f1;border-radius:5px;min-width:30px;height:26px;padding:0 6px;font-size:9px;font-weight:700;color:#3d4a41}.dp-mb:hover{border-color:#d97735;background:#fff}.dp-mon figcaption{font-size:12px;margin-top:5px;color:#4a5750}.dp-mon figcaption span{color:#8a948c}
.dp-screen{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#05070a;container-type:inline-size;border-radius:2px;font-size:3cqw}
.dp-nosig{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:1.4cqw;color:#9fb1c9;background:#0d1320;text-align:center}.dp-nosig svg{width:9cqw}.dp-nosig b{font-size:4.6cqw;font-weight:600;color:#cbd7ea}.dp-nosig small{font-size:3cqw;color:#7a8aa3}
.dp-desk{position:absolute;inset:0;--ui:1}.dp-vd{position:absolute;background:radial-gradient(120% 90% at 30% 20%,#7fb3e8,#3d6fb8 45%,#1d3a78 100%)}
.dp-icons{position:absolute;left:2cqw;top:2cqw;display:grid;gap:1.6cqw;font-size:calc(2.4cqw*var(--ui));color:#fff;text-shadow:0 1px 2px #0008}.dp-icons span{display:grid;justify-items:center;gap:.4cqw}.dp-icons i{width:5cqw;height:5cqw;background:#e9eef7;border-radius:1cqw;display:block;opacity:.9}.dp-icons i.f{background:#e8c25a}
.dp-taskbar{position:absolute;left:0;right:0;bottom:0;height:calc(6.2cqw*var(--ui));min-height:6cqw;background:rgba(235,240,248,.92);display:flex;align-items:center;gap:1.2cqw;padding:0 2cqw;font-size:calc(2.4cqw*var(--ui))}.dp-start{display:grid;grid-template-columns:repeat(2,1fr);gap:.4cqw;width:3.2cqw}.dp-start i{display:block;height:1.4cqw;background:#2f6fd0}.dp-tray{margin-left:auto;color:#334}
.dp-tb-btn{border:0;background:rgba(255,255,255,.7);border-radius:1cqw;padding:.6cqw 1.8cqw;font-size:inherit;color:#223;min-height:4cqw}.dp-tb-btn:hover{background:#fff}
.dp-demo{position:absolute;background:#fff;border-radius:1.2cqw;box-shadow:0 .8cqw 2.4cqw rgba(0,0,0,.4);overflow:hidden;cursor:grab;display:flex;flex-direction:column;font-size:2.2cqw;color:#223;touch-action:none}.dp-demo:focus-visible{outline:.6cqw solid #ffb27a}.dp-demo-bar{background:#e4ebf6;padding:.8cqw 1.4cqw;display:flex;gap:1cqw;align-items:center;font-weight:600}.dp-demo-bar i{width:1.6cqw;height:1.6cqw;background:#d97735;border-radius:.4cqw}.dp-demo-body{flex:1;display:grid;place-content:center;text-align:center;gap:.6cqw;padding:1cqw}.dp-demo-body span{font-size:.85em;color:#667}
.dp-ident{position:absolute;inset:0;display:grid;place-items:center;font-size:30cqw;font-weight:800;color:#fff;background:rgba(10,20,40,.55);text-shadow:0 .6cqw 2cqw #000a;pointer-events:none;z-index:3}
.dp-osd{position:absolute;left:3cqw;bottom:3cqw;z-index:4;width:34cqw;background:rgba(20,24,28,.95);border:1px solid #556;border-radius:1cqw;padding:1.2cqw;display:grid;gap:.6cqw;font-size:2.7cqw;color:#e8eef2;max-height:92%;overflow:hidden}.dp-osd-h{font-size:2.2cqw;letter-spacing:.14em;color:#8fb0d8;padding:0 .6cqw .4cqw;border-bottom:1px solid #345}
.dp-osd-i{display:flex;justify-content:space-between;align-items:center;border:0;background:transparent;color:inherit;text-align:left;padding:.9cqw 1.2cqw;border-radius:.7cqw;font-size:inherit;min-height:5cqw}.dp-osd-i.sel{background:#2f6fd0}.dp-osd-i:hover{background:#3b4a62}.dp-osd-i i{font-style:normal;color:#8fe0a8}.dp-osd-info{display:grid;grid-template-columns:auto 1fr;gap:.4cqw 1.6cqw;padding:.6cqw 1cqw;font-size:2.4cqw}.dp-osd-info span{color:#8da0b6}
.dp-side{min-width:0;background:#fffefa;border:1px solid #d8dccf;border-radius:10px;overflow:hidden}.dp-tabs{display:flex;background:#eef0e7;border-bottom:1px solid #d8dccf}.dp-tabs button{flex:1;border:0;background:transparent;padding:10px 6px;font-size:12px;font-weight:700;min-height:40px;color:#66746a}.dp-tabs button[aria-selected=true]{background:#fffefa;color:#253c2d;box-shadow:inset 0 -3px #d97735}
.dp-tabbody{padding:8px;max-height:calc(100vh - 292px);min-height:300px;overflow:auto}.dp-rear{display:block;width:100%;max-height:calc(100vh - 360px);margin:auto}.dp-cap{font-size:9px;letter-spacing:.12em;fill:#7a847c;font-family:Inter,Arial,sans-serif}.dp-silk,.dp-lbl text{font-size:9px;fill:#6d7a72;font-family:Inter,Arial,sans-serif;letter-spacing:.06em}.dp-lbl text{fill:#b7c2ba}.dp-tag{font-size:8px;fill:#8a948c;font-family:Inter,Arial,sans-serif}.dp-plug-t{font-size:7px;font-weight:700;fill:#aab5ad;font-family:Inter,Arial,sans-serif}
.dp-cable-body{fill:none;stroke-width:7;stroke-linecap:round}.dp-cable-hi{fill:none;stroke:#fff;stroke-opacity:.22;stroke-width:2;stroke-linecap:round}.dp-plugB[role=button],.dp-port[role=button]{cursor:pointer}.dp-plugB.dp-held{cursor:grabbing;filter:drop-shadow(0 5px 4px rgba(0,0,0,.35))}.dp-port:hover path{stroke:#d97735}.dp-port:focus-visible,.dp-plugB:focus-visible{outline:3px solid #d97735;outline-offset:2px}.dp-port-hot path{stroke:#d97735;stroke-width:2.6}.dp-port.dp-deny{animation:dpdeny .35s 2}@keyframes dpdeny{0%,100%{transform:translate(var(--x,0),0)}25%{filter:drop-shadow(0 0 6px #c0452a)}}
.dp-port-info{font-size:12px;line-height:1.4;background:#f1f0e9;border-radius:6px;padding:8px 10px;margin-top:6px;color:#4a5750}
.dp-win{font-size:12px;color:#1f2a38;background:#f3f6fb;border:1px solid #c5cfdf;border-radius:8px;overflow:clip}.dp-win-bar{background:#e4ebf6;padding:7px 12px;font-weight:700;border-bottom:1px solid #c5cfdf}.dp-win-body{padding:10px 12px;display:grid;gap:7px}.dp-crumb{font-size:13px}.dp-crumb b{font-size:15px}.dp-win h3{margin:0;font-size:14px}
.dp-wrow{display:flex;gap:8px}.dp-wbtn{border:1px solid #b6c3da;background:#fff;border-radius:5px;padding:7px 14px;font-size:12px;font-weight:600;color:#1f2a38;min-height:34px}.dp-wbtn:hover{border-color:#2f6fd0}.dp-wbtn.primary{background:#2f6fd0;border-color:#2f6fd0;color:#fff}
.dp-field{display:grid;gap:3px;font-weight:600}.dp-field select{padding:7px 8px;border:1px solid #b6c3da;border-radius:5px;background:#fff;font-size:12px;min-height:34px}.dp-check{display:flex;gap:7px;align-items:center;min-height:30px}.dp-linkbtn{border:0;background:transparent;color:#2f6fd0;text-align:left;padding:4px 0;font-size:12px;font-weight:600;min-height:30px}
.dp-arr{position:relative;aspect-ratio:336/104;background:#dfe7f4;border-radius:6px;border:1px solid #c5cfdf;overflow:hidden}.dp-arr.off{opacity:.7}.dp-arr-r{position:absolute;display:grid;place-items:center;border:2px solid #7f98c8;background:#5f87d6;color:#fff;border-radius:3px;font-size:16px;font-weight:700;padding:0;touch-action:none;min-width:30px}.dp-arr-r.sel{border-color:#1b3a7a;box-shadow:0 0 0 2px #fff,0 0 0 4px #2f6fd0}.dp-arr:not(.off) .dp-arr-r{cursor:grab}
.dp-tabs2{display:flex;gap:4px}.dp-tabs2 button{flex:1;border:1px solid #b6c3da;background:#fff;border-radius:5px 5px 0 0;padding:6px;font-size:12px;font-weight:600;min-height:32px}.dp-tabs2 button[aria-selected=true]{background:#2f6fd0;color:#fff;border-color:#2f6fd0}
.dp-win-actions{display:flex;gap:8px;justify-content:flex-end;position:sticky;bottom:-8px;background:#f3f6fb;margin:0 -12px -10px;padding:7px 12px;border-top:1px solid #d5deec;z-index:2}.dp-win-msg{margin:0;padding:6px 8px;background:#e6eefc;border-radius:5px;font-size:12px}.dp-win-note{margin:0;font-size:12px;color:#4a5a73}.dp-dl{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;margin:0}.dp-dl dd{margin:0;font-weight:600}
.dp-pv{display:flex;align-items:flex-end;gap:10px}.dp-pv-m{background:#232b27;border-radius:5px;padding:4px 4px 8px;box-shadow:0 4px 8px #0003}.dp-pv-m.a{width:96px}.dp-pv-m.b{width:84px}.dp-pv-m i{display:block;aspect-ratio:16/9;background:linear-gradient(135deg,#7fb3e8,#2b52a0)}.dp-pv-m.b i{background:#0d1320}.dp-preview{background:#d9e3d8;display:flex;align-items:center;justify-content:center}
@media (max-width:1000px){.dp-grid{grid-template-columns:1fr}.dp-stage{grid-template-columns:1fr}.dp-assignment{max-height:none}}
@media (prefers-reduced-motion:reduce){.dp-port.dp-deny{animation:none}}
/* PBQ 15: Computer Won't POST */
.po-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .po-work{height:calc(100vh - 58px);overflow:auto}
.po-grid{display:grid;grid-template-columns:minmax(205px,235px) minmax(0,1fr);gap:12px}.po-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.po-assignment h2{font-size:19px;margin:9px 0}.po-assignment p{font-size:12px;line-height:1.42}
.po-req{background:#f1f0e9;border-left:3px solid #d28242;padding:8px 10px;font-size:12px;margin:8px 0}.po-req dl{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;margin:6px 0}.po-req dt{color:#66746a}.po-req dd{margin:0;font-weight:700}
.po-bench{min-width:0}.po-stage{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,1fr);gap:12px;background:#e9ebe2;border:1px solid #d8dccf;border-radius:10px;padding:10px;align-items:start}
.po-left{min-width:0;position:relative}.po-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:6px;flex-wrap:wrap}.po-strap{border:1px solid #cfd4c8;background:#fff;border-radius:7px;padding:7px 12px;font-size:12px;font-weight:700;min-height:34px}.po-strap.on{background:#e0f0e5;border-color:#7bb58f}.po-strap:hover{border-color:#d97735}.po-state{font-size:12px;color:#4a5750;font-weight:600}
.po-safety{position:absolute;left:8px;right:8px;top:44px;z-index:5;background:#fbe9e2;border:1px solid #d98b6f;color:#7a2f18;border-radius:8px;padding:10px 12px;font-size:12px;line-height:1.4;box-shadow:0 6px 16px rgba(120,50,30,.2)}
.po-boardwrap{background:#d6dcd1;border-radius:10px}.po-board{display:block;width:100%;height:auto;max-height:calc(100vh - 262px)}
.po-board text{font-family:Inter,Arial,sans-serif}.po-slot-t{font-size:11px;font-weight:700;fill:#e8f0e6}.po-silk{font-size:8px;fill:#e5ecd9;opacity:.85}.po-silk2{font-size:8px;fill:#f2f5ee;opacity:.9}.po-silk3{font-size:8px;fill:#cfd8cf;letter-spacing:.08em}.po-brand{font-size:12px;font-weight:700;fill:#b9d6c3;letter-spacing:.08em}.po-cap{font-size:8px;letter-spacing:.14em;fill:#6c776f}.po-lab{font-size:7px;font-weight:800;fill:#2a3a31}.po-lab2{font-size:6px;fill:#4a5a50}.po-sw{font-size:9px;font-weight:700;fill:#e8efe6}.po-led-t{font-size:7px;fill:#9fb3a6;letter-spacing:.05em}.po-eject-t{font-size:14px;fill:#2a3a31}
.po-spin{animation:pospin .5s linear infinite}@keyframes pospin{to{transform:rotate(360deg)}}
.po-led[style*="--d"]{animation:poflash .5s ease-out var(--d) both}@keyframes poflash{0%{opacity:.08}100%{opacity:1}}
.po-led.stuck circle:nth-child(2){filter:drop-shadow(0 0 4px #f0a229)}.po-led.ok circle:nth-child(2){filter:drop-shadow(0 0 3px #4bd08a)}
.po-mod{cursor:pointer;transition:transform .15s}.po-mod:hover .po-dimm rect:first-child{stroke:#d97735}.po-mod:focus-visible,.po-latch:focus-visible,.po-eject:focus-visible,.po-pbtn:focus-visible,.po-psu:focus-visible,.po-ac:focus-visible,.po-ledpanel:focus-visible,[data-slot-empty]:focus-visible{outline:3px solid #d97735;outline-offset:2px}
.po-latch,.po-eject,.po-pbtn,.po-psu,.po-ac,.po-ledpanel,[data-slot-empty]{cursor:pointer}.po-pbtn:hover circle:nth-child(2),.po-psu:hover rect:first-child,.po-latch:hover rect{stroke:#d97735}.po-slot-hot rect:first-child{stroke:#d97735;stroke-width:2.6}
.po-right{display:grid;gap:10px;min-width:0}.po-mon{margin:0;display:grid;justify-items:center}.po-bezel{position:relative;width:min(100%,300px);background:linear-gradient(145deg,#2a312d,#111513);border-radius:9px;padding:2.4% 2.4% 4.4%;box-shadow:0 7px 16px rgba(38,50,42,.3),inset 0 0 0 1px #46514b}.po-mled{position:absolute;right:4%;bottom:1.4%;width:5px;height:5px;border-radius:50%;background:#3b4540}.po-mled.on{background:#46d17a;box-shadow:0 0 5px #46d17a}.po-neck{width:12%;height:12px;background:linear-gradient(90deg,#4a554f,#8c978f,#4a554f)}.po-foot{width:32%;height:6px;border-radius:50% 50% 3px 3px/100% 100% 3px 3px;background:linear-gradient(#aab4ac,#6d7a72)}
.po-scr{width:100%;aspect-ratio:16/9;overflow:hidden;background:#05070a;container-type:inline-size;font-size:3cqw;position:relative}.po-nosig{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:1.4cqw;color:#9fb1c9;background:#0d1320;text-align:center}.po-nosig svg{width:9cqw}.po-nosig b{font-size:4.6cqw;font-weight:600;color:#cbd7ea}.po-nosig small{font-size:2.8cqw;color:#7a8aa3}
.po-bios{position:absolute;inset:0;background:#0b1830;color:#d5e3f6;padding:2.2cqw 3cqw;display:grid;grid-template-rows:auto auto 1fr auto;gap:1.2cqw;font-family:Consolas,'Courier New',monospace;font-size:2.7cqw}.po-bios-h{display:flex;justify-content:space-between;border-bottom:1px solid #3a5a8a;padding-bottom:1cqw;color:#8fc1ff}.po-bios dl{display:grid;grid-template-columns:auto 1fr;gap:.3cqw 2cqw;margin:0}.po-bios dt{color:#7fa0cc}.po-bios dd{margin:0}.po-bios table{border-collapse:collapse;width:100%;font-size:2.4cqw}.po-bios th{text-align:left;color:#7fa0cc;font-weight:400;border-bottom:1px solid #2c4568}.po-bios td,.po-bios th{padding:.2cqw 1cqw}
.po-bios-btn,.po-os-btn{border:1px solid #6fa3e8;background:#1f4c8f;color:#fff;border-radius:1cqw;padding:1cqw 2.4cqw;font-size:2.8cqw;font-family:inherit;min-height:6.5cqw;justify-self:start}.po-bios-btn:hover,.po-os-btn:hover{background:#2b62b5}
.po-os{position:absolute;inset:0;background:radial-gradient(120% 90% at 30% 20%,#7fb3e8,#3d6fb8 45%,#1d3a78 100%);display:grid}.po-os-win{align-self:center;justify-self:center;width:84%;background:#f3f6fb;border-radius:1.4cqw;box-shadow:0 1cqw 3cqw #0006;overflow:hidden;color:#1f2a38;font-size:2.6cqw}.po-os-bar{background:#e4ebf6;padding:1cqw 2cqw;font-weight:700}.po-os-body{padding:1.6cqw 2cqw;display:grid;gap:1.1cqw}.po-os-body dl{display:grid;grid-template-columns:auto 1fr;gap:.6cqw 2cqw;margin:0}.po-os-body dt{color:#52617a}.po-os-body dd{margin:0;font-weight:700}.po-os-ok{margin:0;background:#e3f2e8;color:#1f5a38;border-radius:1cqw;padding:1cqw 1.6cqw}.po-os-hint{margin:0;color:#667}.po-os-task{position:absolute;left:0;right:0;bottom:0;height:6cqw;background:rgba(235,240,248,.92);display:flex;align-items:center;padding:0 2cqw;font-size:2.4cqw}.po-os-task i{width:3cqw;height:3cqw;background:#2f6fd0;border-radius:.5cqw}.po-os-task span{margin-left:auto}
.po-side{background:#fffefa;border:1px solid #d8dccf;border-radius:10px;overflow:hidden}.po-tabs{display:flex;background:#eef0e7;border-bottom:1px solid #d8dccf}.po-tabs button{flex:1;border:0;background:transparent;padding:9px 4px;font-size:12px;font-weight:700;min-height:38px;color:#66746a}.po-tabs button[aria-selected=true]{background:#fffefa;color:#253c2d;box-shadow:inset 0 -3px #d97735}
.po-tabbody{padding:8px;max-height:calc(100vh - 462px);min-height:150px;overflow:auto}.po-card{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center;border:1px solid #dcd9cf;border-radius:8px;background:#fbfaf6;padding:6px;margin-bottom:6px}.po-card.sel{border-color:#d97735;background:#fdf3e8}.po-card-main{display:flex;gap:10px;align-items:center;border:0;background:transparent;text-align:left;padding:2px;min-height:44px}.po-bench-mod{width:96px;flex:none}.po-card-t{display:grid;gap:1px}.po-card-t b{font-size:12px}.po-card-t small{font-size:11px;color:#66746a}.po-mini{border:1px solid #cfd4c8;background:#fff;border-radius:6px;padding:6px 8px;font-size:11px;font-weight:700;min-height:34px}.po-mini[aria-pressed=true]{background:#e0f0e5}
.po-empty,.po-tip{font-size:12px;color:#66746a;margin:6px 2px}.po-label{background:#fbf6ea;border:1px dashed #b9a98f;border-radius:6px;padding:7px 9px;font-size:12px;margin:0 0 8px}
.po-man-h{font-weight:700;font-size:12px;color:#253c2d;padding:2px 2px 6px}.po-man-nav{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.po-man-nav button{border:1px solid #cfd4c8;background:#fff;border-radius:6px;padding:6px 9px;font-size:11px;font-weight:700;min-height:32px}.po-man-nav button[aria-pressed=true]{background:#263c30;color:#fff;border-color:#263c30}.po-man-body{font-size:12px;line-height:1.5;color:#33413a}.po-man-body h3{margin:2px 0 6px;font-size:14px}.po-man-body p{margin:0 0 8px}.po-man-body ul,.po-man-body ol{margin:0 0 8px;padding-left:18px}.po-diagram{width:100%;height:auto;margin-bottom:6px}.po-dg{font-size:9px;fill:#33413a;font-family:Inter,Arial,sans-serif}.po-dl{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:0 0 8px}.po-dl dt{font-weight:700}.po-dl dd{margin:0}
.po-log{margin:0;padding-left:18px;font-size:12px;display:grid;gap:7px}.po-log li b{display:block}.po-log span{display:block;color:#66746a}.po-log span.ok{color:#1f5a38}.po-log span.fail{color:#8a4a18}
.po-ghost{position:fixed;z-index:80;pointer-events:none;transform:translate(-50%,-50%);width:130px;opacity:.9;filter:drop-shadow(0 6px 6px rgba(0,0,0,.35))}.po-ghost svg{width:100%}
.po-preview{background:#d9e3d8;display:flex;align-items:center;justify-content:center}.po-preview svg{height:100%;max-height:150px}
@media (max-width:1000px){.po-grid{grid-template-columns:1fr}.po-stage{grid-template-columns:1fr}.po-assignment{max-height:none}}
@media (prefers-reduced-motion:reduce){.po-spin,.po-led[style*="--d"]{animation:none}}
/* PBQ 16: Inkjet Printer Maintenance */
.ij-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .ij-work{height:calc(100vh - 58px);overflow:auto}
.ij-grid{display:grid;grid-template-columns:minmax(205px,235px) minmax(0,1fr);gap:12px}.ij-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.ij-assignment h2{font-size:19px;margin:9px 0}.ij-assignment p{font-size:12px;line-height:1.42}
.ij-bench-wrap{min-width:0}.ij-stage{display:grid;grid-template-columns:minmax(0,1.5fr) clamp(270px,25vw,340px);gap:12px;background:#e9ebe2;border:1px solid #d8dccf;border-radius:10px;padding:10px;align-items:start}
.ij-printwrap{position:relative;min-width:0}.ij-printer{display:block;width:100%;height:auto;max-height:calc(100vh - 240px)}.ij-printer text{font-family:Inter,Arial,sans-serif}.ij-cap{font-size:9px;letter-spacing:.14em;fill:#6c776f}.ij-door-t{font-size:13px;font-weight:700;fill:#59645c;letter-spacing:.14em}.ij-cart-l{font-size:22px;font-weight:800}.ij-cart-m{font-size:8px;fill:#4a5750;font-weight:700}.ij-tab-t{font-size:7px;font-weight:800;fill:#fff}.ij-eject-t{font-size:15px;fill:#2a3a31}
.ij-door,.ij-latch,.ij-eject,[data-ij-cart],[data-ij-slot-empty],[data-ij-power],[data-ij-paper],[data-ij-out]{cursor:pointer}.ij-door:hover rect:first-child{stroke:#d97735}.ij-latch:hover rect,[data-ij-cart]:hover rect:first-child{stroke:#d97735}
.ij-door:focus-visible,.ij-latch:focus-visible,.ij-eject:focus-visible,[data-ij-cart]:focus-visible,[data-ij-slot-empty]:focus-visible,[data-ij-power]:focus-visible,[data-ij-paper]:focus-visible,[data-ij-out]:focus-visible{outline:3px solid #d97735;outline-offset:2px}
.ij-out.printing .ij-out-p{animation:ijout .9s ease-out}@keyframes ijout{from{transform:translateY(-38px);opacity:.15}to{transform:none;opacity:1}}.ij-carr{animation:ijcarr 1.3s ease-in-out both}@keyframes ijcarr{0%{transform:translateX(0)}50%{transform:translateX(220px)}100%{transform:translateX(0)}}
.ij-ts{position:absolute;left:56.6%;top:28.9%;width:34.7%;height:35.6%;background:#0e1822;border-radius:7px;overflow:hidden;container-type:inline-size;color:#e6eef6;font-size:4.4cqw;box-shadow:inset 0 0 0 2px #2c3b4a}.ij-ts.off{background:#0a0f13}.ij-ts-off{height:100%}
.ij-ts-in{position:relative;height:100%;padding:3.2cqw;display:flex;flex-direction:column;gap:2cqw}.ij-ts-status{background:#1c3a2b;border-radius:2cqw;padding:2.2cqw 3cqw;font-weight:700;font-size:5.4cqw}.ij-ts-status.attn{background:#4a3416}.ij-ts-status small{display:block;font-weight:400;font-size:3.6cqw;color:#c9d6e2;margin-top:.6cqw}
.ij-ts-grid{display:grid;grid-template-columns:1fr 1fr;gap:2cqw;flex:1}.ij-tile{border:1px solid #3b5268;background:#1c2d3e;color:#e6eef6;border-radius:2cqw;font-size:4.6cqw;font-weight:600;min-height:12cqw}.ij-tile:hover,.ij-item:hover{background:#27415a;border-color:#6fa3e8}
.ij-ts-h{display:flex;gap:2cqw;align-items:center}.ij-ts-h b{font-size:5cqw}.ij-tb{border:1px solid #3b5268;background:#1c2d3e;color:#e6eef6;border-radius:1.6cqw;padding:1cqw 2.4cqw;font-size:3.8cqw;min-height:9cqw}
.ij-list{display:grid;gap:1.8cqw}.ij-item{border:1px solid #3b5268;background:#1c2d3e;color:#e6eef6;text-align:left;border-radius:2cqw;padding:2cqw 3cqw;font-size:4.2cqw;min-height:10.5cqw}.ij-item.go{background:#1f5aa8;border-color:#6fa3e8;text-align:center;font-weight:700}.ij-item[aria-disabled=true]{opacity:.45}
.ij-ts-p{margin:0;font-size:3.7cqw;line-height:1.4;color:#c9d6e2}.ij-ts-note{color:#8da0b6;font-size:3.4cqw}.ij-nums{display:flex;gap:2cqw}.ij-num{flex:1;border:1px solid #3b5268;background:#1c2d3e;color:#e6eef6;border-radius:2cqw;font-size:5.6cqw;font-weight:700;min-height:10cqw}.ij-num.sel{background:#1f5aa8;border-color:#9cc3ff}.ij-ts-act{margin-top:auto}
.ij-levels{display:grid;grid-template-columns:repeat(4,1fr);gap:2cqw;flex:1;min-height:0}.ij-lv{display:grid;grid-template-rows:1fr auto auto auto;justify-items:center;gap:.6cqw;font-size:3.6cqw;min-height:0}.ij-lv-bar{width:70%;background:#243445;border-radius:1.2cqw;position:relative;overflow:hidden;min-height:16cqw;height:100%}.ij-lv-bar i{position:absolute;left:0;right:0;bottom:0}.ij-lv.K .ij-lv-bar i{background:#9aa3a8}.ij-lv.C .ij-lv-bar i{background:#26b4ea}.ij-lv.M .ij-lv-bar i{background:#e23b92}.ij-lv.Y .ij-lv-bar i{background:#f6dc3a}.ij-lv small{color:#9fb1c3;font-size:3.1cqw}
.ij-ts-dl{display:grid;grid-template-columns:auto 1fr;gap:1.5cqw 3cqw;margin:0;font-size:4cqw}.ij-ts-dl dt{color:#8da0b6}.ij-ts-dl dd{margin:0}.ij-hist{margin:0;padding-left:5cqw;font-size:4cqw;display:grid;gap:1cqw}.ij-hist .none{list-style:none;margin-left:-5cqw;color:#8da0b6}
.ij-ts-msg{margin-top:auto;background:#2c3f55;border:1px solid #6fa3e8;border-radius:2cqw;padding:2cqw 3cqw;font-size:3.7cqw;line-height:1.35;z-index:3}
.ij-busy{position:absolute;inset:0;background:rgba(14,24,34,.97);display:grid;place-content:center;justify-items:center;gap:2.4cqw;z-index:5;animation:ijbusy 1.6s forwards}.ij-busy-print{animation-duration:1s}.ij-busy b{font-size:5.4cqw}.ij-prog{display:block;width:56cqw;height:3cqw;background:#243445;border-radius:2cqw;overflow:hidden}.ij-prog i{display:block;height:100%;background:#4aa3ff;animation:ijprog 1.4s linear forwards}.ij-busy-print .ij-prog i{animation-duration:.85s}
@keyframes ijbusy{0%,85%{opacity:1;pointer-events:auto}100%{opacity:0;pointer-events:none;visibility:hidden}}@keyframes ijprog{from{width:0}to{width:100%}}
.ij-right{background:#fffefa;border:1px solid #d8dccf;border-radius:10px;overflow:hidden;min-width:0}.ij-tabs{display:flex;background:#eef0e7;border-bottom:1px solid #d8dccf}.ij-tabs button{flex:1;border:0;background:transparent;padding:9px 4px;font-size:12px;font-weight:700;min-height:38px;color:#66746a}.ij-tabs button[aria-selected=true]{background:#fffefa;color:#253c2d;box-shadow:inset 0 -3px #d97735}
.ij-tabbody{padding:8px;max-height:calc(100vh - 252px);min-height:240px;overflow:auto}.ij-sheets{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ij-thumb{border:1px solid #dcd9cf;background:#fff;border-radius:6px;padding:5px;display:grid;gap:4px;text-align:left}.ij-thumb:hover{border-color:#d97735}.ij-thumb span{font-size:11px;font-weight:700;color:#4a5750}.ij-sheet{display:block;width:100%;height:auto;background:#fff}
.ij-tip{font-size:12px;color:#66746a;margin:8px 2px 0}.ij-viewer{display:grid;gap:6px}.ij-view-h{display:flex;gap:8px;align-items:center;justify-content:space-between}.ij-view-h b{font-size:12px;flex:1}.ij-zoom{display:flex;gap:3px}.ij-zoom button{border:1px solid #cfd4c8;background:#fff;border-radius:5px;padding:5px 9px;font-size:11px;font-weight:700;min-height:32px}.ij-zoom button[aria-pressed=true]{background:#263c30;color:#fff;border-color:#263c30}.ij-close{border:1px solid #cfd4c8;background:#fff;border-radius:6px;width:36px;height:34px;font-size:20px;line-height:1}
.ij-view-body{overflow:auto;max-height:calc(100vh - 330px);border:1px solid #e3e0d6;background:#f4f3ee}.ij-view-body .ij-sheet{width:calc(var(--z)*100%);max-width:none}
.ij-bench-h{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#4a5750;margin-bottom:6px}.ij-card{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center;border:1px solid #dcd9cf;border-radius:8px;background:#fbfaf6;padding:6px;margin-bottom:6px}.ij-card.sel{border-color:#d97735;background:#fdf3e8}.ij-card-main{display:flex;gap:10px;align-items:center;border:0;background:transparent;text-align:left;padding:2px;min-height:48px}.ij-bench-cart{width:38px;flex:none}.ij-card-t{display:grid;gap:1px}.ij-card-t b{font-size:12px}.ij-card-t small{font-size:11px;color:#66746a}.ij-card-b{display:grid;gap:4px}.ij-mini{border:1px solid #cfd4c8;background:#fff;border-radius:6px;padding:6px 8px;font-size:11px;font-weight:700;min-height:32px}.ij-mini:hover{border-color:#d97735}
.ij-label{background:#fbf6ea;border:1px dashed #b9a98f;border-radius:6px;padding:7px 9px;font-size:12px;margin:0 0 8px}
.ij-preview{background:#d9e3d8;display:flex;align-items:center;justify-content:center}.ij-preview svg{height:100%;max-height:150px}
@media (max-width:1000px){.ij-grid{grid-template-columns:1fr}.ij-stage{grid-template-columns:1fr}.ij-assignment{max-height:none}}
@media (prefers-reduced-motion:reduce){.ij-out.printing .ij-out-p,.ij-carr,.ij-busy,.ij-prog i{animation:none}.ij-busy{display:none}}

@media (min-width:1001px){.ij-stage.viewing{grid-template-columns:minmax(0,1fr) minmax(400px,46%)}}
/* PBQ 17: Cloud Services Selection */
.cl-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .cl-work{height:calc(100vh - 58px);overflow:auto}
.cl-grid{display:grid;grid-template-columns:clamp(220px,20vw,270px) minmax(0,1fr) clamp(290px,26vw,340px);gap:10px;align-items:start}
.cl-left,.cl-right{background:#fffefa;border:1px solid #d8dccf;border-radius:10px;padding:8px;min-width:0}.cl-left{max-height:calc(100vh - 150px);overflow:auto}.cl-center{min-width:0;background:#e9ebe2;border:1px solid #d8dccf;border-radius:10px;padding:8px}
.cl-h{font-size:10px;font-weight:800;letter-spacing:.14em;color:#a56339;margin:6px 2px 6px}.cl-left .hint{margin:0 0 6px}
.cl-wc{border:1px solid #dcd9cf;border-radius:8px;background:#fbfaf6;margin-bottom:6px}.cl-wc.sel{border-color:#d97735;background:#fdf3e8}.cl-wc.cl-hot{outline:3px solid #d97735}.cl-wc-main{display:grid;gap:3px;width:100%;text-align:left;border:0;background:transparent;padding:8px 9px;min-height:44px}.cl-wc-main b{font-size:12px}.cl-wc-main small{font-size:11px;line-height:1.35;color:#66746a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cl-wc.sel .cl-wc-main small{-webkit-line-clamp:unset}.cl-wc-as{font-size:11px;font-weight:700;color:#3b6fb6}.cl-wc-as i{font-style:normal;background:#e3ecf8;border-radius:4px;padding:0 5px}
.cl-sc{border:1px solid #dcd9cf;border-radius:8px;background:#fff;margin-bottom:6px}.cl-sc.sel{border-color:#3b6fb6;box-shadow:0 0 0 2px #cfe0f6}.cl-sc-main{display:grid;gap:3px;width:100%;text-align:left;border:0;background:transparent;padding:8px 9px;min-height:44px;cursor:grab}.cl-sc-h{display:flex;justify-content:space-between;gap:6px;align-items:center}.cl-sc-h b{font-size:12px}.cl-badge-m{font-style:normal;font-size:10px;font-weight:800;background:#e8ebe3;color:#4a5750;border-radius:4px;padding:1px 6px}.cl-sc-main small{font-size:11px;line-height:1.35;color:#66746a}.cl-price{font-size:11px;font-weight:700;color:#4a5750}
.cl-assign{margin:0 8px 8px;border:1px solid #3b6fb6;background:#3b6fb6;color:#fff;border-radius:6px;padding:7px 10px;font-size:12px;font-weight:700;min-height:34px;width:calc(100% - 16px)}.cl-assign[aria-disabled=true]{opacity:.55}
.cl-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.cl-model{display:flex;gap:4px;align-items:center;flex-wrap:wrap;font-size:12px;font-weight:700;color:#4a5750}.cl-model span{margin-right:4px}.cl-model button{border:1px solid #cfd4c8;background:#fff;border-radius:6px;padding:7px 12px;font-size:12px;font-weight:700;min-height:34px}.cl-model button[aria-checked=true]{background:#263c30;color:#fff;border-color:#263c30}.cl-model-info{font-size:12px;color:#4a5750;margin:6px 2px}
.cl-conn{border:1px solid #cfd4c8;background:#fff;border-radius:6px;padding:7px 12px;font-size:12px;font-weight:700;min-height:34px}.cl-conn.on{background:#3b6fb6;color:#fff;border-color:#3b6fb6}
.cl-diagwrap{background:#fffefa;border:1px solid #d8dccf;border-radius:8px}.cl-diagram{display:block;width:100%;height:auto;max-height:calc(100vh - 330px)}.cl-diagram text{font-family:Inter,Arial,sans-serif}
.cl-zone-bg{stroke-width:1.6}.cl-zone.private .cl-zone-bg{fill:#eef3ea;stroke:#6f8f70}.cl-zone.public .cl-zone-bg{fill:#eaf1fb;stroke:#6f8fbf}.cl-zone.community .cl-zone-bg{fill:#f6f1e6;stroke:#b9a46a;stroke-dasharray:6 4}.cl-zone.hot .cl-zone-bg,.cl-zone.cl-hot .cl-zone-bg{stroke-width:3;stroke:#d97735}.cl-zone-t{font-size:10px;font-weight:800;letter-spacing:.12em;fill:#4a5d50}.cl-zone-s{font-size:9.5px;fill:#6a756e}
.cl-zone,.cl-node,.cl-user,.cl-chip{cursor:pointer}.cl-zone:focus-visible,.cl-node:focus-visible,.cl-user:focus-visible,.cl-chip:focus-visible{outline:3px solid #d97735;outline-offset:2px}
.cl-node-bg{fill:#fff;stroke:#7d8f84;stroke-width:1.4}.cl-node-top{fill:#e3ebf7}.cl-node.sel .cl-node-bg{stroke:#d97735;stroke-width:2.6}.cl-node.src .cl-node-bg,.cl-user.src .cl-user-bg{stroke:#3b6fb6;stroke-width:3}.cl-node-t{font-size:8px;font-weight:800;letter-spacing:.08em;fill:#4a5d50}.cl-badge{font-size:8px;font-weight:800;fill:#3b6fb6}.cl-node-s{font-size:9.5px;font-weight:700;fill:#25352c}.cl-node-s2{font-size:8.5px;fill:#6a756e}.cl-ic{fill:none;stroke:#3b6fb6;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cl-user-bg{fill:#fff;stroke:#9aa59d;stroke-width:1.2}.cl-user:hover .cl-user-bg,.cl-node:hover .cl-node-bg{stroke:#d97735}.cl-user-t{font-size:10px;font-weight:700;fill:#2f3d35}.cl-chip-bg{fill:#fff;stroke:#d97735;stroke-dasharray:4 3}.cl-chip.sel .cl-chip-bg{fill:#fdf3e8}.cl-chip-t{font-size:9.5px;font-weight:700;fill:#5a3a1a}
.cl-link{fill:none;stroke:#3b6fb6;stroke-width:2.2;marker-end:url(#clArrow)}.cl-link.sync{stroke:#d97735;stroke-dasharray:6 4}
.cl-actions{display:flex;gap:8px;align-items:center;margin-top:8px;flex-wrap:wrap}.cl-btn{border:1px solid #cfd4c8;background:#fff;border-radius:7px;padding:9px 14px;font-size:13px;font-weight:700;min-height:38px}.cl-btn.go{background:#d97735;border-color:#d97735;color:#fff}.cl-btn:hover{border-color:#d97735}.cl-dep{font-size:12px;font-weight:700;color:#66746a}.cl-dep.ok{color:#1f5a38}.cl-dep.stale{color:#9a5a1a}
.cl-tabs{display:flex;background:#eef0e7;border-radius:8px 8px 0 0;margin:-8px -8px 8px;border-bottom:1px solid #d8dccf}.cl-tabs button{flex:1;border:0;background:transparent;padding:9px 2px;font-size:11.5px;font-weight:700;min-height:38px;color:#66746a}.cl-tabs button[aria-selected=true]{background:#fffefa;color:#253c2d;box-shadow:inset 0 -3px #d97735}
.cl-tabbody{max-height:calc(100vh - 220px);overflow:auto;font-size:12px;line-height:1.45;color:#33413a}.cl-tabbody h3{margin:0 0 4px;font-size:14px}.cl-need{margin:0 0 8px;color:#66746a}.cl-svc{display:grid;gap:2px;margin-bottom:6px}.cl-svc small{color:#66746a}.cl-resp{width:100%;border-collapse:collapse;margin-bottom:6px}.cl-resp th,.cl-resp td{text-align:left;vertical-align:top;padding:5px 6px;border:1px solid #e3e0d6;font-size:11.5px}.cl-resp th{width:34%;background:#f4f3ee}.cl-tenancy{margin:0 0 8px;font-size:11.5px;color:#4a5750}
.cl-env{display:flex;gap:4px;align-items:center;margin:6px 0;flex-wrap:wrap}.cl-env span{font-weight:700;margin-right:4px}.cl-env button{border:1px solid #cfd4c8;background:#fff;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:700;min-height:32px}.cl-env button[aria-checked=true]{background:#263c30;color:#fff;border-color:#263c30}
.cl-f{display:grid;gap:3px;font-weight:700;margin:6px 0}.cl-f input,.cl-f select,.cl-addlink select{padding:7px 8px;border:1px solid #cfd4c8;border-radius:6px;background:#fff;font-size:12px;min-height:34px;font-weight:400}.cl-ck{display:flex;gap:6px;align-items:flex-start;margin:6px 0;min-height:28px}.cl-ck small{display:block;color:#66746a}.cl-folders>span{font-weight:700;display:block;margin-top:6px}.cl-tip{font-size:11.5px;color:#66746a;margin:4px 0}.cl-empty,.none{color:#8a948c;font-size:12px}
.cl-conns ul{list-style:none;margin:6px 0;padding:0;display:grid;gap:5px}.cl-conns li{display:flex;justify-content:space-between;gap:6px;align-items:center;border:1px solid #e3e0d6;border-radius:6px;padding:5px 8px;background:#fff}.cl-mini{border:1px solid #cfd4c8;background:#fff;border-radius:6px;padding:5px 9px;font-size:11px;font-weight:700;min-height:30px}.cl-mini.go{background:#3b6fb6;color:#fff;border-color:#3b6fb6}.cl-addlink{display:grid;gap:6px}.cl-addlink label{display:grid;gap:3px;font-weight:700}
.cl-cost table{width:100%;border-collapse:collapse}.cl-cost th,.cl-cost td{text-align:left;padding:5px 4px;border-bottom:1px solid #ebe8de;vertical-align:top}.cl-cost td:last-child,.cl-cost th:last-child{text-align:right;white-space:nowrap}.cl-cost td small{display:block;color:#7a857d;font-size:10.5px}.cl-cost tr.k-transfer td:first-child,.cl-cost tr.k-ha td:first-child{color:#8a4a18}.cl-total{display:flex;justify-content:space-between;font-size:13px;margin-top:8px}.cl-total b.neg{color:#b4513a}.cl-bar{height:9px;background:#e8ebe3;border-radius:5px;overflow:hidden;margin-top:6px}.cl-bar i{display:block;height:100%;background:#3f9a62}.cl-bar.over i{background:#c0452a}
.cl-console{background:#10191f;color:#d2e1ea;border-radius:8px;padding:10px;font-family:Consolas,'Courier New',monospace;font-size:11.5px;line-height:1.45}.cl-console p{margin:0 0 6px}.cl-prompt{color:#8fb0d8}.cl-console .dim{color:#7f93a3}.cl-console .stale{color:#e8b04a}.cl-console b{display:inline-block;min-width:38px}.cl-console .pass b{color:#4bd08a}.cl-console .fail b{color:#f0786a}.cl-console span{display:block;color:#9fb4c4;margin-left:40px}.cl-console em{display:block;color:#e8c27a;font-style:normal;margin-left:40px}.cl-result{border-top:1px solid #2a3a46;padding-top:6px;font-weight:700}.cl-result.pass{color:#4bd08a}.cl-result.fail{color:#f0786a}
.cl-ghost{position:fixed;z-index:80;pointer-events:none;transform:translate(-50%,-50%);background:#fff;border:2px solid #3b6fb6;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:700;box-shadow:0 6px 14px rgba(0,0,0,.25)}
.cl-preview{background:#dfe8f5;display:flex;align-items:center;justify-content:center}.cl-preview svg{height:100%;max-height:150px}
@media (max-width:1100px){.cl-grid{grid-template-columns:1fr}.cl-left{max-height:none}}
/* Smart Walkthrough: automatic steps show a mark that fills in by itself; the next unfinished step is highlighted */
.walk-row{display:flex;gap:10px;align-items:flex-start;padding:10px 12px 4px;min-height:44px}
.walk-mark{flex:none;width:20px;height:20px;border-radius:50%;border:2px solid #b9bdb3;background:#fff;margin-top:1px;display:grid;place-items:center;font-size:12px;font-weight:800;color:#fff;transition:background .15s,border-color .15s}
.walk-step.auto.done .walk-mark{background:#3f9a62;border-color:#3f9a62}.walk-step.auto.done .walk-mark::before{content:'\2713'}
.walk-step.next:not(.done){border-color:#d97735;background:#fdf6ee;box-shadow:inset 3px 0 0 #d97735}
.walk-tag{display:inline-block;margin:0 0 0 42px;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;padding:1px 6px;border-radius:4px}.walk-tag.auto{background:#e3efe6;color:#2d6a45}.walk-tag.manual{background:#f6ead9;color:#8a5a22}
.walk-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.walk-step{position:relative}
@media (prefers-reduced-motion:reduce){.walk-mark{transition:none}}
/* PBQ 18: phone and laptop workbench */
.hs-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:14px}.hs-devices{display:grid;grid-template-columns:minmax(220px,300px) minmax(400px,1fr);gap:16px;align-items:start;background:#e9ede5;border:1px solid #d4dbd1;border-radius:12px;padding:18px}.hs-device-label{font-size:10px;letter-spacing:.16em;color:#68776c;font-weight:700;margin:0 0 8px;text-align:center}.hs-phone{max-width:285px;margin:auto;background:#131b20;border:6px solid #29343a;border-radius:30px;padding:6px;color:#1e2c35;box-shadow:0 8px 24px #2b39342b;overflow:hidden}.hs-status{border:0;width:100%;border-radius:19px 19px 0 0;background:#e7f2f2;color:#25363f;padding:12px 14px 6px;text-align:left;font-size:11px;font-weight:bold}.hs-status span,.hs-winbar span,.hs-taskbar span{float:right}.hs-phone-body{background:#f6f9f9;height:465px;overflow:auto;padding:12px;font-size:13px}.hs-phone-body h3{margin:8px 0 16px;font-size:19px}.hs-back{border:0;background:none;color:#285e77;padding:0}.hs-home{height:100%;background:linear-gradient(150deg,#b9d7d6,#d9e8d9 60%,#9ebfba);border-radius:12px;padding:20px}.hs-clock{font-size:38px;font-weight:500;margin:30px 0 90px}.hs-clock small,.hs-app span,.hs-row small{display:block;font-size:11px}.hs-app{background:none;border:0;margin:6px;font-size:11px}.hs-app span{background:#486e75;color:white;border-radius:15px;padding:12px;font-size:23px}.hs-row,.hs-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;border-bottom:1px solid #dce4e3;background:transparent;text-align:left;padding:13px 4px;color:#25353b}.hs-row small{color:#677a7c;margin-top:4px}.hs-tiles{display:flex;gap:8px}.hs-tiles button{flex:1;border:0;border-radius:14px;padding:15px 4px;background:#dce8e9}.hs-tiles button[aria-pressed=true]{background:#b1d8d4}.hs-detail{background:#eaf1ef;border-radius:10px;padding:13px;line-height:1.5}.hs-phone form label,.hs-window form label{display:block;margin:10px 0;font-size:12px}.hs-phone input,.hs-phone select,.hs-window input{display:block;width:100%;padding:7px;border:1px solid #b6c4c2;border-radius:5px;background:white;color:#203035}.hs-phone form button,.hs-window button{border:1px solid #b7c7c4;border-radius:5px;background:white;color:#25463c;padding:7px 10px}.hs-homebar{height:17px;background:#f6f9f9;border-radius:0 0 17px 17px;position:relative}.hs-homebar:after{content:'';position:absolute;bottom:5px;left:35%;width:30%;height:4px;border-radius:4px;background:#4b5c5d}.hs-laptop{background:#303b3d;border:8px solid #303b3d;border-radius:12px 12px 4px 4px;box-shadow:0 8px 20px #26372f2a}.hs-cam{height:8px;text-align:center}.hs-cam:after{content:'';display:inline-block;background:#92a4a2;border-radius:50%;height:4px;width:4px;vertical-align:top}.hs-screen{background:#dbe9ec;min-height:435px;color:#24343a}.hs-winbar{background:#eaf2f4;padding:10px 12px;font-size:11px}.hs-desktop{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:12px;background:linear-gradient(135deg,#8bb2c4,#c8dee4);min-height:380px}.hs-desktop nav{display:flex;flex-direction:column;gap:7px}.hs-desktop nav button{border:0;border-radius:5px;background:#ffffffbb;padding:10px 5px;font-size:11px;text-align:left}.hs-window{background:#f9fbfc;border:1px solid #c6d4d8;border-radius:7px;padding:14px;min-width:0;overflow:auto;max-height:360px;box-shadow:0 4px 12px #35525d30;font-size:13px}.hs-window h3{margin:0 0 10px;font-size:18px}.hs-window h4{margin:14px 0 4px}.hs-network{padding:7px;border-bottom:1px solid #e3e9e8}.hs-network small{display:block;color:#6c7b7c}.hs-network button{float:right}.hs-terminal{background:#172124;color:#e8efea;white-space:pre-wrap;height:210px;overflow:auto;font:12px monospace;padding:10px}.hs-address{padding:8px;background:#edf3f4}.hs-web{padding:25px;color:#466254}.hs-taskbar{background:#e3edf0;padding:9px 12px;font-size:11px}.hs-base{height:14px;background:linear-gradient(#aab6b4,#7d8b89);border-radius:0 0 30px 30px;margin:0 -12px}.hs-link{grid-column:1/-1;display:flex;gap:18px;align-items:center;flex-wrap:wrap;background:white;padding:12px 16px;border-radius:8px;font-size:12px;color:#3c6553}.hs-link b{font-size:10px;letter-spacing:.12em;color:#738178}.hs-link small{color:#6c7971}.hs-feedback{grid-column:1/-1;color:#9a4b23;min-height:1em}.hs-preview{display:flex;align-items:center;justify-content:center;gap:22px;background:#e2ece7!important}.hs-preview-phone{background:#d7e9e8;border:8px solid #354943;border-radius:20px;padding:24px 12px;text-align:center}.hs-preview-phone small,.hs-preview-laptop small,.hs-preview-laptop b{display:block;font-size:9px}.hs-preview-laptop{background:#b9d3dc;border:9px solid #354943;border-radius:9px;padding:35px;font-size:24px;text-align:center}@media(max-width:900px){.hs-layout{grid-template-columns:1fr}.hs-devices{grid-template-columns:1fr}.hs-phone{max-width:300px}.hs-link,.hs-feedback{grid-column:1}}

.hs-network{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hs-network small{flex:1}.hs-network button{float:none;margin-left:auto}
.hs-devices{grid-template-columns:minmax(190px,300px) minmax(0,1fr)}.hs-laptop-wrap{min-width:0}@media(max-width:900px){.hs-devices{grid-template-columns:1fr}}
/* PBQ 19 power supply workbench */
.ps-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:14px}.ps-main{background:#e9ede5;border:1px solid #d4dbd1;border-radius:12px;padding:16px;min-width:0}.ps-top{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:16px}.ps-board{display:block;width:100%;max-height:520px}.ps-socket{cursor:pointer}.ps-socket:focus{outline:none}.ps-socket:focus rect,.ps-socket:hover rect{stroke:#f47b36;stroke-width:4}.ps-controls{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.ps-controls button,.ps-tabs button,.ps-shelf>button{border:1px solid #b5c4b8;border-radius:6px;background:#fff;padding:8px 10px;color:#314d3d;font-size:12px}.ps-status{min-height:36px;color:#9a4b23;font-size:12px;line-height:1.5}.ps-monitor-screen{min-height:150px;background:#141d29;color:#91a8bb;border:9px solid #30403c;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:12px;gap:6px}.ps-monitor-screen.is-on{background:linear-gradient(145deg,#28636d,#86aea8);color:white}.ps-monitor-screen span{font-size:30px}.ps-monitor-screen small{font-size:10px}.ps-monitor-stand{height:12px;background:#7d9083;width:48%;margin:auto;border-radius:0 0 20px 20px}.ps-diag{margin-top:15px;background:#fff;border:1px solid #d4ded3;border-radius:9px;padding:13px;color:#455b4c;font-size:12px;line-height:1.45}.ps-diag h3,.ps-shelf h3,.ps-cable-tray h3{font-size:16px;margin:0 0 6px}.ps-diag p{margin:8px 0}.ps-diag small{color:#748477}.ps-result{padding:8px;background:#f2f5e8;border-left:3px solid #de7a38}.ps-tabs{display:flex;gap:6px;margin-top:15px;border-bottom:1px solid #cbd6cb;padding-bottom:8px}.ps-tabs button[aria-pressed=true]{border-color:#de7836;background:#fff3e8}.ps-shelf,.ps-cable-tray{background:#fff;border-radius:8px;padding:14px;margin-top:8px;font-size:12px;color:#44584a}.ps-shelf p,.ps-cable-tray p{margin:4px 0 10px}.ps-cards{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.ps-cards button{min-width:130px;flex:1;background:#f4f7f1;border:1px solid #c9d5c9;border-radius:8px;padding:11px;text-align:left;color:#30453a;cursor:grab}.ps-cards button[aria-pressed=true]{border:2px solid #e77934;background:#fff8ef}.ps-cards small,.ps-cards strong{display:block;margin-top:5px}.ps-plug{font-size:24px;margin-right:8px;color:#576d5d}.ps-selection,.ps-note{color:#738177;font-size:12px}.ps-cable-tray select{padding:7px;border:1px solid #becdc1;border-radius:5px;background:white}.ps-spec{background:#f0f0e9;border-left:3px solid #e78345;padding:12px;font-size:12px;line-height:1.7}.ps-preview{background:#e9ede5!important;display:flex;align-items:center;justify-content:center}.ps-preview svg{width:95%;height:95%}@media(max-width:1050px){.ps-top{grid-template-columns:1fr}.ps-layout{grid-template-columns:1fr}}
.ps-plug{display:inline-flex;vertical-align:middle;gap:2px;align-items:center;justify-content:center;width:48px;height:22px;padding:3px;background:#35483f;border-radius:3px;border:2px solid #718578}.ps-plug i{display:block;width:7px;height:9px;background:#d0c792;border-radius:1px}.ps-plug.plug-atx{width:65px}.ps-plug.plug-eps{border-radius:6px}.ps-plug.plug-pcie{border-right:5px double #bbc7ae}.ps-plug.plug-sata{width:62px;height:16px;border-radius:0 0 4px 1px}.ps-plug.plug-data{width:40px;height:14px;border-radius:0 0 6px 1px;background:#774e3f}
/* PBQ 20 · network printer deployment */
.np-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:14px}.np-main{background:#e9ede5;border:1px solid #d4dbd1;border-radius:12px;padding:16px;min-width:0}.np-devices{display:grid;grid-template-columns:minmax(260px,1fr) minmax(145px,.46fr) minmax(330px,1.2fr);gap:14px;align-items:start}.np-printer-body{position:relative}.np-printer-art{width:100%;display:block}.np-touch{position:absolute;left:68%;top:34%;width:29%;height:39%;background:#132a36;border:4px solid #344d55;border-radius:5px;color:#e5f0f0;font:10px sans-serif;overflow:hidden}.np-touch-bar{background:#1c5366;padding:4px;font-size:9px}.np-touch-body{overflow:auto;height:calc(100% - 20px);padding:5px}.np-touch h3{font-size:12px;margin:4px 0}.np-touch p{margin:4px 0}.np-touch button{font-size:9px;padding:4px;background:#edf6f3;border:1px solid #9db5b2;border-radius:3px;color:#173c39;margin:2px}.np-touch-row{display:block;width:100%;text-align:left}.np-touch-row small{display:block;font-size:9px}.np-touch-row span{float:right}.np-touch label{display:block;font-size:9px;margin:4px 0}.np-touch input,.np-touch select{width:100%;font-size:10px;padding:3px}.np-ethernet{display:flex;gap:5px;flex-wrap:wrap;font-size:11px;align-items:center}.np-main button{cursor:pointer}.np-ethernet button,.np-switch button,.np-output button,.np-window button{border:1px solid #b6c9bd;background:white;color:#294f3d;border-radius:5px;padding:7px;font-size:11px}.np-switch-box{margin-top:15px;background:#334a43;border:6px solid #536b5e;border-radius:7px;color:#deeadf;padding:10px;display:flex;flex-direction:column;gap:8px;font-size:11px}.np-switch-box b{letter-spacing:.12em}.np-switch-box span{padding:5px;background:#263c35}.np-switch-box button{background:#dceadd}.np-router{background:#cad7ca;border:1px solid #93a899;border-radius:5px;margin-top:10px;padding:9px;font-size:11px}.np-switch small{display:block;margin-top:8px;color:#61756a}.np-monitor{border:8px solid #34443d;border-radius:10px 10px 4px 4px;background:#dbe7e9;margin-top:14px}.np-winbar{background:#eaf2f3;padding:8px;font-size:10px}.np-winbar span,.np-taskbar span{float:right}.np-win{display:grid;grid-template-columns:100px minmax(0,1fr);gap:7px;background:linear-gradient(140deg,#85b1bd,#d0e2df);padding:8px;min-height:380px}.np-win nav{display:flex;flex-direction:column;gap:5px}.np-win nav button{border:0;background:#eff6f3d9;border-radius:4px;padding:8px 5px;text-align:left;font-size:10px}.np-window{min-width:0;background:#f8fbfa;padding:10px;border-radius:6px;max-height:375px;overflow:auto;font-size:11px;color:#30483b}.np-window h3{font-size:15px;margin:2px 0 8px}.np-window label{display:block;margin:6px 0}.np-window input:not([type=checkbox]),.np-window select{display:block;width:100%;padding:5px;border:1px solid #b8cac0;border-radius:4px;font-size:11px}.np-window button{margin:3px 2px}.np-window .np-touch-row{color:#294f3d}.np-windows-card,.np-job{padding:8px;background:#edf4ef;border:1px solid #ceded2;border-radius:5px;margin:8px 0}.np-job span{float:right;font-weight:bold}.np-job small{display:block;color:#9b512e}.np-terminal{height:190px;overflow:auto;white-space:pre-wrap;background:#182725;color:#e7f1e8;font:11px monospace;padding:8px}.np-web{padding:15px;background:#edf5ec;margin-top:8px}.np-taskbar{font-size:10px;padding:6px;background:#d9e6e6}.np-reference{background:#f0f0e9;border-left:3px solid #e78345;padding:10px;font-size:11px;line-height:1.7}.np-status{min-height:24px;font-size:12px;color:#a04d23;padding:8px 0}.np-output{border-radius:8px;background:#fff;padding:14px}.np-output h3{margin:0 0 8px;font-size:15px}.np-sheet-list{display:flex;gap:5px;flex-wrap:wrap}.np-viewer{display:flex;align-items:start;gap:15px;margin-top:10px;font-size:12px}.np-sheet{width:160px;box-shadow:0 3px 8px #445b4b33}.np-preview{display:flex;align-items:center;justify-content:center;background:#e7ede6!important}.np-preview svg{height:95%;width:auto}@media(max-width:1150px){.np-layout{grid-template-columns:1fr}.np-devices{grid-template-columns:minmax(260px,1fr) minmax(160px,.5fr) minmax(350px,1.2fr)}}@media(max-width:850px){.np-devices{grid-template-columns:1fr}.np-touch{font-size:12px}.np-touch h3{font-size:15px}.np-touch button,.np-touch input,.np-touch select{font-size:12px}}
/* Make the printer's simulated touchscreen usable at laptop sizes. */
.np-printer-body{display:flex;flex-direction:column;align-items:stretch}.np-printer-art{height:210px}.np-touch{position:static;width:100%;height:260px;border-width:5px;font-size:12px}.np-touch-bar{font-size:11px;padding:6px}.np-touch-body{height:calc(100% - 25px);padding:8px}.np-touch h3{font-size:15px}.np-touch button,.np-touch input,.np-touch select{font-size:12px}.np-touch label,.np-touch-row small{font-size:11px}.np-switch{position:relative}.np-cord{height:24px;margin:4px 0 0;border-left:4px solid #334d42;border-bottom:4px solid #334d42;border-radius:0 0 0 15px;width:80%;position:relative}.np-cord span{position:absolute;right:-5px;bottom:-8px;width:15px;height:13px;background:#84998a;border:2px solid #334d42;border-radius:2px}.np-cord.loose{width:40%;border-color:#95a69b}.np-cord.loose span{transform:rotate(25deg);background:#d8ded7}
.np-touch{height:360px}.np-sheet{width:210px}
/* PBQ 21 · Laptop Battery & Charging Troubleshooting */
.bc-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:14px}.bc-main{background:#e9ede5;border:1px solid #d4dbd1;border-radius:12px;padding:16px;min-width:0}
.bc-ref{background:#f0f0e9;border-left:3px solid #e78345;padding:10px;font-size:11px;line-height:1.7;margin:10px 0}
.bc-findings{display:grid;gap:4px;margin-top:12px;padding-top:10px;border-top:1px solid #e1ddd5;font-size:11px}.bc-findings label{display:block;margin:4px 0}.bc-findings select{display:block;width:100%;margin-top:3px;padding:5px;border:1px solid #c3cfc6;border-radius:4px;font-size:11px;background:#fff}.bc-findings button{border:1px solid #b6c9bd;background:#fff;color:#294f3d;border-radius:5px;padding:7px;font-size:11px;cursor:pointer}
.bc-bench{display:grid;grid-template-columns:minmax(300px,.95fr) minmax(340px,1.25fr);gap:14px;align-items:start}.bc-laptop,.bc-under{min-width:0}
.bc-lid{position:relative;height:400px;border:8px solid #262b2f;border-radius:12px 12px 3px 3px;background:#101417;overflow:hidden;margin-top:6px}
.bc-screen{position:absolute;inset:0}.bc-screen.off{background:#0b0d0f;display:grid;place-items:center;color:#4c5a60;font-size:11px;text-align:center;padding:14px}
.bc-desk{position:absolute;inset:0 0 30px 0;background:linear-gradient(135deg,#2c6a89,#78aebf 55%,#d3e6e8);overflow:hidden}.bc-wall{position:absolute;inset:0;color:#fff}.bc-wall b{position:absolute;right:14px;bottom:12px;font:700 15px/1 sans-serif;letter-spacing:.1em;opacity:.8}.bc-icons{position:absolute;left:12px;top:12px;display:grid;gap:12px}.bc-icons span{display:grid;justify-items:center;gap:3px;width:62px;font-size:10px;text-shadow:0 1px 2px #0008}.bc-icons i{width:30px;height:30px;border-radius:6px;background:#ffffffe0;display:block}.bc-icons i.e{background:conic-gradient(#2f8f5f,#4aa3d8,#2f8f5f)}.bc-icons i.x{background:linear-gradient(135deg,#2f7d4d,#8fd0a5)}.bc-start{display:inline-block;width:12px;height:12px;background:linear-gradient(#5fb0ff,#5fb0ff) 0 0/5px 5px no-repeat,linear-gradient(#5fb0ff,#5fb0ff) 7px 0/5px 5px no-repeat,linear-gradient(#5fb0ff,#5fb0ff) 0 7px/5px 5px no-repeat,linear-gradient(#5fb0ff,#5fb0ff) 7px 7px/5px 5px no-repeat;margin:0 6px 0 2px}
.bc-window{position:absolute;left:2.5%;top:3%;right:2.5%;bottom:3%;background:#f7fafb;border-radius:6px;box-shadow:0 6px 18px #0005;display:flex;flex-direction:column;color:#26393a;font-size:11px}
.bc-title{display:flex;justify-content:space-between;align-items:center;background:#e4edef;padding:3px 4px 3px 10px;border-radius:6px 6px 0 0;font-size:10.5px}.bc-title button{border:0;background:transparent;font-size:16px;width:28px;height:24px;cursor:pointer}
.bc-wbody{flex:1;min-height:0;display:flex}.bc-wbody.bc-split .bc-nav{width:104px;flex:none;background:#eef4f5;padding:6px;display:flex;flex-direction:column;gap:4px}.bc-nav button{border:0;background:transparent;text-align:left;padding:7px 6px;border-radius:4px;font-size:10.5px;cursor:pointer}.bc-nav button[aria-current=true]{background:#fff;font-weight:700;box-shadow:inset 3px 0 #2c6a89}
.bc-wcontent{flex:1;min-width:0;overflow:auto;padding:10px;overscroll-behavior:contain}.bc-wcontent h3{font-size:14px;margin:0 0 8px}.bc-wcontent h4{font-size:12px;margin:8px 0 6px}.bc-wcontent p{margin:5px 0}
.bc-wcontent button,.bc-flyout button,.bc-secs button{border:1px solid #b6c9bd;background:#fff;color:#294f3d;border-radius:5px;padding:6px 8px;font-size:10.5px;cursor:pointer;margin:3px 2px 3px 0}.bc-secs button[aria-pressed=true]{background:#e3efe6;border-color:#4f8f6a;font-weight:700}
.bc-big{display:flex;align-items:baseline;gap:10px;margin:2px 0 8px}.bc-big b{font-size:30px}.bc-big span{color:#4f6468}.bc-row{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid #e1eaec}.bc-row span{color:#59696c}.bc-meta{color:#59696c;font-size:10px}
.bc-chart{display:flex;align-items:flex-end;gap:3px;height:72px;background:#eaf2f1;padding:5px;border-radius:4px;margin-bottom:8px}.bc-chart i{flex:1;background:#3d8c6a;border-radius:2px 2px 0 0}
.bc-table{width:100%;border-collapse:collapse;font-size:10px;margin:6px 0}.bc-table th,.bc-table td{border:1px solid #cfdcdc;padding:3px 5px;text-align:left;vertical-align:top}.bc-table th{background:#edf4f5;font-weight:700}
.bc-secs{display:flex;flex-wrap:wrap;margin:4px 0 6px}
.bc-terminal{height:150px;overflow:auto;white-space:pre-wrap;background:#0c0c0c;color:#d8d8d8;font:11px/1.35 Consolas,monospace;padding:7px;margin-bottom:6px}#bc-command label{display:inline-flex;gap:4px;align-items:center;font:11px Consolas,monospace}#bc-command input{width:58%;font:11px Consolas,monospace;padding:3px;border:1px solid #9fb4b6}
#bc-test fieldset{border:1px solid #cfdcdc;border-radius:5px;margin:0 0 6px;padding:2px 8px 4px;display:flex;flex-wrap:wrap;gap:2px 14px}#bc-test legend{font-size:10px;color:#59696c}#bc-test label{display:inline-flex;gap:4px;align-items:center;padding:2px 0}
.bc-taskbar{position:absolute;left:0;right:0;bottom:0;height:30px;display:flex;align-items:center;gap:4px;background:#1b2831;color:#e8f0f2;padding:0 5px;font-size:10.5px}.bc-taskbar>button{border:0;background:#ffffff1c;color:#e8f0f2;border-radius:4px;padding:5px 7px;cursor:pointer;font-size:10.5px}.bc-clock{margin-left:auto;display:flex;align-items:center;gap:8px}.bc-tray{border:0;background:#ffffff1c;color:#e8f0f2;border-radius:4px;padding:4px 7px;cursor:pointer;display:flex;align-items:center;gap:5px;font-size:10.5px}
.bc-bicon{display:inline-block;width:20px;height:10px;border:1.5px solid #e8f0f2;border-radius:2px;position:relative}.bc-bicon i{position:absolute;left:0;top:0;bottom:0;background:#7fe0a3}.bc-bicon.low i{background:#f08a5d}
.bc-flyout{position:absolute;right:6px;bottom:4px;width:216px;background:#fdfefe;border:1px solid #b9ccd0;border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:5px;font-size:11px;color:#24383a;z-index:3;box-shadow:0 6px 18px #0004}.bc-flyout b{font-size:15px}.bc-flyout small{color:#59696c}
.bc-deckwrap{position:relative}.bc-deck-art{display:block;width:100%}.bc-pwr{position:absolute;right:2.6%;top:5%;width:28px;height:28px;border-radius:50%;border:2px solid #4b5157;background:#2b3035;cursor:pointer;padding:0}.bc-pwr i{display:block;width:8px;height:8px;margin:auto;border-radius:50%;background:#59605d}.bc-pwr.on i{background:#7be0a0;box-shadow:0 0 6px #7be0a0}.bc-pwr:focus-visible,.bc-hot:focus-visible,.bc-part:focus-visible{outline:3px solid #d97735;outline-offset:2px}
.bc-port{display:grid;grid-template-columns:minmax(170px,230px) minmax(0,1fr);gap:10px;align-items:center;margin-top:8px;font-size:11px}.bc-port .bc-art{display:block;width:100%}.bc-led{font-weight:800}.bc-led.amber{color:#b86a00}.bc-led.white{color:#4c5a60}.bc-led.off{color:#79827e}
.bc-hotwrap{position:relative}.bc-hotwrap .bc-art{display:block;width:100%}.bc-hot{position:absolute;background:transparent;border:2px solid transparent;border-radius:6px;cursor:pointer;padding:0;min-width:22px;min-height:22px}.bc-hot:hover{border-color:#d97735;background:#d9773522}
.bc-caption{font-size:11px;color:#61756a;margin:6px 0}.bc-inspector{background:#fff;border-radius:8px;padding:10px;font-size:11px;display:grid;gap:3px;border:1px solid #d9e0d6;margin-top:6px}.bc-inspector small{color:#6a7a70}
.bc-parts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.bc-group{background:#fff;border-radius:8px;padding:10px;border:1px solid #d9e0d6;min-width:0}.bc-group h4{margin:0 0 8px;font-size:12px;color:#355245}.bc-empty{font-size:11px;color:#8a978e;margin:4px 0}
.bc-part{display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;align-items:center;width:100%;text-align:left;border:1px solid #d2dad0;background:#fbfcf9;border-radius:7px;padding:6px;margin-bottom:6px;cursor:grab;font-size:11px;color:#2d4639}.bc-part span{grid-row:1/3}.bc-part .bc-art{display:block;width:96px}.bc-part small{color:#6a7a70;font-size:10px}.bc-part.selected{border-color:#d97735;background:#faf2e8;box-shadow:inset 3px 0 #d97735}
.bc-status{min-height:24px;font-size:12px;color:#a04d23;padding:10px 0 0}.bc-preview{display:flex;align-items:center;justify-content:center;background:#e7ede6!important}.bc-preview svg{height:96%;width:auto}
@media (max-width:1180px){.bc-bench{grid-template-columns:1fr}.bc-parts{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* PBQ 22 · Mobile Device Management & Corporate Enrollment */
.md-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:14px}.md-main{background:#e9ede5;border:1px solid #d4dbd1;border-radius:12px;padding:16px;min-width:0}
.md-ref{background:#f0f0e9;border-left:3px solid #e78345;padding:10px;font-size:11px;line-height:1.7;margin:10px 0}
.md-bench{display:grid;grid-template-columns:330px minmax(0,1fr);gap:16px;align-items:start}.md-phonewrap,.md-consolewrap{min-width:0}
.md-phone{position:relative;width:306px;height:620px;margin:8px auto 0;border-radius:40px;padding:12px;background:linear-gradient(145deg,#4a525a,#15191c);box-shadow:0 14px 30px #1d29223d,inset 0 0 0 2px #5d656d}.md-phone.managed{box-shadow:0 14px 30px #1d29223d,inset 0 0 0 2px #5d656d,0 0 0 3px #4faa7a66}
.md-notch{position:absolute;top:12px;left:50%;transform:translateX(-50%);width:96px;height:19px;background:#0b0d0f;border-radius:0 0 13px 13px;z-index:6}
.md-screen{position:relative;height:100%;border-radius:29px;overflow:hidden;background:#0f1a1e;display:flex;flex-direction:column;color:#e8f0f2}
.md-statusbar{display:flex;justify-content:space-between;align-items:center;height:30px;padding:8px 22px 0;font-size:11px;font-weight:700;color:#fff;background:#0f1a1e;flex:none}.md-stic{display:flex;gap:6px;align-items:center}
.md-shade-btn{position:absolute;top:30px;left:50%;transform:translateX(-50%);z-index:5;min-width:46px;height:22px;border:0;border-radius:0 0 11px 11px;background:#1c2b31;color:#cfe0e4;font-size:12px;cursor:pointer;padding:0 8px}.md-shade-btn i{font-style:normal;background:#f2a33a;color:#1d1d1d;border-radius:8px;padding:0 5px;font-size:10px;margin-right:4px;font-weight:800}
.md-shade{position:absolute;top:52px;left:8px;right:8px;z-index:5;background:#1c2b31;border-radius:14px;padding:8px;display:grid;gap:6px;box-shadow:0 8px 22px #0007}.md-shade button{text-align:left;border:0;background:#26393f;color:#e8f0f2;border-radius:10px;padding:9px 10px;cursor:pointer;display:grid;gap:2px}.md-shade small{color:#a9bfc5;font-size:10.5px}
.md-pscreen{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;background:#f3f6f5;color:#22343a;font-size:12px}
.md-pbody{padding:26px 12px 14px}.md-pbody h3{margin:0 0 8px;font-size:17px;color:#16303a}.md-pbody h4{margin:12px 0 6px;font-size:12px;color:#456}.md-sub{color:#5a6c72;font-size:11px;margin:2px 0 8px}.md-empty{color:#6b7c82;font-size:12px;margin:8px 0}
.md-home{min-height:100%;padding:34px 14px 14px;background:linear-gradient(160deg,#2b6c86,#18465a 60%,#102f3d);color:#fff}.md-home.managed{background:linear-gradient(160deg,#2c7a62,#1b5646 60%,#123a30)}.md-badge{display:inline-flex;gap:6px;align-items:center;background:#ffffff26;border-radius:14px;padding:5px 10px;font-size:11px;font-weight:700;margin-bottom:14px}.md-badge.off{background:#00000030;font-weight:600}
.md-apps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 6px}.md-app{display:grid;justify-items:center;gap:5px;border:0;background:transparent;color:#fff;font-size:10.5px;cursor:pointer;padding:4px 2px;border-radius:10px;min-height:76px;text-align:center}.md-app:hover{background:#ffffff1f}
.md-row{display:grid;grid-template-columns:1fr auto;align-items:center;width:100%;text-align:left;border:0;border-bottom:1px solid #dbe4e2;background:transparent;padding:10px 4px;cursor:pointer;color:#22343a;min-height:46px}.md-row b{font-size:13px}.md-row small{grid-column:1;color:#667a80;font-size:11px}.md-row span{grid-row:1/3;grid-column:2;font-size:18px;color:#8ba}.md-row.unread b{color:#0d5aa7}.md-row:hover{background:#eaf1ef}
.md-card{background:#fff;border:1px solid #d7e2df;border-radius:12px;padding:10px 12px;margin:8px 0;display:grid;gap:6px}.md-card small{color:#5f7278}.md-card p{margin:2px 0}
.md-state{justify-self:start;border-radius:10px;padding:1px 8px;font-size:11px;font-weight:700}.md-state.ok{background:#dcf1e5;color:#1d6a43}.md-state.warn{background:#fcebd1;color:#8a5410}
.md-kv{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:11.5px}.md-kv span{color:#667a80}.md-kv b{font-weight:600;word-break:break-word}
.md-pbody button:not(.md-row):not(.md-app),.md-cbody button:not(.md-link){border:1px solid #b4cbc4;background:#fff;color:#245443;border-radius:8px;padding:8px 10px;font-size:12px;cursor:pointer;min-height:34px}.md-pbody button:hover:not(:disabled),.md-cbody button:hover:not(:disabled){border-color:#d97735}.md-pbody button:disabled{opacity:.45;cursor:not-allowed}
.md-toggle{display:flex;justify-content:space-between;align-items:center;width:100%}.md-toggle[aria-pressed=true]{background:#e3f3ea!important;border-color:#4f9a73!important}.md-toggle i{font-style:normal;font-weight:800}
.md-form{display:grid;gap:8px;margin:6px 0}.md-form label{display:grid;gap:3px;font-size:11.5px;color:#456}.md-form input,.md-url input,.md-inline select{padding:8px;border:1px solid #b9cbc6;border-radius:7px;font-size:13px;background:#fff;color:#22343a}.md-check{display:flex!important;grid-template-columns:none!important;gap:8px;align-items:flex-start}.md-check input{width:18px;height:18px}
.md-note{background:#fff4e3;border:1px solid #f0d5a3;border-radius:10px;padding:8px 10px;margin:8px 0;font-size:11.5px}.md-note.blocked{background:#fde9e5;border-color:#efb3a8}.md-note small{display:block;color:#7a5a1e;margin-top:3px}
.md-line{display:flex;align-items:center;gap:8px;justify-content:space-between;padding:7px 0;border-bottom:1px solid #dbe4e2}.md-line span{display:flex;align-items:center;gap:8px}.md-line button{padding:5px 9px!important;min-height:28px!important}
.md-url{display:flex;gap:6px;margin-bottom:8px}.md-url input{flex:1;min-width:0}.md-web{background:#fff;border:1px solid #d7e2df;border-radius:10px;padding:10px 12px}.md-web.error{border-color:#efb3a8;background:#fdf1ee}.md-web.page{border-color:#a9d6bb;background:#f1faf4}.md-web h4{margin:0 0 4px}
.md-nav{display:flex;justify-content:center;gap:56px;background:#0f1a1e;flex:none;padding:4px 0 6px}.md-nav button{border:0;background:transparent;color:#cfe0e4;font-size:20px;width:56px;height:34px;cursor:pointer;border-radius:17px}.md-nav button:hover{background:#ffffff1c}
.md-phone button:focus-visible,.md-browser button:focus-visible{outline:3px solid #d97735;outline-offset:1px}
.md-browser{border:1px solid #b6c3ba;border-radius:10px;overflow:hidden;background:#fff;margin-top:8px}.md-chrome{display:flex;align-items:center;gap:10px;background:#dfe6e0;padding:7px 10px}.md-dots{display:flex;gap:5px}.md-dots i{width:9px;height:9px;border-radius:50%;background:#b3bdb5}.md-urlbar{flex:1;background:#fff;border-radius:12px;padding:3px 10px;font-size:11px;color:#51635a;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.md-console{display:flex;height:610px}.md-cnav{flex:none;width:128px;background:#1f3a2f;padding:8px 6px;display:flex;flex-direction:column;gap:3px}.md-cnav button{border:0;background:transparent;color:#cfe3d6;text-align:left;padding:9px 10px;border-radius:6px;font-size:12px;cursor:pointer}.md-cnav button[aria-current=true]{background:#2f5646;color:#ffd9b8;font-weight:700}.md-cnav button:hover{background:#294a3b}
.md-cbody{flex:1;min-width:0;overflow:auto;overscroll-behavior:contain;padding:14px 16px;color:#233f33;font-size:12px}.md-cbody h3{margin:0 0 10px;font-size:17px}.md-cbody h4{margin:14px 0 6px;font-size:13px}.md-cbody p{margin:6px 0}
.md-table{width:100%;border-collapse:collapse;font-size:11.5px;margin:6px 0}.md-table th,.md-table td{border-bottom:1px solid #e1e8e2;padding:7px 6px;text-align:left;vertical-align:top}.md-table th{background:#edf3ee;font-size:11px;color:#4a5f53}.md-table tr.sel{background:#fdf3e6}.md-table small{color:#6a7b72}
.md-link{border:0;background:transparent;color:#1d5fa8;text-decoration:underline;cursor:pointer;font-size:12px;padding:2px 0;font-weight:700}
.md-pill{display:inline-block;border-radius:10px;padding:1px 8px;font-size:10.5px;font-weight:700;white-space:nowrap}.md-pill.ok{background:#dcf1e5;color:#1d6a43}.md-pill.info{background:#dbe9f8;color:#1d4f8a}.md-pill.warn{background:#fcebd1;color:#8a5410}.md-pill.bad{background:#fbdcd5;color:#9a3a22}.md-pill.mute{background:#e8ece9;color:#5b6a62}
.md-detail{background:#f6f9f6;border:1px solid #dfe8e0;border-radius:10px;padding:12px;margin-top:10px;display:grid;gap:10px}.md-detail h4{margin:0}.md-inline{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}.md-inline label{display:flex;gap:8px;align-items:center}.md-code{font:800 15px Consolas,monospace;background:#fff;border:1px dashed #6a9a82;border-radius:6px;padding:3px 10px;letter-spacing:.04em}
.md-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.md-tiles div{background:#f3f7f4;border:1px solid #dfe8e0;border-radius:10px;padding:12px}.md-tiles b{display:block;font-size:24px}.md-tiles span{color:#5b6f63;font-size:11px}
.md-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.md-pcard{background:#f6f9f6;border:1px solid #dfe8e0;border-radius:10px;padding:12px}.md-pcard small{display:block;color:#6a7b72;margin:2px 0 6px}.md-pcard ul{margin:0;padding-left:18px;line-height:1.55}
.md-log{background:#101c18;color:#d8ead9;font:11px/1.5 Consolas,monospace;padding:10px;border-radius:8px;white-space:pre-wrap;max-height:480px;overflow:auto;margin:0}
.md-status{min-height:24px;font-size:12px;color:#a04d23;padding:10px 0 0}.md-preview{display:flex;align-items:center;justify-content:center;background:#e7ede6!important}.md-preview svg{height:96%;width:auto}
@media (max-width:1180px){.md-bench{grid-template-columns:1fr}.md-tiles{grid-template-columns:repeat(2,1fr)}}
/* PBQ 23 · Wi-Fi Site Survey & Interference */
.printer-page .wf-work{height:auto;display:block;max-width:none;padding:8px 1.5% 46px}.wf-work{max-width:1700px;margin:auto}
.wf-ticket{display:flex;gap:18px;align-items:stretch;background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:11px 16px;margin:0 0 10px}.wf-ticket>div:first-child{flex:1;min-width:0}.wf-ticket p{margin:5px 0 0;font-size:12px;line-height:1.55;color:#5d655f}.wf-ticket p b{color:#373b3b}.wf-tk-ref{flex:none;background:#f0f0e9;border-left:3px solid #e78345;padding:8px 12px;font-size:11px;line-height:1.65;color:#5d655f;align-self:center}
.wf-work .hint{margin:0 0 10px}
.wf-layout{display:grid;grid-template-columns:minmax(0,1fr) clamp(360px,29vw,470px);gap:12px;align-items:start}
.wf-mapcard,.wf-card{background:#fff;border:1px solid #e0dfd6;border-radius:10px;min-width:0}.wf-mapcard{padding:10px}.wf-card{padding:12px 14px;margin-bottom:12px}.wf-card h3{font:normal 20px Georgia,serif;margin:2px 0 2px}.wf-card h4,.wf-h4{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#6c746d;margin:12px 0 6px}
.wf-toolbar{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin:0 0 8px}.wf-seg{display:inline-flex;background:#e9e6df;border-radius:7px;padding:3px}.wf-seg button{border:0;background:none;color:#6a716b;padding:7px 13px;font-size:12px;font-weight:700;border-radius:5px}.wf-seg button[aria-pressed=true]{background:#fff;color:#b55f28;box-shadow:0 1px 4px #0002}.wf-chk{font-size:12px;color:#5d655f;display:inline-flex;gap:6px;align-items:center}.wf-chk input{accent-color:#d97735;width:15px;height:15px}
.wf-stage{position:relative;width:100%;aspect-ratio:312/192;border-radius:8px;overflow:hidden;background:#aeb7c0;touch-action:none;user-select:none}.wf-stage svg,.wf-stage canvas{position:absolute;left:0;top:0;width:100%;height:100%;display:block}.wf-base{pointer-events:none}
.wf-heat{pointer-events:none;opacity:.9;image-rendering:auto;left:1.92%!important;top:3.125%!important;width:96.15%!important;height:93.75%!important;filter:saturate(1.1)}
.wf-top{overflow:visible}.wf-top .wf-ap.sel>circle:nth-of-type(2){stroke:#1f6feb}.wf-ap.bad>circle:nth-of-type(3){stroke:#d92d20;stroke-width:.14}.wf-ap.drag{cursor:grabbing!important}.wf-ap:focus-visible,.wf-st:focus-visible,.wf-mw:focus-visible{outline:none}.wf-ap:focus-visible circle:nth-of-type(3),.wf-st:focus-visible circle:first-child{stroke:#d97735;stroke-width:.16}
.wf-mw-wave{transform-origin:1.3px 13.6px;animation:wf-wave 1.4s ease-out infinite}.wf-mw-wave.w2{animation-delay:.7s}@keyframes wf-wave{from{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(2.4)}}@media(prefers-reduced-motion:reduce){.wf-mw-wave{animation:none;opacity:.5}}
.wf-tip{position:absolute;z-index:3;background:#1d2a38;color:#fff;font-size:12px;font-weight:600;padding:5px 9px;border-radius:6px;pointer-events:none;white-space:nowrap;box-shadow:0 3px 10px #0004}.wf-tip.bad{background:#b42318;white-space:normal;max-width:260px}body.wf-dragging{cursor:grabbing;user-select:none}
.wf-under{display:grid;gap:8px;margin-top:9px}.wf-legend{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 12px}.wf-leg-title{font-size:11px;font-weight:700;color:#4a514b;grid-row:1/3}.wf-leg-bar{height:11px;border-radius:6px;border:1px solid #0002}.wf-leg-ticks{display:flex;justify-content:space-between;font-size:10px;color:#58615a;gap:2px}.wf-leg-ticks span{flex:1;text-align:center;line-height:1.25}.wf-leg-ticks b{display:block;font-weight:700;color:#373b3b}.wf-leg-ticks i{font-style:normal;color:#7a817b}
.wf-sum{display:flex;flex-wrap:wrap;gap:4px 22px;font-size:11.5px;color:#5d655f}.wf-sum b{color:#373b3b}.wf-sum i{font-style:normal;font-weight:700}.wf-sum i.up{color:#1b8a52}.wf-sum i.dn{color:#c0392b}.wf-hover{font-size:11.5px;color:#4a514b;background:#f4f3ee;border-radius:6px;padding:7px 10px;min-height:32px}
.wf-side{min-width:0}.wf-inst{border-color:#d6d9cf}.wf-inst-head{display:flex;gap:10px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}.wf-inst-head h3{display:inline}.wf-tag{display:inline-block;background:#1d2a38;color:#fff;font-size:11px;font-weight:800;border-radius:5px;padding:2px 7px;margin-right:7px;vertical-align:3px}.wf-muted{font-size:11px;color:#7a817b;margin:3px 0}.wf-btns{display:flex;gap:6px;flex-wrap:wrap}.wf-btns button{padding:9px 12px;font-size:12px}.wf-btns button:disabled{opacity:.45;cursor:not-allowed}.wf-note{background:#fbf3e6;border-radius:6px;padding:7px 10px;font-size:11px;color:#8a5a2b;margin:8px 0 0}
.wf-cols{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.wf-col{border:1px solid #e4e3da;border-radius:8px;padding:8px 10px;background:#fbfbf8;min-width:0}.wf-col.used{border-color:#3b8f6a;background:#f3faf6}.wf-col h4{margin:0 0 5px;display:flex;justify-content:space-between;align-items:center;gap:4px;flex-wrap:wrap}.wf-chip{font-size:9px;letter-spacing:.04em;text-transform:none;background:#e2efe7;color:#256c4a;border-radius:9px;padding:2px 7px;font-weight:700}.wf-chip.cur{background:#e2efe7;color:#256c4a}.wf-chip.old{background:#eceae3;color:#7a7f78}.wf-chip.good{background:#dff1e6;color:#1d7a4a}.wf-chip.badc{background:#fbe3e0;color:#b42318}
.wf-col dl{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;margin:0;font-size:11px}.wf-col dt{color:#6b736c}.wf-col dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;color:#2b332d}.wf-col dd i{display:block;font-style:normal;font-size:10px;color:#868d86}.wf-col dd.v{font-weight:700}.wf-col dd.ok{color:#1d7a4a}.wf-col dd.bad{color:#c0392b}.q-good{color:#1d7a4a}.q-fair{color:#b9770e}.q-poor,.q-nolink{color:#c0392b}
.wf-video{margin-top:9px;border-radius:7px;padding:8px 10px;font-size:11.5px;background:#f0f0ea;color:#3d453f}.wf-video.ok{background:#e4f3ea;color:#1d6b43}.wf-video.bad{background:#fbe8e5;color:#9a2a1f}.wf-video span{opacity:.85}
.wf-mwrow{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:9px;font-size:11.5px;color:#4a514b;border-top:1px solid #eceae3;padding-top:9px}.wf-mwrow button{padding:7px 11px;font-size:11.5px}.wf-mwrow button[aria-pressed=true]{border-color:#d92d20;color:#b42318}
.wf-tools{padding:0;overflow:hidden}.wf-tabs{display:flex;border-bottom:1px solid #e6e4dc;background:#f6f5f0}.wf-tabs button{flex:1;border:0;background:none;padding:11px 6px;font-size:12.5px;font-weight:700;color:#7a817b;border-bottom:3px solid transparent}.wf-tabs button[aria-selected=true]{color:#b55f28;border-bottom-color:#d97735;background:#fff}.wf-tabbody{padding:11px 14px 14px;max-height:none}
.wf-subtabs{display:flex;gap:6px;margin-bottom:8px}.wf-subtabs button{border:1px solid #dcdad0;background:#fff;border-radius:16px;padding:5px 12px;font-size:11.5px;font-weight:700;color:#5d655f}.wf-subtabs button[aria-selected=true]{background:#1d2a38;color:#fff;border-color:#1d2a38}
.wf-loc{font-size:12px;margin:0 0 7px;color:#33404c}.wf-loc b{background:#e6edf5;border-radius:4px;padding:1px 6px;margin-right:5px}
.wf-tw{overflow-x:auto}.wf-tbl{width:100%;border-collapse:collapse;font-size:11px}.wf-tbl th{text-align:left;font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:#7a817b;padding:4px 5px;border-bottom:1px solid #e6e4dc}.wf-tbl td{padding:5px;border-bottom:1px solid #f0eee8;vertical-align:top}.wf-tbl code{font-size:9.5px;color:#7a817b}.wf-tbl tr.ext td{color:#868d86}.wf-tbl em{font-style:normal;font-size:9.5px;background:#e6edf5;color:#2f5a8a;border-radius:4px;padding:1px 5px;margin-left:3px;font-weight:700}.wf-sb{display:inline-block;width:46px;height:7px;background:#e9e8e1;border-radius:4px;vertical-align:middle;margin-right:5px;overflow:hidden}.wf-sb i{display:block;height:100%}.wf-n{font-variant-numeric:tabular-nums}
.wf-chartwrap{margin:2px 0 4px}.wf-chart{width:100%;height:auto;display:block}.wf-keyrow{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:11px;color:#4a514b;margin:4px 0 8px}.wf-keyrow i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}
.wf-use{display:grid;gap:4px;font-size:11px;color:#4a514b}.wf-use>div{display:grid;grid-template-columns:110px 1fr 36px;gap:8px;align-items:center}.wf-ub{height:7px;background:#ebe9e2;border-radius:4px;overflow:hidden}.wf-ub i{display:block;height:100%}.wf-use b{text-align:right}
.wf-find{font-size:12px;padding:8px 10px;border-radius:7px;background:#f0f0ea;color:#5d655f;margin:6px 0}.wf-find.hit{background:#fbeae6;color:#8f2a1c}
.wf-aptiles{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px}.wf-aptile{display:grid;gap:2px;text-align:left;border:1px solid #dcdad0;background:#fff;border-radius:8px;padding:7px 9px;font-size:11px;color:#5d655f;position:relative}.wf-aptile b{color:#1d2a38;font-size:12.5px}.wf-aptile i{position:absolute;right:9px;top:10px;width:8px;height:8px;border-radius:50%;background:#2ecc71}.wf-aptile i.down{background:#c0392b}.wf-aptile.sel{border-color:#1f6feb;box-shadow:inset 3px 0 #1f6feb;background:#f4f8ff}
.wf-apinfo h4{margin:6px 0}.wf-apinfo dl{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;font-size:11px;margin:0 0 6px}.wf-apinfo dt{color:#6b736c}.wf-apinfo dd{margin:0}.wf-apinfo code{font-size:10.5px}
.wf-pos{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin:6px 0 8px;padding:8px;background:#f4f3ee;border-radius:7px}.wf-pos label{font-size:10px;color:#6b736c;display:grid;gap:3px}.wf-pos input{width:74px;border:1px solid #cfd5cc;border-radius:5px;padding:6px;font:12px 'Segoe UI',sans-serif}.wf-pos .secondary{padding:7px 11px;font-size:11.5px}.wf-nudge{display:inline-flex;gap:4px;margin-left:auto}.wf-nudge button{width:30px;height:30px;border:1px solid #cfd5cc;background:#fff;border-radius:5px;font-size:14px;color:#33404c}
#wf-ap{display:grid;gap:8px}.wf-radio{border:1px solid #e0dfd6;border-radius:8px;padding:8px 10px 10px;margin:0;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:6px 8px;background:#fbfbf8}.wf-radio legend{font-size:11px;font-weight:800;color:#33404c;padding:0 5px}.wf-radio label{font-size:10px;color:#6b736c;display:grid;gap:3px}.wf-radio select{border:1px solid #cfd5cc;border-radius:5px;padding:6px 4px;font:11.5px 'Segoe UI',sans-serif;background:#fff;min-width:0;width:100%}.wf-sw{grid-column:1/-1;display:flex!important;align-items:center;gap:6px;font-size:11.5px!important;color:#33404c!important}.wf-sw input{accent-color:#d97735;width:15px;height:15px}
.wf-apply{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.wf-apply .primary{padding:10px 16px;font-size:12px}
.wf-req{background:#f4f6fa;border-left:3px solid #1f6feb;padding:8px 11px;border-radius:0 6px 6px 0;font-size:11px;line-height:1.55;color:#4a5560;margin-bottom:9px}.wf-req b{display:block;color:#1d2a38;margin-bottom:2px}.wf-hist{margin:0;padding-left:18px;font-size:11px;line-height:1.55;color:#4a514b}.wf-hist li{margin-bottom:3px}.wf-sv td:nth-child(2){font-size:10.5px}
.wf-status{min-height:22px;font-size:12px;color:#a04d23;padding:9px 2px 0}.wf-preview{display:flex;align-items:center;justify-content:center;background:#e7ebef!important}.wf-preview svg{width:100%;height:auto;max-height:100%}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(max-width:1060px){.wf-layout{grid-template-columns:1fr}.wf-ticket{flex-direction:column}}@media(max-width:560px){.wf-cols{grid-template-columns:1fr}.wf-radio{grid-template-columns:1fr 1fr}}
@media(min-width:1061px) and (min-height:800px){.wf-mapcard{position:sticky;top:8px}}
@media(max-height:820px){.wf-work .network-heading{margin-bottom:8px;align-items:center}.wf-work .network-heading h1{font-size:26px;margin:4px 0}.wf-work .network-heading p{display:none}.wf-work .network-heading .back{margin-bottom:4px}.wf-ticket{padding:8px 12px;margin-bottom:8px}.wf-ticket p{font-size:11.5px;margin:3px 0 0}.wf-tk-ref{display:none}.wf-work .network-heading .primary,.wf-work .network-heading .secondary{padding:11px 15px;font-size:12px}}
/* PBQ 24 · Network Cable Tracing & Patch Panel */
.printer-page .nc-work{height:auto;display:block;max-width:none;padding:8px 1.5% 46px}.nc-work{max-width:1700px;margin:auto}.nc-work .hint{margin:0 0 10px}
.nc-layout{display:grid;grid-template-columns:minmax(0,1fr) clamp(350px,31vw,500px);gap:12px;align-items:start}
.nc-stagecard,.nc-side{background:#fff;border:1px solid #e0dfd6;border-radius:10px;min-width:0}.nc-stagecard{padding:10px}
.nc-toolbar{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin:0 0 8px;min-height:38px}.nc-seg{display:inline-flex;background:#e9e6df;border-radius:7px;padding:3px}.nc-seg button{border:0;background:none;color:#6a716b;padding:8px 15px;font-size:12.5px;font-weight:700;border-radius:5px}.nc-seg button[aria-pressed=true]{background:#fff;color:#b55f28;box-shadow:0 1px 4px #0002}
.nc-legend{display:flex;gap:14px;font-size:11.5px;color:#4a514b;align-items:center}.nc-legend span{display:inline-flex;gap:5px;align-items:center}.nc-hand{display:flex;gap:8px;align-items:center;font-size:12px;background:#fff6e5;border:1px solid #f0d49a;border-radius:7px;padding:5px 10px}.nc-hand .secondary{padding:5px 10px;font-size:11.5px}.nc-sw{display:inline-block;width:12px;height:12px;border-radius:3px;border:1px solid #0004;vertical-align:-1px;margin-right:5px}
.nc-stage{position:relative;width:100%;aspect-ratio:1000/560;border-radius:8px;overflow:hidden;background:#1b2128;touch-action:pan-y;user-select:none}.nc-stage svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.nc-port{cursor:pointer;outline:none}.nc-port:hover rect:first-child{filter:brightness(1.12)}.nc-port:focus-visible>rect:last-of-type{stroke:#ffb15a;stroke-width:3}.nc-port.fixed{cursor:not-allowed}.nc-port.hot{cursor:copy}.nc-outlet{cursor:pointer;outline:none}.nc-outlet:focus-visible rect:first-child{stroke:#d97735;stroke-width:3;fill:#fff;fill-opacity:.4}
.nc-cable{pointer-events:none}.nc-act{animation:nc-blink 1.1s steps(2,end) infinite}@keyframes nc-blink{50%{opacity:.25}}@media(prefers-reduced-motion:reduce){.nc-act{animation:none}}body.nc-dragging{cursor:grabbing;user-select:none}
.nc-inspect{display:flex;flex-wrap:wrap;gap:8px 14px;justify-content:space-between;align-items:flex-start;margin-top:9px;background:#f4f3ee;border-radius:8px;padding:9px 11px;font-size:12px;color:#33404c;min-height:50px}.nc-ins-l{flex:1 1 280px;min-width:0}.nc-ins-r{display:flex;flex-wrap:wrap;gap:6px}.nc-ins-r button{padding:7px 10px;font-size:11.5px}.nc-info{margin:5px 0 0;color:#8a4b1f;font-size:11.5px;line-height:1.5}.nc-muted{color:#7a817b;font-size:11.5px}
.nc-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid #e6e4dc;background:#f6f5f0;border-radius:10px 10px 0 0}.nc-tabs button{border:0;background:none;padding:11px 8px;font-size:12.5px;font-weight:700;color:#7a817b;border-bottom:3px solid transparent;white-space:nowrap}.nc-tabbody .secondary{padding:8px 12px;font-size:12px}.nc-tabs button[aria-selected=true]{color:#b55f28;border-bottom-color:#d97735;background:#fff}.nc-tabbody{padding:12px 14px 16px}
.nc-form{display:grid;gap:8px}.nc-form label{font-size:11px;color:#6b736c;display:grid;gap:3px}.nc-form select,.nc-labgrid input{border:1px solid #cfd5cc;border-radius:5px;padding:8px 6px;font:12.5px 'Segoe UI',sans-serif;background:#fff;min-width:0;width:100%}.nc-form .primary,.nc-form .secondary,#nc-labels .primary{padding:10px 14px;font-size:12.5px}
.nc-order h4,.nc-h4{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#6c746d;margin:14px 0 6px}.nc-order h4:first-child{margin-top:0}.nc-order p{font-size:12px;line-height:1.55;color:#4a514b}
.nc-tw{overflow-x:auto}.nc-tbl{width:100%;border-collapse:collapse;font-size:11.5px}.nc-tbl th{text-align:left;font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:#7a817b;padding:4px 5px;border-bottom:1px solid #e6e4dc}.nc-tbl td{padding:5px;border-bottom:1px solid #f0eee8;vertical-align:top}.nc-swt td{padding:3px 5px;font-variant-numeric:tabular-nums}
.nc-result{margin-top:10px;border:1px solid #e0dfd6;border-radius:9px;padding:10px 12px}.nc-result.pass{background:#f1f9f4;border-color:#bfe3cb}.nc-result.fail{background:#fdf3f1;border-color:#f1c6bf}.nc-verdict{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12px}.nc-verdict b{font-size:13px}.nc-test{width:100%;max-width:340px;display:block;margin:6px 0}.nc-facts{margin:4px 0;padding-left:18px;font-size:11.5px;columns:2;color:#33404c}.nc-expl{font-size:11.5px;color:#7a3a14;background:#fff;border-radius:6px;padding:7px 9px;margin:6px 0 0}
.nc-toneon{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:#fff6e5;border:1px solid #f0d49a;border-radius:8px;padding:8px 10px;font-size:12px;margin:8px 0}.nc-toneon .secondary{padding:6px 10px;font-size:11.5px}.nc-chk{font-size:12px;display:flex;gap:7px;align-items:center;margin:6px 0}.nc-chk input{accent-color:#d97735;width:16px;height:16px}
.nc-bin{display:grid;gap:6px}.nc-cab{display:flex;gap:8px;align-items:center;justify-content:space-between;border:1px solid #e0dfd6;border-radius:8px;padding:7px 9px;font-size:12px}.nc-cab.hand{border-color:#d97735;background:#fff6ec}.nc-cab-a{display:flex;gap:5px}.nc-cab-a button{padding:6px 9px;font-size:11.5px}
.nc-stations{display:grid;gap:8px}.nc-st{border:1px solid #e0dfd6;border-radius:9px;padding:9px 11px}.nc-st.sel{border-color:#1f6feb;box-shadow:inset 3px 0 #1f6feb}.nc-st-h{display:flex;gap:10px;align-items:center}.nc-st-h small{display:block;color:#7a817b;font-size:11px}.nc-glyph{font-size:18px;width:26px;text-align:center}.nc-st-s{font-size:12px;margin:5px 0;color:#33404c;font-weight:600}.nc-st-b{display:flex;gap:6px;flex-wrap:wrap}.nc-st-b button{padding:8px 11px;font-size:11.5px}.nc-conn{margin-top:7px;font-size:11.5px;background:#f4f3ee;border-radius:6px;padding:6px 9px;line-height:1.5}.nc-chip{font-size:9.5px;background:#eceae3;color:#7a7f78;border-radius:9px;padding:2px 7px;font-weight:700}
.nc-labgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:8px}.nc-labgrid label{font-size:10px;color:#6b736c;display:grid;gap:2px;font-weight:700}.nc-labgrid input{text-transform:uppercase;padding:6px}
.nc-status{min-height:22px;font-size:12px;color:#a04d23;padding:9px 2px 0}.nc-preview{display:flex;align-items:center;justify-content:center;background:#1b2128!important}.nc-preview svg{width:100%;height:100%}
@media(min-width:1061px) and (min-height:800px){.nc-stagecard{position:sticky;top:8px}}
@media(max-width:1060px){.nc-layout{grid-template-columns:1fr}.nc-stage{overflow-x:auto}}
@media(max-width:700px){.nc-stage{aspect-ratio:auto;height:auto;overflow-x:auto;overflow-y:hidden;background:#1b2128}.nc-stage svg{position:static;width:920px;height:auto;min-width:920px}.nc-labgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.nc-facts{columns:1}}
@media(max-height:820px){.nc-work .network-heading{margin-bottom:8px;align-items:center}.nc-work .network-heading h1{font-size:26px;margin:4px 0}.nc-work .network-heading p{display:none}.nc-work .network-heading .back{margin-bottom:4px}.nc-work .network-heading .primary,.nc-work .network-heading .secondary{padding:11px 15px;font-size:12px}}

/* PBQ 25: fiber racks and instruments */
.fb-layout{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,1fr);gap:24px}.fb-main{min-width:0}.fb-racks{display:flex;gap:12px;align-items:stretch}.fb-rack{background:#18252d;color:#e3f2f1;border:8px solid #34434b;border-radius:8px;padding:16px;flex:1;min-width:0;box-shadow:inset 0 0 0 2px #111}.fb-rack>b{display:block;font-size:.75rem;letter-spacing:.1em;margin-bottom:12px}.fb-port,.fb-unit,.fb-preview-panel{display:block;width:100%;text-align:left;background:#273b45;color:#eef7f7;border:1px solid #52646b;border-radius:4px;padding:10px;margin:6px 0}.fb-port{cursor:pointer}.fb-port.selected{outline:2px solid #5dd7c3}.fb-port small,.fb-unit small{display:block;color:#b3c6c6}.fb-led{display:inline-block;width:9px;height:9px;background:#d67455;border-radius:50%;margin-right:5px}.fb-led.up{background:#55e49e}.fb-fiber{color:#58aacc;font-size:3rem;line-height:1.2;align-self:center}.fb-controls{background:#fff;border:1px solid #d7e0df;border-radius:8px;padding:20px;margin-top:20px}.fb-buttons{display:flex;flex-wrap:wrap;gap:8px}.fb-buttons button{padding:9px 12px;border:1px solid #9badaa;border-radius:5px;background:#f4f8f7;cursor:pointer}.fb-optics{display:flex;gap:20px;flex-wrap:wrap;margin:16px 0}.fb-optics label{display:grid;gap:5px}.fb-optics select{padding:8px}.fb-result{margin-top:16px;padding:15px;background:#e9f3f1;border-radius:5px}.fb-result svg{display:block;background:#14252b;width:min(100%,500px)}.fb-preview{padding:20px}.fb-preview .fb-rack{height:100%}@media(max-width:760px){.fb-layout{grid-template-columns:1fr}.fb-racks{flex-wrap:wrap}.fb-rack{min-width:220px}.fb-fiber{display:none}}
.fb-scope{display:flex;align-items:center;gap:16px;margin-top:12px}.fb-face{position:relative;width:100px;height:100px;border:8px solid #4b5962;border-radius:50%;background:radial-gradient(circle,#202b31 0 7%,#d8e4e1 8% 20%,#879b9e 21% 42%,#d8e1df 43% 57%,#526669 58%);box-shadow:0 0 0 3px #273941}.fb-face.dirty i:before,.fb-face.dirty i:after{content:'';position:absolute;background:#333;border-radius:50%;width:8px;height:8px;top:35px;left:42px}.fb-face.dirty i:after{width:5px;height:5px;top:52px;left:30px}.fb-vfl{display:flex;align-items:center;gap:8px;background:#22343b;color:white;padding:14px;margin-top:12px;border-radius:5px}.fb-redline{color:#ff5656;text-shadow:0 0 7px #ff4e4e}

/* PBQ 25 equipment room: scoped to the fiber workbench. */
.fx-work{color:#26363b}.fx-heading h1{margin:3px 0!important}.fx-heading{align-items:center!important;margin-bottom:8px!important}.fx-ticket{display:flex;align-items:center;gap:15px;padding:9px 14px;background:#fff;border:1px solid #e2e7e1;border-radius:7px;font-size:12px}.fx-ticket>b{color:#cb7235;white-space:nowrap;letter-spacing:.08em}.fx-ticket .hint{margin:0}.fx-linkbar{display:flex;gap:6px;align-items:center;margin:10px 0}.fx-linkbar>button{background:#fff;border:1px solid #d1dcd9;border-radius:5px;padding:8px 11px;font-weight:700;color:#3e5054;cursor:pointer}.fx-linkbar>button[aria-pressed=true]{border-color:#c87038;box-shadow:inset 0 -2px #c87038}.fx-linkbar>span{margin-left:auto;font-size:11px;color:#5a6c6c}.fx-led{display:inline-block;border:0;width:10px;height:10px;border-radius:50%;background:#7a4c45;box-shadow:0 0 0 2px #182223;margin-right:6px;padding:0}.fx-led.on{background:#58e695;box-shadow:0 0 6px #5aef9c}.fx-workspace{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:12px;min-height:0}.fx-equipment,.fx-bench{border:1px solid #d7e0dc;border-radius:8px;background:#f7f9f6;padding:12px;min-width:0}.fx-equipment-title{display:flex;justify-content:space-between;align-items:center;color:#4c615e;font-size:11px;letter-spacing:.08em;margin-bottom:10px}.fx-equipment-title span{font-size:11px;letter-spacing:0}.fx-racks{display:flex;align-items:stretch;gap:8px}.fx-rack{flex:1;min-width:0;background:linear-gradient(90deg,#48535b 0,#242e36 4%,#151c22 8%,#151c22 92%,#242e36 96%,#48535b 100%);border:1px solid #5a6770;border-radius:6px;padding:10px 14px;box-shadow:0 8px 15px #24383129}.fx-rack-title,.fx-rack-foot{display:flex;justify-content:space-between;color:#d2dce0;font-size:10px;letter-spacing:.09em}.fx-rack-title span{color:#98a6ac}.fx-rack-foot{font-size:9px;color:#9eafb2;margin-top:8px}.fx-rails{position:relative;padding:14px 8px 12px;background:repeating-linear-gradient(0deg,transparent 0 14px,#58646d 15px 17px,transparent 18px 30px) left/5px 100% no-repeat,repeating-linear-gradient(0deg,transparent 0 14px,#58646d 15px 17px,transparent 18px 30px) right/5px 100% no-repeat}.fx-unit{border:1px solid #080d10;background:linear-gradient(#36434b,#202a30 46%,#171e23);box-shadow:inset 0 1px #687680,0 3px 6px #0009;border-radius:3px;position:relative}.fx-panel{height:92px;padding:9px}.fx-unit-label{display:flex;justify-content:space-between;color:#c8d4d7;font-size:9px;letter-spacing:.08em}.fx-unit-label small{font-size:8px;color:#93a4a8}.fx-panel-ports{display:flex;align-items:end;gap:5px;margin-top:7px}.fx-adapter{border:0;background:transparent;color:#f3f8f5;padding:0;cursor:pointer}.fx-adapter small{display:block;font-size:9px}.fx-adapter>span{display:flex;gap:2px;padding:4px;background:#10171a;border:2px solid #84979c;border-radius:3px}.fx-adapter.chosen>span{outline:2px solid #5fd4c4}.fx-adapter i{display:block;width:7px;height:12px;background:#67bcb8;border:1px solid #a2dedb}.fx-blank{color:#74858b;overflow:hidden}.fx-manager{height:44px;margin:8px 0;padding:6px 8px;color:#8da0a5;font-size:7px;letter-spacing:.12em}.fx-manager i{display:inline-block;height:19px;width:19%;margin:3px 2% 0 0;border:2px solid #596972;border-radius:5px}.fx-switch{height:108px;padding:8px}.fx-portbank{display:flex;align-items:center;gap:3px;margin-top:10px;flex-wrap:nowrap}.fx-portbank>i{width:9px;height:17px;background:#090e11;border:1px solid #53626c;border-radius:2px}.fx-portbank>i b{display:block;margin:9px 1px 0;height:4px;background:repeating-linear-gradient(90deg,#b9a765 0 1px,transparent 1px 2px)}.fx-optic{margin-left:auto;width:53px;height:27px;background:linear-gradient(#becbd0,#75858b);border:1px solid #c3d0d2;border-radius:2px;font-size:8px;cursor:pointer}.fx-optic.empty{background:#10191d;color:#829093}.fx-optic span,.fx-optic b{display:block}.fx-unit-foot{display:flex;align-items:center;gap:6px;color:#9bafb3;font-size:8px;margin-top:8px}.fx-unit-foot span{margin-left:auto}.fx-switch-control{background:#29373d;color:#d1e1db;border:1px solid #75888c;font-size:8px;padding:3px 4px;cursor:pointer}.fx-vent{height:52px;margin-top:8px;padding:8px;color:#8ea2a4;font-size:8px}.fx-vent div{height:21px;background:radial-gradient(#0d1418 1px,transparent 1.6px) 0 0/6px 6px}.fx-fiber-route{height:95px;position:relative;margin:-8px 0 -4px;z-index:1}.fx-fiber-route svg{width:100%;height:100%;overflow:visible;pointer-events:none}.fx-fiber-route path{fill:none;stroke:#55cbd0;stroke-width:5;filter:drop-shadow(1px 2px 1px #0008)}.fx-fiber-route.yellow path{stroke:#dfc847}.fx-fiber-route .fx-wire-shadow{opacity:.75;stroke-width:4}.fx-plug{position:absolute;top:0;left:13%;width:38px;height:27px;display:flex;gap:3px;justify-content:center;align-items:center;background:#4db4bb;border:2px solid #b9d8d9;border-radius:3px;cursor:pointer}.yellow .fx-plug{background:#c7b23b}.fx-plug.loose{top:22px;transform:rotate(-18deg);box-shadow:0 4px 8px #0008}.fx-plug i{width:9px;height:13px;background:#d5e4df;border:1px solid #344d52}.fx-route-target{position:absolute;top:36px;left:47%;border:1px solid #a1b8b6;background:#28383c;color:#d2e9e3;border-radius:50%;width:27px;height:27px;cursor:pointer}.fx-between{align-self:center;text-align:center;color:#687d7b;font-size:9px}.fx-trunk{font-size:32px;color:#59bfc3;line-height:1}.fx-trunk.yellow{color:#c4af3f}.fx-between button{display:block;border:1px solid #9eb0ab;background:#f0f7f4;color:#405a57;padding:6px;border-radius:4px;cursor:pointer}.fx-instruction{padding-top:9px;font-size:11px;color:#72827e}.fx-tool-tray{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:9px}.fx-tool-tray button{flex:1 1 60px;min-width:0;min-height:54px;border:1px solid #c8d5d1;border-radius:5px;background:#fff;color:#4d6360;cursor:pointer}.fx-tool-tray button.selected{border-color:#d07b45;background:#fff7ee;box-shadow:inset 0 -2px #d07b45}.fx-tool-tray span,.fx-tool-tray small{display:block}.fx-tool-tray span{font-size:22px;line-height:24px}.fx-tool-tray small{font-size:9px}.fx-instrument{border-radius:8px;background:linear-gradient(135deg,#394b53,#1d2a30);border:5px solid #2a393f;padding:13px;color:#d8e8e2;min-height:295px;box-shadow:0 5px 12px #314b4425}.fx-instrument-head{display:flex;justify-content:space-between;margin-bottom:10px}.fx-instrument-head small{font-size:8px;letter-spacing:.16em;color:#a0b6b0}.fx-instrument-head h3{margin:3px 0;font-size:12px;letter-spacing:.08em}.fx-power-light{color:#65eaaa}.fx-lcd{position:relative;min-height:135px;background:#b8d4b9;border:5px inset #728d7a;color:#18392a;padding:12px;font-family:monospace}.fx-lcd span,.fx-lcd small{display:block;font-size:10px}.fx-lcd span b{float:right}.fx-lcd strong{display:inline-block;font-size:38px;margin-top:12px}.fx-lcd em{font-size:14px}.fx-lcd small{margin-top:8px}.fx-device-keys{display:flex;gap:8px;margin-top:10px}.fx-device-keys button,.fx-events button{border:1px solid #92aaa6;border-radius:4px;background:#3e5359;color:#e9f4ed;padding:7px 12px;cursor:pointer}.fx-instrument p{font-size:11px;line-height:1.5;color:#c2d6ce}.fx-instrument-status{min-height:30px;margin-top:10px;font-size:11px;color:#e7e5bd}.fx-scope-screen,.fx-otdr-screen{background:#0d2025;border:4px inset #5c7374;min-height:160px;display:grid;place-items:center}.fx-scope-empty,.fx-empty{text-align:center;color:#9bb7ae;font-size:13px}.fx-endface{height:120px;width:120px;border-radius:50%;border:8px solid #5b7072;background:radial-gradient(circle,#24333a 0 7%,#d6e4de 8% 20%,#869b9a 21% 43%,#dce9e4 44% 57%,#526565 58%);position:relative}.fx-endface.dirty i,.fx-endface.dirty b{position:absolute;top:44px;left:47px;background:#272f2e;border-radius:50%;width:9px;height:9px}.fx-endface.dirty b{top:65px;left:35px;width:5px;height:5px}.fx-scope-screen>span{color:#aadcc6;font:10px monospace}.fx-otdr-screen svg{width:100%;max-height:190px}.fx-events{display:flex;align-items:center;gap:5px;margin-top:8px;font:11px monospace}.fx-events button[aria-pressed=true]{background:#78cba3;color:#10281d}.fx-vfl-tool{display:flex;align-items:center;justify-content:center;margin:30px 0}.fx-vfl-nose{height:20px;width:45px;background:linear-gradient(#c1cacc,#657379);border-radius:5px 0 0 5px}.fx-vfl-nose i{display:block;width:9px;height:9px;background:#ff4e4e;border-radius:50%;box-shadow:0 0 12px red;margin:5px}.fx-vfl-body{height:45px;width:170px;border-radius:5px 18px 18px 5px;background:linear-gradient(#b95e3f,#7d332b);padding:5px 12px}.fx-vfl-body b,.fx-vfl-body span,.fx-vfl-body small{display:block;font-size:9px}.fx-cleaner{margin:35px auto;height:48px;width:80%;background:linear-gradient(#e9eeea,#98a7a3);border-radius:25px;color:#35534c;display:flex;align-items:center;gap:12px;padding:8px;font-size:10px}.fx-cleaner span{background:#58b9be;color:white;padding:8px}.fx-optic-info b{font-size:11px}.fx-module-bin{display:grid;grid-template-columns:1fr 1fr;gap:7px}.fx-module{background:linear-gradient(#e4e8e5,#a8b6b5);border:2px solid #6c7d7c;border-radius:3px;color:#253b3a;text-align:left;padding:8px;cursor:pointer}.fx-module.selected{outline:2px solid #71e5be}.fx-module b,.fx-module small,.fx-module i{display:block}.fx-module small{font-size:10px}.fx-module i{text-align:right}.fx-work button:focus-visible{outline:3px solid #f8b85b;outline-offset:2px}@media(max-width:1050px){.fx-workspace{grid-template-columns:1fr}.fx-bench{display:grid;grid-template-columns:180px 1fr;gap:10px}.fx-tool-tray{align-content:start}}
.fx-rails .fx-fiber-route{position:absolute;left:8px;right:8px;top:16px;height:220px;margin:0;pointer-events:none}.fx-rails .fx-plug{top:23px;left:13%;pointer-events:auto}.fx-rails .fx-plug.loose{top:48px}.fx-rails .fx-route-target{top:105px;left:47%;pointer-events:auto}
/* Leave a dedicated walkthrough column while the fiber exercise is open. */
@media(min-width:1100px){body:has(.fx-work).walk-open .fx-work{width:calc(100% - var(--walk-w) - 24px);margin-left:0;margin-right:auto}body:has(.fx-work).walk-open .fx-workspace{grid-template-columns:1fr}body:has(.fx-work).walk-open .fx-bench{display:grid;grid-template-columns:180px minmax(0,1fr);gap:10px}body:has(.fx-work).walk-open .fx-tool-tray{align-content:start}}
body:has(.fx-work):has(.walk-step:nth-child(1):not(.done)) .fx-tool-tray [data-tool="meter"],
body:has(.fx-work):has(.walk-step:nth-child(2):not(.done)):not(:has(.walk-step:nth-child(-n+1):not(.done))) .fx-switch-control,
body:has(.fx-work):has(.walk-step:nth-child(3):not(.done)):not(:has(.walk-step:nth-child(-n+2):not(.done))) .fx-tool-tray [data-tool="scope"],
body:has(.fx-work):has(.walk-step:nth-child(4):not(.done)):not(:has(.walk-step:nth-child(-n+3):not(.done))) .fx-tool-tray [data-tool="clean"],
body:has(.fx-work):has(.walk-step:nth-child(5):not(.done)):not(:has(.walk-step:nth-child(-n+4):not(.done))) .fx-tool-tray [data-tool="vfl"],
body:has(.fx-work):has(.walk-step:nth-child(6):not(.done)):not(:has(.walk-step:nth-child(-n+5):not(.done))) [data-fx="pair"],
body:has(.fx-work):has(.walk-step:nth-child(7):not(.done)):not(:has(.walk-step:nth-child(-n+6):not(.done))) [data-fx="optic"][data-side="remote"],
body:has(.fx-work):has(.walk-step:nth-child(8):not(.done)):not(:has(.walk-step:nth-child(-n+7):not(.done))) [data-fx="optic"][data-side="remote"],
body:has(.fx-work):has(.walk-step:nth-child(9):not(.done)):not(:has(.walk-step:nth-child(-n+8):not(.done))) .fx-tool-tray [data-tool="otdr"],
body:has(.fx-work):has(.walk-step:nth-child(10):not(.done)):not(:has(.walk-step:nth-child(-n+9):not(.done))) [data-fx="route"],
body:has(.fx-work):has(.walk-step:nth-child(11):not(.done)):not(:has(.walk-step:nth-child(-n+10):not(.done))) [data-fx="patch"],
body:has(.fx-work):has(.walk-step:nth-child(12):not(.done)):not(:has(.walk-step:nth-child(-n+11):not(.done))) .fx-tool-tray [data-tool="verify"]{outline:3px solid #f5ac4e;outline-offset:2px}
.fx-monitor{padding:2px 3px;border:1px solid #778a8e;background:#10191d;color:#bcd3c6;font-size:8px;border-radius:2px;cursor:pointer}.fx-device-keys button[aria-pressed=true]{background:#87b69d;color:#132b20}
.fx-between button svg{display:block;width:30px;height:25px}
.fx-preview{padding:20px;background:#e5ebe6}.fx-preview-rack{position:relative;height:150px;background:#1a2429;border:9px solid #526169;border-radius:5px;padding:12px 14px}.fx-preview-panel,.fx-preview-switch{height:46px;padding:6px;background:linear-gradient(#405059,#202c32);border:1px solid #111c20;color:#d1e2dc;font:8px sans-serif;letter-spacing:.1em}.fx-preview-switch{margin-top:12px}.fx-preview-panel span,.fx-preview-switch span{display:block;color:#68c5c4;font-size:14px}.fx-preview-rack svg{position:absolute;left:28px;top:44px;width:75%;height:68px;pointer-events:none}
.fx-plug.held{outline:3px solid #f8b85b;outline-offset:2px}.fx-adapter.ready>span{outline:3px solid #7ee9b4;outline-offset:2px}
.fx-switch-control,.fx-monitor{min-height:24px;font-size:9px}
.fx-rails .fx-plug.held{pointer-events:none}
@media(max-width:760px){.fx-racks{overflow-x:auto}.fx-rack{min-width:260px}}
/* PBQ 26 thermal receipt printer (.th-*) */
.th-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .th-work{height:calc(100vh - 58px);overflow:auto}
.th-grid{display:grid;grid-template-columns:minmax(200px,225px) minmax(0,1fr);gap:12px}.th-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.th-assignment h2{font-size:19px;margin:9px 0}.th-assignment p{font-size:12px;line-height:1.42}
.th-bench{min-width:0;display:flex;flex-direction:column;gap:10px}.th-stage{display:grid;grid-template-columns:minmax(0,1fr) 262px;gap:12px;align-items:start}
.th-printwrap{background:linear-gradient(#f0f2ec 84%,#dde0d3 84%);border:1px solid #e2e4d9;border-radius:10px;padding:6px 10px 10px;display:flex;flex-direction:column;align-items:center;min-width:0}
.th-svg{width:100%;height:auto;max-height:clamp(300px,calc(100vh - 300px),580px);filter:drop-shadow(0 8px 8px #5a665c22)}.th-svg [role=button]{cursor:pointer;outline:none}.th-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}
.th-hot:hover,.th-hot:focus-visible{filter:drop-shadow(0 0 5px #d97735aa)}.th-btn:hover circle,.th-btn:hover rect{stroke:#d97735}.th-svg [data-th-lid]:hover{filter:drop-shadow(0 0 4px #d9773588)}
.th-lid{transition:none}.th-lid.go.open{animation:thOpen .5s ease-out}.th-lid.go:not(.open){animation:thClose .45s ease-in}@keyframes thOpen{from{transform:rotate(0)}}@keyframes thClose{from{transform:rotate(-64deg)}}
.th-out.fresh{animation:thOut .7s ease-out}@keyframes thOut{from{transform:translate(506px,196px) scaleY(.03)}to{transform:translate(506px,196px) scaleY(1)}}
.th-printwrap.tool .th-headg{filter:drop-shadow(0 0 6px #d97735)}
.th-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;width:100%;padding-top:6px}.th-test{padding:9px 16px;font-size:12px}.th-status{font-size:11px;color:#5f6b63;font-weight:700}.th-sel{font-size:11px;color:#b56938;flex-basis:100%}
.th-panel{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px;min-width:0}.th-ptitle{font:normal 15px Georgia,serif;color:#33403a}.th-pbody{background:#edf0ea;border-radius:7px;display:grid;place-items:center;padding:10px;min-height:150px}
.th-bigrcpt svg{width:150px;max-height:calc(100vh - 480px);min-height:130px;height:auto;filter:drop-shadow(0 3px 5px #0002)}.th-head-svg{width:100%;height:auto}.th-rollnote svg{width:150px;height:auto}
.th-pcap{font-size:11px;color:#68746c;min-height:30px;line-height:1.4}.th-chips{display:flex;flex-wrap:wrap;gap:5px}.th-chip{border:1px solid #d8dfd5;background:#fff;border-radius:5px;padding:5px 9px;font-size:10px;font-weight:700;color:#617065}.th-chip.on{border-color:#d18d5d;color:#b56938;background:#fdf4ec}
.th-tray{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:9px 12px 10px}.th-tlabel{font-size:9px;letter-spacing:.12em;color:#8a948c;margin-bottom:7px}.th-tools{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:7px}
.th-tool{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;column-gap:7px;align-items:center;text-align:left;background:#fff;border:1px solid #dfe5dc;border-radius:7px;padding:6px 8px;min-width:0}.th-tool:hover{border-color:#d97735}.th-tool.on{border-color:#d97735;background:#fdf4ec;box-shadow:inset 0 0 0 1px #d97735}
.th-tool .th-tico{grid-row:1/3}.th-tool b{font-size:10.5px;color:#43524a;line-height:1.2}.th-tool small{font-size:9.5px;color:#8f988f;line-height:1.2}
.th-tico{display:grid;place-items:center;width:44px;height:34px}.th-tico i{display:block;position:relative}.th-tool .th-tico svg{width:46px;height:35px}
.th-t-ipa{width:34px;height:5px;background:#e8e1d0;border:1px solid #b9b19c;border-radius:3px}.th-t-ipa::after{content:"";position:absolute;right:-8px;top:-4px;width:11px;height:11px;border-radius:50%;background:#fff;border:1px solid #bdbdb3}
.th-t-towel{width:24px;height:22px;background:#faf9f4;border:1px solid #cfcfc4;border-radius:2px;box-shadow:2px 2px 0 #e3e1d6}
.th-t-spray{width:16px;height:24px;background:linear-gradient(90deg,#7bbdea,#3b86c3);border-radius:4px 4px 3px 3px}.th-t-spray::before{content:"";position:absolute;left:3px;top:-7px;width:10px;height:7px;background:#42505a;border-radius:2px}
.th-t-scraper{width:26px;height:8px;background:linear-gradient(#d4dadd,#8b959b);transform:skewX(-20deg);border-right:11px solid #5a4630;border-radius:1px}
.th-t-strap{width:28px;height:15px;border:4px solid #2f6f9f;border-radius:50%}
.th-hbtns{display:flex;flex-wrap:wrap;gap:6px}.th-hbtns .secondary{padding:6px 9px;font-size:11px}.th-hnote{font-size:10.5px;color:#7b8780}.th-out{filter:drop-shadow(0 2px 3px #0003)}
.th-bench .feedback{min-height:36px}
@media (max-width:1000px){.th-grid,.th-stage{grid-template-columns:1fr}.th-assignment{max-height:none}}
/* PBQ 27 projector troubleshooting (.pj-*) */
.pj-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .pj-work{height:calc(100vh - 58px);overflow:auto}
.pj-grid{display:grid;grid-template-columns:minmax(200px,225px) minmax(0,1fr);gap:12px}.pj-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.pj-assignment h2{font-size:19px;margin:9px 0}.pj-assignment p{font-size:12px;line-height:1.42}
.pj-bench{min-width:0;display:flex;flex-direction:column;gap:10px}.pj-stage{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:8px 10px 10px;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}
.pj-svgbox{width:100%;display:flex;justify-content:center}.pj-svg{width:100%;height:auto;max-height:clamp(300px,calc(100vh - 330px),640px);border-radius:8px;overflow:hidden}.pj-svg [role=button]{cursor:pointer;outline:none}.pj-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}.pj-hot:hover,.pj-hot:focus-visible{filter:drop-shadow(0 0 5px #d97735cc)}
.pj-controls{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:flex-end;width:100%;padding:0 4px}.pj-slide{display:flex;flex-direction:column;gap:3px;min-width:220px;flex:1 1 220px;max-width:360px}.pj-slide>span{font-size:11px;font-weight:700;color:#4c5b50}.pj-slide input{width:100%;accent-color:#d97735;height:22px}.pj-slide i{display:flex;justify-content:space-between;font-style:normal;font-size:9.5px;color:#8f988f}.pj-slide em{font-style:normal}
.pj-check{padding:10px 18px;font-size:12px;margin-left:auto}.pj-bench .feedback{min-height:36px}
@media (max-width:1000px){.pj-grid{grid-template-columns:1fr}.pj-assignment{max-height:none}}
/* PBQ 28 laptop docking station (.dk-*) */
.dk-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .dk-work{height:calc(100vh - 58px);overflow:auto}
.dk-grid{display:grid;grid-template-columns:minmax(200px,225px) minmax(0,1fr);gap:12px}.dk-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.dk-assignment h2{font-size:19px;margin:9px 0}.dk-assignment p{font-size:12px;line-height:1.42}
.dk-bench{min-width:0;display:flex;flex-direction:column;gap:10px}.dk-stage{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:12px;align-items:start}
.dk-svgbox{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:6px 8px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.dk-svg{width:100%;height:auto;max-height:clamp(290px,calc(100vh - 310px),620px);border-radius:8px}.dk-svg [role=button]{cursor:pointer;outline:none}.dk-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}
.dk-hot:hover,.dk-hot:focus-visible{filter:drop-shadow(0 0 5px #d97735cc)}.dk-sel{filter:drop-shadow(0 0 6px #d97735)}.dk-free rect:not([fill-opacity="0"]),.dk-free path,.dk-free circle{stroke:#ffb36b}.dk-free{animation:dkPulse 1.1s ease-in-out infinite alternate}@keyframes dkPulse{to{filter:drop-shadow(0 0 5px #ffb36b)}}
.dk-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;width:100%}.dk-bar .primary{padding:9px 16px;font-size:12px}.dk-sel-note{font-size:11px;color:#68746c}
.dk-panel{min-width:0}.dk-info{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:8px}.dk-ptitle{font:normal 16px Georgia,serif;color:#33403a}.dk-ptext{font-size:11.5px;color:#56635b;line-height:1.5}
.dk-win{background:#f3f3f3;border:1px solid #b9c2cb;border-radius:8px;box-shadow:0 6px 18px #0002;overflow:hidden;font-family:"Segoe UI",Arial,sans-serif}.dk-wtitle{display:flex;justify-content:space-between;align-items:center;background:#e9edf2;padding:7px 10px;font-size:11px;color:#2c3a47}.dk-x{border:0;background:none;font-size:12px;color:#4a5560;padding:2px 6px}
.dk-wbody{padding:10px;display:flex;flex-direction:column;gap:7px}.dk-tiles{width:100%;height:auto}.dk-wsub{margin:0;font-size:11px;color:#4a5560}.dk-wlabel{font-size:12px;font-weight:700;color:#202a33;margin-top:2px}
.dk-opt{text-align:left;border:1px solid #c6ced6;background:#fff;border-radius:5px;padding:8px 10px;font-size:12px;color:#26323d}.dk-opt.on{border-color:#2b6cb0;box-shadow:inset 0 0 0 1px #2b6cb0;background:#eef5fc}.dk-wnow{font-size:11px;color:#4a5560}.dk-apply{align-self:flex-start;padding:7px 18px;font-size:12px}
.dk-bench .feedback{min-height:36px}
@media (max-width:1000px){.dk-grid,.dk-stage{grid-template-columns:1fr}.dk-assignment{max-height:none}}
/* PBQ 29 document scanner (.sc-*) */
.sc-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .sc-work{height:calc(100vh - 58px);overflow:auto}
.sc-grid{display:grid;grid-template-columns:minmax(200px,215px) minmax(0,1fr);gap:12px}.sc-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.sc-assignment h2{font-size:19px;margin:9px 0}.sc-assignment p{font-size:12px;line-height:1.42}
.sc-bench{min-width:0;display:flex;flex-direction:column;gap:10px}.sc-stage{display:grid;grid-template-columns:minmax(0,1fr) 262px;gap:12px;align-items:start}
.sc-svgbox{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:6px 8px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.sc-svg{width:100%;height:auto;max-height:clamp(290px,calc(100vh - 275px),640px);border-radius:8px}.sc-svg [role=button]{cursor:pointer;outline:none}.sc-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}.sc-hot:hover,.sc-hot:focus-visible{filter:drop-shadow(0 0 5px #d97735cc)}.sc-sel{filter:drop-shadow(0 0 5px #d97735)}
.sc-feed{animation:scFeed .85s ease-in-out both}@keyframes scFeed{from{transform:translate(-270px,0);opacity:.4}to{transform:none;opacity:1}}.sc-sweep{animation:scSweep 2.4s linear both}@keyframes scSweep{from{opacity:0}20%{opacity:.9}to{opacity:0}}
.sc-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;width:100%;min-height:34px}.sc-note{font-size:11px;color:#56635b}.sc-acts{display:flex;flex-wrap:wrap;gap:6px}.sc-acts .secondary{padding:5px 9px;font-size:11px}
	.sc-ts{width:276px;height:206px;box-sizing:border-box;background:#eef3f8;border-radius:6px;padding:7px 9px;font:13px/1.25 "Segoe UI",Arial,sans-serif;color:#1f2d3a;display:flex;flex-direction:column;gap:5px}.sc-tsh{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid #c5d0db;padding-bottom:3px}.sc-tsh b{font-size:15px}.sc-tsh span{font-size:10px;color:#6b7a88}
.sc-row{display:grid;grid-template-columns:54px 1fr 1fr;gap:4px;align-items:center}.sc-row>span{font-size:12px;color:#43515f}.sc-seg{border:1px solid #b6c3d0;background:#fff;border-radius:4px;padding:5px 2px;font-size:11.5px;color:#26323d;line-height:1.1}.sc-seg.on{background:#2b6cb0;border-color:#1f5a9a;color:#fff;font-weight:700}
.sc-start{margin-top:1px;border:0;background:#2f9e5b;color:#fff;border-radius:5px;padding:7px;font-size:15px;font-weight:700}.sc-start[disabled]{background:#9fb5a9}.sc-tsmsg{font-size:11.5px;color:#3b4a58;min-height:15px;line-height:1.2}.sc-busy{color:#b56938;font-weight:700}
.sc-out{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:7px;min-width:0}.sc-otitle{font:normal 15px Georgia,serif;color:#33403a}.sc-chips{display:flex;gap:5px}.sc-chip{border:1px solid #d8dfd5;background:#fff;border-radius:5px;padding:5px 9px;font-size:10.5px;font-weight:700;color:#617065}.sc-chip.on{border-color:#d18d5d;color:#b56938;background:#fdf4ec}
.sc-files{display:flex;flex-direction:column;gap:4px;max-height:110px;overflow:auto}.sc-file{display:flex;justify-content:space-between;gap:8px;text-align:left;border:1px solid #e1e6dd;background:#fff;border-radius:5px;padding:5px 8px}.sc-file.on{border-color:#d18d5d;background:#fdf8f2}.sc-file b{font-size:11px;color:#43524a}.sc-file small{font-size:10px;color:#8f988f}.sc-empty{font-size:11px;color:#8f988f;padding:6px 2px}
.sc-prev{border-top:1px solid #ecebe4;padding-top:7px}.sc-pinfo{font-size:10.5px;color:#56635b;margin-bottom:6px}.sc-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.sc-thumbs figure{margin:0;background:#edf0ea;border-radius:4px;padding:3px}.sc-page-svg{width:100%;height:auto;display:block}
.sc-bench .feedback{min-height:36px}
@media (max-width:1000px){.sc-grid,.sc-stage{grid-template-columns:1fr}.sc-assignment{max-height:none}}
/* PBQ 30 computer overheating (.cp-*) */
.cp-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .cp-work{height:calc(100vh - 58px);overflow:auto}
.cp-grid{display:grid;grid-template-columns:minmax(200px,225px) minmax(0,1fr);gap:12px}.cp-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.cp-assignment h2{font-size:19px;margin:9px 0}.cp-assignment p{font-size:12px;line-height:1.42}
.cp-bench{min-width:0;display:flex;flex-direction:column;gap:10px}.cp-svgbox{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:6px 8px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.cp-svg{width:100%;height:auto;max-height:clamp(290px,calc(100vh - 285px),640px);border-radius:8px}.cp-svg [role=button]{cursor:pointer;outline:none}.cp-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}.cp-hot:hover,.cp-hot:focus-visible{filter:drop-shadow(0 0 5px #d97735cc)}.cp-sel{filter:drop-shadow(0 0 6px #d97735)}.cp-free{animation:cpPulse 1.1s ease-in-out infinite alternate}@keyframes cpPulse{to{filter:drop-shadow(0 0 5px #ffb36b)}}
.cp-spin{animation:cpRot .6s linear infinite}@keyframes cpRot{to{transform:rotate(360deg)}}
.cp-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;width:100%;min-height:34px}.cp-note{font-size:11px;color:#56635b}.cp-acts{display:flex;flex-wrap:wrap;gap:6px}.cp-acts .secondary{padding:5px 10px;font-size:11px}
.cp-bench .feedback{min-height:36px}
@media (max-width:1000px){.cp-grid{grid-template-columns:1fr}.cp-assignment{max-height:none}}
/* PBQ 31 desktop cable and port identification (.pt-*) */
.pt-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .pt-work{height:calc(100vh - 58px);overflow:auto}
.pt-grid{display:grid;grid-template-columns:minmax(200px,225px) minmax(0,1fr);gap:12px}.pt-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.pt-assignment h2{font-size:19px;margin:9px 0}.pt-assignment p{font-size:12px;line-height:1.42}
.pt-bench{min-width:0;display:flex;flex-direction:column;gap:10px}.pt-svgbox{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:6px 8px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.pt-svg{width:100%;height:auto;max-height:clamp(300px,calc(100vh - 285px),680px);border-radius:8px}.pt-svg [role=button]{cursor:pointer;outline:none}.pt-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}.pt-hot:hover,.pt-hot:focus-visible{filter:drop-shadow(0 0 5px #d97735cc)}.pt-sel{filter:drop-shadow(0 0 6px #d97735)}.pt-free{animation:ptPulse 1.1s ease-in-out infinite alternate}@keyframes ptPulse{to{filter:drop-shadow(0 0 5px #ffb36b)}}
.pt-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;width:100%;min-height:34px}.pt-note{font-size:11px;color:#56635b;line-height:1.4}.pt-acts .secondary{padding:5px 10px;font-size:11px}
.pt-bench .feedback{min-height:36px}
@media (max-width:1000px){.pt-grid{grid-template-columns:1fr}.pt-assignment{max-height:none}}
/* PBQ 32 laptop battery and adapter service (.cg-*) */
.cg-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .cg-work{height:calc(100vh - 58px);overflow:auto}
.cg-grid{display:grid;grid-template-columns:minmax(200px,225px) minmax(0,1fr);gap:12px}.cg-assignment{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.cg-assignment h2{font-size:19px;margin:9px 0}.cg-assignment p{font-size:12px;line-height:1.42}
.cg-bench{min-width:0;display:flex;flex-direction:column;gap:10px}.cg-svgbox{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:6px 8px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.cg-svg{width:100%;height:auto;max-height:clamp(300px,calc(100vh - 285px),680px);border-radius:8px}.cg-svg [role=button]{cursor:pointer;outline:none}.cg-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}.cg-hot:hover,.cg-hot:focus-visible{filter:drop-shadow(0 0 5px #d97735cc)}.cg-sel{filter:drop-shadow(0 0 6px #d97735)}.cg-free{animation:cgPulse 1.1s ease-in-out infinite alternate}@keyframes cgPulse{to{filter:drop-shadow(0 0 5px #ffb36b)}}
.cg-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;width:100%;min-height:34px}.cg-note{font-size:11px;color:#56635b;line-height:1.4}.cg-acts .secondary{padding:5px 10px;font-size:11px}
.cg-bench .feedback{min-height:36px}
@media (max-width:1000px){.cg-grid{grid-template-columns:1fr}.cg-assignment{max-height:none}}
/* Hub card illustrations (tools/hub-art.js): the scene fills the card preview area */
.hub-preview.hx-preview{padding:0;background:#e1dfd4}.hx-preview svg{display:block;width:100%;height:100%}
/* PBQ 33 ports, protocols and SOHO firewall (.fw-*) */
.fw-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .fw-work{height:calc(100vh - 58px);overflow:auto}
.fw-layout{display:grid;grid-template-columns:minmax(190px,206px) minmax(440px,1fr) minmax(500px,1.05fr);gap:12px;align-items:start}
.fw-ticket{padding:14px;max-height:calc(100vh - 160px);overflow:auto}.fw-ticket h2{font-size:18px;margin:8px 0}.fw-ticket p,.fw-ticket li{font-size:11.5px;line-height:1.42}.fw-ticket ol{margin:8px 0 8px 16px;padding:0}.fw-ticket li{margin-bottom:5px}.fw-small{color:#6a756e;font-size:10.5px!important}
.fw-left,.fw-right{min-width:0;display:flex;flex-direction:column;gap:8px}
.fw-svgbox{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:5px 6px 6px;display:flex;flex-direction:column;gap:4px;min-width:0}
.fw-svg{width:100%;height:auto;max-height:clamp(262px,calc(100vh - 560px),360px);border-radius:8px}.fw-svg [role=button]{cursor:pointer;outline:none}.fw-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}.fw-hot:hover,.fw-hot:focus-visible{filter:drop-shadow(0 0 4px #d97735cc)}.fw-sel{filter:drop-shadow(0 0 5px #d97735)}
.fw-flow{animation:fwFlow .9s linear infinite}@keyframes fwFlow{to{stroke-dashoffset:-22}}@media (prefers-reduced-motion:reduce){.fw-flow{animation:none}}
.fw-bar{min-height:30px;display:flex;align-items:center}.fw-note{font-size:11px;color:#56635b;line-height:1.38}
.fw-tests{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:8px 8px 8px;overflow-x:auto}.fw-th{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:5px}.fw-th b{font-size:13px;display:block}.fw-th small{font-size:10.5px;color:#6a756e}.fw-runall{padding:6px 12px;font-size:11.5px}
.fw-tt{width:100%;border-collapse:collapse;font-size:10.5px}.fw-tt td{white-space:nowrap}.fw-tt th{text-align:left;font-size:10px;color:#6a756e;font-weight:600;padding:2px 4px;border-bottom:1px solid #e8e4dc}.fw-tt td{padding:1px 3px;border-bottom:1px solid #f0ede6;vertical-align:middle;line-height:1.2}.fw-tt tr.fw-cur td{background:#fff8ee}.fw-tt small{color:#8a948d}.fw-pt{white-space:nowrap;font-variant-numeric:tabular-nums}.fw-oldnote{display:block;font-size:9px;color:#8a948d}
.fw-run{padding:3px 8px;font-size:10.5px}
.fw-pill{display:inline-block;padding:1px 7px;border-radius:9px;font-size:10px;font-weight:700;white-space:nowrap}.fw-none{background:#eef0ee;color:#76817a}.fw-ok{background:#dcf3e4;color:#17713f}.fw-bad{background:#fbe0de;color:#a52a25}.fw-warn{background:#fcefcf;color:#865a07}.fw-old{opacity:.55}
.fw-custom{margin-top:6px;font-size:11px}.fw-custom summary{cursor:pointer;color:#56635b;font-weight:600}.fw-cform{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:flex-end;margin:6px 0 2px}.fw-cform label{display:flex;flex-direction:column;font-size:10px;color:#6a756e;gap:2px}.fw-cform select,.fw-cform input{font-size:11px;padding:3px 4px}.fw-cres{margin:5px 0 0;font-size:11px;line-height:1.35}
.fw-admin{background:#fff;border:1px solid #cfd6d2;border-radius:10px;overflow:hidden;box-shadow:0 2px 8px #0f1a1415}
.fw-chrome{display:flex;align-items:center;gap:10px;background:#e6ebe8;padding:6px 10px;border-bottom:1px solid #cfd6d2}.fw-dots{display:flex;gap:4px}.fw-dots i{width:8px;height:8px;border-radius:50%;background:#b3bcb7;display:block}.fw-url{flex:1;background:#fff;border:1px solid #cfd6d2;border-radius:10px;padding:2px 10px;font-size:10.5px;color:#56635b}
.fw-ahead{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#1f2a32;color:#e8eef1}.fw-ahead>div{display:flex;flex-direction:column;line-height:1.2}.fw-ahead b{font-size:13px}.fw-ahead span{font-size:10px;color:#9fb0ba}.fw-ahead .primary{margin-left:auto;padding:6px 12px;font-size:11.5px}.fw-pend{font-size:10.5px!important;color:#9fb0ba;flex:1;text-align:right}.fw-pend.on{color:#ffc766!important;font-weight:700}
.fw-tabs{display:flex;gap:0;background:#f3f5f3;border-bottom:1px solid #cfd6d2}.fw-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:8px 16px;font-size:12px;cursor:pointer;color:#47544d;font-family:inherit}.fw-tabs button.on{background:#fff;border-bottom-color:#2b6cb0;color:#1c2a33;font-weight:700}.fw-tabs button:focus-visible{outline:2px solid #d97735;outline-offset:-2px}
.fw-page{padding:8px 10px 10px}.fw-pagehead{display:flex;flex-direction:column;gap:1px;margin-bottom:5px}.fw-pagehead b{font-size:13px}.fw-pagehead span{font-size:10.5px;color:#6a756e}.fw-legend{font-size:10px;color:#6a756e;margin-bottom:4px}.fw-foot{font-size:10.5px;color:#6a756e;margin:6px 0 0}
.fw-rt{width:100%;border-collapse:collapse;font-size:11px;table-layout:fixed}.fw-rt th:nth-child(1){width:4%}.fw-rt th:nth-child(2){width:6%}.fw-rt th:nth-child(3){width:12%}.fw-rt th:nth-child(4){width:19%}.fw-rt th:nth-child(5){width:17%}.fw-rt th:nth-child(6){width:15%}.fw-rt th:nth-child(7){width:10%}.fw-rt th:nth-child(8){width:13%}.fw-rt th:nth-child(9){width:4%}.fw-rt select,.fw-rt input[type=text]{width:100%;min-width:0}.fw-rt th{text-align:left;font-size:10px;color:#6a756e;font-weight:600;padding:2px 3px;border-bottom:1px solid #cfd6d2}.fw-rt td{padding:2px 3px;border-bottom:1px solid #eef0ee}.fw-rt select,.fw-rt input[type=text]{font-size:10.5px;padding:2px 1px;max-width:100%;border:1px solid #c3cbc6;border-radius:4px;background:#fff;color:#1c2a33}.fw-rt input[type=checkbox]{width:15px;height:15px}
.fw-rt tr.fw-off td{opacity:.55}.fw-rt tr.fw-inc td:first-child{box-shadow:inset 3px 0 #e0a13a}.fw-rt tr.fw-hit td{background:#fff2d6}.fw-empty td{color:#8a948d;font-size:10.5px;padding:3px}.fw-empty span{margin-right:10px}.fw-empty .secondary{padding:2px 8px;font-size:10.5px}
.fw-x{background:none;border:0;color:#a52a25;font-size:13px;cursor:pointer;padding:2px 5px;border-radius:4px}.fw-x:hover{background:#fbe0de}
.fw-fwd{display:flex;flex-direction:column;gap:8px}.fw-frow{display:flex;justify-content:space-between;align-items:center;font-size:12px}.fw-chk{display:flex;align-items:center;gap:6px;font-size:12px}.fw-grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}.fw-grid2 label{display:flex;flex-direction:column;font-size:10.5px;color:#56635b;gap:3px}.fw-grid2 select,.fw-grid2 input{font-size:12px;padding:4px 6px;border:1px solid #c3cbc6;border-radius:4px}.fw-wide{grid-column:1/-1}
.fw-sum{font-size:11px;margin:0}.fw-sum code{background:#eef3f8;padding:2px 6px;border-radius:4px;font-size:11px}.fw-warnnote{font-size:10.5px;color:#7a5d12;background:#fff7e0;border:1px solid #efd9a1;border-radius:6px;padding:6px 8px;margin:0;line-height:1.38}
.fw-stat{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;margin:0}.fw-stat div{border:1px solid #e3e8e5;border-radius:6px;padding:6px 8px}.fw-stat dt{font-size:10px;color:#6a756e}.fw-stat dd{margin:1px 0 0;font-size:12px;font-weight:600}
.fw-left .fw-feedback{min-height:40px;padding:7px 10px;margin:0;font-size:12px;line-height:1.35}.fw-work .soho-heading p{display:none}.fw-ft{white-space:nowrap}
@media (max-width:1180px){.fw-layout{grid-template-columns:minmax(190px,210px) minmax(0,1fr)}.fw-right{grid-column:1/-1}}
@media (max-width:760px){.fw-layout{grid-template-columns:1fr}.fw-ticket{max-height:none}}
/* the Guided Walkthrough narrows the workspace instead of covering the router page; the service request becomes a band across the top */
@media(min-width:1100px){body:has(.fw-work).walk-open .fw-work{width:calc(100% - var(--walk-w) - 24px);margin-left:0;margin-right:auto;padding-left:20px;padding-right:12px}
 body:has(.fw-work).walk-open .fw-layout{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);grid-template-areas:"t t" "l r"}
 body:has(.fw-work).walk-open .fw-ticket{grid-area:t;max-height:none;padding:10px 14px}body:has(.fw-work).walk-open .fw-left{grid-area:l}body:has(.fw-work).walk-open .fw-right{grid-area:r}
 body:has(.fw-work).walk-open .fw-ticket ol{columns:2;column-gap:22px;margin-bottom:2px}body:has(.fw-work).walk-open .fw-ticket li{break-inside:avoid}body:has(.fw-work).walk-open .fw-ticket h2,body:has(.fw-work).walk-open .fw-ticket>p:not(.fw-small){display:none}
 body:has(.fw-work).walk-open .fw-ticket .hint{margin-top:6px}}
/* PBQ 34 laptop memory and storage upgrade (.up-*) */
.up-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .up-work{height:calc(100vh - 58px);overflow:auto}.up-work .soho-heading p{display:none}
.up-grid{display:grid;grid-template-columns:minmax(190px,214px) minmax(0,1fr);gap:12px;align-items:start}.up-order{padding:14px;max-height:calc(100vh - 150px);overflow:auto}.up-order h2{font-size:18px;margin:8px 0}.up-order p,.up-order li{font-size:11.5px;line-height:1.42}.up-order ul{margin:6px 0 8px 16px;padding:0}.up-order li{margin-bottom:4px}
.up-spec{background:#eef3f8;border:1px solid #d5e0eb;border-radius:8px;padding:8px 10px;font-size:11px;display:flex;flex-direction:column;gap:3px;margin-top:6px}.up-spec b{font-size:11.5px}
.up-bench{min-width:0;display:flex;flex-direction:column;gap:8px}.up-svgbox{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:6px 8px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.up-svg{width:100%;height:auto;max-height:clamp(320px,calc(100vh - 295px),720px);border-radius:8px}.up-svg [role=button]{cursor:pointer;outline:none}.up-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}.up-hot:hover,.up-hot:focus-visible{filter:drop-shadow(0 0 5px #d97735cc)}.up-free{animation:upPulse 1.1s ease-in-out infinite alternate}@keyframes upPulse{to{filter:drop-shadow(0 0 5px #ffb36b)}}@media (prefers-reduced-motion:reduce){.up-free{animation:none}}
.up-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;width:100%;min-height:34px}.up-note{font-size:11.5px;color:#56635b;line-height:1.4}.up-acts{display:flex;gap:6px}.up-acts button{padding:5px 10px;font-size:11.5px}
.up-bench .feedback{min-height:36px}
/* the Guided Walkthrough narrows the workspace instead of covering the service panel */
@media(min-width:1100px){body:has(.up-work).walk-open .up-work{width:calc(100% - var(--walk-w) - 24px);margin-left:0;margin-right:auto;padding-left:20px;padding-right:12px}body:has(.up-work).walk-open .up-order{display:none}body:has(.up-work).walk-open .up-grid{grid-template-columns:1fr}}
@media (max-width:1000px){.up-grid{grid-template-columns:1fr}.up-order{max-height:none}}
/* PBQ 35 multi-symptom troubleshooting (.bn-*) */
.bn-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .bn-work{height:calc(100vh - 58px);overflow:auto}.bn-work .soho-heading p{display:none}
.bn-grid{display:grid;grid-template-columns:minmax(190px,214px) minmax(0,1fr);gap:12px;align-items:start}.bn-ticket{padding:14px;max-height:calc(100vh - 150px);overflow:auto}.bn-ticket h2{font-size:18px;margin:8px 0}.bn-ticket p,.bn-ticket li{font-size:11.5px;line-height:1.42}.bn-sym{background:#fff7e8;border:1px solid #efd9a1;border-radius:8px;padding:8px 10px}.bn-small{color:#6a756e;font-size:10.5px!important}
.bn-spec{background:#eef3f8;border:1px solid #d5e0eb;border-radius:8px;padding:8px 10px;font-size:11px;display:flex;flex-direction:column;gap:3px;margin:6px 0}.bn-spec b{font-size:11.5px}
.bn-bench{min-width:0;display:flex;flex-direction:column;gap:8px}.bn-svgbox{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:6px 8px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.bn-svg{width:100%;height:auto;max-height:clamp(330px,calc(100vh - 290px),720px);border-radius:8px}.bn-svg [role=button]{cursor:pointer;outline:none}.bn-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}.bn-hot:hover,.bn-hot:focus-visible{filter:drop-shadow(0 0 5px #d97735cc)}.bn-free{animation:bnPulse 1.1s ease-in-out infinite alternate}@keyframes bnPulse{to{filter:drop-shadow(0 0 5px #ffb36b)}}.bn-tp circle{filter:drop-shadow(0 0 3px #f6d34a)}@media (prefers-reduced-motion:reduce){.bn-free{animation:none}}
.bn-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;width:100%;min-height:34px}.bn-note{font-size:11.5px;color:#56635b;line-height:1.4;flex:1 1 360px}.bn-acts{display:flex;gap:6px}.bn-acts button{padding:5px 10px;font-size:11px}
.bn-bench .feedback{min-height:36px;font-size:12px}
/* the Guided Walkthrough narrows the workspace instead of covering the bench; the repair ticket becomes a band across the top */
@media(min-width:1100px){body:has(.bn-work).walk-open .bn-work{width:calc(100% - var(--walk-w) - 24px);margin-left:0;margin-right:auto;padding-left:20px;padding-right:12px}
 body:has(.bn-work).walk-open .bn-grid{grid-template-columns:1fr;grid-template-areas:"t" "b"}body:has(.bn-work).walk-open .bn-ticket{grid-area:t;max-height:none;padding:8px 14px;display:flex;flex-wrap:wrap;gap:4px 18px;align-items:center}body:has(.bn-work).walk-open .bn-bench{grid-area:b}
 body:has(.bn-work).walk-open .bn-ticket h2,body:has(.bn-work).walk-open .bn-ticket .side-label,body:has(.bn-work).walk-open .bn-ticket>p:not(.bn-sym){display:none}body:has(.bn-work).walk-open .bn-ticket .bn-sym{flex:1 1 420px;margin:0}body:has(.bn-work).walk-open .bn-spec{flex-direction:row;gap:12px;margin:0}body:has(.bn-work).walk-open .bn-ticket .hint{flex:1 1 100%}}
@media (max-width:1000px){.bn-grid{grid-template-columns:1fr}.bn-ticket{max-height:none}}

/* PBQ 36 display panel and digitizer replacement (.pn-*) */
.pn-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .pn-work{height:calc(100vh - 58px);overflow:auto}.pn-work .soho-heading p{display:none}
.pn-grid{display:grid;grid-template-columns:minmax(190px,214px) minmax(0,1fr);gap:12px;align-items:start}.pn-order{padding:14px;max-height:calc(100vh - 150px);overflow:auto}.pn-order h2{font-size:18px;margin:8px 0}.pn-order p,.pn-order li{font-size:11.5px;line-height:1.42}.pn-order ul{margin:6px 0 8px 16px;padding:0}.pn-order li{margin-bottom:4px}
.pn-spec{background:#eef3f8;border:1px solid #d5e0eb;border-radius:8px;padding:8px 10px;font-size:11px;display:flex;flex-direction:column;gap:3px;margin-top:6px}.pn-spec b{font-size:11.5px}
.pn-bench{min-width:0;display:flex;flex-direction:column;gap:8px}.pn-svgbox{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:6px 8px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.pn-svg{width:100%;height:auto;max-height:clamp(320px,calc(100vh - 295px),720px);border-radius:8px}.pn-svg [role=button]{cursor:pointer;outline:none}.pn-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}.pn-hot:hover,.pn-hot:focus-visible{filter:drop-shadow(0 0 5px #d97735cc)}.pn-free{animation:pnPulse 1.1s ease-in-out infinite alternate}@keyframes pnPulse{to{filter:drop-shadow(0 0 5px #ffb36b)}}@media (prefers-reduced-motion:reduce){.pn-free{animation:none}}
.pn-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;width:100%;min-height:34px}.pn-note{font-size:11.5px;color:#56635b;line-height:1.4}.pn-acts{display:flex;gap:6px}.pn-acts button{padding:5px 10px;font-size:11.5px}
.pn-bench .feedback{min-height:36px}
/* the Guided Walkthrough narrows the workspace instead of covering the service panel */
@media(min-width:1100px){body:has(.pn-work).walk-open .pn-work{width:calc(100% - var(--walk-w) - 24px);margin-left:0;margin-right:auto;padding-left:20px;padding-right:12px}body:has(.pn-work).walk-open .pn-order>p,body:has(.pn-work).walk-open .pn-order>h2{display:none}}
@media (max-width:1000px){.pn-grid{grid-template-columns:1fr}.pn-order{max-height:none}}
.pn-ticket{background:#f6f2e8;border:1px solid #e3d9bd;border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:6px;margin:6px 0}.pn-ticket b{font-size:11.5px}.pn-ticket label{display:flex;flex-direction:column;gap:2px;font-size:10.5px;color:#56635b}.pn-ticket select{font:inherit;font-size:11.5px;padding:4px 6px;border:1px solid #c9c2ac;border-radius:6px;background:#fff;color:#26323d}
.pn-svg [data-pn-lid]{cursor:pointer}

/* PBQ 37 cellular activation, location and sync (.cs-*) */
.cs-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .cs-work{height:calc(100vh - 58px);overflow:auto}.cs-work .soho-heading p{display:none}
.cs-grid{display:grid;grid-template-columns:minmax(190px,214px) 330px minmax(0,1fr);gap:12px;align-items:start}.cs-order{padding:14px}.cs-order h2{font-size:18px;margin:8px 0}.cs-order p,.cs-order li{font-size:11.5px;line-height:1.42}.cs-order ul{margin:6px 0 8px 16px;padding:0}.cs-order li{margin-bottom:4px}
.cs-phone{width:320px;min-height:540px;background:#fff;border:9px solid #1d2226;border-radius:30px;overflow:hidden;box-shadow:0 10px 26px rgba(30,40,35,.25);display:flex;flex-direction:column}
.cs-status{display:flex;justify-content:space-between;align-items:center;background:#1d2226;color:#fff;font-size:11px;padding:4px 12px}.cs-status b{font-size:11.5px;color:#9fe3b6}
.cs-tabs{display:flex;background:#eef3f8;border-bottom:1px solid #d5e0eb}.cs-tabs button{flex:1;border:0;background:none;padding:8px 2px;font-size:11px;font-weight:600;color:#56635b;cursor:pointer;border-bottom:3px solid transparent}.cs-tabs button.sel{color:#2a5f96;border-bottom-color:#d97735;background:#fff}
.cs-body{padding:8px 10px 14px;overflow:auto;max-height:470px}.cs-body h3{margin:4px 0 6px;font-size:15px}.cs-sec{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6a756e;margin:10px 0 4px}.cs-small{font-size:11px;color:#56635b;margin:4px 0}
.cs-row{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;text-align:left;border:1px solid #e3e7ea;border-radius:8px;background:#fff;padding:7px 10px;margin-bottom:4px;font:inherit;font-size:12px;color:#26323d;min-height:34px}
button.cs-row{cursor:pointer}button.cs-row:hover,.cs-seg button:hover{background:#f4f7fa}.cs-row small{display:block;font-size:10.5px;color:#6a756e;margin-top:1px}.cs-row small.pass{color:#1f7a45;font-weight:700}.cs-row small.fail{color:#b3261e;font-weight:700}.cs-row small.stale{color:#8a7f62}
.cs-toggle i{width:34px;height:18px;border-radius:9px;background:#c4ccd2;position:relative;flex:none}.cs-toggle i:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:left .12s}.cs-toggle i.on{background:#2f9e5b}.cs-toggle i.on:after{left:18px}
.cs-opt i.dot{width:14px;height:14px;border-radius:50%;border:2px solid #9aa7b0;flex:none}.cs-opt i.dot.on{border-color:#2a5f96;background:radial-gradient(#2a5f96 45%,#fff 50%)}.cs-opt.sel{border-color:#2a5f96;background:#f1f6fc}
.cs-seg{display:flex;flex-wrap:wrap;gap:4px}.cs-seg button{border:1px solid #c9d2d9;background:#fff;border-radius:6px;padding:4px 7px;font-size:10.5px;cursor:pointer;color:#26323d}.cs-seg button.sel{background:#2a5f96;border-color:#2a5f96;color:#fff}.cs-info{flex-wrap:wrap}.cs-info .cs-seg{margin-top:2px}
.cs-mini{padding:4px 9px;font-size:11px}.cs-meter{height:10px;background:#e3e7ea;border-radius:5px;overflow:hidden}.cs-meter div{height:100%;background:#d97735}
.cs-deskwrap{min-width:0;display:flex;flex-direction:column;gap:8px}.cs-svg{width:100%;height:auto;max-height:340px;background:#fff;border:1px solid #e8e4dc;border-radius:10px}.cs-svg [role=button]{cursor:pointer;outline:none}.cs-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}.cs-hot:hover{filter:drop-shadow(0 0 5px #d97735cc)}
.cs-work button:focus-visible{outline:2px solid #d97735;outline-offset:1px}
@media(min-width:1100px){body:has(.cs-work).walk-open .cs-work{width:calc(100% - var(--walk-w) - 24px);margin-left:0;margin-right:auto;padding-left:20px;padding-right:12px}body:has(.cs-work).walk-open .cs-order>p,body:has(.cs-work).walk-open .cs-order>h2{display:none}body:has(.cs-work).walk-open .cs-grid{grid-template-columns:minmax(150px,170px) 330px minmax(0,1fr)}}
@media (max-width:1000px){.cs-grid{grid-template-columns:1fr}.cs-phone{margin:auto}}

/* PBQ 38 internet connection types and modem install (.cn-*) */
.cn-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .cn-work{height:calc(100vh - 58px);overflow:auto}.cn-work .soho-heading p{display:none}
.cn-grid{display:grid;grid-template-columns:minmax(190px,214px) minmax(0,1fr);gap:12px;align-items:start}.cn-order{padding:14px}.cn-order h2{font-size:18px;margin:8px 0}.cn-order p,.cn-order li{font-size:11.5px;line-height:1.42}.cn-order ul{margin:6px 0 8px 16px;padding:0}.cn-order li{margin-bottom:4px}
.cn-main{min-width:0;display:flex;flex-direction:column;gap:8px}.cn-tabs{display:flex;flex-wrap:wrap;gap:4px}.cn-tabs button{border:1px solid #d5e0eb;background:#fff;border-radius:8px 8px 0 0;padding:7px 11px;font-size:12px;font-weight:600;color:#56635b;cursor:pointer}.cn-tabs button.sel{background:#2a5f96;border-color:#2a5f96;color:#fff}
.cn-panel{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.cn-panel h3{margin:0 0 4px;font-size:15px}
.cn-isp{background:#fff7e8;border:1px solid #efd9a1;border-radius:8px;padding:7px 10px;font-size:12px;display:flex;flex-direction:column;gap:2px}
.cn-svg{width:100%;height:auto;max-height:260px;border-radius:8px}.cn-svg [role=button]{cursor:pointer;outline:none}.cn-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}.cn-hot:hover{filter:drop-shadow(0 0 5px #d97735cc)}.cn-free{animation:cnPulse 1.1s ease-in-out infinite alternate}@keyframes cnPulse{to{filter:drop-shadow(0 0 5px #ffb36b)}}@media (prefers-reduced-motion:reduce){.cn-free{animation:none}}
.cn-tray{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cn-lab{font-size:10px;font-weight:700;letter-spacing:.06em;color:#6a756e;margin-bottom:3px}.cn-tray>div{display:flex;flex-wrap:wrap;gap:5px}.cn-tray .cn-lab{width:100%}
.cn-chip{border:1px solid #c9d2d9;background:#fff;border-radius:8px;padding:5px 8px;text-align:left;cursor:pointer;font:inherit;display:flex;flex-direction:column;min-height:36px}.cn-chip b{font-size:11px}.cn-chip small{font-size:10px;color:#6a756e}.cn-chip.sel{border-color:#d97735;background:#fdf4ec;box-shadow:0 0 0 2px #d9773555}
.cn-ctl{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px}.cn-acts{display:flex;flex-wrap:wrap;gap:6px}.cn-acts button{padding:6px 11px;font-size:12px}
.cn-seg{display:inline-flex;flex-wrap:wrap;gap:4px}.cn-seg button{border:1px solid #c9d2d9;background:#fff;border-radius:6px;padding:5px 9px;font-size:11.5px;cursor:pointer;color:#26323d}.cn-seg button.sel{background:#2a5f96;border-color:#2a5f96;color:#fff}
.cn-result{font-size:12px;padding:7px 10px;border-radius:8px;background:#f1f3f4;color:#56635b}.cn-result.pass{background:#e8f6ee;color:#1f7a45;font-weight:600}.cn-result.fail{background:#fdeceb;color:#b3261e;font-weight:600}.cn-result.stale{background:#f6f2e8;color:#8a7f62}
.cn-item{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;border:1px solid #e3e7ea;border-radius:8px;padding:8px 10px;font-size:12px}
.cn-work button:focus-visible{outline:2px solid #d97735;outline-offset:1px}
@media(min-width:1100px){body:has(.cn-work).walk-open .cn-work{width:calc(100% - var(--walk-w) - 24px);margin-left:0;margin-right:auto;padding-left:20px;padding-right:12px}body:has(.cn-work).walk-open .cn-order>p,body:has(.cn-work).walk-open .cn-order>h2{display:none}body:has(.cn-work).walk-open .cn-grid{grid-template-columns:minmax(150px,170px) minmax(0,1fr)}}
@media (max-width:1000px){.cn-grid{grid-template-columns:1fr}}

/* PBQ 39 managed switch, VLAN and PoE (.vl-*) */
.vl-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .vl-work{height:calc(100vh - 58px);overflow:auto}.vl-work .soho-heading p{display:none}
.vl-grid{display:grid;grid-template-columns:minmax(190px,214px) minmax(0,1fr);gap:12px;align-items:start}.vl-order{padding:14px}.vl-order h2{font-size:18px;margin:8px 0}.vl-order p,.vl-order li{font-size:11.5px;line-height:1.42}.vl-order ul{margin:6px 0 8px 16px;padding:0}.vl-order li{margin-bottom:4px}
.vl-main{min-width:0;display:flex;flex-direction:column;gap:8px}.vl-svgbox{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:6px 8px}.vl-svg{width:100%;height:auto;max-height:300px;border-radius:8px}.vl-svg [role=button]{cursor:pointer;outline:none}.vl-svg [role=button]:focus-visible{outline:2px solid #d97735;outline-offset:2px}.vl-hot:hover{filter:drop-shadow(0 0 5px #d97735cc)}.vl-free{animation:vlPulse 1.1s ease-in-out infinite alternate}@keyframes vlPulse{to{filter:drop-shadow(0 0 5px #ffb36b)}}@media (prefers-reduced-motion:reduce){.vl-free{animation:none}}
.vl-tray{display:flex;flex-wrap:wrap;gap:5px;align-items:stretch}.vl-lab{font-size:10px;font-weight:700;letter-spacing:.06em;color:#6a756e;margin:6px 0 3px;width:100%}.vl-chip{border:1px solid #c9d2d9;background:#fff;border-radius:8px;padding:5px 8px;text-align:left;cursor:pointer;font:inherit;display:flex;flex-direction:column;min-height:36px}.vl-chip b{font-size:11px}.vl-chip small{font-size:10px;color:#6a756e}.vl-chip.sel{border-color:#d97735;background:#fdf4ec;box-shadow:0 0 0 2px #d9773555}
.vl-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:start}.vl-box{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:8px 10px;font-size:12px}.vl-small{font-size:11px;color:#56635b;margin:2px 0}.vl-box small{font-size:10.5px;color:#6a756e}
.vl-seg{display:inline-flex;flex-wrap:wrap;gap:4px;margin-bottom:2px}.vl-seg button,.vl-acts button{border:1px solid #c9d2d9;background:#fff;border-radius:6px;padding:4px 8px;font-size:11px;cursor:pointer;color:#26323d}.vl-seg button.sel,.vl-box button.primary{background:#2a5f96;border-color:#2a5f96;color:#fff}.vl-acts{display:flex;gap:6px;margin:4px 0}.vl-box button.primary{border-radius:6px;padding:4px 9px;font-size:11px}
.vl-tag{background:#eef3f8;border:1px solid #d5e0eb;border-radius:6px;padding:3px 7px;font-size:11px}.vl-tag button{border:0;background:none;cursor:pointer;color:#b3261e;font-size:13px;padding:0 0 0 4px}
.vl-meter{height:10px;background:#e3e7ea;border-radius:5px;overflow:hidden}.vl-meter div{height:100%;background:#2f9e5b}.vl-meter div.hi{background:#d97735}
.vl-test{display:flex;justify-content:space-between;align-items:center;gap:6px;border-bottom:1px solid #eef0f2;padding:5px 0}.vl-test small{display:block}.vl-test small.pass{color:#1f7a45;font-weight:700}.vl-test small.fail{color:#b3261e;font-weight:700}.vl-test small.stale{color:#8a7f62}
.vl-work button:focus-visible{outline:2px solid #d97735;outline-offset:1px}
@media(min-width:1100px){body:has(.vl-work).walk-open .vl-work{width:calc(100% - var(--walk-w) - 24px);margin-left:0;margin-right:auto;padding-left:20px;padding-right:12px}body:has(.vl-work).walk-open .vl-order>p,body:has(.vl-work).walk-open .vl-order>h2{display:none}body:has(.vl-work).walk-open .vl-grid{grid-template-columns:minmax(150px,170px) minmax(0,1fr)}body:has(.vl-work).walk-open .vl-cols{grid-template-columns:1fr 1fr}}
@media (max-width:1000px){.vl-grid{grid-template-columns:1fr}.vl-cols{grid-template-columns:1fr}}

/* PBQ 40 DNS records and mail delivery (.dn-*) */
.dn-work{max-width:1800px;margin:auto;padding:14px 26px 20px}.printer-page .dn-work{height:calc(100vh - 58px);overflow:auto}.dn-work .soho-heading p{display:none}
.dn-grid{display:grid;grid-template-columns:minmax(190px,214px) minmax(0,1fr);gap:12px;align-items:start}.dn-order{padding:14px}.dn-order h2{font-size:18px;margin:8px 0}.dn-order p,.dn-order li{font-size:11.5px;line-height:1.42}.dn-order ul{margin:6px 0 8px 16px;padding:0}.dn-order li{margin-bottom:4px}
.dn-main{min-width:0;display:flex;flex-direction:column;gap:8px}.dn-flow{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:6px 8px}.dn-svg{width:100%;height:auto;max-height:240px;border-radius:8px}
.dn-cols{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:8px;align-items:start}.dn-box{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:8px 10px;font-size:12px;min-width:0}.dn-lab{font-size:10px;font-weight:700;letter-spacing:.06em;color:#6a756e;margin:4px 0 4px}
.dn-tablewrap{max-height:300px;overflow:auto}.dn-table{width:100%;border-collapse:collapse;font-size:11.5px}.dn-table th{text-align:left;font-size:10px;color:#6a756e;padding:3px 4px;border-bottom:1px solid #e3e7ea}.dn-table td{padding:4px;border-bottom:1px solid #f0f2f3;vertical-align:top}.dn-val{word-break:break-all;font-family:ui-monospace,Consolas,monospace;font-size:11px}.dn-rowacts{white-space:nowrap}.dn-rowacts button,.dn-acts button,.dn-box>button.secondary{padding:3px 8px;font-size:11px;margin-left:3px}
.dn-form{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:flex-end;background:#f6f2e8;border:1px solid #e3d9bd;border-radius:8px;padding:8px;margin-top:8px}.dn-form b{width:100%;font-size:12px}.dn-form label{display:flex;flex-direction:column;gap:2px;font-size:10.5px;color:#56635b}.dn-wide{flex:1 1 220px}.dn-form input,.dn-form select,.dn-lk input,.dn-lk select{font:inherit;font-size:12px;padding:4px 6px;border:1px solid #c9c2ac;border-radius:6px;background:#fff;color:#26323d}.dn-wide input{width:100%}
.dn-lk{display:flex;gap:6px;flex-wrap:wrap}.dn-lk input{flex:1 1 120px;min-width:0}.dn-out{background:#12171c;color:#c9e7d2;font-size:11px;padding:8px;border-radius:8px;min-height:64px;white-space:pre-wrap;word-break:break-all;margin:6px 0}
.dn-test{margin-bottom:6px}.dn-res{font-size:11.5px;padding:6px 8px;border-radius:8px;background:#f1f3f4;color:#56635b;margin-top:3px}.dn-res.pass{background:#e8f6ee;color:#1f7a45;font-weight:600}.dn-res.fail{background:#fdeceb;color:#b3261e;font-weight:600}.dn-res.stale{background:#f6f2e8;color:#8a7f62}
.dn-work button:focus-visible,.dn-work input:focus-visible,.dn-work select:focus-visible{outline:2px solid #d97735;outline-offset:1px}
@media(min-width:1100px){body:has(.dn-work).walk-open .dn-work{width:calc(100% - var(--walk-w) - 24px);margin-left:0;margin-right:auto;padding-left:20px;padding-right:12px}body:has(.dn-work).walk-open .dn-order>p,body:has(.dn-work).walk-open .dn-order>h2{display:none}body:has(.dn-work).walk-open .dn-grid{grid-template-columns:minmax(150px,170px) minmax(0,1fr)}body:has(.dn-work).walk-open .dn-cols{grid-template-columns:1fr}}
@media (max-width:1000px){.dn-grid,.dn-cols{grid-template-columns:1fr}}

/* Walkthrough docking (shared): reserve the default-docked window's width on the right of the app so it never covers the workbench */
body.walk-dock #app>main,body.walk-dock #app>footer{margin-right:var(--walk-reserve,0)}

/* Official Chrillo Labs branding: the logo files are cropped copies of assets/brand/Chrillo_Labs_Logo.png and are never redrawn. darken lets the logo's off-white background (253,253,250) blend into light surfaces. */
.brandlogo{height:38px;width:auto;display:block;mix-blend-mode:darken}.brandname{border-left:1px solid #d9d6cc;padding-left:12px;line-height:1.15}.work-page .brandlogo,.network-page .brandlogo,.printer-page .brandlogo{height:34px}
.cl-mark{width:auto;vertical-align:middle;mix-blend-mode:darken;border-radius:4px}
.cl-plate{display:inline-flex;background:#fbfbf7;border-radius:6px;padding:2px;vertical-align:middle}.cl-plate .cl-mark{mix-blend-mode:normal}.fw-brand{display:flex;align-items:center;gap:10px}.fw-brand>span{display:flex;flex-direction:column}
.fw-ahead>.fw-brand{flex-direction:row;align-items:center}.fw-ahead .fw-brand .cl-plate{font-size:0}
.md-cbrand{display:flex;align-items:center;gap:6px;color:#fff;font-size:10px;padding:2px 4px 8px;border-bottom:1px solid #ffffff22;margin-bottom:4px}.md-cbrand b{line-height:1.15}
.md-cnav{background:#2b3035}.md-cnav button{color:#d6d9db}.md-cnav button[aria-current=true]{background:#454b51;color:#ffb27a}.md-cnav button:hover{background:#383d42}
.cl-phonebrand{position:absolute;left:0;right:0;bottom:7px;display:flex;align-items:center;justify-content:center;gap:5px;z-index:3;pointer-events:none;font:700 8px/1 'Segoe UI',Arial,sans-serif;letter-spacing:.08em;color:#6a7479;text-transform:uppercase}.cl-phonebrand .cl-plate{padding:1px;border-radius:3px}.hs-phone,.cs-phone,.bt-bezel{position:relative}
.hs-phone .cl-phonebrand{bottom:22px}.cs-phone .cl-phonebrand{position:static;order:99;flex:none;padding:5px 0;border-top:1px solid #e3e6e8;background:#fff}
