@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700&display=swap";:root{color:#edf1f2;font-synthesis:none;text-rendering:optimizelegibility;--lime:#b6d737;--lime-bright:#cbea4c;--ink:#101315;--panel:#171b1e;--muted:#9da6a9;--line:#ffffff1c;background:#101315;font-family:DM Sans,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{background:var(--ink);min-height:100vh}button,a{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--lime);outline-offset:4px}.welcome-layout{background:#111517;grid-template-columns:minmax(420px,.88fr) minmax(460px,1.12fr);min-height:100vh;display:grid;position:relative;overflow:hidden}.welcome-panel{z-index:2;background:linear-gradient(145deg,#181d20 0%,#111517 72%);flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(34px,5vw,76px);display:flex;position:relative}.brand{align-items:center;gap:18px;min-height:46px;display:flex}.brand img{object-fit:contain;object-position:left center;width:154px;height:46px}.brand-divider{background:#fff3;width:1px;height:26px}.product-name{color:#c7cdcf;letter-spacing:.08em;text-transform:uppercase;font:600 13px/1 Manrope,sans-serif}.welcome-copy{max-width:620px;margin:8vh 0 4vh}.eyebrow{color:var(--lime);text-transform:uppercase;letter-spacing:.16em;margin:0 0 22px;font-size:12px;font-weight:700}h1{letter-spacing:-.045em;margin:0;font-family:Manrope,Segoe UI,sans-serif;font-size:clamp(42px,5.3vw,76px);line-height:1.01}.welcome-copy>p:last-child,.status-layout>p,.workspace-intro{color:var(--muted);max-width:610px;font-size:clamp(16px,1.35vw,20px);line-height:1.65}.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:3px;justify-content:space-between;align-items:center;gap:48px;min-height:58px;padding:0 24px;font-weight:700;display:inline-flex}.primary-button{background:var(--lime);color:#111;width:min(100%,360px);box-shadow:0 14px 40px #b6d73724}.primary-button:hover{background:var(--lime-bright)}.primary-button span{font-size:24px;font-weight:400}.primary-button.compact{width:auto;min-height:48px}.secondary-button{border:1px solid var(--line);color:#fff;background:0 0;justify-content:center;min-width:160px}.access-note{color:#737d80;margin:15px 0 0;font-size:13px}.welcome-graphic{background:linear-gradient(115deg,#0a0e0f4d,#0a0e0f08),repeating-linear-gradient(122deg,#0000 0 86px,#ffffff06 87px 88px),#252b2c;min-height:100vh;position:relative;overflow:hidden}.welcome-graphic:before{content:"";opacity:.5;background:radial-gradient(circle at 62% 42%,#b6d7373d,#0000 24%),radial-gradient(circle at 20% 80%,#b6d73717,#0000 30%);position:absolute;inset:-25%}.route{border:2px solid #b6d73780;border-radius:50%;width:110%;height:130px;position:absolute;top:30%;left:-20%;transform:rotate(-28deg)}.route-two{border-color:#ffffff24;width:90%;top:54%;left:25%;transform:rotate(43deg)}.map-node{background:var(--lime);border-radius:50%;width:17px;height:17px;position:absolute;box-shadow:0 0 0 8px #b6d7371f,0 0 32px #b6d73780}.node-one{top:27%;left:38%}.node-two{top:55%;left:67%}.node-three{top:72%;left:30%}.graphic-caption{color:#9da6a9;border-top:1px solid #ffffff2e;justify-content:space-between;gap:30px;padding-top:22px;display:flex;position:absolute;bottom:8%;left:8%;right:8%}.graphic-caption strong{color:#fff;font-weight:600}.environment-badge{z-index:10;color:var(--lime);text-transform:uppercase;letter-spacing:.13em;background:#0f1214db;border:1px solid #b6d73773;border-radius:50px;padding:7px 12px;font-size:10px;font-weight:700;position:fixed;bottom:18px;right:22px}.status-layout{background:radial-gradient(circle at 80% 10%,#b6d73714,#0000 35%),#121618;flex-direction:column;justify-content:center;align-items:flex-start;min-height:100vh;padding:clamp(32px,8vw,120px);display:flex}.status-layout .brand{position:absolute;top:clamp(30px,5vw,64px)}.status-layout h1{max-width:760px;font-size:clamp(34px,4vw,58px)}.status-layout>p{max-width:670px}.status-layout .eyebrow{margin-top:28px;margin-bottom:13px}.spinner{border:3px solid #ffffff17;border-top-color:var(--lime);border-radius:50%;width:50px;height:50px;margin-bottom:34px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.status-mark{color:#e98275;border:1px solid #e98275;border-radius:50%;place-items:center;width:52px;height:52px;font-size:31px;display:grid}.denied-mark{border-color:var(--lime);color:var(--lime)}.correlation{color:#737d80!important;font:500 12px/1.4 ui-monospace,monospace!important}.button-row{align-items:center;gap:22px;margin-top:14px;display:flex}.text-button{color:#c9d0d2;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #596164;padding:8px 0}.app-layout{background:#111517;grid-template:82px 1fr/235px 1fr;min-height:100vh;display:grid}.app-header{border-bottom:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-items:center;padding:0 34px;display:flex}.account-block{color:#aab2b4;align-items:center;gap:22px;font-size:14px;display:flex}.side-nav{border-right:1px solid var(--line);flex-direction:column;gap:7px;padding:34px 22px;display:flex}.side-nav a,.side-nav span{color:#808a8d;border-left:2px solid #0000;padding:13px 15px;font-size:14px;text-decoration:none}.side-nav .active{color:#fff;border-color:var(--lime);background:linear-gradient(90deg,#b6d7371a,#0000)}.workspace{padding:clamp(42px,7vw,92px)}.workspace h1{max-width:860px;font-size:clamp(38px,5vw,66px)}.permission-card{border:1px solid var(--line);background:#181d20;grid-template-columns:1fr auto;gap:28px;max-width:860px;margin-top:48px;padding:30px;display:grid}.card-label{text-transform:uppercase;color:#778185;letter-spacing:.13em;font-size:11px}.permission-card h2{text-transform:capitalize;margin:7px 0 0;font-family:Manrope,sans-serif;font-size:25px}.verified-pill{color:var(--lime);border:1px solid #b6d7374d;border-radius:20px;align-self:start;padding:8px 12px;font-size:12px}.permission-card dl{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:22px;margin:0;padding-top:22px;display:grid}.permission-card dt{color:#758084;text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px;font-size:11px}.permission-card dd{color:#c9d0d2;overflow-wrap:anywhere;margin:0;font-size:13px}@media (width<=800px){.welcome-layout{grid-template-columns:1fr}.welcome-panel{min-height:100svh;padding:28px}.welcome-graphic{display:none}.welcome-copy{margin:auto 0}.app-layout{display:block}.app-header{height:76px;padding:0 20px}.app-header .brand-divider,.app-header .product-name,.account-block>span{display:none}.side-nav{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;padding:10px 16px;overflow-x:auto}.side-nav span{display:none}.workspace{padding:44px 24px 90px}.permission-card{grid-template-columns:1fr}.verified-pill,.permission-card dl{grid-column:1}.permission-card dl{grid-template-columns:1fr}h1{font-size:clamp(38px,12vw,58px)}.environment-badge{top:102px;bottom:auto;right:28px}}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}.map-app{color:var(--ink);background:#d7dbd9;position:fixed;inset:0;overflow:hidden}.map-app>.map-canvas.maplibregl-map{width:100%;height:100%;position:absolute;inset:0}.map-header{z-index:5;color:#fff;background:#121618f5;border-bottom:1px solid #ffffff21;grid-template-columns:minmax(220px,1fr) minmax(300px,560px) minmax(220px,1fr);align-items:center;gap:24px;height:72px;padding:0 20px;display:grid;position:absolute;top:0;left:0;right:0;box-shadow:0 5px 20px #0003}.map-brand{align-items:center;gap:18px;min-width:0;display:flex}.map-brand img{object-fit:contain;object-position:left center;width:130px;height:39px}.map-brand span{color:#c4cbcd;letter-spacing:.1em;text-transform:uppercase;border-left:1px solid #ffffff38;padding-left:17px;font:600 11px/1 Manrope,sans-serif}.portal-page-tabs{justify-content:center;align-self:stretch;align-items:stretch;gap:6px;display:flex}.portal-page-tabs button{color:#aeb8ba;cursor:pointer;background:0 0;border:0;border-bottom:4px solid #0000;min-width:118px;padding:0 22px;font:700 12px/1 Manrope,sans-serif}.portal-page-tabs button:hover,.portal-page-tabs button:focus-visible{color:#fff;background:#ffffff0f;outline:none}.portal-page-tabs button.active{border-bottom-color:var(--lime);color:#fff;background:#ffffff0a}.postcode-search{position:relative}.map-postcode-search{z-index:5;width:min(560px,100vw - 540px);position:absolute;top:92px;left:50%;transform:translate(-50%)}.postcode-search label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.postcode-search input{color:#111;background-color:#f7f8f5;background-image:radial-gradient(circle,#0000 6px,#566064 6.5px 8px,#0000 8.5px),linear-gradient(45deg,#0000 46%,#566064 47% 55%,#0000 56%);background-position:10px 8px,28px 28px;background-repeat:no-repeat;background-size:24px 24px,9px 9px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border:1px solid #0000;border-radius:4px;width:100%;min-height:44px;padding:0 112px 0 42px;font-size:15px}.postcode-search input:focus{outline:3px solid var(--lime);outline-offset:2px}.search-state{color:#687175;font-size:11px;position:absolute;top:14px;right:12px}.search-state.error{color:#8c332a}.postcode-results{color:#182023;background:#fff;border-radius:4px;margin:0;padding:7px;list-style:none;position:absolute;top:48px;left:0;right:0;box-shadow:0 15px 40px #00000047}.postcode-results button{cursor:pointer;text-align:left;background:#fff;border:0;justify-content:space-between;align-items:center;width:100%;padding:12px;display:flex}.postcode-results button:hover,.postcode-results button:focus-visible{background:#eff3e2}.postcode-results span{color:#657074;font-size:12px}.account-menu{justify-self:end;position:relative}.account-menu summary{cursor:pointer;color:#d9dfe0;white-space:nowrap;text-overflow:ellipsis;max-width:260px;padding:12px 28px 12px 12px;font-size:13px;list-style:none;overflow:hidden}.account-menu summary::-webkit-details-marker{display:none}.account-menu summary:after{content:"⌄";color:var(--lime);position:absolute;right:8px}.account-menu>div{color:#aeb7ba;border:1px solid var(--line);background:#151a1c;flex-direction:column;gap:7px;min-width:280px;padding:20px;display:flex;position:absolute;top:49px;right:0;box-shadow:0 15px 35px #00000057}.account-menu strong{color:#fff}.account-menu span{font-size:12px}.account-menu button{color:#fff;cursor:pointer;background:0 0;border:1px solid #596164;min-height:40px;margin-top:12px}.map-controls{z-index:4;color:#e9edef;background:#121618f0;border:1px solid #ffffff21;border-radius:4px;width:220px;padding:18px;position:absolute;top:92px;left:20px;box-shadow:0 10px 30px #0000002e}.map-controls h2{letter-spacing:.12em;text-transform:uppercase;color:#aab3b5;margin:0 0 14px;font:600 12px/1 Manrope,sans-serif}.map-controls>label:not(.dataset-picker){cursor:pointer;align-items:center;gap:10px;margin:12px 0;font-size:14px;display:flex}.map-controls input{accent-color:var(--lime);width:17px;height:17px}.layer-dot{background:#4da6d8;border-radius:50%;width:10px;height:10px}.layer-dot.road{background:#d8a23d;border-radius:1px;width:15px;height:3px}.dataset-picker{border-top:1px solid var(--line);color:#929da0;text-transform:uppercase;letter-spacing:.08em;flex-direction:column;gap:7px;margin-top:17px;padding-top:15px;font-size:11px;display:flex}.dataset-picker select{color:#fff;text-transform:none;letter-spacing:0;background:#252b2e;border:1px solid #4a5356;width:100%;min-width:0;padding:8px;font-size:11px}.map-counts{color:#899397;border-top:1px solid var(--line);margin:15px 0 0;padding-top:13px;font-size:11px;line-height:1.6}.map-diagnostics{border-top:1px solid var(--line);color:#9ba5a8;margin-top:13px;padding-top:12px;font-size:10px}.map-diagnostics summary{cursor:pointer;color:#c9d0d2;letter-spacing:.03em;font-weight:700}.map-diagnostics[open] summary{margin-bottom:10px}.map-diagnostics dl{max-height:300px;margin:0;overflow-y:auto}.map-diagnostics dl>div{margin:0 0 7px}.map-diagnostics dt{color:#737f82;text-transform:uppercase;letter-spacing:.08em}.map-diagnostics dd{color:#d7dcdd;overflow-wrap:anywhere;margin:2px 0 0;line-height:1.35}.map-diagnostic-error{color:#ffd8d3;overflow-wrap:anywhere;background:#682d28;margin:10px 0;padding:8px;line-height:1.35}.map-diagnostic-actions{grid-template-columns:1fr 1fr;gap:6px;display:grid}.map-diagnostic-actions button{color:#fff;cursor:pointer;background:#252b2e;border:1px solid #596164;min-height:32px;font-size:10px}.map-diagnostic-actions button:hover,.map-diagnostic-actions button:focus-visible{border-color:var(--lime)}.map-diagnostic-copy{min-height:14px;color:var(--lime);margin:7px 0 0;line-height:1.3}.map-feature-tooltip{z-index:9;pointer-events:none;color:#fff;background:#121618f7;border-left:3px solid #4da6d8;border-radius:3px;width:250px;padding:11px 13px;position:absolute;box-shadow:0 10px 28px #0000004d}.map-feature-tooltip.scheme-member{border-left-color:#7b3fa1}.map-feature-tooltip>span{color:var(--lime);letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px;font-size:8px;font-weight:800;display:block}.map-feature-tooltip>strong,.map-feature-tooltip>small,.map-feature-tooltip>em{display:block}.map-feature-tooltip>strong{text-overflow:ellipsis;white-space:nowrap;font:600 13px/1.3 Manrope,sans-serif;overflow:hidden}.map-feature-tooltip>small{color:#c5ccce;text-transform:capitalize;margin-top:4px;font-size:10px}.map-feature-tooltip>em{color:#8f999c;margin-top:8px;font-size:9px;font-style:normal}.maplibregl-ctrl-bottom-left{bottom:8px}.maplibregl-ctrl-bottom-right{bottom:38px}.map-notice{z-index:6;color:#fff;border-left:4px solid var(--lime);background:#121618f7;width:min(90vw,420px);padding:28px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 20px 55px #00000052}.map-notice h2{margin:0 0 8px;font:600 23px/1.2 Manrope,sans-serif}.map-notice p{color:#aeb7ba;margin:0;line-height:1.5}.map-notice button,.map-warning button{background:var(--lime);color:#111;cursor:pointer;border:0;margin-top:16px;padding:8px 13px;font-weight:700}.map-warning{z-index:5;color:#fff;text-align:center;background:#7d3029;border-radius:3px;max-width:calc(100vw - 500px);padding:9px 14px;font-size:12px;position:absolute;top:84px;left:50%;transform:translate(-50%)}.map-warning.partial{background:#182023;top:auto;bottom:34px}.map-warning button{margin:0 0 0 12px;padding:4px 8px}.detail-panel{z-index:5;color:#fff;border-top:3px solid var(--lime);background:#121618f7;width:min(380px,100vw - 40px);padding:28px;position:absolute;top:92px;bottom:24px;right:20px;overflow-y:auto;box-shadow:0 18px 50px #00000059}.detail-panel.scheme-map-detail{z-index:8;width:320px;max-height:calc(100vh - 120px);bottom:auto;left:420px;right:auto}.detail-close{color:#cbd1d3;cursor:pointer;background:0 0;border:0;width:35px;height:35px;font-size:26px;position:absolute;top:13px;right:14px}.detail-kicker{color:var(--lime);text-transform:uppercase;letter-spacing:.14em;margin:0 0 12px;font-size:10px;font-weight:700}.detail-panel h2{margin:0 30px 25px 0;font:600 24px/1.25 Manrope,sans-serif}.detail-panel dl{margin:0}.detail-panel dl>div{border-top:1px solid var(--line);padding:14px 0}.detail-panel dt{color:#818c8f;text-transform:uppercase;letter-spacing:.1em;font-size:10px}.detail-panel dd{color:#e5e9ea;overflow-wrap:anywhere;text-transform:capitalize;margin:5px 0 0}.map-environment{z-index:4;color:var(--lime);letter-spacing:.13em;text-transform:uppercase;background:#121618e6;border-radius:20px;padding:5px 9px;font-size:9px;font-weight:700;position:absolute;bottom:13px;right:17px}@media (width<=820px){.map-header{grid-template-columns:auto 1fr auto;gap:10px;height:auto;min-height:68px;padding:10px 14px}.map-brand img{width:105px}.map-brand span{display:none}.portal-page-tabs{gap:0}.portal-page-tabs button{min-width:80px;padding-inline:10px}.map-postcode-search{width:min(420px,100vw - 208px);top:84px}.postcode-search input{padding-right:14px}.search-state{display:none}.account-menu summary{color:#0000;border:1px solid #596164;border-radius:50%;width:38px;height:38px;padding:0;overflow:hidden}.account-menu summary:before{content:"W";color:#fff;place-items:center;font-weight:700;display:grid;position:absolute;inset:0}.account-menu summary:after{display:none}.account-menu>div{top:47px}.map-controls{width:170px;padding:13px;top:84px;left:12px}.map-feature-tooltip,.map-controls h2,.map-counts,.dataset-picker{display:none}.detail-panel{border-top-width:4px;width:100%;max-height:58vh;inset:auto 0 0}.detail-panel.scheme-map-detail{width:100%;max-height:58vh;inset:auto 0 0}.map-warning{max-width:calc(100vw - 24px);top:78px}}.planner-panel{z-index:7;color:#1a2225;background:#f4f5f1;border-left:1px solid #cbd0cd;flex-direction:column;width:min(520px,100vw);display:flex;position:absolute;top:72px;bottom:0;right:0;box-shadow:-20px 0 55px #00000047}.planner-heading{color:#fff;background:#171d1f;justify-content:space-between;align-items:center;min-height:84px;padding:18px 22px;display:flex}.planner-heading p{color:var(--lime);letter-spacing:.13em;text-transform:uppercase;margin:0 0 5px;font-size:9px;font-weight:700}.planner-heading h2{text-overflow:ellipsis;white-space:nowrap;max-width:410px;margin:0;font:600 22px/1.2 Manrope,sans-serif;overflow:hidden}.planner-heading>button{color:#cbd2d4;cursor:pointer;background:0 0;border:0;width:36px;height:36px;font-size:27px}.planner-tabs{background:#202729;grid-template-columns:repeat(3,1fr);display:grid}.planner-tabs button{color:#aeb8ba;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;min-height:46px;font-size:11px;font-weight:700}.planner-tabs button.active{border-bottom-color:var(--lime);color:#fff;background:#171d1f}.planner-tabs button:disabled{opacity:.38;cursor:not-allowed}.planner-message{background:#edf3d4;border-bottom:1px solid #ccd99a;justify-content:space-between;align-items:flex-start;gap:12px;padding:11px 16px;font-size:12px;line-height:1.45;display:flex}.planner-message button{color:#515a37;cursor:pointer;background:0 0;border:0;flex:none;font-size:18px}.planner-progress{color:#fff;letter-spacing:.05em;background:#4b5a61;padding:6px 16px;font-size:10px}.planner-body{flex:1;padding:20px;overflow-y:auto}.planner-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.planner-actions button,.planner-form>button,.work-order-list button,.road-rows button,.planner-body>button{color:#20282a;cursor:pointer;background:#fff;border:1px solid #abb3af;border-radius:2px;min-height:36px;padding:0 12px;font-size:11px;font-weight:700}.planner-actions button.primary,.planner-form>button.primary{background:var(--lime);color:#111;border-color:#9dbb2e}.planner-actions button.danger{color:#8c332a;border-color:#d5aaa6}.planner-actions button:disabled,.planner-form>button:disabled{opacity:.45;cursor:not-allowed}.testing-toggle{color:#596467;align-items:center;gap:8px;margin:17px 0 12px;font-size:11px;display:flex}.testing-toggle input{accent-color:#9dbb2e;width:16px;height:16px}.planner-empty{color:#667174;margin:18px 0;font-size:12px;line-height:1.5}.scheme-tree{margin:8px -8px 20px}.scheme-tree section>h3{margin:17px 10px 5px}.scheme-tree ul{margin:0;padding:0;list-style:none}.scheme-region-toggle{color:#6c7779;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:baseline;width:100%;padding:3px 0;font-size:9px;font-weight:700;display:flex}.scheme-region-toggle small{color:#98a1a3;letter-spacing:.02em;text-transform:none;font-size:8px;font-weight:500}.scheme-tree-row{align-items:stretch;display:flex}.scheme-branch-toggle,.scheme-branch-spacer{color:#657174;background:0 0;border:0;place-items:center;width:28px;min-width:28px;min-height:48px;font-size:13px;display:grid}.scheme-branch-toggle{cursor:pointer}.scheme-branch-toggle:hover,.scheme-branch-toggle:focus-visible{color:#1d2527;background:#e1e5df;outline:none}.scheme-tree-item{text-align:left;cursor:pointer;background:0 0;border:0;border-left:3px solid #0000;flex:1;justify-content:space-between;align-items:center;gap:10px;min-width:0;min-height:48px;padding:0 10px 0 7px;display:flex}.scheme-tree-item:hover{background:#e9ece6}.scheme-tree-item.selected{background:#fff;border-left-color:#9dbb2e;box-shadow:0 2px 10px #141e1e14}.scheme-tree-item span{min-width:0;font-size:12px;font-weight:700}.scheme-tree-item small{color:#7a8587;margin-top:4px;font-size:9px;font-weight:400;display:block}.scheme-tree-item b{min-width:23px;color:var(--lime);text-align:center;background:#293235;border-radius:12px;padding:5px;font-size:9px}.scheme-summary{border-top:3px solid var(--lime);background:#fff;padding:18px;box-shadow:0 4px 18px #141e1e14}.scheme-summary dl{grid-template-columns:repeat(2,1fr);gap:12px;margin:0 0 17px;display:grid}.scheme-summary dt{color:#778184;letter-spacing:.1em;text-transform:uppercase;font-size:8px}.scheme-summary dd{color:#242c2e;margin:3px 0 0;font-size:12px}.planner-form h3,.section-intro h3{margin:0 0 7px;font:600 20px/1.25 Manrope,sans-serif}.planner-form>label,.road-picker>label,.work-order-create label{color:#626d70;letter-spacing:.04em;text-transform:uppercase;flex-direction:column;gap:6px;margin:15px 0;font-size:10px;font-weight:700;display:flex}.planner-form input,.planner-form select,.planner-form textarea,.road-picker input,.group-heading input,.road-rows select{color:#182023;text-transform:none;letter-spacing:0;background:#fff;border:1px solid #b9c0bd;border-radius:2px;width:100%;min-height:42px;padding:9px 10px;font:400 13px/1.35 Arial,sans-serif}.planner-form textarea{resize:vertical;min-height:78px}.planner-form input:focus,.planner-form select:focus,.planner-form textarea:focus,.road-picker input:focus{outline:2px solid var(--lime);outline-offset:1px}.scope-picker{background:#fff;border:1px solid #b9c0bd;margin:15px 0;padding:13px 14px}.scope-picker legend{color:#626d70;letter-spacing:.04em;text-transform:uppercase;padding:0 5px;font-size:10px;font-weight:700}.scope-picker label{color:#253033;cursor:pointer;align-items:center;gap:10px;min-height:32px;font-size:12px;display:flex}.scope-picker input{accent-color:#9dbb2e;width:17px;height:17px;min-height:17px;margin:0}.scope-picker input:disabled{opacity:.65;cursor:not-allowed}.draw-tools,.road-picker{background:#e7ebe5;border-left:3px solid #4da6d8;margin:18px 0;padding:15px}.draw-tools>p,.road-picker>p,.section-intro p{color:#5c676a;margin:0 0 12px;font-size:12px;line-height:1.5}.membership-preview{color:#3e494b;background:#fff;margin:13px 0 0;padding:10px;font-size:11px}.form-end{border-top:1px solid #ccd1ce;justify-content:flex-end;margin-top:22px;padding-top:16px}.save-control{display:inline-flex;position:relative}.save-control[data-disabled-reason]{cursor:help}.save-control[data-disabled-reason]:hover:after,.save-control[data-disabled-reason]:focus-within:after{content:attr(data-disabled-reason);z-index:12;color:#fff;letter-spacing:0;text-transform:none;white-space:pre-line;background:#171d1f;border-radius:3px;width:260px;padding:9px 11px;font-size:10px;font-weight:500;line-height:1.45;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 7px 20px #00000047}.road-picker ul,.selected-roads{margin:7px 0;padding:0;list-style:none}.road-picker>ul:not(.selected-roads){background:#fff;border:1px solid #c4cbc7;max-height:220px;overflow-y:auto}.road-picker>ul:not(.selected-roads) button{text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #e4e7e4;flex-direction:column;width:100%;padding:9px 10px;display:flex}.road-picker li small,.selected-roads small,.road-rows small{color:#758083;margin-top:3px;font-size:9px;display:block}.road-picker h4,.road-special h4{margin:17px 0 7px;font-size:11px}.road-search-state{color:#657174;margin:-7px 0 10px;font-size:10px}.road-search-state.error{color:#8c332a}.selected-roads li{border-bottom:1px solid #ccd2ce;justify-content:space-between;align-items:center;gap:8px;padding:8px;font-size:11px;display:flex}.selected-roads button{color:#8c332a;cursor:pointer;background:0 0;border:0;font-size:10px}.section-intro{margin-bottom:16px}.dirty-warning{color:#675423;background:#fff1c9;padding:8px 10px;font-size:10px;font-weight:700}.road-groups>section,.road-special{background:#fff;border-left:4px solid #aab3af;margin:13px 0;box-shadow:0 2px 10px #141e1e0f}.group-heading{border-bottom:1px solid #dce0dd;grid-template-columns:1fr 40px 30px;align-items:center;gap:7px;padding:8px;display:grid}.group-heading input{min-height:36px}.group-heading input[type=color]{padding:3px}.group-heading span{color:#6f797c;text-align:center;font-size:10px}.road-rows{margin:0;padding:0;list-style:none}.road-rows li{border-bottom:1px solid #edf0ed;grid-template-columns:minmax(120px,1fr) 130px auto;align-items:center;gap:7px;padding:9px;font-size:11px;display:grid}.road-rows select{min-height:34px;padding:5px;font-size:10px}.road-rows button{min-height:32px;padding:0 8px;font-size:9px}.road-rows .road-focus{color:#263033;text-align:left;background:0 0;border:1px solid #0000;min-width:0;padding:6px 8px;font-size:11px;display:block}.road-rows .road-focus:hover,.road-rows .road-focus:focus-visible{background:#fff6bf;border-color:#d0a900;outline:none}.road-rows li.focused{background:#fff4a8;box-shadow:inset 3px 0 #111}.road-special>h4{margin:0;padding:10px}.road-special.excluded{opacity:.72;border-left-color:#9b5149}.road-organiser-body{padding:0;overflow:hidden}.road-organiser{flex-direction:column;height:100%;min-height:0;display:flex}.road-organiser-scroll{flex:1;min-height:0;padding:16px 20px 20px;overflow-y:auto}.add-road-group{color:#263033;cursor:pointer;background:#fff;border:1px solid #9ca7a3;min-height:34px;padding:0 10px;font-size:10px;font-weight:700}.road-organiser-footer{border-top:2px solid var(--lime);color:#fff;background:#20282a;flex:none;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex;box-shadow:0 -8px 20px #0003}.road-organiser-footer>span{color:#c0c9c6;font-size:9px}.road-organiser-footer .planner-actions{flex-wrap:nowrap}.road-organiser-footer .planner-actions button{white-space:nowrap;min-height:34px}.work-order-create{background:#fff;border:1px solid #ced3d0;margin:15px 0}.work-order-create summary{cursor:pointer;padding:14px;font-size:12px;font-weight:700}.work-order-create .planner-form{padding:0 15px 15px}.form-pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}.work-order-list{margin:14px 0;padding:0;list-style:none}.work-order-list>li{background:#fff;border-left:3px solid #4da6d8;justify-content:space-between;align-items:flex-start;gap:12px;margin:10px 0;padding:15px;display:flex;box-shadow:0 2px 10px #141e1e12}.work-order-list h4{margin:6px 0;font:600 16px/1.2 Manrope,sans-serif}.work-order-list p{color:#515c5f;margin:0 0 5px;font-size:10px}.work-order-list small{color:#7b8587;font-size:9px}.priority{color:#556063;text-transform:uppercase;background:#dfe4e1;border-radius:2px;padding:3px 6px;font-size:8px;font-weight:700;display:inline-block}.priority.priority{color:#675423;background:#fff0b9}.priority.urgent{color:#832f27;background:#f6d4d0}.scope-refresh{color:#fff;border-top:3px solid var(--lime);background:#1d2527;padding:16px;position:sticky;bottom:0;box-shadow:0 -8px 25px #00000038}.scope-refresh h4{margin:0 0 8px}.scope-refresh p{color:#c7ced0;font-size:11px;line-height:1.5}@media (width<=820px){.planner-panel{width:100vw;top:68px}.planner-body{padding:15px}.road-rows li{grid-template-columns:1fr}.scheme-summary dl{grid-template-columns:1fr 1fr}}.planner-panel{width:auto;box-shadow:none;pointer-events:none;background:0 0;border:0;grid-template-columns:minmax(340px,400px) minmax(430px,540px);justify-content:space-between;gap:28px;display:grid;left:0;right:0}.planner-panel.detail-hidden{grid-template-columns:minmax(340px,400px);justify-content:start}.planner-left-panel,.planner-detail-panel{pointer-events:auto;background:#f4f5f1;flex-direction:column;min-width:0;display:flex;overflow:hidden;box-shadow:0 12px 45px #00000047}.planner-left-panel{border-right:1px solid #cbd0cd}.planner-detail-panel{border-left:1px solid #cbd0cd}.planner-tabs{grid-template-columns:repeat(2,1fr)}.planner-left-body,.planner-detail-body{min-height:0}.planner-detail-body{padding-top:16px}.detail-heading{color:#fff;background:#171d1f;padding:20px 22px 16px}.detail-heading p,.selected-placeholder>p{color:var(--lime);letter-spacing:.08em;text-transform:uppercase;margin:8px 0 3px;font-size:9px;font-weight:700}.detail-heading h2,.selected-placeholder h2{margin:0;font:600 22px/1.25 Manrope,sans-serif}.detail-heading>span{color:#b8c1c3;font-size:10px}.selected-placeholder{max-width:340px;margin:auto;padding:32px}.selected-placeholder span{color:#687376;margin-top:12px;font-size:12px;line-height:1.55;display:block}.planner-detail-panel .scheme-summary{border-top:3px solid var(--lime);box-shadow:none;border-bottom:1px solid #d4d9d6;padding:14px 18px}.planner-detail-panel .scheme-summary dl{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.planner-detail-panel .scheme-summary .planner-actions button{min-height:32px;padding-inline:9px;font-size:9px}.scheme-filter-toggle{color:#3d484b;align-items:center;gap:8px;margin:0 0 12px;font-size:10px;font-weight:700;display:flex}.scheme-filter-toggle input{accent-color:#9dbb2e;width:16px;height:16px}.scheme-filter-state{color:#657174;margin:-6px 0 10px;font-size:9px}.scheme-filter-state.error{color:#8c332a}.detail-tabs{background:#e2e6e1;border-bottom:1px solid #c5cbc7;grid-template-columns:repeat(auto-fit,minmax(0,1fr));display:grid}.detail-tabs button{color:#596466;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;min-height:43px;font-size:10px;font-weight:700}.detail-tabs button.active{color:#1d2527;background:#fff;border-bottom-color:#9dbb2e}.contact-tabs{background:#e7eae6;border:1px solid #c5cbc7;grid-template-columns:1fr 1fr;margin:-4px 0 17px;display:grid}.contact-tabs button{color:#5d686b;cursor:pointer;background:0 0;border:0;min-height:34px;font-size:9px;font-weight:700}.contact-tabs button.active{color:#fff;box-shadow:inset 0 -3px var(--lime);background:#263033}.child-scheme-actions{background:#eef1ec;border-bottom:1px solid #d2d7d3;padding:11px 18px}.child-scheme-actions>button{color:#283134;cursor:pointer;background:#fff;border:1px solid #9aa5a1;width:100%;min-height:34px;font-size:10px;font-weight:700}.modal-backdrop{z-index:80;pointer-events:auto;background:#111719ad;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.child-scheme-modal{background:#f4f5f1;width:min(680px,100%);max-height:calc(100vh - 48px);overflow-y:auto;box-shadow:0 18px 60px #0000006b}.child-scheme-modal>header{color:#fff;background:#20282a;justify-content:space-between;align-items:flex-start;padding:18px 20px;display:flex}.child-scheme-modal>header p{color:#b8c1bd;letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:9px;font-weight:700}.child-scheme-modal>header h2{margin:0;font:600 20px/1.2 Manrope,sans-serif}.child-scheme-modal>header button{color:#fff;cursor:pointer;background:0 0;border:0;width:32px;height:32px;font-size:24px}.modal-intro{color:#596466;margin:0;padding:16px 20px 5px;font-size:11px;line-height:1.5}.child-draft-list{padding:10px 20px 0}.child-draft-list fieldset{background:#fff;border:1px solid #c5cbc7;margin:0 0 12px;padding:13px;position:relative}.child-draft-list legend{color:#687376;letter-spacing:.05em;text-transform:uppercase;padding:0 5px;font-size:9px;font-weight:700}.child-name{color:#596466;text-transform:uppercase;flex-direction:column;gap:5px;font-size:9px;font-weight:700;display:flex}.child-name input{color:#20282a;border:1px solid #aeb7b3;min-height:36px;padding:0 10px;font-size:12px}.child-scope-options{flex-wrap:wrap;gap:8px 18px;margin-top:10px;display:flex}.child-scope-options label{color:#303a3d;cursor:pointer;align-items:center;gap:6px;font-size:11px;display:flex}.child-scope-options input{accent-color:#9dbb2e;width:16px;height:16px}.remove-child{color:#8a3732;cursor:pointer;background:0 0;border:0;font-size:9px;font-weight:700;position:absolute;top:8px;right:10px}.add-child{color:#344043;cursor:pointer;background:0 0;border:1px dashed #929d99;min-height:34px;margin:0 20px 14px;font-size:10px;font-weight:700}.child-scheme-modal>footer{background:#fff;border-top:1px solid #c9cfcb;justify-content:flex-end;gap:9px;padding:14px 20px;display:flex}.child-scheme-modal>footer button{color:#253033;cursor:pointer;background:#fff;border:1px solid #9da7a3;min-height:36px;padding:0 14px;font-size:10px;font-weight:700}.child-scheme-modal>footer button.primary{color:#182022;background:#aeca39;border-color:#91ad2d}.child-scheme-modal>footer button:disabled{opacity:.55;cursor:not-allowed}.creator-start>button{color:#20282a;text-align:left;cursor:pointer;background:#fff;border:1px solid #c5cbc7;border-left:4px solid #9dbb2e;flex-direction:column;gap:6px;width:100%;margin:0 0 10px;padding:16px;display:flex}.creator-start>button:hover,.creator-start>button:focus-visible{border-color:#8faa29;outline:none;box-shadow:0 4px 14px #141e1e1a}.creator-start>button.secondary-choice{border-left-color:#7b8789}.creator-start strong{font:600 15px/1.2 Manrope,sans-serif}.creator-start span{color:#657073;font-size:11px;line-height:1.45}.back-link{color:#526064;cursor:pointer;background:0 0;border:0;margin:0 0 17px;padding:0;font-size:10px;font-weight:700}.property-list-input{background:#e7ebe5;border-left:3px solid #9dbb2e;margin:18px 0;padding:15px}.property-list-input label{color:#626d70;letter-spacing:.04em;text-transform:uppercase;flex-direction:column;gap:6px;margin:0;font-size:10px;font-weight:700;display:flex}.property-list-input textarea{min-height:155px;font-family:Consolas,monospace}.property-list-input p{color:#5c676a;margin:9px 0 0;font-size:10px;line-height:1.45}.scheme-region-empty{color:#9aa2a4;margin:3px 10px 8px;font-size:9px}.scheme-property-list{background:#fff;border:1px solid #d3d8d4;max-height:calc(100vh - 475px);margin:0;padding:0;list-style:none;overflow-y:auto}.scheme-property-list li{border-bottom:1px solid #e2e6e3;justify-content:space-between;gap:12px;padding:11px 12px;display:flex}.scheme-property-list li>div{min-width:0}.scheme-property-list strong{color:#263033;text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.scheme-property-list span{color:#737e80;margin-top:4px;font-size:9px;display:block}.scheme-property-list small{color:#596466;text-transform:capitalize;background:#e7ece8;border-radius:2px;flex:none;align-self:flex-start;padding:4px 6px;font-size:8px}.load-more,.scheme-properties>button{color:#20282a;cursor:pointer;background:#fff;border:1px solid #abb3af;width:100%;min-height:38px;margin-top:10px;font-size:10px;font-weight:700}@media (width<=980px){.planner-panel{pointer-events:auto;background:#f4f5f1;width:100vw;display:block;top:68px;overflow-y:auto}.planner-left-panel,.planner-detail-panel{min-height:calc(100vh - 68px);box-shadow:none;overflow:visible}.planner-left-panel{border-right:0}.planner-detail-panel{border-top:6px solid #30393c;border-left:0}.planner-left-body,.planner-detail-body{overflow:visible}.scheme-property-list{max-height:48vh}}
