/* JoeLearns Labs — reusable incident engine visual language */
:root{color-scheme:dark;--bg:#030817;--panel:#101b2e;--panel2:#0b182a;--line:rgba(112,146,191,.27);--text:#f3f8ff;--muted:#aec0d8;--cyan:#67e8f9;--red:#fa7889;--green:#80e5b8;--amber:#f4cc83}
*{box-sizing:border-box}
html{min-width:320px}
body{margin:0;font:16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg)}
button,input,textarea{font:inherit}
button{cursor:pointer}
button:disabled{opacity:.48;cursor:not-allowed}
a{color:inherit;text-decoration:none}
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
h1,h2,h3,p{margin-top:0}
.lab-shell{min-height:100vh;position:relative;isolation:isolate;background:radial-gradient(ellipse 53% 33% at 68% 0,rgba(23,191,213,.12),transparent 80%),radial-gradient(ellipse 43% 33% at 99% 18%,rgba(101,67,203,.14),transparent 76%),radial-gradient(ellipse 35% 35% at -12% 75%,rgba(24,92,199,.11),transparent 85%),#030817;transition:background .4s}
.lab-shell.heat-1{background:radial-gradient(ellipse 60% 55% at 100% 24%,rgba(161,29,47,.21),transparent 80%),#090b18}
.lab-shell.heat-2{background:radial-gradient(ellipse 75% 65% at 85% 30%,rgba(194,26,46,.31),transparent 80%),#120917}
.lab-shell.heat-3{background:radial-gradient(ellipse 80% 80% at 70% 20%,rgba(199,19,44,.44),transparent 85%),#1a0710}
.heat-veil{position:fixed;z-index:15;inset:0;pointer-events:none;box-shadow:inset 0 0 0 transparent;transition:box-shadow .35s}
.heat-1 .heat-veil{box-shadow:inset 0 0 130px 15px rgba(210,28,58,.11)}
.heat-2 .heat-veil{box-shadow:inset 0 0 185px 43px rgba(217,28,49,.23)}
.heat-3 .heat-veil{box-shadow:inset 0 0 240px 80px rgba(236,16,42,.37)}
.topbar{min-height:88px;padding:15px clamp(20px,2.5vw,36px);display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap;border-bottom:1px solid rgba(136,159,198,.15);background:rgba(3,9,24,.86);backdrop-filter:blur(18px);position:relative;z-index:2}
.brand{display:flex;align-items:center;gap:13px;min-width:0}
.logo{width:56px;height:56px;border-radius:16px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(34,211,238,.6))}
.brand-text{display:flex;flex-direction:column;gap:2px}
.brand-text strong{font-size:19px;line-height:1.25;letter-spacing:.05px}
.brand-text em{font-style:normal;color:#5fe7fc}
.brand-text small{color:#87b9ce;font-size:10px;font-weight:750;letter-spacing:2.4px;white-space:nowrap}
.toplinks{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.toplinks .library{font-size:15px;color:#cbd5e1;transition:color .15s}
.toplinks .library:hover{color:white}
.beta-pill{border:1px solid rgba(65,218,244,.27);background:rgba(16,137,167,.13);box-shadow:inset 0 0 18px rgba(29,152,200,.08);color:#9ceafa;letter-spacing:1.4px;padding:9px 13px;font-size:10px;font-weight:800;border-radius:999px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.beta-pill i{width:7px;height:7px;background:#4ce4aa;border-radius:50%;box-shadow:0 0 11px rgba(77,224,172,.55)}
.tool-link{padding:10px 14px;display:inline-flex;gap:7px;align-items:center;border:1px solid rgba(34,211,238,.30);background:rgba(34,211,238,.10);color:#a5f3fc;font-size:14px;font-weight:700;border-radius:15px;white-space:nowrap}
.tool-link:hover{background:rgba(34,211,238,.20)}
.main-link-frame{background:linear-gradient(125deg,#57e0ec,#4778f6,#aa5dea);padding:1px;border-radius:17px}
.main-link-frame a{display:block;border-radius:16px;background:#081426;padding:10px 16px;font-size:14px;font-weight:800;white-space:nowrap}
.main-link-frame a:hover{background:#16283f}
.mission-main{max-width:1560px;margin:0 auto;padding:38px clamp(18px,3vw,48px) 56px;position:relative;z-index:2}
.breadcrumbs{display:flex;gap:9px;align-items:center;color:#819db6;font-size:13px;margin:0 0 25px;flex-wrap:wrap}
.breadcrumbs a:hover,.directory-foot a:hover{color:var(--cyan)}
.breadcrumbs span{color:#b8cedd}
.eyebrow{font-weight:800;letter-spacing:.16em;font-size:11px;color:#7fe7f8;text-transform:uppercase}
.eyebrow:before{display:inline-block;content:"";width:7px;height:7px;background:#75e7ed;border-radius:50%;margin-right:9px;box-shadow:0 0 12px rgba(117,231,237,.36)}
.mission-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:32px;margin:0 0 23px}
.mission-heading h1{font-size:clamp(30px,3.2vw,46px);line-height:1.15;letter-spacing:-.043em;margin:12px 0 7px}
.mission-heading p{color:#b2c4da;font-size:14px;margin-bottom:15px}
.heading-badges{display:flex;flex-wrap:wrap;gap:8px}
.heading-right{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:flex-end}
.badge{display:inline-flex;align-items:center;border:1px solid #35495e;border-radius:999px;padding:6px 11px;letter-spacing:.095em;text-transform:uppercase;font-size:10px;font-weight:850;color:#bfcede;background:#14263a;white-space:nowrap}
.badge.cyan{color:#91f0fa;border-color:#275e71;background:#103044}
.badge.beginner{color:#a3edc5;border-color:#3e7658;background:#13382b}
.badge.intermediate{color:#ffd38a;border-color:#785e37;background:#392918}
.badge.advanced{color:#ffbdc4;border-color:#81505b;background:#3a202b}
.badge.neutral{color:#b4c4dd;background:#142439;border-color:#33455a}
.risk-meter{text-align:right;display:grid;gap:4px;min-width:185px}
.micro-label{font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:#86a5be;margin:23px 0 10px}
.risk-meter .micro-label{margin:0;font-size:10px}
.risk-meter>div{display:flex;gap:7px;justify-content:flex-end}
.risk-segment{height:8px;flex:1;background:#2a4055;border-radius:99px}
.risk-segment.active{background:#f36b82;box-shadow:0 0 10px rgba(247,89,111,.35)}
.risk-meter small{font-size:11px;color:#9eb4c7}
.secondary-btn,.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:11px 15px;border:1px solid #40576e;border-radius:13px;color:#e6f4ff;background:#16283e;font-size:13px;font-weight:750;text-decoration:none;line-height:1.3}
.secondary-btn:hover{background:#20374d;border-color:#689cba}
.primary-btn{background:linear-gradient(135deg,#96f1e4,#53c5df);border-color:transparent;color:#06212c}
.primary-btn:hover{filter:brightness(1.08)}
.incident-banner{display:flex;gap:13px;align-items:flex-start;border:1px solid rgba(92,142,161,.34);background:linear-gradient(100deg,rgba(17,60,76,.28),rgba(11,26,47,.80));border-radius:14px;padding:16px 20px;margin-bottom:20px}
.incident-banner.bad{border-color:#a34058;background:linear-gradient(90deg,rgba(132,27,44,.35),rgba(32,12,28,.72))}
.incident-banner.good{border-color:#3a8579;background:linear-gradient(90deg,rgba(24,97,75,.30),rgba(15,40,43,.70))}
.incident-banner.warning{border-color:#a37b49;background:linear-gradient(90deg,rgba(111,70,30,.26),rgba(31,30,40,.70))}
.banner-icon{font-size:23px;color:#91dfe8;line-height:1}
.bad .banner-icon{color:#ff9faf}
.good .banner-icon{color:#7be4b6}
.incident-banner strong{font-size:11px;letter-spacing:.12em;color:#a9e8f4}
.incident-banner.bad strong{color:#ffb6c2}
.incident-banner p{font-size:13px;line-height:1.6;color:#c5d2e2;margin:3px 0 0}
.workspace-grid{display:grid;grid-template-columns:minmax(260px,.81fr) minmax(410px,1.5fr) minmax(265px,.83fr);gap:17px;align-items:start}
.panel{background:linear-gradient(152deg,rgba(17,33,55,.98),rgba(9,21,38,.99));border:1px solid var(--line);border-radius:18px;min-width:0;overflow:hidden;box-shadow:0 16px 28px rgba(0,0,0,.07)}
.pane-header{padding:16px 18px;border-bottom:1px solid #253a50;display:flex;justify-content:space-between;align-items:center;gap:8px}
.pane-header .pane-heading{font-size:14px;font-weight:800}
.pane-header small{font-size:11px;color:#8facc5;display:block}
.pane-inner{padding:18px}
.case-pane .micro-label:first-child,.right-pane .micro-label:first-child{margin-top:0}
.case-pane blockquote{margin:0 0 20px;background:#13273f;border:1px solid #2e4b62;border-radius:12px;padding:15px;color:#c7d8e6;font-size:13px;line-height:1.7}
.objective{font-size:13px;line-height:1.75;color:#b7cbdd;margin:0}
.system-list{display:flex;flex-direction:column;gap:8px}
.system-choice{display:flex;align-items:center;text-align:left;gap:11px;width:100%;padding:11px;border:1px solid #2d455b;background:#101f33;border-radius:11px;color:#e7f4ff}
.system-choice.selected{border-color:#63b5c8;background:#173749}
.system-choice:hover{border-color:#6caac2}
.system-choice .system-icon{width:36px;height:36px;flex-shrink:0;display:grid;place-items:center;border-radius:9px;background:#15374a;color:#78e2ea;border:1px solid #34647c;font-size:18px}
.system-choice strong{font-size:12px;display:block}
.system-choice small{display:block;font-size:10px;color:#97b2c7}
.attachment{width:100%;display:flex;align-items:center;gap:10px;padding:12px 9px;background:#0f2135;border:1px solid #2c455e;color:#c9e0ee;border-radius:10px;margin-bottom:8px;text-align:left}
.attachment:hover{border-color:#71cfe0}
.attachment>span:first-child{color:#7de2ed;font-size:18px}
.attachment>span:last-child{margin-left:auto;color:#7de2ed}
.attachment strong{font-size:12px;display:block}
.attachment small{font-size:10px;display:block;color:#8ca9be}
.center-stack{display:flex;flex-direction:column;gap:17px;min-width:0}
.terminal{margin:17px 17px 0;border:1px solid #2e445b;border-radius:12px;overflow:hidden;background:#080f1b}
.terminal-top{padding:10px 13px;display:flex;align-items:center;gap:14px;border-bottom:1px solid #263a53;background:#12243b}
.terminal-top strong{font-size:12px;color:#b9d8ea}
.terminal-dots{color:#8dc9c7;font-size:9px;letter-spacing:2px}
.terminal-live{font-size:9px;letter-spacing:.08em;font-weight:800;color:#82dfbf;margin-left:auto}
.terminal-body{min-height:270px;max-height:360px;overflow-y:auto;padding:15px 16px;font:12px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;color:#c8d7e5}
.terminal-line{margin:0 0 13px}
.terminal-line.prompt{color:#72dde6;font-weight:750}
.terminal-line.error{color:#ffb0c0}
.terminal-line.good{color:#9bf1c7}
.terminal-line.info{color:#8db2cc}
.command-form{display:flex;align-items:center;gap:10px;padding:9px 12px;border-top:1px solid #2c415b;background:#111f32}
.command-form label{color:#7ee9e9;font:13px ui-monospace,Consolas,monospace;white-space:nowrap}
.command-form input{background:transparent;border:0;outline:none!important;color:#e5faff;min-width:0;flex:1;font:12px ui-monospace,Consolas,monospace}
.command-form button{background:#21465d;border:1px solid #4a8ba5;border-radius:7px;padding:7px 10px;color:#ccf7ff;font-size:11px;font-weight:800}
.quick-head{font-size:10px;letter-spacing:.13em;font-weight:800;color:#89acc2;margin:16px 18px 10px}
.quick-commands{display:flex;flex-wrap:wrap;gap:8px;margin:0 18px 19px}
.quick-command{border:1px solid #36536c;background:#152b41;color:#c9e6f1;padding:8px 10px;border-radius:9px;font:11px ui-monospace,Consolas,monospace;overflow-wrap:anywhere;text-align:left}
.quick-command:hover{background:#21425b;border-color:#76d2e5}
.action-body{padding:17px}
.action-body h3{font-size:13px;letter-spacing:.02em;margin:3px 0 11px;color:#cce3ef}
.action-body h3:not(:first-child){margin-top:20px}
.action-list{display:flex;flex-direction:column;gap:9px}
.action-item{padding:13px;display:flex;align-items:center;gap:11px;justify-content:space-between;background:#11243a;border:1px solid #29445c;border-radius:12px}
.action-item>div{min-width:0}
.action-item strong{font-size:12px}
.action-item p{font-size:11px;line-height:1.6;color:#9bb5c8;margin:5px 0 0}
.action-item button{background:#1c435a;border:1px solid #377b91;border-radius:8px;color:#caf4fa;padding:8px 11px;font-size:11px;font-weight:800;flex-shrink:0}
.action-item button:hover{background:#29617a}
.action-item button.change-button{border-color:#94646b;background:#472934;color:#ffe2e5}
.action-disclaimer{font-size:11px;color:#8fa9bc;line-height:1.65;margin:17px 0 0}
.steps{display:flex;flex-direction:column;gap:10px}
.step{display:flex;gap:10px;align-items:flex-start;color:#a4b9cc;font-size:12px}
.step span{width:19px;flex-shrink:0;font-size:17px;line-height:1;color:#7093a9}
.step.done{color:#a5ebc9}
.step.done span{color:#67deb4}
.bar{height:7px;border-radius:99px;background:#21374c;overflow:hidden;margin-top:16px}
.bar>span{display:block;height:100%;background:linear-gradient(90deg,#4595c5,#74e2c9);transition:width .2s}
.close-ticket{width:100%;margin-top:13px}
.evidence-list{display:flex;flex-direction:column;gap:9px}
.evidence{padding:11px;background:#10263a;border:1px solid #2d5261;border-radius:11px}
.evidence strong{font-size:12px}
.evidence p{color:#abc3d4;font-size:11px;line-height:1.6;margin:4px 0 0}
.empty{font-size:12px;color:#829bb4;line-height:1.6;margin:0}
.history{max-height:190px;overflow:auto;display:flex;flex-direction:column;gap:8px}
.history-line{font-size:10px;color:#a5bed0;padding-left:9px;border-left:2px solid #3d647b;display:flex;gap:8px;line-height:1.55}
.history-line time{color:#769cb3;white-space:nowrap}
.history-line.bad{border-color:#fd788d;color:#ffbdc7}
.history-line.good{border-color:#68d6ab}
.hint-details{margin-top:22px;border-top:1px solid #2d425a;padding-top:13px}
.hint-details summary{cursor:pointer;color:#b2dfeb;font-size:12px;font-weight:800}
.hint-body{padding:12px 0}
.hint-body p{font-size:12px;color:#b3c6d8}
.hint-body button{padding:8px 12px;background:#1d4357;border:1px solid #3d778f;color:#bcebf6;border-radius:8px;font-size:12px}
.reversal-strip{display:flex;gap:15px;align-items:center;justify-content:space-between;margin-top:17px;background:#321726;border:1px solid #7c4052;padding:13px 18px;border-radius:13px;color:#f6b9c6;font-size:12px}
.reversal-strip button{border:1px solid #a55269;background:#512037;border-radius:9px;color:#ffd4db;padding:8px 12px;font-weight:800;white-space:nowrap}
.mission-foot{border-top:1px solid #243850;margin-top:37px;padding:23px 0;color:#7891a9;font-size:11px}
.result-panel{max-width:860px;margin:32px auto;background:linear-gradient(160deg,#112c35,#0d1a2d);border:1px solid #376c69;border-radius:23px;padding:40px}
.result-panel.failed{background:linear-gradient(160deg,#351a2b,#161322);border-color:#9b4d64}
.result-icon{font-size:34px;margin:0 0 16px;color:#72e1b2}
.result-panel.failed .result-icon{color:#ff8fa1}
.result-panel h1{font-size:clamp(33px,4vw,50px);letter-spacing:-.04em;margin:9px 0 15px}
.result-panel>p{color:#bccfe0;font-size:15px;line-height:1.75}
.result-facts{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:28px 0}
.result-facts div{background:#0d2134;border:1px solid #355067;padding:16px;border-radius:12px}
.result-facts span{display:block;text-transform:uppercase;color:#88a3b7;font-size:10px;letter-spacing:.1em;margin-bottom:6px}
.result-facts strong{font-size:13px}
.result-controls{display:flex;gap:10px;flex-wrap:wrap}
.ref-link{margin-top:23px!important;font-size:12px!important}
.ref-link a{color:#91e7f7;text-decoration:underline}
.modal-screen{position:fixed;inset:0;background:rgba(0,0,0,.73);z-index:30;display:grid;place-items:center;padding:17px}
.dialog{width:min(100%,540px);background:#112237;border:1px solid #54778b;border-radius:18px;padding:26px;box-shadow:0 30px 70px rgba(0,0,0,.6)}
.dialog h2{font-size:27px;margin:7px 0 12px}
.dialog p{color:#bbcede;font-size:14px;line-height:1.7}
.dialog-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:22px}
.warning-dialog{border-color:#a65365;background:#251928}
.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#bedbec;padding-bottom:14px;border-bottom:1px solid #355066;font-size:12px;font-weight:800}
.dialog-header button{background:transparent;border:0;color:#a9c0d8;font-size:26px}
.screenshot{margin-top:18px;padding:24px;border:1px solid #b7c2d1;border-radius:9px;background:#f4f6f8;color:#233347;min-height:200px;box-shadow:inset 0 0 0 3px #e2e8f0}
.screenshot-title{color:#3175a4;font-size:15px;font-weight:800;margin-bottom:29px}
.screenshot strong{font-size:16px}
.screenshot p{font-size:12px;color:#546274;margin-top:12px}
.mock-label{display:block;font-size:9px;letter-spacing:.1em;color:#8a98a8;margin-top:28px;text-align:right}
.mission-main>h1{font-size:clamp(36px,5vw,56px);letter-spacing:-.04em;margin:14px 0}
.lead{color:#b2c9de;max-width:700px}
.case-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}
.mission-card{padding:23px;border:1px solid #34536b;border-radius:17px;background:#0f2238;display:flex;flex-direction:column;gap:9px}
.mission-card:hover{border-color:#64c9e3;background:#142c42}
.mission-card small{font-size:11px;color:#9cb2c9}
.mission-card h2{font-size:23px;margin:5px 0}
.mission-card p{font-size:13px;color:#afc3d8}
.mission-card>span:last-child{margin-top:auto;color:#87e8ee;font-weight:800;font-size:13px}
.directory-foot{margin-top:25px;color:#b6d6e3}
@media(max-width:1320px){.workspace-grid{grid-template-columns:minmax(225px,.8fr) minmax(420px,1.5fr)}.right-pane{grid-column:1/-1}.right-pane .pane-inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:25px}.right-pane .pane-inner>.micro-label:nth-of-type(n+2),.right-pane .pane-inner>.history,.right-pane .pane-inner>.evidence-list{grid-column:2}.right-pane .pane-inner>.hint-details{grid-column:1/-1}.heading-right{flex-direction:column;align-items:flex-end}}
@media(max-width:900px){.mission-heading{flex-wrap:wrap}.workspace-grid{grid-template-columns:1fr}.right-pane{grid-column:auto}.right-pane .pane-inner{display:block}.heading-right{flex-direction:row;align-items:center}.topbar{gap:13px}.case-directory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.topbar{padding:13px 16px}.logo{width:50px;height:50px}.brand-text strong{font-size:18px}.brand-text small{font-size:8px;letter-spacing:1.1px}.toplinks{justify-content:flex-start;gap:8px}.toplinks .library{font-size:13px}.beta-pill{font-size:9px;padding:7px 10px}.tool-link,.main-link-frame a{font-size:11px;padding:8px 9px}.main-link-frame,.main-link-frame a{border-radius:12px}.mission-main{padding:23px 15px 45px}.breadcrumbs{margin-bottom:19px}.mission-heading{gap:18px}.mission-heading h1{font-size:33px}.heading-right{width:100%;justify-content:space-between}.risk-meter{text-align:left;min-width:0;flex:1}.risk-meter>div{justify-content:flex-start}.mission-heading .secondary-btn{font-size:11px}.case-pane .pane-inner,.right-pane .pane-inner{padding:15px}.pane-header{padding:13px 15px}.terminal{margin:12px 12px 0}.terminal-body{min-height:230px;max-height:310px;padding:13px;font-size:11px}.terminal-top{gap:6px;padding:9px}.terminal-top strong{font-size:10px}.terminal-live{font-size:8px}.quick-head{margin:15px 14px 10px}.quick-commands{margin:0 14px 15px}.action-item{flex-wrap:wrap}.reversal-strip{flex-wrap:wrap}.result-panel{padding:25px 20px}.result-facts{grid-template-columns:1fr}.case-directory{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Shared Labs header interactions and ticket notes */
.tour-link{
  font:700 13px/1.3 Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;
  border:1px solid rgba(127,158,203,.30);
  color:#cbd5e1;
  background:rgba(12,22,41,.64);
  border-radius:16px;
  padding:10px 13px;
  white-space:nowrap;
}
.tour-link:hover{background:rgba(30,59,88,.42);border-color:rgba(103,232,249,.55);color:#f0faff}
button.beta-pill{font-family:inherit;cursor:pointer;transition:background .2s,border-color .2s}
button.beta-pill:hover{background:rgba(16,137,167,.23);border-color:rgba(112,234,249,.65)}
.mission-notes{display:block;width:100%;min-height:94px;padding:12px;border:1px solid #31516b;border-radius:11px;background:#0b1a2e;color:#dceaf7;font-size:12px;line-height:1.65;resize:vertical}
.mission-notes::placeholder{color:#728da8}
@media(max-width:650px){.tour-link{font-size:11px;padding:8px 10px;border-radius:12px}}

.report-notes{background:#10273c;border:1px solid #31526a;border-radius:12px;padding:17px 19px;margin:-3px 0 23px}.report-notes span{display:block;color:#87c3d6;font-size:10px;font-weight:850;letter-spacing:.14em;margin-bottom:8px}.report-notes p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#c3d6e5;font-size:13px;line-height:1.7}

/* Match the shared JoeLearns 1920px header cap on ultrawide monitors. */
@media (min-width: 1921px) {
  .topbar {
    padding-left: calc((100vw - 1920px) / 2 + 34px);
    padding-right: calc((100vw - 1920px) / 2 + 34px);
  }
}


/* JoeLearns.com button — standardized with the Troubleshooter header. */
.toplinks .main-link-frame {
  display:inline-flex;
  flex-shrink:0;
  padding:1px;
  border-radius:17px;
  background:linear-gradient(100deg,rgba(34,211,238,.84),rgba(59,130,246,.72),rgba(168,85,247,.86));
  box-shadow:0 0 14px rgba(34,211,238,.20),0 0 22px rgba(168,85,247,.16);
  white-space:nowrap;
}
.toplinks .main-link-frame a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:40px;
  border-radius:16px;
  padding:11px 20px;
  background:#030817;
  color:#fff;
  text-decoration:none;
  font-size:14px;
  font-weight:700;
  line-height:1.15;
  transition:background .18s ease,color .18s ease;
}
.toplinks .main-link-frame a:hover {background:#122039;color:#fff;}
.toplinks .main-link-frame a:focus-visible {outline:2px solid #8ce7fc;outline-offset:4px;}
@media(max-width:1320px) and (min-width:651px) {
  .toplinks .main-link-frame a {padding:9px 13px;font-size:13px;}
}
@media(max-width:650px) {
  .toplinks .main-link-frame {border-radius:14px;}
  .toplinks .main-link-frame a {min-height:38px;border-radius:13px;padding:9px 11px;font-size:11px;}
}


/* Interactive Cat6 termination workbench */
.cable-bench{margin:0 0 22px;overflow:hidden}
.cable-bench-inner{padding:22px;display:grid;gap:17px}
.cable-bench-inner>p{font-size:14px;color:var(--muted);line-height:1.65;margin:0}
.cable-bench-inner>p strong{color:var(--text)}
.length-form{padding:17px;background:rgba(10,29,47,.8);border:1px solid var(--line);border-radius:12px;display:grid;gap:9px}
.length-form label{font-size:13px;font-weight:800;color:var(--text)}
.length-entry{display:flex;flex-wrap:wrap;gap:9px}
.length-entry input{width:min(210px,100%);flex:1;min-width:130px;background:#091626;color:#f5fbff;border:1px solid #45617c;border-radius:9px;padding:9px 12px}
.length-form small{font-size:12px;color:var(--muted);line-height:1.65}
.cable-subhead{font-size:12px;font-weight:800;letter-spacing:.13em;color:var(--cyan);text-transform:uppercase}
.pin-row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}
.pin-slot{min-width:0;text-align:center;background:rgba(9,25,42,.85);border:1px solid var(--line);border-radius:10px;padding:10px 5px;display:grid;justify-items:center;gap:6px}
.pin-slot>span{font-size:10px;font-weight:800;letter-spacing:.03em;color:var(--muted)}
.pin-wire{height:45px;width:13px;border-radius:5px;background:#2a4055;border:1px solid rgba(255,255,255,.24);box-shadow:0 3px 9px rgba(0,0,0,.22)}
.pin-slot small{font-size:10px;color:var(--text);line-height:1.3;overflow-wrap:anywhere;min-height:26px}
.wire-palette{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.wire-option{display:flex;gap:9px;align-items:center;text-align:left;background:rgba(17,40,62,.95);border:1px solid #365772;border-radius:9px;color:var(--text);padding:10px;font-size:12px;font-weight:650;min-width:0}
.wire-option:hover:not(:disabled){border-color:var(--cyan);background:rgba(24,64,83,.9)}
.wire-option:disabled{opacity:.35}
.wire-swatch{display:block;flex:none;width:12px;height:29px;border:1px solid rgba(255,255,255,.28);border-radius:4px}
.cable-controls{display:flex;gap:10px;flex-wrap:wrap}
.cable-note{font-size:12px!important;border-top:1px solid var(--line);padding-top:14px}
@media(max-width:700px){.pin-row{grid-template-columns:repeat(4,minmax(0,1fr))}.wire-palette{grid-template-columns:repeat(2,minmax(0,1fr))}.cable-bench-inner{padding:15px}}
@media(max-width:380px){.wire-option{font-size:11px;padding:8px 5px}.pin-slot small{font-size:9px}}


/* Context-sensitive operational impact indicators */
.impact-marker{display:inline-flex;vertical-align:middle;margin:6px 0 2px;
  padding:3px 8px;border-radius:99px;font-size:9px;line-height:1.5;font-weight:850;
  letter-spacing:.12em;border:1px solid #76623e;background:#30291e;color:#f4d092}
.impact-marker.high{border-color:#855467;background:#3e222d;color:#ffc1c9}
.impact-marker.user{border-color:#79663b;background:#3a2e1d;color:#f9dba2}
.action-item button.conditional-button{background:#37402d;border-color:#8a7746;color:#ffe3ae}
.action-item button.conditional-button:hover{background:#4d4a31;border-color:#edc374}


/* Lab #008: reusable multi-device change-management and network-path workbench */
.cm-workbench{margin:0 0 22px}
.cm-workbench-inner{display:grid;grid-template-columns:minmax(255px,.85fr) minmax(360px,1.15fr);gap:28px;padding:22px}
.cm-topology-col,.cm-plan-col{min-width:0}
.cm-topology{background:linear-gradient(155deg,#0a1d2e,#0c2440);border:1px solid #304b64;border-radius:15px;padding:20px;display:grid;gap:12px}
.cm-dist-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cm-node{border:1px solid #47738a;border-radius:11px;text-align:center;background:#153447;padding:11px 8px;color:#d6f5ff}
.cm-node strong{font-size:13px;display:block;letter-spacing:.015em}
.cm-node span{font-size:10px;color:#a0becf;display:block;margin-top:3px}
.cm-paths{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 9px}
.cm-path{border:1px dashed #45647c;border-top:0;border-radius:0 0 10px 10px;min-height:78px;padding:10px 7px;text-align:center;font-size:10px;font-weight:800;letter-spacing:.055em;color:#88bacc;background:rgba(25,51,73,.35)}
.cm-path span{display:block;color:#b1c7d9;font-size:10px;margin:0 0 7px}
.cm-path.warn{border-color:#bc9b55;color:#f2cd81;background:rgba(173,112,44,.13)}
.cm-path.good{border-color:#4bba91;color:#a4eccb;background:rgba(35,134,97,.12)}
.cm-access-node{background:#113b53;border:1px solid #4e9eb3;color:#d9faff;border-radius:11px;text-align:center;font-weight:850;padding:12px;font-size:13px}
.cm-access-node small{display:block;font-size:10px;font-weight:600;margin-top:4px;color:#9fdee6}
.cm-client-node{font-size:11px;text-align:center;color:#a7c3d7}
.cm-explainer{font-size:12px;color:#95b5ca;line-height:1.65;margin:13px 0 0}
.cm-plan-title strong{display:block;font-size:16px;color:#e9f6ff}
.cm-plan-title p{color:#a6bccf;font-size:12px;line-height:1.6;margin:6px 0 17px}
.cm-sleep{border:1px dashed #426078;background:#0e2539;border-radius:13px;padding:24px 18px;text-align:center;color:#a9c2d5}
.cm-sleep span{font-size:26px;color:#78cedf;display:block}
.cm-sleep strong{font-size:13px;display:block;color:#d1ebf8;margin:6px 0}
.cm-sleep p{font-size:12px;line-height:1.6;margin:0}
.cm-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cm-field{min-width:0;display:grid;gap:6px}
.cm-field>span{font-size:11px;letter-spacing:.07em;font-weight:800;color:#b4cede}
.cm-field select,.cm-field textarea{color:#e5f3fc;background:#0c2135;border:1px solid #3a5e79;border-radius:9px;padding:10px 11px;width:100%;min-width:0;font-size:12px;line-height:1.5}
.cm-field select{min-height:45px}
.cm-field textarea{resize:vertical}
.cm-field select:focus,.cm-field textarea:focus{outline:2px solid #61d2e2;outline-offset:2px}
.cm-field option{background:#11283d;color:#e5f3fc}
.cm-full,.cm-ack,.cm-form-foot{grid-column:1/-1}
.cm-ack{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.55;color:#bfcede}
.cm-ack input{accent-color:#5de0cf;width:17px;height:17px;flex:none;margin:1px 0}
.cm-form-foot{display:flex;gap:12px;align-items:center;flex-wrap:wrap;border-top:1px solid #2c455d;padding-top:14px}
.cm-form-foot>span{font-size:11px;color:#9db8c8;flex:1;line-height:1.5}
.cm-approved{background:#0e2836;border:1px solid #346a6f;border-radius:12px;padding:18px}
.cm-approved>strong{color:#91edc6;font-size:14px;display:block}
.cm-approved p{font-size:12px;color:#bfd5df;line-height:1.65;margin:9px 0}
.cm-approved .cm-note{background:#102239;border-left:2px solid #5ac4ce;padding:9px 12px;white-space:pre-wrap;overflow-wrap:anywhere}
.cm-close-row{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin-top:15px}
.cm-close-row>span{font-size:11px;color:#a9c0ce;line-height:1.4;flex:1}
.cm-close-row .cm-good{color:#8be5c1}
.cm-mitigate{width:100%;margin-top:9px;font-size:11px!important;padding:9px!important}
.cm-result-summary{border:1px solid #54727d;border-radius:12px;background:#102a36;padding:14px 17px;margin:14px 0}
.cm-result-summary strong{display:block;font-size:13px;color:#a5eccf}
.cm-result-summary p{margin:7px 0 0;font-size:12px;color:#b0cbd3;line-height:1.6}
.result-panel.mitigated{border-color:#ae8d4b;background:linear-gradient(160deg,#2d2719,#14202b)}
.result-panel.mitigated .result-icon{color:#edc77e}
@media(max-width:990px){.cm-workbench-inner{grid-template-columns:1fr;gap:20px}.cm-topology-col{max-width:740px;width:100%;margin:auto}}
@media(max-width:640px){.cm-workbench-inner{padding:14px}.cm-topology{padding:13px}.cm-dist-row,.cm-paths{gap:9px}.cm-form{grid-template-columns:1fr}.cm-field,.cm-ack,.cm-form-foot{grid-column:1}.cm-form-foot .primary-btn{width:100%}.cm-plan-title strong{font-size:15px}}
