:root{font-family:'DM Sans',Arial,sans-serif;color:#edf3ef;background:#101a22;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,select{font:inherit}button{cursor:pointer}button:focus-visible,select:focus-visible{outline:2px solid #f9bf7a;outline-offset:2px}.hidden{display:none!important}#viewport,canvas{position:fixed;inset:0;width:100%;height:100%;display:block}#reticle{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);font:24px 'Barlow Condensed';text-shadow:0 1px 5px #000;pointer-events:none;color:#ffdb98}#hud{position:fixed;inset:0;pointer-events:none}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;background:linear-gradient(#0e1d25e8,#0e1d2500);gap:20px}.brand{display:flex;align-items:center;gap:10px;font:700 22px 'Barlow Condensed';letter-spacing:2px;line-height:.9}.brand b{color:#ffb874}.brand small{display:block;font:500 9px 'DM Sans';letter-spacing:3.2px;margin-top:5px;color:#acc4c3}.brandmark{width:36px;height:36px;display:grid;place-items:center;border:1px solid #efb37a;color:#efb37a;transform:rotate(45deg)}.brandmark:first-letter{transform:rotate(-45deg)}.jobline{text-align:center;font:600 12px 'DM Sans';letter-spacing:1.4px}.jobline span{display:block;color:#c6d5d2;font-size:10px;margin-bottom:4px}.jobline strong{font:700 17px 'Barlow Condensed';letter-spacing:3px;color:#fbb979}.weather{text-align:right;min-width:130px}.weather span{display:block;color:#9eb9b9;letter-spacing:2px;font-size:9px}.weather b{font:600 17px 'Barlow Condensed';letter-spacing:1px}.objective{position:absolute;top:93px;left:32px;width:310px;padding:17px 20px;background:#10242bdd;border-left:3px solid #f7b775;box-shadow:0 10px 24px #08101444}.objective small{display:block;color:#f6b371;font-size:10px;letter-spacing:2.3px;font-weight:700;margin-bottom:8px}.objective div{font-size:13px;line-height:1.5}.rightHud{position:absolute;top:54%;left:50%;transform:translate(-50%,0);text-align:center;min-width:220px;text-shadow:0 2px 5px #000}#targetName{font:600 20px 'Barlow Condensed';letter-spacing:1px}#prompt{font:700 12px 'DM Sans';letter-spacing:2px;color:#ffc47f;margin-top:6px}.bottom{position:absolute;bottom:24px;left:30px;right:30px;display:flex;align-items:end;justify-content:space-between;gap:20px}.tooltray{display:flex;gap:5px;padding:8px;background:#0b1b23d9;border:1px solid #77909455;pointer-events:auto;box-shadow:0 12px 35px #0005}.tool{background:#1c333c;border:1px solid #51707788;color:#bdd1cf;width:73px;height:60px;padding:4px;transition:.15s}.tool:hover,.tool.active{background:#a76636;border-color:#ffc17f;color:white}.tool span{display:block;font:25px 'Barlow Condensed';line-height:1}.tool small{display:block;font-size:9px;margin-top:6px;white-space:nowrap}.tabletButton{background:#e4aa73;color:#182d34;border:0;padding:18px 20px;font-size:14px;font-weight:800;letter-spacing:1px;pointer-events:auto;box-shadow:0 8px 24px #0006}.tabletButton kbd{font:600 10px 'DM Sans';margin-left:8px;padding:4px;border:1px solid #3e5662}.tabletButton:hover{background:#ffd095}#toast{position:absolute;bottom:113px;left:50%;transform:translate(-50%,12px);opacity:0;transition:.2s;background:#152a32e8;padding:13px 20px;border:1px solid #a2c2b970;max-width:500px;text-align:center;font-size:13px;box-shadow:0 10px 24px #0005}#toast.show{opacity:1;transform:translate(-50%,0)}#menu{position:fixed;inset:0;overflow:auto;background:#13242c}.menuBack{position:absolute;inset:0;background:radial-gradient(circle at 77% 44%,#49717970,transparent 31%),linear-gradient(120deg,#12232b 0%,#17343d 55%,#1d4651 100%)}.gridLines{position:absolute;inset:0;background:linear-gradient(#ffffff0a 1px,transparent 1px),linear-gradient(90deg,#ffffff0a 1px,transparent 1px);background-size:74px 74px;mask-image:linear-gradient(90deg,transparent,#000 70%)}.menuContent{position:relative;z-index:1;width:58%;max-width:860px;min-height:100vh;padding:7vh 7vw 35px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow,.menuFooter{font-size:10px;letter-spacing:2.2px;color:#b4d1d1;font-weight:700}.eyebrow:before{content:'';display:inline-block;width:30px;height:2px;background:#e9ae73;vertical-align:middle;margin-right:13px}.menuContent h1{font:800 clamp(90px,12vw,185px)/.78 'Barlow Condensed',Impact,sans-serif;letter-spacing:4px;margin:13vh 0 28px;text-shadow:0 8px 40px #08101777}.menuContent h1 em{font-style:normal;color:#efac6f}.menuContent p{font-size:16px;line-height:1.65;max-width:470px;color:#cbdcda;margin:0 0 36px}.menuActions{display:flex;gap:11px;flex-wrap:wrap}.menuActions button,.panelActions button,.tabletCols button{border:1px solid #91b0ad88;background:#1e3943;color:#f2f3ec;padding:16px 20px;font-weight:700;font-size:12px;letter-spacing:1px}.menuActions button span{margin-left:28px;font-size:18px}.menuActions .primary,.panelActions .primary,.tabletCols .primary{background:#eda86e;border-color:#eda86e;color:#172b34}.menuActions button:hover,.panelActions button:hover,.tabletCols button:hover{filter:brightness(1.14)}.menuFooter{display:flex;gap:22px;margin-top:auto;padding-top:30px;color:#91adb0;font-size:9px}.menuVisual{position:absolute;right:7vw;top:13%;width:32%;height:73%;border:1px solid #83a9a766;background:linear-gradient(145deg,#a2c2b422,#213841bb),repeating-linear-gradient(0deg,transparent 0 72px,#8db5ae20 73px 74px);box-shadow:20px 24px 0 #10242aa8;clip-path:polygon(0 0,100% 0,100% 89%,87% 100%,0 100%)}.menuVisual:before{content:'RTU';position:absolute;right:-4%;top:7%;font:800 19vw 'Barlow Condensed';color:#b9d2c40b;transform:rotate(90deg)}.visualCard{position:absolute;bottom:10%;left:10%;right:10%;background:#10272ede;padding:25px;border-top:2px solid #f7b579}.visualCard small{color:#f2b276;font-size:10px;letter-spacing:2px}.visualCard b{display:block;font:700 28px 'Barlow Condensed';letter-spacing:1px;margin:11px 0}.visualCard span{display:block;font-size:12px;line-height:1.6;color:#bfcecd}.visualLine{height:1px;background:#69939377;margin:20px 0}.visualCard strong{font:600 13px 'Barlow Condensed';letter-spacing:2px}.visualCard i{color:#eda86e;font-style:normal;margin:0 7px}#modal{position:fixed;inset:0;display:grid;place-items:center;z-index:10}.modalScrim{position:absolute;inset:0;background:#07151bdc;backdrop-filter:blur(7px)}.panel{position:relative;width:min(900px,calc(100vw - 40px));max-height:calc(100vh - 50px);overflow:auto;background:#18303a;color:#edf0e9;border:1px solid #638a8e;box-shadow:0 35px 80px #0009;padding:30px 34px 28px}.panel:before{content:'';position:absolute;top:0;left:0;width:160px;height:4px;background:#ecae75}.close{position:absolute;top:17px;right:21px;background:none;border:0;color:#c4d8d4;font-size:30px}.panelEyebrow{color:#edb37c;letter-spacing:2px;font-size:10px;font-weight:700}.panel h2{font:700 42px 'Barlow Condensed';margin:11px 0 2px;letter-spacing:1px}.subtitle{color:#a5c4c1;font-size:13px;margin:0 0 25px}.panelBody{font-size:14px;line-height:1.6}.panelBody p{color:#d2dfda}.panelBody blockquote{border-left:3px solid #efaa71;background:#23404b;margin:15px 0;padding:18px 20px;font:500 21px 'Barlow Condensed';letter-spacing:.3px}.panelActions{display:flex;gap:9px;justify-content:flex-end;margin-top:25px}.panelActions button{padding:13px 17px}.muted{color:#9cb9b9!important;font-size:12px!important}.reading{font:700 54px 'Barlow Condensed';color:#ffca93;background:#0e252e;border:1px solid #467482;padding:23px;text-align:center;letter-spacing:1px}.partGrid,.trainingGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-height:43vh;overflow:auto}.part,.trainingGrid button{background:#24414b;border:1px solid #507580;color:#e0ece9;text-align:left;padding:12px;min-height:64px}.part:hover,.part.chosen,.trainingGrid button:hover{border-color:#eeb37c;background:#32505b}.part span{margin-left:9px;font-size:12px}.trainingGrid button{display:flex;flex-direction:column;gap:5px}.trainingGrid small{color:#a6cbca;font-size:9px;letter-spacing:1px}.trainingGrid b{font:600 18px 'Barlow Condensed'}.trainingGrid span{font-size:9px;color:#f1b578;letter-spacing:1px}.plate{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#608186;padding:1px;margin-bottom:17px}.plate div{background:#112831;padding:11px}.plate small,.plate b{display:block}.plate small{font-size:9px;color:#94b9b7;letter-spacing:1px}.plate b{font:600 16px 'Barlow Condensed';margin-top:5px}.schematic{background:#e4e8de;color:#19333c;padding:14px 18px;font:600 12px/1.9 'DM Sans';overflow:auto}.schematic b{font-size:10px;letter-spacing:1px}.testGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:15px}.testGrid button{background:#21404a;border:1px solid #587d81;color:#e6eee8;text-align:left;padding:11px;font:600 12px 'DM Sans'}.testGrid button:hover{border-color:#ffc083}.thermoScreen{width:250px;background:#d9e5e3;color:#223d45;border:10px solid #fafbf1;border-radius:12px;text-align:center;padding:20px;margin:auto;box-shadow:0 8px 30px #0005}.thermoScreen small,.thermoScreen span{display:block;letter-spacing:2px}.thermoScreen b{display:block;font:700 80px 'Barlow Condensed'}.tabletTabs{display:flex;gap:7px;margin-bottom:15px}.tabletTabs span{font-size:10px;font-weight:700;letter-spacing:1px;padding:8px 10px;background:#315462;color:#d7eee7}.tabletCols{display:grid;grid-template-columns:1fr 1fr;gap:25px}.tabletCols>div{background:#102831;padding:17px}.tabletCols h3{font:700 20px 'Barlow Condensed';color:#efbb84;letter-spacing:1px;margin:0 0 6px}.tabletCols h3:not(:first-child){margin-top:20px}.tabletCols p{font-size:12px;margin:0 0 10px}.tabletCols ul{margin:9px 0;padding-left:16px;color:#d5e3df;font-size:12px;line-height:1.8}.tabletCols button{display:block;width:100%;margin-top:9px;padding:10px}.tabletCols select{display:block;width:100%;padding:11px;background:#e8eee8;color:#18303a;border:0}.tabletBottom{font-size:10px;color:#9dbeb9;margin-top:13px}.score{font:800 100px 'Barlow Condensed';color:#ffb879;line-height:1}.score small{font:600 14px 'DM Sans';margin-left:10px;color:#d5e5de}@media(max-width:850px){.menuContent{width:100%;padding:40px}.menuVisual{display:none}.menuContent h1{margin:12vh 0 25px}.objective{max-width:240px;left:16px;top:83px}.topbar{padding:0 14px}.jobline{display:none}.bottom{left:9px;right:9px;bottom:9px}.tooltray{max-width:70vw;overflow:auto}.tool{min-width:65px}.tabletButton span{display:none}.partGrid,.trainingGrid{grid-template-columns:repeat(2,1fr)}.plate{grid-template-columns:repeat(2,1fr)}.tabletCols{grid-template-columns:1fr}}

/* Field dispatch, ambience control and final service report */
#soundToggle{position:fixed;right:32px;top:108px;z-index:3;background:#18313bdc;color:#f6c18c;border:1px solid #5d7b7c;border-radius:7px;font-size:11px;font-weight:700;padding:9px 13px;pointer-events:auto;letter-spacing:1px}
#soundToggle[aria-pressed="true"]{color:#a5bab8}
.dispatchTicket{background:#122a33;border:1px solid #678a8a;border-top:3px solid #edaf75;padding:19px 22px;margin-bottom:16px}
.dispatchTop{display:flex;justify-content:space-between;gap:12px;color:#f0b47b;font-size:10px;letter-spacing:1.5px;font-weight:800}
.dispatchTicket h3{font:700 25px 'Barlow Condensed',sans-serif;color:#fff1de;margin:13px 0}
.dispatchFacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:12px 0}
.dispatchFacts>div{background:#213d46;padding:11px;min-width:0}
.dispatchFacts small,.reportStats small{font:700 10px 'DM Sans',sans-serif;display:block;color:#a9c6c2;letter-spacing:1px}
.dispatchFacts strong{display:block;font-size:13px;margin-top:4px;line-height:1.35}
.dispatchTicket blockquote{font-size:20px!important;margin:14px 0!important}
.serviceReport{margin-top:16px;border:1px solid #789597;background:#102831;padding:20px;color:#e8f1eb}
.reportHeader{display:flex;justify-content:space-between;align-items:start;gap:20px;border-bottom:1px solid #56757c;padding-bottom:14px}
.reportHeader small{font-size:10px;color:#f3bc89;letter-spacing:1.7px}
.reportHeader h3{font:700 32px 'Barlow Condensed',sans-serif;margin:6px 0;color:#f7bb84}
.reportHeader p{margin:4px 0!important}
.reportGrade{text-align:center;flex-shrink:0;background:#254550;border:1px solid #c58f60;padding:7px 18px}
.reportGrade strong{font:800 43px 'Barlow Condensed';display:block;color:#ffd09d;line-height:1}
.reportGrade span{font-size:11px;white-space:nowrap}
.reportStats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0}
.reportStats>div{background:#21414b;padding:12px 9px;min-width:0}
.reportStats b{font:600 20px 'Barlow Condensed';margin-top:5px;display:block;color:#f5c292}
.reportColumns{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.reportColumns h4{font:700 21px 'Barlow Condensed';margin:12px 0 6px;color:#f6bb82}
.reportChecks{list-style:none;padding:0;margin:8px 0}.reportChecks li{font-size:12px;margin:5px 0;display:flex;gap:8px}.reportChecks span{color:#ffc184;font-weight:900}
.reportReadings{max-height:240px;overflow:auto}.reportReadings>div{background:#1c3943;padding:10px;margin:7px 0;border-left:2px solid #b8804c}.reportReadings b{display:block;font-size:12px;color:#f6c08b}.reportReadings small{color:#99c1bc;font-size:10px;letter-spacing:1px}.reportReadings p{font-size:12px;margin:3px 0 6px;overflow-wrap:anywhere}
.reportDownload{margin-top:13px;background:#edab72;color:#152c34;border:0;padding:12px 20px;font-weight:800;letter-spacing:1px}
@media(max-width:700px){#soundToggle{right:12px;top:108px}.dispatchFacts{grid-template-columns:1fr}.reportStats{grid-template-columns:1fr 1fr}.reportColumns{grid-template-columns:1fr}.reportHeader h3{font-size:27px}}

/* R37: Accessible training-area tabs and scrollable, grouped scenario catalogue. */
.trainingTabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:18px 0 10px}
.trainingTab{min-width:0;padding:12px 10px;border:1px solid #527980;background:#203d48;color:#e4eeeb;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.trainingTab strong{font:700 clamp(14px,2vw,19px) 'Barlow Condensed',sans-serif;letter-spacing:.4px}
.trainingTab small{font-size:10px;color:#a8c8c6;letter-spacing:.6px}
.trainingTab:hover{background:#305461;border-color:#f0b77e}
.trainingTab.active,.trainingTab[aria-selected="true"]{background:#edb17a;border-color:#ffd29d;color:#172b34}
.trainingTab.active small,.trainingTab[aria-selected="true"] small{color:#354b50}
.trainingTab:focus-visible{outline:2px solid #ffd29d;outline-offset:2px}
.trainingIntro{margin:0 0 12px!important;font-size:12px;color:#b5d2ce!important}
.trainingContent{max-height:min(52vh,540px);overflow-y:auto;padding:2px 5px 12px 1px;scrollbar-color:#668c8c #1a3440}
.trainingSection+.trainingSection{margin-top:20px}
.trainingSectionHeader{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 9px;padding:0 0 7px;border-bottom:1px solid #53747a}
.trainingSectionHeader h3{font:700 22px 'Barlow Condensed',sans-serif;letter-spacing:.5px;color:#f0be8c;margin:0}
.trainingSectionHeader small{color:#aacaca;font-size:10px;white-space:nowrap;letter-spacing:1px;text-transform:uppercase}
.trainingSection .trainingGrid{max-height:none;overflow:visible}
@media(max-width:500px){.trainingTabs{gap:5px}.trainingTab{padding:10px 4px}.trainingTab strong{font-size:15px}.trainingTab small{font-size:9px}.trainingContent{max-height:48vh}.trainingSection .trainingGrid{grid-template-columns:1fr}}

@media(max-width:700px){.trainingTabs{display:flex;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}.trainingTab{min-width:130px;flex-shrink:0}}
