/* Coiled tubing simulator (oilgaslibrary.com, r25) */
*{box-sizing:border-box}
html,body{margin:0;background:#F2EFE7;color:#1b232b;font:15px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans Arabic",Tahoma,sans-serif}
.ct{max-width:1240px;margin:0 auto;padding:8px;position:relative}
.ct button{font:inherit;cursor:pointer;touch-action:manipulation}
.ct-b{min-height:40px;padding:6px 12px;border:1.5px solid #1b232b;border-radius:10px;background:#fffdf8;color:#1b232b;font-weight:700}
.ct-b:disabled{opacity:.45;cursor:not-allowed}
.ct-b:active{transform:translateY(1px)}
.ct-b.pri{background:#1b232b;color:#fff}
.ct-b.ok{background:#d5f0dc;border-color:#2e6b40}
.ct button:focus-visible,.ct select:focus-visible,.ct input:focus-visible{outline:3px solid #f5a524;outline-offset:2px}
.ct-bar{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:end;margin-bottom:8px}
.ct-sel{display:flex;flex-direction:column;gap:2px;font-size:12px;font-weight:700;color:#4a535b;min-width:0}
.ct-sel select{min-height:40px;width:100%;border:1.5px solid #1b232b;border-radius:10px;background:#fffdf8;font:inherit;font-size:14px;padding:4px 8px;color:#1b232b}
.ct-tabs{display:flex;gap:6px;margin:0 0 8px}
.ct-tab{flex:1;min-height:44px;border:1.5px solid #1b232b;border-radius:12px;background:#fffdf8;font-weight:800;color:#1b232b}
.ct-tab[aria-selected=true]{background:#1b232b;color:#fff}
.ct-guide{background:#1d2a26;color:#e9fff1;border-radius:12px;padding:10px 12px;margin-bottom:8px;font-size:14px}
.ct-guide b{color:#8af0ae}
.ct-gbar{height:5px;background:#33463f;border-radius:4px;margin-top:8px;overflow:hidden}.ct-gbar i{display:block;height:100%;width:0;background:#8af0ae;transition:width .4s}
.ct-card{background:#fffdf8;border:1.5px solid #1b232b;border-radius:14px;padding:10px 12px;margin-bottom:10px;min-width:0}
.ct-card h3{font-size:15px;margin:0 0 6px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.ct-ill{font-size:10.5px;font-weight:800;letter-spacing:.08em;background:#1b232b;color:#fff;border-radius:999px;padding:2px 8px}
.ct-kv{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;font-size:13.5px;margin:0}
.ct-kv dt{color:#56606a;font-weight:700}.ct-kv dd{margin:0;font-variant-numeric:tabular-nums;text-align:start}[dir=rtl] .ct-kv dd{text-align:right}.ct-n{display:inline-block;min-width:1.4em;height:1.4em;line-height:1.4em;border-radius:50%;background:#1b232b;color:#fff;font-size:12px;text-align:center;margin-inline-end:4px}
.ct-hint{font-size:12.5px;color:#5c646b;margin:4px 0 8px}
.ct-setup{display:grid;gap:0 10px}
.ct-bhaw{display:grid;grid-template-columns:1fr;gap:10px}
.ct-rack{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}
.ct-ti{display:flex;align-items:center;gap:8px;min-height:52px;text-align:start;border:1.5px solid #1b232b;border-radius:10px;background:#fff;padding:4px 8px;font-size:12.5px;line-height:1.2;color:#1b232b}
.ct-ti svg{width:34px;height:44px;flex:none}
.ct-ti b{display:block;font-size:12.5px}.ct-ti small{color:#56606a;font-size:11px}
.ct-asm{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.ct-asm li{display:flex;align-items:center;gap:6px;border:1.5px solid #1b232b;border-radius:10px;background:#fff;padding:3px 4px 3px 8px;font-size:13px;min-height:44px}
.ct-asm li.e{border-color:#b0281d;background:#fde3df}.ct-asm li.drag{opacity:.4}
.ct-asm li span{flex:1;min-width:0}.ct-asm li small{color:#56606a}
.ct-asm li button{width:34px;height:34px;border:1px solid #8b949b;border-radius:8px;background:#f6f3ec;font-weight:800;line-height:1;padding:0;color:#1b232b}
.ct-bhad{display:flex;gap:8px;align-items:flex-start}
.ct-bhad{flex-direction:column;align-items:stretch}.ct-bhad>#ct-bhasvg{width:100%;max-width:320px;align-self:center}.ct-bhad .ct-bhasvg{display:block;width:100%;height:auto;background:#eef0ee;border-radius:10px}.ct-bhad .ct-asm{flex:1;min-width:0}
.ct-bl{font-size:9.5px;fill:#1b232b;font-weight:600}.ct-bl.r{fill:#b0281d}
.ct-tl.bad rect,.ct-tl.bad path{stroke:#c0392b;stroke-width:2}
.ct-sum{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;font-weight:700;margin:6px 0}
.ct-sum span{font-variant-numeric:tabular-nums}.ct-sum .bad{color:#b0281d}
.ct-warn{list-style:none;margin:6px 0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:12.5px}
.ct-warn li{border-radius:8px;padding:5px 8px;border-inline-start:4px solid}
.ct-warn .e{background:#fde3df;border-color:#b0281d}.ct-warn .w{background:#fff1d6;border-color:#b5781a}.ct-warn .i{background:#e3eef8;border-color:#3d6f9c}
.ct-stw{display:grid;grid-template-columns:1fr;gap:10px}
.ct-stsvg{width:100%;height:auto;max-height:560px;display:block;background:linear-gradient(#e4eef4,#f2efe7 70%);border-radius:10px}
.ct-sl{font-size:9px;fill:#36414a;font-weight:700}
.ct-st{cursor:pointer;transition:opacity .35s}
.ct-st.gh{opacity:.16}
.ct-st.nx{opacity:.5;animation:ctp 1.1s infinite}
@keyframes ctp{50%{opacity:.25}}
.ct-rig{display:flex;flex-direction:column;gap:6px}
.ct-rig .ct-b{text-align:start;display:flex;justify-content:space-between;align-items:center;gap:8px}
.ct-rig .ct-b.done{background:#d5f0dc;border-color:#2e6b40}
.ct-rig .ct-b.nxt{box-shadow:0 0 0 3px #f5a524}
.ct-ptc{width:100%;height:auto;display:block;background:#0f1418;border-radius:8px;margin-top:6px}
.ct-pt{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.ct-msg{font-size:13px;font-weight:600;margin:6px 0 0;min-height:1.2em}
.ct-msg.ok{color:#1d6b38}.ct-msg.bad{color:#b0281d}
/* cab */
.ct-cab{background:#1a1f24;border-radius:16px;padding:8px;color:#e6ebef}
.ct-cab .ct-b{background:#2b333a;color:#eef2f5;border-color:#56626c}
.ct-cab .ct-b.on{background:#1e6b3a;border-color:#8af0ae;color:#fff}
.ct-cab .ct-b.cl{background:#b0281d;border-color:#ffb4ab;color:#fff}
.ct-cab .ct-b.ok{background:#1e6b3a;border-color:#8af0ae;color:#fff}
.ct-pan{background:#232a31;border:1px solid #3c4650;border-radius:12px;padding:8px;margin-bottom:8px;min-width:0}
.ct-pan h4{margin:0 0 6px;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:#9fb0bd;display:flex;justify-content:space-between;align-items:center;gap:6px}
.ct-ann{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.ct-t{font:800 9.5px/1.1 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.02em;text-align:center;padding:5px 2px;border-radius:5px;background:#2b3137;color:#5f6870;border:1px solid #11161a;min-height:30px;display:flex;align-items:center;justify-content:center}
.ct-t.on.st{background:#1e6b3a;color:#dfffe9}.ct-t.on.am{background:#d49a1c;color:#231700}.ct-t.on.rd{background:#b0281d;color:#fff}
.ct-t.bl{animation:ctb .9s steps(2) infinite}
@keyframes ctb{50%{filter:brightness(1.5)}}
.ct-gw{display:grid;grid-template-columns:1.25fr 1fr;gap:6px;align-items:center}
.ct-gs{display:grid;grid-template-columns:repeat(2,1fr);gap:4px}
.ct-gsvg{width:100%;height:auto;display:block;cursor:pointer}
.ct-gt{font-size:8.5px;fill:#1b232b;font-weight:700}.ct-gt.b{font-size:8.5px}
.ct-gl{font-size:7.5px;fill:#1b232b;font-weight:800;letter-spacing:.06em}
.ct-gu{font-size:6.5px;fill:#56606a;font-weight:700}
.ct-gd{font:700 10px ui-monospace,Menlo,Consolas,monospace;fill:#8af0ae}
.ct-gn{transition:none}
.ct-dig{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}
.ct-d{background:#0d1310;border:1px solid #2f3a33;border-radius:7px;padding:3px 6px;min-width:0}
.ct-d span{display:block;font-size:9.5px;font-weight:800;color:#8a9aa6;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct-d b{display:block;font:700 16px/1.15 ui-monospace,Menlo,Consolas,monospace;color:#8af0ae;white-space:nowrap;font-variant-numeric:tabular-nums}
.ct-d i{font-style:normal;font-size:9.5px;color:#8a9aa6}
.ct-d.hi b{color:#ff8a7a}.ct-d.am b{color:#ffd166}
.ct-mon{display:grid;grid-template-columns:1fr 1fr;gap:6px;align-items:start}
.ct-gs2{grid-template-columns:repeat(4,1fr);margin-top:4px}
.ct-msvg,.ct-zsvg{width:100%;height:auto;display:block;background:#11161b;border-radius:10px}
.ct-ml{font-size:10.5px;fill:#aab7c2;font-weight:600}.ct-ml.b{fill:#e6ebef;font-weight:800}.ct-ml.r{fill:#ff8a7a}.ct-ml.y{fill:#ffd166}
.ct-fsvg{width:100%;height:auto;display:block;border-radius:8px;cursor:pointer}
.ct-ft{font-size:7.5px;fill:#8a9aa6}
.ct-ctl{display:grid;grid-template-columns:1fr;gap:8px}
.ct-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ct-sld{display:grid;grid-template-columns:96px 1fr 74px;gap:6px;align-items:center;font-size:12px;margin:4px 0}
.ct-sld label{font-weight:700;color:#c6d1da;line-height:1.15}
.ct-sld input{width:100%;height:32px;accent-color:#f5a524;margin:0}
.ct-sld output{font:700 13px ui-monospace,Menlo,Consolas,monospace;color:#8af0ae;text-align:end;white-space:nowrap}
.ct-jb{display:flex;gap:6px;justify-content:center;margin-top:6px;flex-wrap:wrap}
.ct-jb .ct-b{min-width:54px}
.ct-stop{background:#b0281d!important;border-color:#ffb4ab!important;color:#fff!important;min-width:84px}
.ct-rams{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.ct-rams .ct-b{padding:4px 2px;font-size:12px;min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1}
.ct-rams .ct-b small{font-size:9.5px;font-weight:800;letter-spacing:.05em}
.ct-rams .ct-b.ft{box-shadow:inset 0 -3px 0 #8af0ae}
.ct-mimic{display:grid;grid-template-columns:110px 1fr;gap:8px;align-items:start}
.ct-mimic .ct-stsvg{background:#2b333a;border-radius:8px}
.ct-mimic .ct-sl{fill:#c6d1da}
.ct-toast{min-height:44px;margin:0 0 8px;padding:9px 12px;border-radius:12px;font-size:13.5px;font-weight:600;border:1.5px dashed #b9b2a2;color:transparent;background:transparent;transition:background .2s}
.ct-cab .ct-toast{border-color:#3c4650}
.ct-toast.warn{background:#fff1d6;color:#5a3a00;border-color:#b5781a}.ct-toast.ok{background:#e6f6ea;color:#1d4d2b;border-color:#3f8f56}.ct-toast.bad{background:#fde3df;color:#6e1712;border-color:#b0281d}
.ct-info{background:#fffdf8;color:#1b232b;border:1.5px solid #1b232b;border-radius:12px;padding:10px 12px;margin-top:8px}
.ct-info h3{font-size:15px;margin:0 0 4px}
.ct-info dl{margin:0}.ct-info dt{font-weight:800;font-size:12px;color:#56606a;margin-top:6px;text-transform:uppercase;letter-spacing:.03em}.ct-info dd{margin:2px 0 0;font-size:13.5px}
.ct-note{font-size:12px;color:#4a535b;margin:8px 2px}
.ct[dir=rtl] .ct-sld output{text-align:start}
.ct [dir=ltr]{direction:ltr}
@media (min-width:560px){.ct-bhad{flex-direction:row;align-items:flex-start}.ct-bhad>#ct-bhasvg{flex:0 0 44%;max-width:260px}.ct-bar{grid-template-columns:repeat(4,1fr) auto}.ct-rack{grid-template-columns:repeat(2,1fr)}.ct-ann{grid-template-columns:repeat(6,1fr)}.ct-dig{grid-template-columns:repeat(4,1fr)}.ct-bhaw{grid-template-columns:1fr 1fr}.ct-stw{grid-template-columns:1.1fr 1fr}}
@media (min-width:900px){
 .ct-setup{grid-template-columns:1fr 1fr}.ct-setup .span{grid-column:1/-1}
 .ct-cabg{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:8px}
 .ct-ctl{grid-template-columns:1.2fr 1fr 1fr}
 .ct-ann{grid-template-columns:repeat(7,1fr)}
}
@media (prefers-reduced-motion:reduce){.ct-t.bl,.ct-st.nx{animation:none}}
.ct-h3s{margin-top:12px!important}
.ct-card .ct-sld label{color:#1b232b}.ct-card .ct-sld output{color:#1b232b}

/* r25: narrow top bar (job and fault full width, no truncation) */
@media (max-width:559.98px){.ct-bar{grid-template-columns:1fr 1fr auto;grid-template-areas:"j j j" "f f f" "m s r"}.ct-bar>.ct-sel:nth-child(1){grid-area:j}.ct-bar>.ct-sel:nth-child(2){grid-area:m}.ct-bar>.ct-sel:nth-child(3){grid-area:f}.ct-bar>.ct-sel:nth-child(4){grid-area:s}.ct-bar>#ct-reset{grid-area:r}}
/* r25: tool-card buttons */
.ct-tiw{position:relative;display:flex;min-width:0}
.ct-tiw>.ct-ti{flex:1;min-width:0;padding-inline-end:36px}
.ct .ct-tib{flex:none;width:30px;height:30px;border-radius:50%;border:1.5px solid #1f5e8c;background:#e8f2fa;color:#1f5e8c;font:italic 800 15px/1 Georgia,"Times New Roman",serif;padding:0;display:inline-grid;place-items:center}
.ct-tiw>.ct-tib{position:absolute;top:50%;margin-top:-15px;inset-inline-end:4px}
.ct .ct-tib:hover{background:#1f5e8c;color:#fff}
.ct .ct-asm li .ct-tib{width:34px;height:34px;border-radius:50%;border-color:#1f5e8c;background:#e8f2fa;color:#1f5e8c}
.ct .ct-guide .ct-tib.g{width:28px;height:28px;vertical-align:middle;border-color:#8fd3ff;background:#24423a;color:#cfeaff}
/* r25: tool card popover */
.ct-tcov{position:fixed;inset:0;background:rgba(15,20,24,.42);z-index:40}
.ct-tc{position:absolute;left:8px;right:8px;margin:0 auto;max-width:760px;z-index:41;background:#fffdf8;color:#1b232b;border:2px solid #1b232b;border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.35);padding:12px 14px 14px}
.ct-tchd{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border-bottom:1.5px solid #e2dccd;padding-bottom:8px;margin-bottom:10px}
.ct-tck{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#1f5e8c}
.ct-tc h3{margin:2px 0 2px;font-size:19px;line-height:1.25}
.ct-tchd small{color:#56606a;font-size:12.5px}
.ct .ct-tcx{flex:none;width:44px;height:44px;border-radius:50%;border:1.5px solid #1b232b;background:#fff;font-size:26px;line-height:1;padding:0;color:#1b232b}
.ct .ct-tcx:hover{background:#1b232b;color:#fff}
.ct-tcb{display:grid;grid-template-columns:1fr;gap:12px}
.ct-tcf{margin:0;background:#eef2f4;border-radius:12px;padding:6px 6px 4px;align-self:start}
.ct-tcsvg{display:block;width:100%;max-width:300px;height:auto;margin:0 auto;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.ct-tcl{font-size:8.6px;font-weight:650;fill:#1b232b}.ct-tcl.b{font-weight:800}
.ct-tcf figcaption{font-size:10.5px;color:#56606a;line-height:1.3;padding:4px 4px 2px;text-align:center}
.ct-tct h4{margin:8px 0 2px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:#1f5e8c}
.ct-tct h4:first-child{margin-top:0}
.ct-tct p{margin:0 0 4px;font-size:14px;line-height:1.5}
.ct-ops{list-style:none;margin:2px 0 6px;padding:0;display:grid;gap:4px}
.ct-ops li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:13.5px;padding:5px 8px;border-radius:9px;background:#f4f0e6}
.ct-ops li>span:first-child{font-weight:700;min-width:8.5em}
.ct-ops small{color:#4a535b;font-size:12.5px}
.ct-chip{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:800;border:1.5px solid}
.ct-chip.req{background:#1e6b3a;border-color:#1e6b3a;color:#fff}.ct-chip.pref{background:#e6f6ea;border-color:#3f8f56;color:#1d4d2b}.ct-chip.rec{background:#e8f2fa;border-color:#1f5e8c;color:#163f5e}
.ct-chip.alt,.ct-chip.opt{background:#fff;border-color:#8b949b;color:#3a434b}.ct-chip.no{background:#fff1d6;border-color:#b5781a;color:#5a3a00}.ct-chip.x{background:#fde3df;border-color:#b0281d;color:#6e1712}
.ct-tcn{background:#fff1d6;border-inline-start:4px solid #b5781a;border-radius:8px;padding:6px 9px;font-size:13.5px!important}
@media (min-width:620px){.ct-tcb{grid-template-columns:minmax(220px,300px) 1fr}}
/* r25: start chooser, coach line, completion */
.ct-guide.ch{background:#1d2a26;padding:12px}
.ct-ch h3{margin:0 0 6px;font-size:17px;color:#fff}
.ct-chl{margin:8px 0 4px;font-size:12.5px;font-weight:800;color:#8af0ae;text-transform:uppercase;letter-spacing:.03em}
.ct-chg{display:grid;grid-template-columns:1fr;gap:8px}
@media (min-width:560px){.ct-chg{grid-template-columns:1fr 1fr}}
.ct-chb{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:start;min-height:52px;padding:9px 12px;border-radius:12px;border:2px solid #4b6158;background:#24342f;color:#e9fff1}
.ct-chb b{color:#fff!important;font-size:15px}.ct-chb small{color:#bfd8cc;font-size:12.5px;line-height:1.4}
.ct-chb.on{border-color:#8af0ae;background:#2b4a3d;box-shadow:inset 0 0 0 1px #8af0ae}
.ct-chb.go{background:#8af0ae;border-color:#8af0ae}.ct-chb.go b{color:#10241a!important}.ct-chb.go small{color:#1d4d2b}
.ct .ct-chb:hover{filter:brightness(1.08)}
.ct-gnx{margin:8px 0 0;padding:7px 10px;border-radius:10px;background:#24423a;border:1px solid #3f6b5a;font-size:13.5px}
.ct-gnx b{color:#ffd166!important}
.ct-coach{margin:8px 0 0;padding:7px 10px;border-radius:10px;font-size:13.5px;font-weight:600}
.ct-coach.w{background:#fff1d6;color:#5a3a00}.ct-coach.w b{color:#8a5200!important}
.ct-coach.i{background:#dff0fb;color:#163f5e}.ct-coach.i b{color:#1f5e8c!important}
.ct-guide.end p{margin:6px 0 8px}.ct-gst{font-size:13px;color:#bfd8cc}
/* r25: highlight of the next guided action */
.ct .ct-hl{outline:3px solid #f5a524;outline-offset:2px;border-radius:12px;animation:ctPulse 1.4s ease-in-out infinite}
@keyframes ctPulse{0%,100%{box-shadow:0 0 0 0 rgba(245,165,36,.6)}50%{box-shadow:0 0 0 8px rgba(245,165,36,0)}}
@media (prefers-reduced-motion:reduce){.ct .ct-hl{animation:none}}
.ct-cstep{margin:0 0 8px;padding:8px 12px;border-radius:12px;background:#1d2a26;border:1.5px solid #3f6b5a;color:#e9fff1;font-size:13.5px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}
.ct-cstep>b{color:#8af0ae}.ct-cstep .ct-coach{margin:0;flex:1 1 260px}
.ct[dir=rtl] .ct-ti [dir=ltr]{text-align:right}
.ct-bhasvg,.ct-tc svg{direction:ltr}
.ct-bl.s{font-weight:500;fill:#4a535b;font-size:8.5px}
.ct-tcsub{display:block;font-size:13px;color:#4a535b;font-weight:600;margin:-2px 0 2px}
.ct-ti small{white-space:nowrap}
@media (max-width:400px){.ct-ti{gap:5px;padding-inline-start:5px}.ct-ti svg{width:24px;height:40px}.ct-ti b{font-size:12px}.ct-ti small{font-size:10.5px}}

/* ---- R26 control cab: stainless console, engraved plates, lamp annunciator, E-stop, odometer ---- */
.ct-con{background:linear-gradient(180deg,#d5dade 0%,#bfc5ca 48%,#cfd4d8 100%);border:1px solid #7d868e;box-shadow:inset 0 1px 0 #f3f5f7,inset 0 -1px 0 #8e979e,0 2px 6px rgba(0,0,0,.45);color:#1b232b;position:relative}
.ct-con::before,.ct-con::after{content:"";position:absolute;top:6px;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#f6f7f8,#7b848b 70%);box-shadow:0 0 0 1px #6b737a}
.ct-con::before{left:6px}.ct-con::after{right:6px}
.ct-con h4{color:#1b232b;padding:0 12px}
.ct-plate{display:inline-block;background:#15191d;color:#f1f3f4;font:800 10.5px/1 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.14em;padding:4px 8px;border-radius:3px;box-shadow:inset 0 0 0 1px #3a4148}
.ct-ploc{font-size:11.5px;letter-spacing:0;text-transform:none;color:#2d363e;font-weight:700}
.ct-con .ct-ill{color:#4a535b}
.ct-con .ct-sld label{color:#1b232b}
.ct-con .ct-sld output{background:#0e1a14;color:#8af0ae;border-radius:4px;padding:3px 5px;box-shadow:inset 0 1px 2px #000}
.ct-con .ct-cap,.ct-faces,.ct-mech small,.ct-brkl{font-size:11px;color:#39424a;margin:2px 0 4px;line-height:1.3}
.ct-faces{margin:6px 2px 0}
.ct-gs2{grid-template-columns:repeat(4,1fr);align-items:center}
/* lever: injector directional / speed control */
.ct-lev{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center}
.ct-lvl{font:800 13px/1 ui-monospace,Menlo,Consolas,monospace;color:#f1f3f4;background:#15191d;border-radius:3px;padding:5px 7px;text-align:center}
.ct-lvl small{display:block;font-size:9.5px;color:#ffd166;margin-top:2px}
.ct-lvs{position:relative;background:linear-gradient(180deg,#2a3036,#11151a);border-radius:22px;padding:4px 10px;box-shadow:inset 0 2px 5px #000,0 1px 0 #eef1f3}
.ct-lvs::before{content:"";position:absolute;left:50%;top:3px;bottom:3px;width:2px;margin-left:-1px;background:#f5a524;opacity:.8}
.ct-lvs input{-webkit-appearance:none;appearance:none;width:100%;height:40px;background:transparent;margin:0;position:relative}
.ct-lvs input::-webkit-slider-runnable-track{height:6px;background:#3a4148;border-radius:3px}
.ct-lvs input::-moz-range-track{height:6px;background:#3a4148;border-radius:3px}
.ct-lvs input::-webkit-slider-thumb{-webkit-appearance:none;width:30px;height:30px;margin-top:-12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff8a7a,#c0392b 55%,#6e1712);border:2px solid #1b232b;box-shadow:0 2px 4px rgba(0,0,0,.6)}
.ct-lvs input::-moz-range-thumb{width:28px;height:28px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff8a7a,#c0392b 55%,#6e1712);border:2px solid #1b232b}
.ct-lvs input:focus-visible{outline:2px solid #ffd166;outline-offset:2px}
/* reel brake valve */
.ct-brk{display:inline-flex;flex-direction:column;align-items:center;min-width:110px;line-height:1.1}
.ct-brk small{font-size:10px;font-weight:800;letter-spacing:.05em}
.ct-flash{animation:ctfl .35s ease-in-out 3}
@keyframes ctfl{50%{box-shadow:0 0 0 4px #ffd166}}
/* E-stop mushroom on a yellow collar */
.ct-es{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center}
.ct-esd{width:min(84px,100%);aspect-ratio:1;border-radius:50%;border:9px solid #f1c40f;background:radial-gradient(circle at 38% 32%,#ff7b6b,#c0392b 55%,#6e1712);box-shadow:0 0 0 1px #8a6d00,0 4px 6px rgba(0,0,0,.55),inset 0 -4px 6px rgba(0,0,0,.35);color:#fff;font:800 13px ui-monospace,Menlo,Consolas,monospace;letter-spacing:.06em;cursor:pointer;padding:0}
.ct-esd.on{box-shadow:0 0 0 1px #8a6d00,inset 0 3px 8px rgba(0,0,0,.6);transform:scale(.94);background:radial-gradient(circle at 50% 50%,#d8483a,#8f1f16 70%)}
.ct-es b{font:800 9.5px/1.1 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.06em;background:#f1c40f;color:#1b232b;padding:2px 5px;border-radius:2px}
.ct-es small{font-size:10px;line-height:1.25;color:#39424a}.ct-es small.on{color:#b0281d;font-weight:800}
/* mechanical depth counter */
.ct-mech{text-align:center;margin-top:4px}
.ct-odo{display:inline-flex;align-items:center;gap:2px;background:#15191d;padding:4px 6px;border-radius:5px;box-shadow:inset 0 2px 4px #000,0 1px 0 #f3f5f7}
.ct-ow{display:inline-block;width:1.05em;height:1.3em;overflow:hidden;background:linear-gradient(180deg,#bfbfbf,#fff 30%,#fff 70%,#bfbfbf);color:#111;border-radius:2px;font:800 17px/1.3 ui-monospace,Menlo,Consolas,monospace;text-align:center}
.ct-ow.t{background:linear-gradient(180deg,#8f1f16,#d8483a 30%,#d8483a 70%,#8f1f16);color:#fff}
.ct-ow i{display:block;font-style:normal}
.ct-odp{color:#f1f3f4;font-size:17px;line-height:1}
.ct-odo em{font:800 10px ui-monospace,Menlo,Consolas,monospace;color:#f1f3f4;font-style:normal;margin-left:4px}
/* annunciator: backlit lamp windows */
.ct-annp{background:#14181c}
.ct-t{background:linear-gradient(180deg,#262b30,#1c2125);color:#59626a;border:1px solid #05080a;box-shadow:inset 0 1px 0 #333a40;border-radius:3px}
.ct-t.on.am{background:radial-gradient(ellipse at 50% 40%,#ffe08a,#e0a21b 70%);color:#231700;box-shadow:0 0 8px rgba(255,190,60,.55)}
.ct-t.on.rd{background:radial-gradient(ellipse at 50% 40%,#ff8a7a,#c0392b 70%);color:#fff;box-shadow:0 0 8px rgba(255,90,70,.55)}
.ct-t.on.st{background:radial-gradient(ellipse at 50% 40%,#9ef0b8,#2f8f4e 70%);color:#06210f}
.ct-ann.lt .ct-t{background:radial-gradient(ellipse at 50% 40%,#fff6cf,#e9c44e 70%);color:#231700}
/* electronic DAQ screen */
.ct-daq{background:#0b0f0d;border-color:#2a332e}
.ct-daq h4 small{font-size:10px;color:#6f7d77;text-transform:none;letter-spacing:0}
.ct-daq .ct-d{background:#07120c;border-color:#1d2b22}
@media (max-width:420px){.ct-gs2{grid-template-columns:repeat(2,1fr)}.ct-esd{width:78px}.ct-lvl{font-size:12px;padding:4px 5px}}
@media (prefers-reduced-motion:reduce){.ct-flash{animation:none}}
.ct-gsvg,.ct-odo,.ct-d b{direction:ltr}
.ct-mech small{display:block}
.ct-gd.b{font-size:9px}
@media (max-width:559px){.ct-con .ct-gw{grid-template-columns:1fr}.ct-con .ct-gw>div:first-child{max-width:300px;margin:0 auto;width:100%}.ct-con .ct-gs{gap:8px}}
.ct-mech{cursor:pointer}
/* r27: operation missions (acid, milling, cement) */
.ct-mis{margin:12px 0;padding:14px 16px;border:1px solid var(--ct-line,#c9c3b4);border-radius:12px;background:var(--ct-card,#fffdf8)}
.ct-mis h3{margin:0 0 8px;font-size:1.05rem}
.ct-mis h4{margin:12px 0 6px;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;opacity:.7}
.ct-mb{margin:0 0 8px;line-height:1.55}
.ct-mh{margin:0 0 8px;padding:8px 10px;border-inline-start:4px solid #c0392b;background:rgba(192,57,43,.07);border-radius:6px;font-size:.92rem;line-height:1.5}
.ct-mn{margin:0 0 10px;font-size:.85rem;opacity:.75}
.ct-mst{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}
.ct-ml2{font-weight:700;font-size:.9rem}
.ct-chip2{border:2px solid var(--c,#555);background:transparent;color:inherit;border-radius:999px;padding:8px 14px;min-height:40px;font:inherit;font-weight:700;cursor:pointer}
.ct-chip2.on{background:var(--c,#555);color:#fff}
.ct-cq{display:flex;height:22px;border-radius:6px;overflow:hidden;border:1px solid #1b232b;margin:8px 0 2px}
.ct-cq i{display:block;min-width:2px}
.ct-cql{display:flex;justify-content:space-between;font-size:.74rem;opacity:.7;margin-bottom:8px}
.ct-mg{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:10px 0}
.ct-om{padding:8px 10px;border-radius:8px;background:rgba(0,0,0,.05);display:flex;flex-direction:column;gap:2px}
.ct-om span{font-size:.76rem;opacity:.75}
.ct-om b{font-size:1.02rem;font-variant-numeric:tabular-nums}
.ct-om.ok{background:rgba(39,174,96,.16)}.ct-om.warn{background:rgba(230,160,20,.22)}.ct-om.bad{background:rgba(192,57,43,.22)}
.ct-mc{display:grid;grid-template-columns:1.3fr 1fr;gap:18px}
.ct-ml{margin:0;padding-inline-start:22px;display:grid;gap:6px}
.ct-ml li{line-height:1.5;font-size:.94rem}.ct-ml li.done{opacity:.55;text-decoration:line-through}.ct-ml li.nxt{font-weight:700;color:#0b5fa5}
.ct-mev{margin:0;padding-inline-start:18px;display:grid;gap:6px;font-size:.9rem}.ct-mev li:not(.none){color:#a5281b}
.ct-msc{margin-top:10px;padding:10px 12px;border-radius:8px;background:rgba(0,0,0,.06);display:flex;flex-direction:column;gap:2px}
.ct-msc.ok{background:rgba(39,174,96,.2)}
@media (max-width:700px){.ct-mc{grid-template-columns:1fr}.ct-mis{padding:12px}.ct-mg{grid-template-columns:repeat(2,1fr)}.ct-chip2{flex:1 1 40%}}

/* ---- r28: "How it works" video ---- */
.ct-howb{background:#0b5fa5;color:#fff;border-color:#0b5fa5;font-weight:700}
.ct-howb:hover,.ct-howb:focus-visible{background:#094d86}
.ct-chhow{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 10px}
.ct-chhow span{font-size:.92rem;opacity:.85}
.ct-hw{margin:10px 0;padding:10px;border-radius:12px;background:#111820;color:#e9eef2;box-shadow:0 6px 24px rgba(0,0,0,.25)}
.ct-hw[hidden]{display:none}
.ct-hwh{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 8px}
.ct-hwh b{font-size:1rem;line-height:1.35}
.ct-hwx{min-width:44px;min-height:44px;font-size:1.1rem;background:#2a333c;color:#fff;border-color:#4a535b}
.ct-hw video{display:block;width:100%;max-height:72vh;aspect-ratio:16/9;background:#000;border-radius:8px}
.ct-hws{margin:6px 2px 0;font-size:.8rem;opacity:.75}
@media (min-width:760px){.ct-bar{grid-template-columns:repeat(4,1fr) auto auto}}
.ct-howb{white-space:nowrap}
@media (max-width:759px){.ct-bar .ct-howb{grid-column:1/-1}}
/* r28: the mission card sits inside the dark cab in cab view: keep its own dark ink on the light card */
.ct-mis{color:#1b232b}
.ct-chip2.on{text-shadow:0 1px 2px rgba(0,0,0,.55)}
/* ===== r29 phone shell: readout strip on top, one view at a time, side tab rail (right in LTR, left in RTL), thumb dock at the bottom ===== */
html.ct-shon,html.ct-shon body{overflow:hidden!important;height:100%;overscroll-behavior:none}
.ct.shell{position:static;padding:0;max-width:none}
.ct.shell>:not(#ct-vc):not(#ct-hw):not(#ct-tc):not(#ct-tcov){display:none!important}
.ct.shell>#ct-vc{position:fixed;inset:0;z-index:30;background:#1a1f24}
.ct.shell .ct-hw{position:fixed;inset:8px;z-index:60;margin:0;overflow:auto}
.ct.shell .ct-tc{position:fixed!important;top:8px!important;left:8px;right:8px;max-height:calc(100% - 16px);overflow:auto;z-index:80}
.ct-msh{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,1fr) 54px;grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-areas:"top top" "main rail" "co co" "dock dock";
 border-radius:0;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);gap:0;-webkit-tap-highlight-color:transparent}
.ct-mtop{grid-area:top;display:flex;gap:4px;padding:4px 4px 3px;background:#101418;border-bottom:1px solid #2c343b;min-width:0}
.ct-ro{flex:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;min-width:0}
.ct-rc{direction:ltr;background:#07120c;border:1px solid #1d2b22;border-radius:6px;padding:1px 5px 2px;min-width:0;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:3px;align-items:baseline;line-height:1.05}
.ct-rc span{grid-column:1/3;font:800 8.5px/1.2 ui-monospace,Menlo,Consolas,monospace;color:#8a9aa6;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct-rc b{font:700 15px/1.1 ui-monospace,Menlo,Consolas,monospace;color:#8af0ae;white-space:nowrap;font-variant-numeric:tabular-nums;overflow:hidden;direction:ltr;unicode-bidi:isolate}
.ct-rc i{font-style:normal;font-size:8.5px;color:#8a9aa6;white-space:nowrap;overflow:hidden}
.ct-rc.am b{color:#ffd166}.ct-rc.rd{background:#3a0f0b;border-color:#b0281d}.ct-rc.rd b{color:#ff8a7a}.ct-rc.ok b{color:#9ef0b8}
.ct-rsp{cursor:pointer}.ct-rsp select{grid-column:1/3;font:700 13px ui-monospace,Menlo,Consolas,monospace;background:#07120c;color:#8af0ae;border:0;padding:0;min-height:20px;width:100%}
.ct-lampi{flex:0 0 50px;border-radius:8px;border:1.5px solid #3a4148;background:#1c2125;color:#8a9aa6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:44px;padding:2px;cursor:pointer}
.ct-lampi i{width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#59626a,#2b3137);box-shadow:inset 0 1px 2px #000}
.ct-lampi b{font:800 12px/1 ui-monospace,Menlo,Consolas,monospace}
.ct-lampi.am{border-color:#e0a21b;color:#ffd166}.ct-lampi.am i{background:radial-gradient(circle at 40% 35%,#ffe08a,#e0a21b 70%);box-shadow:0 0 10px rgba(255,190,60,.7)}
.ct-lampi.rd{border-color:#ff6b5a;color:#ffb4ab;background:#3a0f0b}.ct-lampi.rd i{background:radial-gradient(circle at 40% 35%,#ff8a7a,#c0392b 70%);box-shadow:0 0 10px rgba(255,90,70,.8)}
.ct-lampi.bl i{animation:ctb .9s steps(2) infinite}
.ct-mmain{grid-area:main;position:relative;min-height:0;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
.ct-pane{min-height:0;min-width:0;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:6px}
.ct-pane[hidden]{display:none}
.ct-ph{margin:0 0 6px;font-size:13px;color:#c6d1da}
.ct-fit{margin:0 auto;max-width:100%}
.ct-mg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;align-items:center}
.ct-mgw{grid-column:span 2;grid-row:span 2}
.ct-mg>*{min-width:0}
.ct-mg .ct-gsvg{width:100%;height:auto}
.ct-mgx{display:grid;gap:4px;align-self:stretch;align-content:center}
.ct-mgx .ct-rc b{font-size:13px}
.ct-mw{display:grid;grid-template-columns:40fr 60fr;gap:6px;align-items:start}
.ct-p-b .ct-fit{max-width:min(100%,420px)}
.ct-p-d .ct-mech{display:flex;flex-direction:column;align-items:center;gap:2px}
.ct-p-d .ct-dig{grid-template-columns:repeat(3,minmax(0,1fr))}
.ct-p-c .ct-pan,.ct-p-m .ct-pan{margin-bottom:6px}
.ct-p-c .ct-sld{grid-template-columns:96px 1fr 74px}
.ct-p-c .ct-b{min-height:44px}
.ct-mmenu{display:grid;gap:6px;margin-bottom:8px}
.ct-mmenu .ct-b{min-height:48px;text-align:start}
.ct-p-m .ct-bar{grid-template-columns:1fr 1fr;grid-template-areas:none;color:#e6ebef}
.ct-p-m .ct-bar>*{grid-area:auto!important}
.ct-p-m .ct-sel{color:#c6d1da}.ct-p-m .ct-sel select{min-height:44px}
.ct-p-m .ct-note{color:#a8b3bc;font-size:12px}
.ct-p-j #ct-jslot>*{margin-bottom:8px}
.ct-minfo{position:absolute;left:6px;right:6px;bottom:6px;max-height:calc(100% - 12px);overflow:auto;z-index:12;background:#fffdf8;border:2px solid #1b232b;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.ct-minfo[hidden]{display:none}
.ct-minfo .ct-info{margin:0;border:0}
.ct-minfx{position:sticky;top:4px;float:inline-end;margin:4px;min-width:44px;min-height:44px;background:#1b232b!important;color:#fff!important}
.ct-annov{position:absolute;inset:4px;z-index:14;overflow:auto}
.ct-annov[hidden]{display:none}
.ct-annov .ct-annp{box-shadow:0 10px 30px rgba(0,0,0,.6);margin:0}
.ct-annov h4{display:flex;justify-content:space-between;align-items:center;gap:6px;flex-wrap:wrap}
.ct-annov .ct-b{min-height:44px}
.ct-annov .ct-ann{grid-template-columns:repeat(3,1fr)}
.ct-annov .ct-t{min-height:38px;font-size:10px}
.ct-rail{grid-area:rail;display:flex;flex-direction:column;gap:3px;padding:4px 3px;background:#101418;border-inline-start:1px solid #2c343b;min-height:0;overflow:auto}
.ct-msh .ct-rt{flex:1 1 0;min-height:44px;max-height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:2px 1px;border-radius:9px;border:1.5px solid transparent;background:#1c2329;color:#a8b3bc;cursor:pointer;font:700 10px/1.1 system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;letter-spacing:-.01em;position:relative;min-width:0}
.ct-rt svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ct-msh .ct-rt span{font-size:10px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ct-rt.on{background:#f5a524;color:#1b232b;border-color:#ffd58a;box-shadow:0 0 0 1px #000}
.ct-rt.on::before{content:"";position:absolute;inset-inline-start:-4px;top:20%;bottom:20%;width:3px;border-radius:2px;background:#ffd166}
.ct-rt:focus-visible{outline:2px solid #ffd166;outline-offset:1px}
.ct-rt.ct-hl{outline:3px solid #8af0ae;outline-offset:-1px;border-radius:9px}
.ct-mco{grid-area:co;position:relative;padding:0 6px;background:#1a1f24}
.ct-mco .ct-toast{position:absolute;inset-inline-start:6px;inset-inline-end:60px;bottom:calc(100% + 4px);margin:0;z-index:20;min-height:0;box-shadow:0 6px 18px rgba(0,0,0,.45)}
.ct-mco .ct-toast:not(.on){display:none}
.ct-mco .ct-cstep{width:100%;margin:4px 0 2px;padding:4px 8px 5px;font-size:12px;line-height:1.3;text-align:start;cursor:pointer;display:block;overflow:hidden;font-family:inherit;color:#e9fff1}
.ct-mco .ct-cstep>b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11.5px}
.ct-mco .ct-cstep[hidden]{display:none}
.ct-mco .ct-cstep .ct-coach{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:3px 0 0;padding:3px 7px;font-size:12px;line-height:1.3}
.ct-dock{grid-area:dock;display:flex;flex-wrap:wrap;gap:5px;padding:5px 6px 6px;background:linear-gradient(180deg,#d5dade 0%,#bfc5ca 100%);border-top:2px solid #7d868e;color:#1b232b}
.ct-dock>*{flex:1 1 100%;min-width:0;margin:0}
.ct-dock .ct-lev{gap:5px}
.ct-dock .ct-lvl{min-height:44px;display:flex;flex-direction:column;justify-content:center;padding:3px 6px}
.ct-dock .ct-lvs input{height:44px}
.ct-dock .ct-lvs input::-webkit-slider-thumb{width:36px;height:36px;margin-top:-15px}
.ct-dock .ct-lvs input::-moz-range-thumb{width:34px;height:34px}
.ct-dock .ct-jb{margin:0;flex-wrap:nowrap;gap:5px}
.ct-dock .ct-jb .ct-b{flex:1 1 0;min-width:44px;min-height:44px;padding:4px 2px;font-size:15px}
.ct-dock .ct-jb .ct-stop{flex:1.6 1 0;min-width:64px}
.ct-dk{display:flex;gap:5px;align-items:center}
.ct-dk>.ct-b{min-height:48px;padding:4px 6px;font-size:12.5px;flex:0 0 auto}
.ct-dock .ct-brk{min-width:72px}
.ct-dk:not(.ct-dkn) .ct-sld{grid-template-columns:minmax(56px,1fr) auto}
.ct-dk:not(.ct-dkn) .ct-sld label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ct-dk #ct-qpo::after{content:" bpm";font-size:9px;color:#8a9aa6}
.ct-dock .ct-pon,.ct-dock .ct-non{min-width:64px}
.ct-dk .ct-sld{flex:1 1 auto;grid-template-columns:auto minmax(40px,1fr) auto;gap:4px;margin:0;min-width:0}
.ct-dk .ct-sld label{font-size:10.5px;color:#1b232b}
.ct-dk .ct-sld input{height:44px}
.ct-dk .ct-sld output{font-size:12px;min-width:42px;background:#0e1a14;color:#8af0ae;border-radius:4px;padding:3px 4px;box-shadow:inset 0 1px 2px #000}
.ct-dk .ct-esd{flex:0 0 52px;width:52px;height:52px;border-width:5px;font-size:9px;padding:0}
.ct-dk .ct-esd span{font:900 9px/1 system-ui,sans-serif;color:#fff;letter-spacing:.02em}
.ct-cab .ct-dock .ct-b{background:#2b333a;color:#eef2f5;border-color:#56626c}
.ct-cab .ct-dock .ct-b.on{background:#1e6b3a;border-color:#8af0ae;color:#fff}
.ct-cab .ct-dock .ct-b.cl{background:#b0281d;border-color:#ffb4ab;color:#fff}
/* landscape phone: strip on one row; gauges left, well right; dock in two rows across the width */
.ct.ls .ct-msh{grid-template-areas:"top top" "main rail" "co rail" "dock rail"}
.ct.ls .ct-ro{grid-template-columns:repeat(8,minmax(0,1fr))}
.ct.ls .ct-mtop{padding:3px 4px}
.ct.ls .ct-rc b{font-size:14px}
.ct.ls .ct-msh[data-tab=g] .ct-mmain{grid-template-columns:minmax(0,1fr) minmax(0,.24fr)}
.ct.ls .ct-msh[data-tab=g] .ct-mw{grid-template-columns:1fr}.ct.ls .ct-msh[data-tab=g] .ct-mw>div+div{display:none}
.ct.ls .ct-msh[data-tab=w] .ct-mw{grid-template-columns:40fr 60fr}
.ct.ls .ct-mg{grid-template-columns:repeat(6,minmax(0,1fr))}
.ct.ls .ct-p-d .ct-dig{grid-template-columns:repeat(4,minmax(0,1fr))}
.ct.ls .ct-annov .ct-ann{grid-template-columns:repeat(6,1fr)}
.ct.ls .ct-dock{gap:4px 8px;padding:4px 6px}
.ct.ls .ct-dock>*{flex:1 1 40%}
.ct.ls .ct-dock>.ct-dk{flex:1 1 100%}
.ct.ls .ct-dock>.ct-dk.ct-dkn,.ct.ls .ct-dock>.ct-dk:has(+.ct-dkn){flex:1 1 40%}
.ct.ls .ct-msh .ct-rt{min-height:40px}
.ct.ls .ct-rt svg{width:18px;height:18px}
.ct.ls .ct-mco .ct-cstep .ct-coach{-webkit-line-clamp:1;line-clamp:1}
@media (max-height:420px){.ct.ls .ct-rt span{display:none}.ct.ls .ct-rt{min-height:44px}}
/* phone setup page: compact, big tap targets */
@media (max-width:600px){.ct-ti{min-height:56px}.ct-tib{min-width:36px;min-height:36px}.ct-asm .ct-b,#ct-asm button{min-height:44px;min-width:44px}.ct-tab{min-height:48px}}
