
:root{font-family:Inter,Arial,sans-serif;color:#12333d;background:#edf2f3}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}header{background:#123b47;color:white;padding:18px max(24px,calc((100vw - 1320px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px}header strong{font-size:21px;letter-spacing:.02em}header span{font-size:13px;color:#c2dcdf}main{max-width:1320px;margin:25px auto;padding:0 24px}nav{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}nav button{border:1px solid #c8d5d8;background:#fff;padding:10px 16px;border-radius:8px;color:#17404b}nav button.active{background:#197c80;color:white;border-color:#197c80}.notice{background:#fff5de;border-left:4px solid #d99515;padding:12px 16px;margin-bottom:20px;font-size:14px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:15px}h1{font-size:26px;margin:0 0 5px}p{margin:0;color:#5b7279}.controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}input,select{padding:9px 11px;border:1px solid #b8cbd0;border-radius:7px;background:white;color:#12333d}.primary{background:#197c80;color:white;border:0;border-radius:7px;padding:10px 15px}.secondary{border:1px solid #b8cbd0;background:#fff;border-radius:7px;padding:9px 13px;color:#12333d}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.card{background:white;border:1px solid #d6e0e2;border-radius:10px;padding:17px}.card small{display:block;color:#627880;font-size:13px;margin-bottom:6px}.card b{font-size:29px}.panel{background:white;border:1px solid #d6e0e2;border-radius:10px;overflow:hidden;margin:18px 0}.panelhead{padding:16px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e2eaec;gap:12px}.panelhead h2{font-size:17px;margin:0}.scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;min-width:650px}th,td{padding:12px 16px;border-bottom:1px solid #edf0f1;font-size:14px}th{color:#657b82;font-weight:600;background:#f8fafb}tr:last-child td{border:0}.tag{font-size:12px;border-radius:20px;background:#dff1ee;padding:5px 9px;color:#17675f;white-space:nowrap}.tag.off{background:#eef0f2;color:#52646a}.tag.plan{background:#fff1d2;color:#8b5e10}.empty{padding:26px;color:#607980}.formgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:17px}.formgrid label{font-size:13px;color:#536b73;display:grid;gap:6px}.formgrid button{align-self:end}.muted{color:#627880;font-size:13px}.footer{padding:12px 0 28px;color:#607980;font-size:13px}@media(max-width:850px){.cards{grid-template-columns:repeat(2,1fr)}.formgrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){header{display:block}header span{display:block;margin-top:6px}.cards{grid-template-columns:repeat(2,1fr)}.formgrid{grid-template-columns:1fr}main{padding:0 14px}}
.legacybar{background:#3b989a;color:white;padding:8px 12px;display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:14px}.legacybar select,.legacybar input{padding:5px 7px;font-size:14px}.group-row td{background:#77999d;color:#fff;font-weight:700;padding:7px 12px}.personlink{border:0;background:none;padding:0;color:#155477;text-decoration:underline;font-weight:600}.report table{min-width:1000px}.report th,.report td{padding:7px 10px;font-size:13px;border-right:1px solid #d2dcde}.report th{background:#c9d4d7;color:#183741}.report tbody tr:nth-child(even):not(.group-row){background:#f6f8f8}.yearbox{overflow:auto}.yeargrid{border-collapse:collapse;table-layout:fixed;min-width:1080px;width:100%}.yeargrid th,.yeargrid td{padding:0;text-align:center;border:1px solid #d0d8db;font-size:12px;height:30px}.yeargrid th:first-child,.yeargrid td:first-child{width:72px;text-align:left;padding:4px 7px;background:#e8eff0;font-weight:700}.yeargrid td{width:calc((100% - 72px)/37)}.yeargrid .blank{background:#647076}.daynum{font-size:10px;color:#60747b;display:block;line-height:11px}.daycode{font-weight:700;line-height:17px;display:block}.daycell[data-code="BRU"]{background:#28d92f}.daycell[data-code="NS"]{background:#5699d0}.daycell[data-code="TR"]{background:#2ddce8}.daycell[data-code="AO"]{background:#f039e3}.summarychips{display:flex;gap:8px;flex-wrap:wrap;padding:14px}.summarychips span{background:#eaf4f4;border-radius:6px;padding:8px 12px;font-size:13px}.meta{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.meta div{border-right:1px solid #e5ecee;border-bottom:1px solid #e5ecee;padding:9px 14px;font-size:13px}.meta b{display:block;color:#63777d;font-weight:500;margin-bottom:3px}.back{border:0;background:none;color:#176e78;text-decoration:underline;padding:0;font:inherit}@media(max-width:700px){.meta{grid-template-columns:repeat(2,1fr)}}
.flights-layout{display:grid;grid-template-columns:1fr 1fr;align-items:start;background:#ccd1d3;gap:2px}.flights-side{background:white;min-width:0}.flights-side h2{text-align:center;background:#858b8d;color:#fff;font-size:16px;margin:0;padding:5px}.flights-side table{min-width:650px}.flights-side th,.flights-side td{font-size:12px;padding:5px 7px;border-right:1px solid #d2d7da}.flights-total{background:#fff58a;text-align:center;padding:8px;font-weight:700;font-size:13px}.flights-wrap{overflow:auto}.flights-side tbody tr:nth-child(even){background:#f3f5f5}@media(max-width:1100px){.flights-layout{grid-template-columns:1fr}}
[hidden]{display:none!important}a.primary{display:inline-block;text-decoration:none}header a{color:#d3eeeb}header #account{font-size:13px;text-align:right;line-height:1.7}.daycell[data-code="N"]{background:#5699d0;color:#102e47}.daycell[data-code="O"]{background:#f5bde8}.daycell[data-code="TR"]{background:#a4eaf0}.daycell[data-code=""]{background:white}.daycell.unknown{background:#fff0c4}.rota-table{table-layout:fixed;min-width:1200px}.rota-table th,.rota-table td{padding:7px 3px;text-align:center;width:54px;border-right:1px solid #d8e1e2}.rota-table th:first-child,.rota-table td:first-child{width:220px;position:sticky;left:0;background:#fff;z-index:1;text-align:left;padding:7px 12px}.rota-table .group-row td{background:#77999d}.note{padding:14px 18px;font-size:13px;line-height:1.6}dialog{border:1px solid #b8cbd0;border-radius:12px;width:min(800px,95vw);padding:0;color:#12333d}dialog::backdrop{background:#12333d88}.formgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.formgrid .wide{grid-column:1/-1}textarea{font:inherit;padding:10px;border:1px solid #b8cbd0;border-radius:7px;min-height:90px}.formgrid label.check{display:flex;align-items:center;gap:10px}.formgrid label.check input{width:18px;height:18px}.error{background:#fde5e2;border-left:4px solid #bd3e32;padding:12px 16px;margin:12px 0}.success{background:#dcf2ea;border-left:4px solid #197c80;padding:12px 16px;margin:12px 0}.counts{display:flex;gap:12px;flex-wrap:wrap}.counts span{padding:5px 8px;background:#eef5f5;border-radius:5px}.personlink small{display:block;font-weight:400;color:#627880;text-decoration:none;margin-top:3px}.formgrid button{justify-self:start}.person-actions{display:flex;gap:8px;flex-wrap:wrap}.tag.night{background:#d3e7f7;color:#234e74}.yeargrid .daycell{cursor:default}.caption{margin:12px 0;font-size:13px;color:#627880}.plan-slot{color:#99702a}#message:empty{display:none}.editor-error{grid-column:1/-1;color:#9c2d21}.previewline{grid-column:1/-1;background:#edf5f5;padding:12px;line-height:1.5}.yeargrid th:first-child,.yeargrid td:first-child{position:sticky;left:0;z-index:1}@media print{header,nav,.toolbar .controls,.notice,.footer,.editonly,#message{display:none!important}main{max-width:none;margin:0;padding:0}.scroll,.yearbox{overflow:visible}.panel{break-inside:avoid}button{border:0!important;background:none!important}.yeargrid{min-width:0}body{background:white}}
.account-signout{border:0;background:none;color:#d3eeeb;text-decoration:underline;font:inherit;padding:0}details{line-height:1.6}summary{cursor:pointer;color:#176e78}#login{max-width:800px;margin:30px auto}#login h1{margin-bottom:14px}#login .empty{padding-bottom:6px}#roles .formgrid{padding:16px 0}#login button:disabled{opacity:.6}
.year-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:14px 0}.year-controls label{display:flex;align-items:center;gap:10px}.legend-square{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:28px;border:1px solid #bbced0;border-radius:4px;font-size:12px;font-weight:bold}.occupancy-hero{background:#123b47;color:white;border-radius:14px;display:flex;justify-content:space-between;align-items:center;padding:28px 34px;gap:24px}.occupancy-hero p{color:#c6e0df}.occupancy-value{font-size:76px;font-weight:750;line-height:1.2;letter-spacing:-2px}.occupancy-value span{font-size:32px;color:#adc9cd;letter-spacing:0}.occupancy-gauge{width:160px;height:160px;border-radius:50%;background:conic-gradient(#64c5ae var(--occupancy),#355965 0);display:grid;place-items:center;position:relative}.occupancy-gauge:before{content:'';position:absolute;inset:15px;background:#123b47;border-radius:50%}.occupancy-gauge span{position:relative;font-size:30px;font-weight:bold}.over-capacity{background:#702f2f}.pob-trend{padding:24px;display:grid;grid-template-columns:repeat(14,minmax(40px,1fr));gap:12px;min-width:800px;overflow:auto}.pob-bar{text-align:center}.bar-track{height:150px;background:#edf3f4;position:relative;margin:8px 0;border-radius:4px;overflow:hidden}.bar-track span{position:absolute;bottom:0;left:0;right:0;background:#4ba99a}.pob-bar.over .bar-track span{background:#c24c43}.pob-bar small{font-size:11px;white-space:nowrap}.panel:has(.pob-trend){overflow:auto}.notice.private{border-color:#4ba99a;background:#edf6f3}@media(max-width:560px){.occupancy-hero{padding:20px}.occupancy-value{font-size:55px}.occupancy-gauge{height:110px;width:110px}.occupancy-gauge span{font-size:23px}.year-controls{gap:7px}}
/* ATS DW identity and visit workspace */
.brand-lockup{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.brand-lockup img{display:block;width:300px;height:auto;max-width:100%}.brand-lockup>span{font-size:10px;letter-spacing:.19em;margin-left:75px;color:#a5cbd0}header{padding-top:10px;padding-bottom:12px}header #account{font-size:13px;text-align:right}.eyebrow{display:block;font-size:10px;font-weight:800;letter-spacing:.14em;color:#2b787c;margin-bottom:7px}.visit-intro{padding:22px 25px;background:#dceceb;border:1px solid #bad5d3;border-radius:12px;margin-bottom:20px;display:flex;gap:24px;justify-content:space-between;align-items:center}.visit-intro h2{margin:0 0 9px;font-size:25px}.visit-guide{display:flex;gap:10px;flex-direction:column;min-width:145px;color:#46666d;font-size:13px}.visit-guide b{color:#17686f}.visit-form{max-width:1000px}.visit-form .panel{padding:24px}.visit-form h2{font-size:19px;margin:0 0 20px}.visit-form label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600}.visit-form label.check,.segmented label{flex-direction:row;align-items:center;gap:9px}.segmented{display:flex;gap:25px;border-bottom:1px solid #d8e4e5;padding-bottom:18px;margin-bottom:20px}.segmented input,.visit-form .check input{width:auto}.visit-form input:not([type=radio]):not([type=checkbox]),.visit-form select,.visit-form textarea{width:100%;min-width:0}.visit-results{margin-top:10px}.visit-results p{font-size:13px;padding:8px 0}.person-result{background:white;border:1px solid #d2e2e2;border-radius:8px;text-align:left;padding:12px 15px;display:flex;flex-direction:column;gap:5px;width:100%;margin-bottom:6px;color:#163c46}.person-result:hover{background:#edf8f5;border-color:#53a6a2}.person-result span{font-size:12px;color:#5c7479}.selected-person{margin-top:12px;background:#edf8f5;border:1px solid #a7d3c8;border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:7px}.selected-person span:last-child{font-size:13px;color:#45656a}.booking-preview{padding:16px 18px;border-left:3px solid #298f89;border-radius:5px;background:#e9f3f1;font-size:14px;line-height:1.6}.visit-submit{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.visit-submit p{font-size:12px}.visit-submit button{padding:13px 22px;min-width:230px}.visit-form details summary{cursor:pointer;color:#246e77;margin:10px 0}.visit-form [hidden],.selected-person[hidden]{display:none!important}.daycell[data-group=leave],.legend-square[data-group=leave]{background:#f9df9a;color:#634d18}.daycell[data-group=sick],.legend-square[data-group=sick]{background:#f3c4c8;color:#762f3e}.daycell[data-group=parental],.legend-square[data-group=parental]{background:#ddd1f1;color:#514077}.daycell[data-group=other],.legend-square[data-group=other]{background:#dae2e8;color:#40586d}.daycell[data-group=duty],.legend-square[data-group=duty]{background:#d8e9b5;color:#4c6329}.daycell[data-group=day]{background:#c6e9cf;color:#155833}.daycell[data-group=night]{background:#bfdbf4;color:#164f7f}.daycell[data-group=office]{background:#f4e4ba;color:#705516}.daycell[data-group=training]{background:#cce8e6;color:#1e676c}
@media(max-width:650px){.brand-lockup img{width:220px}.brand-lockup>span{font-size:8px;margin-left:55px}.visit-intro{padding:18px;display:block}.visit-guide{flex-direction:row;flex-wrap:wrap;margin-top:16px;font-size:11px;gap:12px}.visit-form .panel{padding:17px}.visit-submit{align-items:stretch;flex-direction:column}.visit-submit button{width:100%}.segmented{gap:15px}}
.controls[hidden]{display:none!important}

.pob-cards{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:560px){.pob-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.pob-cards .card:first-child{grid-column:1/-1}}
/* Operational workspace: calmer hierarchy, clear status and restrained motion. */
:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f3f6f8;color:#173841;--ink:#173841;--teal:#137f82;--line:#dce6e9}
body{background:radial-gradient(ellipse at top right,#e7f3f1,transparent 55%),#f3f6f8;min-height:100vh}
header{background:linear-gradient(110deg,#0c303d,#174b55);border-bottom:3px solid #68bdb1;box-shadow:0 3px 18px #153b4612}
main{max-width:1440px;margin-top:28px}nav{gap:6px;padding:7px;background:#e6edef;border:1px solid #dae5e8;border-radius:13px}nav button{border-color:transparent;background:transparent;font-size:13px;font-weight:600;padding:11px 15px;transition:background .16s,color .16s,box-shadow .16s}nav button:hover{background:#ffffffa8}nav button.active{background:#fff;color:#126d73;border-color:#d9e6e7;box-shadow:0 2px 6px #24444e12}
h1{font-size:30px;letter-spacing:-.7px}#subtitle{font-size:14px;line-height:1.6}.toolbar{padding:10px 0 14px;align-items:flex-start;gap:20px}.controls{padding:13px;background:#ffffffc9;border:1px solid var(--line);border-radius:12px;width:100%}.controls label{font-size:12px;font-weight:700;color:#698089}.controls input,.controls select{font-size:13px}input,select,textarea{border-color:#cfdbdf;border-radius:8px;transition:border .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:#459b98;box-shadow:0 0 0 3px #308b8a16}button:focus-visible,a:focus-visible{outline:3px solid #62b6bd;outline-offset:3px}
.primary{background:linear-gradient(135deg,#137f82,#176d76);box-shadow:0 2px 4px #175e6920;font-weight:600}.secondary{font-size:13px;border-color:#cfdbdf}.primary,.secondary{transition:background .15s,box-shadow .15s,transform .15s;min-height:38px}.primary:hover{background:#0b666e;box-shadow:0 4px 10px #175e6928}.secondary:hover{background:#edf6f4;border-color:#96bdbb}button:active{transform:translateY(1px)}button:disabled{cursor:wait;opacity:.55;transform:none}.date-navigation{display:flex;gap:3px;align-items:center}.date-navigation button{padding:7px 10px}.date-navigation input{max-width:151px}
.cards{gap:16px}.card{border:1px solid #dce6e9;border-radius:15px;padding:23px;box-shadow:0 4px 14px #1b445008;position:relative;overflow:hidden}.card small{font-size:12px;font-weight:650;letter-spacing:.02em}.card b{font-size:40px;letter-spacing:-1.2px;font-variant-numeric:tabular-nums}.pob-cards .card:first-child{background:linear-gradient(120deg,#103d4a,#1d5960);color:white;border-color:#174a54}.pob-cards .card:first-child small{color:#c2dedf}.card-detail{display:block;color:#b5dad8;font-size:12px;margin-top:9px}.shift-detail{display:block;font-size:11px;color:#70878e;margin-top:9px}.pob-cards .card:nth-child(2):before,.pob-cards .card:nth-child(3):before{content:'';position:absolute;right:23px;top:25px;width:10px;height:10px;border-radius:50%;background:#43a979}.pob-cards .card:nth-child(3):before{background:#5a92c5}
.panel{border-color:#dce6e9;border-radius:14px;box-shadow:0 4px 15px #173c4605}.panelhead{padding:18px 22px;background:#fff;border-color:#e5edef}.panelhead h2{font-size:16px;letter-spacing:-.2px}th{font-size:11px;letter-spacing:.035em;background:#f1f6f7;color:#657e87}td{padding-top:13px;padding-bottom:13px}.report th{background:#edf3f5;color:#55717a;font-size:11px}.report td{padding:10px 14px;border-color:#e9eff1}.report tbody tr:nth-child(even):not(.group-row){background:#f8fafb}.report tbody tr:not(.group-row):hover{background:#eaf4f2}.group-row td{background:#e0edee;color:#285c64;font-size:12px;font-weight:750;border-bottom:1px solid #d1e2e4}.personlink{text-decoration:none;color:#17637a}.personlink:hover{text-decoration:underline}.quick-actions{display:flex;align-items:center;gap:8px;margin:4px 0 18px;flex-wrap:wrap}.quick-actions .eyebrow{margin:0 12px 0 0;font-size:10px}.person-actions{margin:13px 0}.disruption-notice{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:17px 20px;border:1px solid #ead4aa;border-left:4px solid #cf9742;border-radius:12px;background:#fff9ed;margin:16px 0;font-size:14px}.disruption-notice p{font-size:12px;margin-top:6px;line-height:1.7}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#cb943d;margin-right:8px}.disruption-notice button{white-space:nowrap}.notice{border-radius:8px;font-size:12px;line-height:1.7}.yeargrid{border-radius:8px}.yeargrid th,.yeargrid td{height:36px}.yeargrid .daycode{font-size:11px}.yeargrid .daynum{font-size:9px}.summarychips span{border:1px solid #d9e9e7;background:#f1f8f6;border-radius:8px}.legend-square{border-color:#cdddda}.footer{font-size:11px;color:#83969b}.account-signout{color:#c9e5e3}.occupancy-hero{background:linear-gradient(120deg,#103d4a,#1d5960)}
#workspace[aria-busy=true] #app{opacity:.55;pointer-events:none;transition:opacity .15s}#workspace[aria-busy=true] .toolbar{cursor:progress}#app{animation:workspace-in .18s ease-out}dialog{box-shadow:0 24px 70px #0a303d30;border:0;border-radius:16px}dialog::backdrop{background:#0b2c3c88;backdrop-filter:blur(4px)}#disruptionPreview .scroll{max-height:280px}#disruptionPreview table{min-width:450px}#login{max-width:620px;margin:60px auto;border:1px solid #dde8ea;box-shadow:0 12px 50px #123b4710}#login .empty{padding:34px 34px 8px}#login .formgrid{padding:24px 34px}#login .note{padding:4px 34px 28px;font-size:12px}#login button{min-width:120px}#login h1{font-size:29px}
@keyframes workspace-in{from{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:650px){header{display:flex;align-items:center;padding:12px 16px;gap:12px}header #account{font-size:10px}.brand-lockup img{width:200px}.brand-lockup>span{font-size:7px;margin-left:50px}main{margin-top:18px}h1{font-size:26px}nav{padding:5px;gap:3px}nav button{font-size:12px;padding:9px 10px}.controls{gap:7px;padding:10px}.controls #search{flex:1;min-width:130px}.controls #department{flex:1;min-width:170px}.cards{gap:10px}.card{padding:18px}.card b{font-size:35px}.disruption-notice{align-items:flex-start;flex-direction:column;padding:15px;gap:10px}.quick-actions .eyebrow{width:100%;margin-bottom:3px}.formgrid{grid-template-columns:1fr}.formgrid input,.formgrid select{min-width:0;width:100%}#login{margin-top:30px}#login .empty{padding:25px 22px 4px}#login .formgrid{padding:20px 22px}#login .note{padding:0 22px 24px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.quick-actions,.disruption-notice button,.date-navigation{display:none!important}.card,.panel{box-shadow:none}.pob-cards .card:first-child{background:white;color:#173841}.card-detail,.pob-cards .card:first-child small{color:#173841}}
/* Bruce welcome portal. Scoped to sign-in; the operational workspace stays familiar. */
body:has(#login:not([hidden])){background:radial-gradient(ellipse at 12% 10%,#d6e9e8,transparent 45%),radial-gradient(ellipse at 90% 95%,#dce7ec,transparent 50%),#eef3f5}
body:has(#login:not([hidden])) main{max-width:1240px;margin:40px auto;padding:0 26px}
#login.login-portal{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(350px,1fr);max-width:none;margin:0 auto;border:1px solid #d8e4e7;border-radius:22px;min-height:600px;overflow:hidden;box-shadow:0 22px 70px #113b491c;background:#fff;animation:portal-in .4s ease-out}
.login-scene{position:relative;isolation:isolate;min-height:600px;padding:38px;display:flex;flex-direction:column;justify-content:space-between;background:#113d48 url('/bruce-login.webp') 57% center/cover no-repeat;color:white}
.login-scene:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#082f3cdd,#0c354758 90%),linear-gradient(0deg,#062632ed,transparent 55%,#0e354b55)}
.scene-topline{font-size:10px;font-weight:650;letter-spacing:.19em;display:flex;align-items:center;gap:10px;color:#daeeee}.scene-marker{height:7px;width:7px;border-radius:50%;background:#88d9c8;box-shadow:0 0 0 5px #8bd4c218}.scene-copy{margin:85px 0 100px}.scene-overline{font-size:9px;letter-spacing:.17em;color:#add4d5;font-weight:650;display:block;margin-bottom:21px}
#login .scene-copy h1{font-size:clamp(40px,4.6vw,61px);line-height:1.08;letter-spacing:-2.3px;font-weight:680;color:#fff;margin:0 0 25px}#login .scene-copy h1 span{color:#9bd5cc}.scene-copy p{font-size:16px;line-height:1.7;color:#d2e4e6;max-width:380px}.scene-foot{display:flex;align-items:end;justify-content:space-between;gap:15px;font-size:11px;letter-spacing:.1em;font-weight:600}.scene-coordinate{display:block;font-size:8px;letter-spacing:.16em;color:#a1c4cd;margin-top:7px}.scene-pill{font-size:9px;letter-spacing:.02em;font-weight:400;color:#d1e6e9;border:1px solid #ffffff35;border-radius:20px;padding:8px 11px;white-space:nowrap;background:#163f4c44}
.login-card{padding:47px 44px 30px;display:flex;flex-direction:column;justify-content:center;min-width:0;background:linear-gradient(160deg,#fff,#fbfdfd)}.login-heading{position:relative}.login-lock{width:44px;height:44px;background:#eaf5f2;border:1px solid #d7ebe6;color:#227d79;display:grid;place-items:center;border-radius:12px;margin-bottom:27px}.login-lock svg{width:23px;height:23px}.login-heading .eyebrow{font-size:9px;letter-spacing:.16em;color:#68868c;margin-bottom:10px}.login-heading h2{margin:0 0 11px;font-size:33px;line-height:1.1;letter-spacing:-.8px;color:#143b47}.login-heading p{font-size:13px;line-height:1.6;color:#647c83}
#login .formgrid{grid-template-columns:1fr;gap:18px;padding:28px 0 0;margin:0}#login .formgrid label{font-size:12px;font-weight:600;color:#34555f;gap:8px}#login input{font-size:14px;min-height:48px;padding:12px 14px;background:#fff;color:#173d46;border-color:#d1dfe2;border-radius:9px;width:100%}#login input::placeholder{color:#a0b0b5;font-weight:400}#login .password-control{display:block;position:relative}#login .password-control input{padding-right:65px}#login #togglePassword{position:absolute;right:9px;top:7px;min-width:0;min-height:34px;background:transparent;border:0;padding:6px 9px;border-radius:5px;color:#43727a;font-size:11px;font-weight:650;box-shadow:none}#login #togglePassword:hover{background:#edf5f4}
#login #loginButton{width:100%;display:flex;align-items:center;justify-content:space-between;font-size:14px;padding:14px 18px;min-height:48px;border-radius:9px;margin-top:1px;box-shadow:0 5px 15px #166f7920}#login #loginButton>span:last-child{font-size:21px;line-height:1}.login-support{font-size:12px;line-height:1.8;color:#526f78;border-top:1px solid #e7eef0;padding-top:21px;margin-top:26px}.login-support span{color:#7b9198;font-size:11px}.login-support b{font-weight:600;color:#2e5863}.login-assurance{font-size:9px;letter-spacing:.04em;color:#91a3a9;display:flex;align-items:center;gap:7px;margin-top:25px}.assurance-dot{width:5px;height:5px;display:inline-block;background:#6aac99;border-radius:50%}.assurance-divider{margin:0 5px;color:#c5d1d6}#loginError:empty{display:none}#loginError{font-size:12px;line-height:1.6}#login input:focus{border-color:#378f8a;box-shadow:0 0 0 3px #308b8a16}.login-portal button:focus-visible{outline:3px solid #5cb7b1;outline-offset:3px}
@keyframes portal-in{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(min-width:1450px){body:has(#login:not([hidden])) main{margin-top:65px}}
@media(max-width:900px) and (min-width:761px){#login.login-portal{grid-template-columns:minmax(0,1fr) minmax(330px,1fr)}.login-scene{padding:28px}.login-card{padding:35px 28px}.scene-pill{display:none}#login .scene-copy h1{font-size:43px}}
@media(max-width:760px){body:has(#login:not([hidden])) main{margin:18px auto 24px;padding:0 14px}#login.login-portal{display:block;min-height:0;border-radius:17px;box-shadow:0 14px 42px #123d4b16}.login-scene{min-height:0;padding:23px 25px 25px;background-position:57% 51%}.login-scene:before{background:linear-gradient(90deg,#082e3de8,#0c354776),linear-gradient(0deg,#082a3db5,transparent)}.scene-topline{font-size:8px;letter-spacing:.15em;gap:8px}.scene-marker{width:5px;height:5px}.scene-copy{margin:29px 0 0}.scene-overline,.scene-foot{display:none}#login .scene-copy h1{font-size:35px;line-height:1.07;letter-spacing:-1.15px;margin:0 0 13px}.scene-copy p{font-size:12px;line-height:1.65;max-width:290px}.desktop-break{display:none}.login-card{padding:26px 25px 22px}.login-lock{position:absolute;right:0;top:0;width:36px;height:36px;border-radius:10px;margin:0}.login-lock svg{width:20px;height:20px}.login-heading .eyebrow{font-size:8px;margin-bottom:8px}.login-heading h2{font-size:27px;margin-bottom:8px}.login-heading p{font-size:12px}#login .formgrid{padding:22px 0 0;gap:16px}#login .formgrid label{font-size:11px}#login input{font-size:16px;min-height:46px;padding:11px 12px}#login #loginButton{min-height:46px;padding:12px 15px;font-size:13px}.login-support{margin-top:22px;padding-top:17px;font-size:11px}.login-support span{font-size:10px}.login-assurance{margin-top:17px;font-size:8px}}
@media(prefers-reduced-motion:reduce){#login.login-portal{animation:none}}
