/* TNB Decision Room. All component rules are scoped to protect existing tools. */
.dr-page{background:#f3f5f7;color:#002349;font-family:Inter,Arial,sans-serif;padding-bottom:70px}
.dr-page *,.dr-scene *{box-sizing:border-box}
.dr-page [hidden],.dr-scene [hidden]{display:none!important}
.dr-sr-only,.dr-file-input{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0!important}
.dr-load:focus-within{outline:3px solid #e9834e;outline-offset:3px}
.dr-wrap{width:min(1420px,calc(100% - 64px));margin:0 auto}
.dr-intro{background:#071a2d;color:#fff;padding:52px 0 34px;position:relative;overflow:hidden}
.dr-intro::after{content:"";position:absolute;right:-100px;top:-200px;width:650px;height:650px;border:1px solid #2b4053;border-radius:50%;pointer-events:none}
.dr-intro-grid{display:grid;grid-template-columns:1.1fr .8fr;gap:60px;align-items:end;position:relative;z-index:1}
.dr-eyebrow{font-size:11px;line-height:1.5;font-weight:700;text-transform:uppercase;letter-spacing:.13em;margin:0 0 13px;color:#d75f27}
.dr-intro .dr-eyebrow{color:#ffb48c}
.dr-intro h1{font-size:clamp(34px,4.3vw,61px);line-height:1.06;font-weight:800;letter-spacing:-.04em;color:#fff;margin:0}
.dr-intro h1 span{color:#f39461}
.dr-intro p:not(.dr-eyebrow){font-size:15px;line-height:1.65;color:#c6d3df;margin:0;max-width:550px}
.dr-badge{display:inline-flex;align-items:center;gap:7px;font-size:11px;line-height:1.3;padding:7px 10px;border-radius:30px;background:#e9eff2;color:#334e62;font-weight:600;white-space:nowrap}
.dr-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:#ef7b42}
.dr-scenario-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:20px 0}
.dr-page button,.dr-scene button,.dr-page .dr-button{font-family:inherit;cursor:pointer;font-weight:600;line-height:1.3}
.dr-preset,.dr-outline,.dr-load{border:1px solid #cbd6df;border-radius:8px;background:#fff;color:#163853;padding:11px 14px;min-height:44px;font-size:12px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.dr-preset[aria-pressed="true"]{border-color:#002349;background:#002349;color:#fff}
.dr-preset:hover,.dr-outline:hover,.dr-load:hover{border-color:#d75f27}
.dr-scenario-bar .dr-reset{margin-left:auto;background:transparent;border:0;text-decoration:underline;text-underline-offset:3px;font-size:12px;padding:10px;color:#475d70;min-height:44px}
.dr-workspace{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:20px;align-items:start}
.dr-visual{border:1px solid #18384b;border-radius:16px;background:#081b2b;overflow:hidden;color:#fff}
.dr-scene{position:relative;width:100%;height:490px;background:radial-gradient(ellipse at 50% 45%,#28424b 0%,#122b3b 38%,#071a2a 80%);isolation:isolate;overflow:hidden;border-radius:14px}
.dr-scene canvas{display:block;width:100%;height:100%;touch-action:pan-y;cursor:grab;position:absolute;inset:0}
.dr-scene canvas:active{cursor:grabbing}
.dr-scene-top{position:absolute;top:17px;left:19px;right:19px;display:flex;justify-content:space-between;align-items:center;gap:12px;pointer-events:none;z-index:2}
.dr-scene-top .dr-badge{background:#1c3444;color:#d8e5ed;border:1px solid #3d5768;font-size:10px}
.dr-scene-top>span{font-size:10px;color:#a9c2d1}
.dr-scene-label{position:absolute;transform:translate(-50%,0);border:1px solid #617680;background:#0a2132e8;box-shadow:0 6px 20px #0003;border-radius:8px;padding:8px 11px;color:#fff;text-align:left;z-index:3;min-width:135px;min-height:46px}
.dr-scene-label strong{display:block;font-size:12px;color:#fff;font-weight:700}
.dr-scene-label span{display:block;font-size:10px;color:#bad1df;margin-top:3px;font-weight:400;white-space:nowrap}
.dr-scene-label[aria-pressed="true"]{border-color:#f39461;background:#163043;box-shadow:0 0 0 1px #f39461}
.dr-scene-tools{position:absolute;bottom:18px;left:19px;right:19px;display:flex;align-items:center;gap:7px;z-index:4}
.dr-scene-tools button{border:1px solid #496273;background:#0a2132dc;border-radius:7px;padding:9px 12px;min-height:40px;color:#d2e5ef;font-size:11px}
.dr-scene-tools>span{font-size:10px;color:#a9c2d1;margin-left:auto}
.dr-no-3d .dr-scene-tools [data-scene-turn]{display:none}
.dr-no-3d .dr-scene-label{position:static;transform:none;min-width:0;flex:1}
.dr-no-3d .dr-scene-labels{position:absolute;left:18px;right:18px;bottom:76px;display:flex;gap:8px}
.dr-has-3d [data-scene-fallback]{display:none}
.dr-plan{position:absolute;inset:68px 18px 143px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.dr-plan-room{background:#f0ece2;border:2px solid #f0ece2;border-radius:8px;padding:16px;color:#16334a;box-shadow:0 10px 20px #0003;display:flex;flex-direction:column;justify-content:space-between}
.dr-plan-room.selected{border-color:#ef7b42}
.dr-plan-room>strong{font-size:14px}
.dr-plan-room>span{font-size:11px;line-height:1.7}
.dr-plan-chairs{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin:18px 0}
.dr-plan-chairs i{display:block;aspect-ratio:1;background:#b8c5c8;border-radius:2px 2px 5px 5px;border-top:4px solid #91a4a9}
.dr-plan-chairs i.filled{background:#ef7b42;border-color:#b94e22}
.dr-scene-caption{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:17px 21px;color:#b6cbd8;font-size:11px;border-top:1px solid #254252}
.dr-scene-caption label{margin-left:auto;display:flex;align-items:center;gap:9px}
.dr-scene-caption select{background:#153044;border:1px solid #456070;color:#fff;border-radius:5px;padding:5px;font:inherit;min-height:32px}
.dr-key{display:flex;align-items:center;gap:7px}
.dr-key i{width:9px;height:9px;border-radius:2px;background:#ef7b42}
.dr-key.empty i{background:#a7b6bd}.dr-key.staff i{background:#3e6b8a;border:1px solid #abc8d9}
.dr-panel{background:#fff;border:1px solid #dce3e8;border-radius:14px;padding:24px}
.dr-panel h2{font-size:21px;line-height:1.25;font-weight:700;letter-spacing:-.02em;margin:0 0 9px;color:#002349}
.dr-panel h3{font-size:16px;line-height:1.35;font-weight:700;margin:0 0 12px;color:#002349}
.dr-small{font-size:11px;line-height:1.6;color:#647786;margin:7px 0 0}
.dr-room-tabs{display:flex;gap:5px;margin-bottom:19px}
.dr-room-tabs button{flex:1;padding:11px 4px;border-radius:7px;border:1px solid #d4dee6;background:#f4f6f8;color:#516678;font-size:11px;min-height:42px}
.dr-room-tabs button[aria-selected="true"]{background:#002349;border-color:#002349;color:#fff}
.dr-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;margin:16px 0 0}
.dr-page label{display:block;font-size:11px;font-weight:600;line-height:1.5;color:#3d5467;margin:0}
.dr-page input[type="number"],.dr-page select,.dr-page textarea{width:100%;min-height:41px;font:500 14px/1.3 Inter,Arial,sans-serif;padding:10px 9px;border:1px solid #cbd7df;border-radius:6px;background:#fff;color:#002349;margin-top:5px;font-variant-numeric:tabular-nums}
.dr-page input:invalid{border-color:#bc5334}
.dr-fields .dr-wide{grid-column:1/-1}
.dr-bookings{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:12px}
.dr-bookings label{font-size:10px;text-align:center}
.dr-bookings input[type="number"]{font-size:14px;text-align:center;padding:10px 3px}
.dr-panel details{margin-top:18px;padding-top:15px;border-top:1px solid #e5eaf0}
.dr-panel summary{cursor:pointer;font-size:12px;font-weight:700;line-height:1.5;color:#213f56;min-height:26px}
.dr-timeline{padding:24px 21px 20px;border-top:1px solid #254252}
.dr-timeline-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px;font-size:12px;color:#bed2df}
.dr-timeline-top strong{color:#fff;font-size:18px;font-weight:700}
.dr-page input[type="range"]{width:100%;accent-color:#ed7b42;min-height:27px;margin:0;cursor:pointer}
.dr-month-markers{display:flex;justify-content:space-between;margin-top:10px;gap:4px;font-size:9px;color:#94aebe}
.dr-month-markers button{color:inherit;background:transparent;border:0;padding:6px 2px;font-size:9px;border-radius:4px;min-height:29px}
.dr-month-markers button[aria-pressed="true"]{color:#fff;background:#294657}
.dr-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}
.dr-stat{border:1px solid #dce3e8;background:#fff;border-radius:12px;padding:19px 20px;min-width:0}
.dr-stat>span{font-size:11px;color:#5d7384;display:block;line-height:1.5}
.dr-stat strong{display:block;font-size:clamp(22px,2.4vw,32px);font-weight:700;color:#002349;line-height:1.25;letter-spacing:-.025em;margin:7px 0 5px;font-variant-numeric:tabular-nums}
.dr-stat small{font-size:10px;color:#617789;line-height:1.5;display:block}
.dr-stat strong.dr-loss{color:#ad421d}
.dr-impact{margin:17px 0 22px;display:flex;justify-content:space-between;gap:20px;align-items:center;background:#e8efee;border-left:3px solid #386459;padding:16px 22px;border-radius:8px;font-size:13px;line-height:1.6;color:#234d44}
.dr-impact.negative{background:#f8ede7;border-color:#c36034;color:#893d20}
.dr-impact strong{font-size:23px;white-space:nowrap;font-weight:700;font-variant-numeric:tabular-nums}
.dr-lower{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}
.dr-slider{margin-top:20px}
.dr-slider label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:12px}
.dr-slider output{font-size:14px;font-weight:700;color:#002349;font-variant-numeric:tabular-nums}
.dr-warning{font-size:12px;line-height:1.5;color:#a3421e;background:#fff4ed;border:1px solid #efc6ae;border-radius:7px;padding:11px 15px;margin:12px 0}
.dr-error{font-size:13px;line-height:1.5;color:#8f331c;border:1px solid #ddad94;border-radius:8px;padding:14px 20px;margin:0 0 18px;background:#fff3ed}
.dr-explain{background:#002349;color:#fff;border-color:#002349;position:relative;overflow:hidden}
.dr-explain h2{color:#fff}.dr-explain .dr-eyebrow{color:#ffb48c}.dr-explain .dr-small{color:#b8cad9}
.dr-questions{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}
.dr-questions button{font-size:11px;background:#143a58;color:#c5d9e7;border:1px solid #41637d;border-radius:6px;padding:9px 10px;min-height:38px}
.dr-questions button[aria-pressed="true"]{color:#002349;background:#f39461;border-color:#f39461}
.dr-explanation{font-size:16px;line-height:1.65;color:#fff;margin:0;min-height:145px}
.dr-chart-head{display:flex;justify-content:space-between;align-items:start;gap:20px}
.dr-chart-key{display:flex;gap:14px;font-size:10px;white-space:nowrap;color:#4e6679;align-items:center;padding-top:4px}
.dr-chart-key span::before{content:"";display:inline-block;width:15px;height:3px;background:#a4b7c6;vertical-align:middle;margin-right:5px}
.dr-chart-key span:last-child::before{background:#d96732}
.dr-chart{display:block;width:100%;height:auto;overflow:visible;margin-top:20px}
.dr-chart text{font-family:Inter,Arial,sans-serif;fill:#657b8e;font-size:10px}
.dr-table-wrap{overflow:auto;margin-top:17px;max-height:410px}
.dr-page table{border-collapse:collapse;width:100%;font-size:11px;font-variant-numeric:tabular-nums}
.dr-page th,.dr-page td{padding:11px 12px;border-bottom:1px solid #e1e8ed;white-space:nowrap;text-align:right}
.dr-page th:first-child,.dr-page td:first-child{text-align:left}
.dr-page th{font-size:10px;background:#eef3f6;color:#476276;font-weight:700;position:sticky;top:0}
.dr-page tr.selected td{background:#fff0e6}
.dr-page td button{border:0;background:transparent;color:#002349;text-decoration:underline;text-underline-offset:3px;padding:0;font-size:inherit;min-height:22px}
.dr-bottom{margin-top:20px;display:grid;grid-template-columns:.92fr 1.08fr;gap:20px}
.dr-controls-form{border:0;padding:0;margin:0}
.dr-brief{background:#e9eeef}
.dr-brief p{font-size:14px;line-height:1.65;color:#4c6474;margin:0 0 16px}
.dr-button{display:inline-flex;align-items:center;justify-content:center;background:#ef7b42;color:#002349;border:1px solid #df6932;border-radius:8px;min-height:46px;padding:12px 16px;font-size:12px;text-decoration:none}
.dr-brief-actions{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}
.dr-brief textarea{font-size:11px;line-height:1.6;font-weight:400;min-height:180px}
.dr-status{font-size:12px;line-height:1.5;color:#315c4e;margin:12px 0 0;min-height:18px}
.dr-assumptions{margin-top:20px;padding:20px 24px;background:#fff;border:1px solid #dce3e8;border-radius:14px;color:#4d6577}
.dr-assumptions summary{font-size:13px;line-height:1.5;font-weight:700;cursor:pointer;min-height:25px;color:#163b55}
.dr-assumptions p,.dr-assumptions li{font-size:12px;line-height:1.75}
.dr-assumptions ul{padding-left:19px;margin-bottom:0}
.dr-page button:focus-visible,.dr-page input:focus-visible,.dr-page select:focus-visible,.dr-page summary:focus-visible,.dr-page a:focus-visible,.dr-scene button:focus-visible{outline:3px solid #e9834e;outline-offset:3px}
.dr-page button:disabled{opacity:.45;cursor:not-allowed}
#decision-room[data-invalid] .dr-visual{opacity:.4}
.dr-home-scene{height:500px;background:transparent;border-radius:0}
.dr-home-scene .dr-scene-top{top:20px}
.dr-home-scene .dr-scene-tools{bottom:30px}
.xray-scene.dr-home-container{aspect-ratio:auto;width:100%;margin:0;min-height:500px}
.xray-scene.dr-home-container::after{display:none}
.dr-home-cue{font-size:11px;color:#b4cbd8;margin:20px 0 0;line-height:1.6}
.dr-home-promo{padding:58px 0;background:#edf2f4}
.dr-home-promo .v94-wrap{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}
.dr-home-promo h2{font-size:clamp(27px,3.3vw,41px);font-weight:800;line-height:1.15;margin:0 0 17px;color:#002349;letter-spacing:-.03em}
.dr-home-promo p{font-size:15px;line-height:1.65;color:#4e6778;margin:0 0 18px}
.dr-home-promo-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.dr-home-promo-steps div{padding:20px;border:1px solid #cedae1;border-radius:12px;background:#fff}
.dr-home-promo-steps strong{font-size:22px;color:#d75f27;display:block;margin-bottom:12px}
.dr-home-promo-steps span{font-size:12px;line-height:1.65;color:#36566b}
@media(min-width:1500px){.dr-scene{height:535px}.dr-home-scene{height:535px}}
@media(max-width:1100px){.dr-workspace{grid-template-columns:minmax(0,1fr) 315px}.dr-panel{padding:20px}.dr-intro-grid{gap:30px}.dr-scene{height:460px}.dr-chart-head{display:block}.dr-chart-key{padding-top:9px}.dr-stat{padding:16px}.dr-home-scene{height:440px}.xray-scene.dr-home-container{min-height:440px}.dr-home-promo .v94-wrap{grid-template-columns:1fr}.dr-home-promo-steps div{min-height:125px}}
@media(max-width:800px){.dr-wrap{width:calc(100% - 32px)}.dr-intro{padding:34px 0}.dr-intro-grid{grid-template-columns:1fr;gap:20px}.dr-workspace{grid-template-columns:1fr}.dr-panel{padding:21px}.dr-scene{height:440px}.dr-editor .dr-fields{grid-template-columns:repeat(3,1fr)}.dr-editor .dr-wide{grid-column:auto}.dr-editor .dr-bookings{max-width:500px}.dr-lower,.dr-bottom{grid-template-columns:1fr}.dr-stats{grid-template-columns:repeat(2,1fr)}.dr-explanation{min-height:0}.dr-home-scene{height:450px}.xray-scene.dr-home-container{min-height:450px}}
@media(max-width:520px){.dr-wrap{width:calc(100% - 24px)}.dr-scene{height:370px}.dr-scene-top>span{max-width:130px;text-align:right;line-height:1.5}.dr-scene-label{min-width:95px;padding:7px 8px}.dr-scene-label strong{font-size:10px}.dr-scene-label span{font-size:8px}.dr-scene-tools>span{display:none}.dr-scene-tools button{font-size:10px;padding:8px}.dr-scene-caption{padding:13px;gap:9px;font-size:9px}.dr-scene-caption label{width:100%;margin:4px 0 0;justify-content:space-between}.dr-scene-caption select{width:140px;margin:0}.dr-timeline{padding:18px 13px}.dr-month-markers button{font-size:8px}.dr-editor .dr-fields{grid-template-columns:1fr 1fr}.dr-editor .dr-wide{grid-column:1/-1}.dr-impact{padding:15px;gap:10px;align-items:start}.dr-impact strong{font-size:20px}.dr-stat{padding:15px 13px}.dr-stat strong{font-size:25px}.dr-scenario-bar{gap:7px}.dr-scenario-bar .dr-reset{margin-left:0}.dr-preset{padding:10px;font-size:11px}.dr-plan{gap:7px;inset:68px 10px 135px}.dr-plan-room{padding:9px}.dr-plan-room>strong{font-size:11px}.dr-plan-chairs{gap:4px}.dr-plan-room>span{font-size:9px}.dr-no-3d .dr-scene-labels{left:10px;right:10px;gap:5px}.dr-home-scene{height:360px}.xray-scene.dr-home-container{min-height:360px}.dr-home-promo{padding:40px 0}.dr-home-promo-steps{gap:8px}.dr-home-promo-steps div{padding:15px 10px}.dr-home-promo-steps span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.dr-page *,.dr-scene *{scroll-behaviour:auto;transition:none!important;animation:none!important}}
@media print{.tnb-simple-header,.tnb-simple-footer,.dr-intro,.dr-scenario-bar,.dr-workspace,.dr-controls-form,.dr-scenarios,.dr-brief-actions,.dr-assumptions,.dr-status{display:none!important}.dr-wrap{width:100%}.dr-page{background:#fff}.dr-lower,.dr-bottom{display:block}.dr-panel,.dr-stat{break-inside:avoid;box-shadow:none;margin:12px 0}.dr-explain{background:#fff;color:#002349}.dr-explain h2,.dr-explanation{color:#002349}.dr-questions{display:none}.dr-table-wrap{max-height:none;overflow:visible}}
