@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Fraunces:opsz,wght@9..144,600;9..144,700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color:#142c33;background:#eaf0ed;font-family:Manrope,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 5% 0%,#d8ebe1,transparent 30rem),#eaf0ed}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.62}.boot-screen{min-height:100vh;display:grid;place-items:center;color:#466368;font-weight:700}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);padding:2rem;gap:2rem;background:#062b2c;color:#eff7ef}.login-story{min-height:calc(100vh - 4rem);padding:clamp(2rem,7vw,7rem);display:flex;flex-direction:column;justify-content:center;background:linear-gradient(140deg,#2277708c,#052123d1),repeating-linear-gradient(0deg,transparent 0 38px,rgba(231,177,72,.11) 39px 40px);border:1px solid rgba(179,218,207,.2);border-radius:24px;overflow:hidden}.brand-mark{display:block;width:46px;height:46px;overflow:hidden;position:relative;border-radius:13px;background:#fff}.brand-mark img{position:absolute;left:-14%;top:-4%;width:128%;mix-blend-mode:multiply}.login-story .brand-mark{margin-bottom:3rem}.eyebrow{margin:0 0 .5rem;color:#bf8122;font:700 .72rem DM Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.login-story h1,.console-intro h1{max-width:13ch;margin:0;font:700 clamp(2.5rem,5vw,5.2rem)/.96 "Fraunces",serif;letter-spacing:-.06em}.login-story>p:not(.eyebrow){max-width:37ch;margin:1.7rem 0 0;color:#b8d5cf;line-height:1.7}.story-line{width:5rem;height:2px;margin:3rem 0 1rem;background:#e5a532}.login-story small{color:#87aaa5;font:500 .7rem DM Mono,monospace;letter-spacing:.12em}.login-card{align-self:center;max-width:440px;padding:clamp(2rem,5vw,4rem);background:#f7fbf6;color:#173239;border-radius:22px;box-shadow:0 30px 70px #0003}.login-card h2{margin:0;font:700 2rem/1 Fraunces,serif;letter-spacing:-.04em}.login-card>p:not(.eyebrow){margin:1rem 0 2rem;color:#597075;line-height:1.6;font-size:.9rem}form,.change-form{display:grid;gap:1rem}label{display:grid;gap:.45rem;color:#385359;font-size:.78rem;font-weight:800}input,select,textarea{width:100%;border:1px solid #c5d5d2;border-radius:9px;padding:.78rem .85rem;color:#163239;background:#fff;outline-color:#cf7d1b}textarea{min-height:94px;resize:vertical}form button,.change-form>button{border:0;border-radius:9px;padding:.9rem 1rem;color:#102f31;background:#ef9d1c;font-weight:800}.form-error{margin:0;padding:.7rem .8rem;color:#8f301e;background:#fff0eb;border-radius:8px;font-size:.82rem}.console-shell{min-height:100vh;max-width:1440px;margin:0 auto;padding:1.25rem clamp(1rem,4vw,4rem) 4rem}.topbar{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:.75rem 0 2rem}.brand{display:flex;align-items:center;gap:.75rem}.brand .brand-mark{width:36px;height:36px;border-radius:10px}.brand span:last-child{display:grid;gap:.06rem;font:800 .9rem DM Mono,monospace;letter-spacing:.08em}.brand small{color:#668084;font-size:.55rem;letter-spacing:.12em}.operator{display:flex;align-items:center;gap:1rem;color:#60777b;font-size:.75rem}.text-button{border:0;color:#17656b;background:transparent;font-weight:800}.topnav{display:flex;align-items:center;gap:.3rem;margin-right:auto;margin-left:clamp(1rem,6vw,6rem)}.topnav>button,.navigation-menu>button{border:0;border-radius:7px;padding:.55rem .7rem;color:#6b8384;background:transparent;font-size:.72rem;font-weight:800}.topnav>button.active,.navigation-menu>button.active{color:#154d50;background:#d9e8e0}.navigation-menu{position:relative}.navigation-menu>button span{margin-left:.28rem;font-size:.64rem}.navigation-popover{position:absolute;top:calc(100% + .55rem);left:0;display:grid;min-width:224px;overflow:hidden;border:1px solid #cbdad3;border-radius:10px;background:#fbfdfb;box-shadow:0 16px 32px #193d3c29}.navigation-popover>p{margin:0;padding:.7rem .85rem .38rem;color:#a66c1b;font:700 .59rem DM Mono,monospace;letter-spacing:.08em;text-transform:uppercase}.navigation-popover>button,.navigation-popover>span{display:grid;gap:.16rem;width:100%;border:0;padding:.72rem .85rem;color:#36565a;background:transparent;text-align:left;font-size:.72rem;font-weight:800}.navigation-popover>button:hover,.navigation-popover>button.selected{color:#154d50;background:#e3eee8}.navigation-popover small{color:#718789;font-size:.6rem;font-weight:500}.navigation-popover>span{color:#98a8a6;font-size:.66rem;font-weight:600;cursor:not-allowed}.console-intro{display:flex;justify-content:space-between;align-items:end;gap:2rem;padding:2rem 0 2.5rem}.console-intro h1{color:#11363a;font-size:clamp(2.2rem,4vw,4.3rem)}.console-intro h1+p{max-width:54ch;color:#547075;line-height:1.7}.secure-note,.fixed,.tenant-status{padding:.35rem .55rem;border-radius:999px;background:#d9e8e2;color:#3a625c;font:700 .65rem DM Mono,monospace;letter-spacing:.04em}.tenant-status.active{background:#d9ead0;color:#386333}.secure-note{display:grid;gap:.25rem;min-width:190px;padding:.9rem 1rem;border-radius:12px;background:#173f40;color:#e2f0e6}.secure-note strong{color:#f1a020;font:700 .7rem DM Mono,monospace;letter-spacing:.08em;text-transform:uppercase}.secure-note span{font:500 .72rem/1.45 Manrope,sans-serif;letter-spacing:0}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.dashboard-card{display:grid;align-content:start;gap:.35rem;min-height:184px;padding:1.25rem;border:1px solid #d0ddd7;border-radius:16px;background:#ffffffc2;box-shadow:0 12px 28px #2a50470f}.dashboard-card .eyebrow{margin-bottom:.25rem}.dashboard-card>strong{color:#173f40;font:700 clamp(2.4rem,4vw,3.6rem)/1 "Fraunces",serif;letter-spacing:-.06em}.dashboard-card>span,.dashboard-card>p:not(.eyebrow){color:#668084;font-size:.76rem;line-height:1.55}.dashboard-card>button{align-self:end;justify-self:start;margin-top:auto;border:1px solid #b9d0c7;border-radius:7px;padding:.5rem .68rem;color:#17656b;background:#f9fcf8;font-size:.7rem;font-weight:800}.dashboard-card>button:hover{color:#fff;background:#17656b}.dashboard-card.primary{border-color:#c6ddd0;background:linear-gradient(145deg,#f8fbf7,#e7f1ea)}.dashboard-card.guidance h2{margin:.12rem 0;color:#1b4247;font:700 1.35rem/1 Fraunces,serif;letter-spacing:-.04em}.console-grid{display:grid;grid-template-columns:minmax(255px,.8fr) minmax(0,1.7fr);gap:1.2rem}.tenant-panel,.module-panel,.status-card{border:1px solid #d0ddd7;border-radius:16px;background:#ffffffbd;box-shadow:0 12px 28px #2a50470f}.tenant-panel{padding:.7rem}.module-panel,.status-card{padding:clamp(1.25rem,3vw,2.25rem)}.status-card{max-width:640px}.status-card h2,.empty h2,.panel-heading h2{margin:0;font:700 1.5rem Fraunces,serif;letter-spacing:-.03em}.status-card p,.empty p{color:#667d80;line-height:1.6}.tenant-directory,.tenant-detail{border:1px solid #d0ddd7;border-radius:16px;background:#ffffffc2;box-shadow:0 12px 28px #2a50470f}.tenant-directory>header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.4rem;border-bottom:1px solid #d9e4de}.tenant-directory h2,.tenant-detail h2{margin:0;font:700 clamp(1.7rem,3vw,2.6rem)/1 "Fraunces",serif;letter-spacing:-.04em}.tenant-table{padding:.6rem}.tenant-table-head,.tenant-row{display:grid;grid-template-columns:minmax(220px,2fr) minmax(92px,.65fr) minmax(90px,.6fr) 110px;align-items:center;gap:1rem}.tenant-table-head{padding:.55rem .8rem;color:#708789;font:700 .62rem DM Mono,monospace;letter-spacing:.08em;text-transform:uppercase}.tenant-row{padding:.95rem .8rem;border-top:1px solid #e1e9e4;color:#567174;font-size:.75rem}.tenant-row>span:first-child{display:grid;gap:.2rem}.tenant-row strong{color:#1b4247;font-size:.86rem}.tenant-row small{color:#768b8d;font-size:.67rem}.tenant-row button{border:1px solid #bad0c8;border-radius:7px;padding:.48rem .6rem;color:#17656b;background:#f9fcf8;font-size:.7rem;font-weight:800}.tenant-row button:hover{color:#fff;background:#17656b}.tenant-detail{padding:clamp(1.25rem,3vw,2.25rem)}.detail-header{display:flex;justify-content:space-between;gap:1rem;padding-bottom:1.2rem;border-bottom:1px solid #d9e4de}.detail-header>div:first-child>p:not(.eyebrow){max-width:55ch;margin:.65rem 0 0;color:#6a8283;font-size:.78rem;line-height:1.6}.back-button{margin-bottom:1.2rem;border:0;padding:0;color:#196368;background:transparent;font-size:.72rem;font-weight:800}.back-button:before{margin-right:.4rem;content:"<"}.panel-heading{display:flex;justify-content:space-between;align-items:start;gap:1rem;padding:.75rem}.panel-heading strong{font-size:.85rem}.tenant-list{display:grid;gap:.3rem}.tenant{display:flex;justify-content:space-between;align-items:center;gap:.6rem;width:100%;border:0;padding:.85rem;text-align:left;border-radius:10px;color:#234148;background:transparent}.tenant:hover,.tenant.selected{background:#e0ece5}.tenant span{display:grid;gap:.2rem}.tenant strong{font-size:.83rem}.tenant small,.module-row small{color:#718689;font-size:.68rem}.tenant em{color:#557075;font:.65rem DM Mono,monospace;font-style:normal;white-space:nowrap}.empty{padding:2rem 1rem;color:#718689;text-align:center}.empty.large{min-height:360px;display:grid;place-content:center}.count-pill{display:grid;min-width:1.8rem;height:1.8rem;place-items:center;border-radius:999px;color:#28595a;background:#d9e8e2;font:700 .75rem DM Mono,monospace}.configuration-heading{display:flex;justify-content:space-between;gap:1rem;padding:.2rem .2rem 1.1rem;border-bottom:1px solid #d9e3de}.configuration-heading h2{margin:0;font:700 clamp(1.6rem,3vw,2.5rem)/1 "Fraunces",serif;letter-spacing:-.04em}.configuration-heading p:not(.eyebrow){max-width:48ch;margin:.6rem 0 0;color:#6a8283;font-size:.78rem;line-height:1.6}.configuration-metrics{display:flex;align-items:start;gap:.45rem}.configuration-metrics span{display:grid;gap:.1rem;min-width:4.7rem;padding:.55rem;border-radius:9px;color:#527074;background:#edf4ee;text-align:center;font-size:.62rem}.configuration-metrics strong{color:#173f40;font:700 1.25rem Fraunces,serif}.sector-tree{display:grid;gap:.85rem;margin-top:1rem}.sector-card{overflow:hidden;border:1px solid #d7e2dc;border-radius:12px}.sector-card>header{display:flex;justify-content:space-between;align-items:start;gap:1rem;padding:.9rem 1rem;background:#f5f8f4}.sector-card h3{margin:0;font:700 1.06rem Fraunces,serif;letter-spacing:-.02em}.sector-card p:not(.eyebrow){max-width:55ch;margin:.25rem 0 0;color:#6d8485;font-size:.72rem;line-height:1.45}.sector-card>header>span{padding:.3rem .45rem;border:1px solid #cfddd5;border-radius:99px;color:#567174;background:#fff;font:.61rem DM Mono,monospace;white-space:nowrap}.screen-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.screen-card{position:relative;display:flex;gap:.7rem;min-height:92px;padding:.85rem 1rem;border-top:1px solid #e1e9e4;cursor:pointer}.screen-card:nth-child(odd):not(:only-child){border-right:1px solid #e1e9e4}.screen-card:hover{background:#f9fcf8}.screen-card input{position:absolute;opacity:0}.screen-card input:focus-visible+.screen-check{outline:2px solid #e28f1b;outline-offset:2px}.screen-check{flex:0 0 18px;height:18px;margin-top:.1rem;border:1px solid #b9cbc3;border-radius:5px;background:#fff}.screen-card.enabled .screen-check{border-color:#197070;background:#197070;box-shadow:inset 0 0 0 4px #197070}.screen-card.enabled .screen-check:after{display:block;margin:3px 0 0 5px;width:5px;height:8px;border:solid #fff;border-width:0 2px 2px 0;content:"";transform:rotate(45deg)}.screen-card:has(input:disabled){cursor:default;background:#fafbf9}.screen-card:has(input:disabled) .screen-check{border-color:#c4cfcb;background:#dce5de}.screen-copy{display:grid;align-content:start;gap:.18rem}.screen-copy strong{color:#1b4146;font-size:.77rem}.screen-copy small{color:#6f8587;font-size:.66rem;line-height:1.4}.screen-copy em{margin-top:.15rem;color:#a66c1b;font:.56rem DM Mono,monospace;font-style:normal}.fixed-note{margin:0;padding:.55rem 1rem;color:#718788;background:#f7f9f7;font-size:.65rem}.module-list{display:grid;margin:1rem 0;border-top:1px solid #d9e3de}.module-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;border-bottom:1px solid #d9e3de}.module-row>span:first-child{display:grid;gap:.15rem}.module-row strong{font-size:.84rem}.module-row.enabled{background:linear-gradient(90deg,rgba(210,234,219,.62),transparent)}.module-row input{width:2.7rem;height:1.35rem;accent-color:#17656b}.change-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;margin-top:1.5rem;padding:1rem;border-radius:12px;background:#eef4ef}.change-form>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:.75rem}.change-form>button{align-self:end;min-width:190px}.toast{position:fixed;right:1rem;bottom:1rem;max-width:390px;margin:0;padding:.9rem 1rem;border-radius:10px;color:#effaf3;background:#174e4c;box-shadow:0 12px 28px #0003;font-size:.8rem}.change-form{grid-template-columns:72px 150px minmax(260px,1fr) 176px;align-items:end;gap:.7rem;padding:.7rem .85rem}.audit-label{align-self:center;color:#a66c1b;font:700 .61rem DM Mono,monospace;letter-spacing:.07em;text-transform:uppercase}.change-form>label{align-self:stretch;gap:.28rem;font-size:.68rem}.change-form select{height:42px;padding:.55rem .65rem}.change-form textarea{min-height:42px;height:42px;padding:.6rem .7rem;resize:none}.change-form .change-source,.change-form .change-reason{min-width:0}.change-form>button{min-width:0;height:42px;padding:.55rem .75rem;font-size:.78rem}@media(max-width:820px){.login-shell{grid-template-columns:1fr;padding:1rem}.login-story{min-height:360px;padding:2rem}.login-story h1{font-size:2.9rem}.login-card{max-width:none}.console-intro,.topbar,.configuration-heading,.detail-header{align-items:start;flex-direction:column}.console-grid,.dashboard-grid{grid-template-columns:1fr}.change-form,.change-form>div{grid-template-columns:1fr}.change-form>button{width:100%}.operator{width:100%;justify-content:space-between}.topnav{order:3;width:100%;margin:.4rem 0 0}.navigation-popover{width:min(250px,calc(100vw - 2rem))}.screen-grid{grid-template-columns:1fr}.screen-card:nth-child(odd):not(:only-child){border-right:0}.tenant-table{overflow-x:auto}.tenant-table-head,.tenant-row{min-width:600px}}
