.public-report-card{overflow-wrap:anywhere;margin:1rem 0}.public-report-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.public-report-heading h4{margin:.35rem 0}.public-report-outcome{white-space:nowrap;border:1px solid;border-radius:2rem;padding:.35rem .75rem;font-size:.85rem;display:inline-block}.public-report-outcome.passed{color:#126440;background:#e6f5ed}.public-report-outcome.failed{color:#a02222;background:#fff0f0}.public-report-outcome.needs_results,.public-report-outcome.not_applicable{color:#526472;background:#edf1f4}.public-report-caption{opacity:.85;font-size:.85rem}.public-report-card>.public-primary{justify-content:center;align-items:center;gap:.6rem;margin-top:.5rem;display:inline-flex}.public-report-failures{border:1px solid #bb4545;border-left-width:5px;border-radius:.6rem;margin:1rem 0;padding:1rem}.public-report-failures h3,.public-report-failures h4{margin:.3rem 0}.public-report-failures article+article{border-top:1px solid var(--line);margin-top:.7rem;padding-top:.7rem}.public-report-text{white-space:pre-wrap;line-height:1.6}.public-report-detail{border-top:2px solid var(--line);margin-top:1.5rem}.public-report-detail>header{padding:1rem 0}.public-report-section{margin:0 0 1.5rem}.public-report-section>h3{background:#eaf1f8;border-radius:.5rem;padding:.8rem 1rem}.public-report-section>article{border-bottom:1px solid var(--line);padding:.75rem 0}.public-report-reading{font-variant-numeric:tabular-nums;font-weight:700}.public-report-photos{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:1rem;display:grid}.public-report-photos figure{border:1px solid var(--line);border-radius:.6rem;margin:0;overflow:hidden}.public-report-photos img{object-fit:contain;width:100%;height:240px;display:block}.public-report-photos figcaption,.public-report-photos figure>div{padding:.75rem}@media (prefers-color-scheme:dark){.public-report-outcome.passed{color:#98e4bd;background:#163e30}.public-report-outcome.failed{color:#ffb1b1;background:#49282b}.public-report-outcome.needs_results,.public-report-outcome.not_applicable{color:#c3d1db;background:#283c4b}.public-report-section>h3{background:#233746}}.login-page{--login-accent:#245f93;--login-accent-hover:#1c4c76;--login-muted:#64767a;color:#173037;background:#f4f6f5;flex-direction:column;min-height:100dvh;font-family:Segoe UI,Arial,sans-serif;display:flex}.login-topbar{background:#fff;border-bottom:1px solid #dde5e1;justify-content:space-between;align-items:center;padding:27px 6%;display:flex}.login-wordmark{color:#173037;letter-spacing:1.5px;align-items:center;gap:12px;font-size:16px;font-weight:750;text-decoration:none;display:flex}.login-wordmark img{object-fit:contain;flex-shrink:0;width:49px;height:51px;display:block}.login-wordmark small{letter-spacing:1.7px;color:var(--login-muted);margin-top:5px;font-size:9px;font-weight:600;display:block}.login-toplabel{letter-spacing:2px;color:var(--login-muted);font-size:10px}.login-main{flex:1}.login-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:9%;max-width:1280px;margin:0 auto;padding:75px 6% 65px;display:grid}.login-eyebrow{letter-spacing:2px;color:var(--login-accent);margin-bottom:20px;font-size:10px;font-weight:750}.login-intro{width:fit-content;max-width:100%}.login-intro h1{letter-spacing:-1.8px;margin:0 0 22px;font-size:clamp(32px,4vw,53px);font-weight:550;line-height:1.1}.login-page p{color:var(--login-muted);margin:15px 0;font-size:15px;line-height:1.65}.login-intro .login-lede{contain:inline-size;font-size:17px}.login-service-art{color:#779ab8;background:#edf2f6;border:1px solid #b3c6d6;border-radius:50%;place-items:center;width:160px;height:160px;margin:35px auto 0;display:grid}.login-service-art svg{width:112px;height:112px}.login-intro-note{color:var(--login-muted);align-items:center;gap:8px;margin-top:22px;font-size:11px;display:flex}.login-intro-note>span{background:#779ab8;border-radius:50%;flex-shrink:0;width:6px;height:6px}.login-card{background:#fff;border:1px solid #dde6e0;border-radius:13px;min-width:0;padding:39px;box-shadow:0 14px 40px #153d2510}.login-card .login-eyebrow{margin-bottom:13px}.login-card h2{letter-spacing:-.7px;margin:0 0 16px;font-size:25px;font-weight:600;line-height:normal}.login-card>p{margin-bottom:30px}.login-form{gap:12px;display:grid}.login-form label{font-size:14px;font-weight:600}.login-form input{box-sizing:border-box;width:100%;min-width:0;min-height:46px;font:inherit;color:#173037;background:#fff;border:1px solid #a7b6b0;border-radius:6px;padding:12px}.login-submit{background:var(--login-accent);color:#fff;touch-action:manipulation;border:0;border-radius:6px;align-items:center;width:100%;min-height:46px;margin-top:12px;padding:14px 18px;font-size:13px;font-weight:600;display:flex}.login-submit:hover{background:var(--login-accent-hover)}.login-page a:focus-visible,.login-page button:focus-visible,.login-page input:focus-visible{outline:3px solid var(--login-accent);outline-offset:3px}.login-form .form-error{align-items:flex-start;margin:0}.login-form .form-error svg{flex-shrink:0}.login-divider{border-top:1px solid #e5ebe7;margin:30px 0}.login-security-note{gap:12px;display:flex}.login-security-note strong{font-size:12px}.login-security-note p{margin:6px 0;font-size:12px}.login-security-icon{width:25px;height:25px;color:var(--login-accent);background:#edf2f6;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.login-card .login-help{margin:23px 0 0;font-size:11px}.login-footer{color:var(--login-muted);border-top:1px solid #dde5e1;justify-content:space-between;gap:15px;padding:23px 6%;font-size:10px;display:flex}@media (width<=760px){.login-toplabel{display:none}.login-layout{grid-template-columns:minmax(0,1fr);gap:35px;padding-top:38px}.login-service-art,.login-intro-note{display:none}.login-intro{width:100%}.login-intro h1{font-size:38px}.login-card{padding:27px}.login-footer{flex-direction:column;font-size:9px}}.portal-managed-users .admin-grid.users-admin{grid-template-columns:1fr}:root{color:#163039;font-synthesis:none;--ink:#163039;--muted:#586d74;--line:#d5dfe2;--paper:#fff;--navy:#082f3c;--teal:#08747a;--teal-dark:#086269;--mint:#9cf5d3;--amber:#eab74d;--red:#c54a4a;--shadow:0 9px 30px #082f3c14;background:#edf2f3;font-family:Aptos,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #72d5db}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.045em;margin-bottom:.55rem;font-size:clamp(2rem,4vw,3.5rem);line-height:1.02}h2{letter-spacing:-.025em;margin-bottom:0;font-size:1.22rem}h3{font-size:1rem}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--teal);margin:0 0 .45rem;font-size:.68rem;font-weight:700}.primary,.secondary,.danger-button,.back-button,.photo-button,.link-button{border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.55rem;min-height:48px;padding:.7rem 1.1rem;font-weight:700;display:inline-flex}.primary{background:var(--teal);color:#fff;box-shadow:0 6px 15px #087d8333}.primary:hover{background:var(--teal-dark)}.secondary{color:var(--navy);background:#fff;border-color:#b9c9ce}.secondary:hover{border-color:var(--teal)}.link-button{text-decoration:none}.danger-button{color:#992d2d;background:#fff1f1;border-color:#e7b1b1}.wide{width:100%}.xl{min-height:58px;padding-inline:1.45rem;font-size:1rem}.button-row{flex-wrap:wrap;gap:.65rem;display:flex}.icon-button{color:inherit;background:0 0;border:0;justify-content:center;align-items:center;width:46px;height:46px}.mobile-only{display:none!important}.splash{text-align:center;background:var(--navy);color:#fff;place-content:center;gap:1rem;min-height:100vh;font-weight:700;display:grid}.splash svg{color:var(--mint);justify-self:center}.context-grid label,.notes-field,.reason-select label{color:#50666e;gap:.45rem;margin-bottom:1rem;font-size:.76rem;font-weight:700;display:grid}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #b9c9ce;border-radius:8px;min-height:48px;padding:.65rem .8rem}textarea{resize:vertical;min-height:90px}.form-error{color:#9d2929;background:#fff0f0;border:1px solid #efc3c3;border-radius:8px;align-items:center;gap:.55rem;margin:.6rem 0 1rem;padding:.7rem .8rem;font-size:.85rem;display:flex}.app-shell{min-height:100vh;padding-top:68px;padding-left:236px}.app-header{z-index:30;background:var(--navy);color:#fff;align-items:center;height:68px;padding:0 1.2rem;display:flex;position:fixed;inset:0 0 auto;box-shadow:0 2px 10px #00000024}.wordmark{color:#fff;background:0 0;border:0;align-items:center;gap:.65rem;width:216px;height:68px;padding:0 .7rem;display:flex}.wordmark svg{color:var(--mint)}.wordmark span{white-space:nowrap;font-size:1rem}.connection-pill{border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:.4rem;margin-left:auto;padding:.38rem .7rem;font-size:.72rem;display:flex}.connection-pill.offline{color:#ffd38c}.sync-button{color:#fff;background:#ffffff0f;border:1px solid #ffffff2e;border-radius:8px;align-items:center;gap:.45rem;height:42px;margin-left:.7rem;padding:0 .75rem;display:flex}.sync-button b{background:var(--red);border-radius:99px;padding:.12rem .38rem;font-size:.66rem}.user-button{color:#fff;text-align:left;background:0 0;border:0;border-left:1px solid #ffffff1f;align-content:center;height:68px;margin-left:.8rem;padding:0 .7rem 0 1rem;display:grid}.user-button small{color:#a9c1c7;text-transform:capitalize}.side-nav{z-index:25;color:#fff;background:#0d3a46;flex-direction:column;width:236px;padding:1.3rem .9rem;display:flex;position:fixed;top:68px;bottom:0;left:0}.nav-user{display:none}.side-nav nav{gap:.35rem;display:grid}.side-nav nav button,.logout{color:#bed1d6;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:.75rem;width:100%;min-height:50px;padding:.65rem .75rem;font-weight:600;display:flex}.side-nav nav button svg,.logout svg{width:20px}.side-nav nav button:hover,.side-nav nav button.active{color:#fff;background:#9cf5d31a}.side-nav nav em{background:var(--amber);color:var(--navy);border-radius:99px;margin-left:auto;padding:.1rem .42rem;font-size:.7rem;font-style:normal}.logout{color:#e7bebe;margin-top:auto}.content{max-width:1550px;margin:0 auto;padding:clamp(1.2rem,3vw,2.5rem)}.page-heading{justify-content:space-between;align-items:center;gap:2rem;min-height:120px;margin-bottom:1.4rem;display:flex}.page-heading h1{margin-bottom:.35rem}.page-heading p:not(.eyebrow){color:var(--muted);margin:0}.scan-cta{min-width:170px;min-height:58px}.metric-grid{grid-template-columns:repeat(5,1fr);gap:.85rem;margin-bottom:.95rem;display:grid}.metric{border-top:4px solid var(--teal);min-height:112px;box-shadow:var(--shadow);background:#fff;flex-direction:column;justify-content:space-between;padding:1.15rem;display:flex}.metric span{color:var(--muted);font-size:.76rem;font-weight:700}.metric strong{font-size:2.25rem;line-height:1}.metric.blue{border-color:#2e8fa4}.metric.amber{border-color:var(--amber)}.metric.violet{border-color:#7765c6}.metric.green{border-color:#3b9a74}.metric.red{border-color:var(--red)}.dashboard-grid{grid-template-columns:1.3fr .7fr;gap:.95rem;display:grid}.wide-panel{grid-row:span 2}.panel{background:var(--paper);box-shadow:var(--shadow);border:1px solid #dfe7e9;padding:1.25rem}.panel>header{border-bottom:1px solid #e5ebed;justify-content:space-between;align-items:center;margin-bottom:.7rem;padding-bottom:1rem;display:flex}.panel>header>svg{color:#779098}.progress-row{border-bottom:1px solid #edf1f2;grid-template-columns:minmax(150px,.8fr) minmax(160px,1.2fr) 45px;align-items:center;gap:1rem;padding:1rem .2rem;display:grid}.progress-row>div:first-child{display:grid}.progress-row span{color:var(--muted);font-size:.72rem}.progress-row strong{text-align:right;font-size:.82rem}.progress-track{background:#e4ecee;border-radius:99px;height:8px;overflow:hidden}.progress-track i{background:var(--teal);height:100%;display:block}.finding-row,.list-row{border-bottom:1px solid #edf1f2;align-items:center;gap:.75rem;min-height:58px;display:flex}.finding-row i{background:var(--amber);border-radius:3px;width:5px;height:36px}.finding-row i.critical{background:var(--red)}.finding-row div,.list-row div{display:grid}.finding-row span,.list-row span{color:var(--muted);font-size:.72rem}.list-row strong{margin-left:auto;font-size:.78rem}.danger-text{color:var(--red)}.empty-mini{color:#7a8d93;text-align:center;place-content:center;justify-items:center;gap:.5rem;min-height:120px;font-size:.82rem;display:grid}.empty-mini svg{color:#62a886}.notice{border-radius:8px;align-items:center;gap:.7rem;margin:.8rem 0;padding:.8rem 1rem;font-size:.84rem;display:flex}.notice.warning{color:#704e12;background:#fff7e8;border:1px solid #ecd39f}.notice.danger{color:#8e2c2c;background:#fff0f0;border:1px solid #e6baba}.notice.info{background:#eaf7fa;border:1px solid #b7dce2}.notice.success{color:#26644a;background:#e9f8f0;border:1px solid #b7dfc9}.notice button{color:inherit;background:0 0;border:0;margin-left:auto}.scan-hero{background:var(--navy);color:#fff;min-height:260px;box-shadow:var(--shadow);align-items:center;gap:clamp(1.5rem,4vw,4rem);margin-bottom:1rem;padding:clamp(1.5rem,4vw,3.5rem);display:flex}.scan-art{background:#9cf5d314;border:1px solid #9cf5d340;border-radius:24px;flex:none;place-content:center;width:150px;height:150px;display:grid}.scan-art svg{width:90px;height:90px;color:var(--mint)}.scan-hero h2{margin-bottom:.65rem;font-size:clamp(1.5rem,3vw,2.5rem)}.scan-hero p:not(.eyebrow){color:#bed1d6}.scan-hero .primary{background:var(--mint);color:var(--navy)}.search-form{grid-template-columns:1fr auto;gap:.7rem;padding:.8rem 0;display:grid}.search-form input{min-height:54px}.asset-results>button{width:100%;min-height:74px;color:var(--ink);text-align:left;background:#fff;border:0;border-top:1px solid #e3eaec;grid-template-columns:95px 1fr auto;align-items:center;gap:1rem;padding:.8rem .3rem;display:grid}.asset-results>button:hover{background:#f4f9fa}.asset-results div{gap:.1rem;display:grid}.asset-results span,.asset-results small{color:var(--muted)}.asset-results .asset-id,.asset-id{color:var(--teal);text-transform:uppercase;letter-spacing:.04em;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.72rem}.scanner-modal{z-index:100;color:#fff;background:#000;position:fixed;inset:0}.scanner-modal video{object-fit:cover;width:100%;height:100%}.scanner-top{padding:calc(env(safe-area-inset-top) + 1rem) 1.2rem 1rem;background:linear-gradient(#000c,#0000);justify-content:space-between;align-items:center;display:flex;position:absolute;top:0;left:0;right:0}.scanner-top button{color:#fff;background:#00000073;border:0;border-radius:50%;width:48px;height:48px}.scan-shade{pointer-events:none;place-content:center;display:grid;position:absolute;inset:0}.scan-frame{aspect-ratio:1;width:min(72vw,390px);position:relative;box-shadow:0 0 0 9999px #00000078}.scan-frame i{border-color:var(--mint);border-style:solid;width:55px;height:55px;position:absolute}.scan-frame i:first-child{border-width:5px 0 0 5px;top:0;left:0}.scan-frame i:nth-child(2){border-width:5px 5px 0 0;top:0;right:0}.scan-frame i:nth-child(3){border-width:0 0 5px 5px;bottom:0;left:0}.scan-frame i:nth-child(4){border-width:0 5px 5px 0;bottom:0;right:0}.scanner-error{background:#8a1e1eeb;border-radius:9px;gap:.65rem;max-width:580px;margin:auto;padding:.85rem;display:flex;position:absolute;bottom:100px;left:1rem;right:1rem}.torch-button{bottom:calc(env(safe-area-inset-bottom) + 25px);color:#fff;background:#000000b3;border:1px solid #ffffff59;border-radius:99px;justify-content:center;align-items:center;gap:.5rem;min-width:150px;min-height:52px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.back-button{color:var(--teal-dark);background:0 0;padding-left:0}.asset-hero,.visit-header{border-left:6px solid var(--teal);box-shadow:var(--shadow);background:#fff;justify-content:space-between;align-items:center;min-height:175px;margin-bottom:1rem;padding:clamp(1.3rem,3vw,2.2rem);display:flex}.asset-hero>svg{color:#d6e5e8;width:86px;height:86px}.asset-hero h1,.visit-header h1{margin:.35rem 0}.asset-hero>div>p,.visit-header>div>p{color:var(--muted)}.title-line{align-items:center;gap:.7rem;display:flex}.status-badge{text-transform:capitalize;color:#52686f;background:#e8eff1;border-radius:99px;padding:.3rem .6rem;font-size:.68rem;font-weight:700}.status-badge.active,.status-badge.in_progress{color:#7d5711;background:#fff2d5}.status-badge.submitted,.status-badge.reviewed{color:#5b4aa4;background:#ede9ff}.status-badge.completed{color:#276448;background:#e1f5eb}.location-line{color:var(--muted);align-items:center;gap:.5rem;font-size:.82rem;display:flex}.location-line svg{width:17px}.asset-layout{grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:1rem;display:grid}.asset-main{align-content:start;gap:1rem;display:grid}.detail-grid{grid-template-columns:repeat(3,1fr);margin:0;display:grid}.detail-grid>div{border-bottom:1px solid #e8edef;padding:.9rem}.detail-grid dt{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:700}.detail-grid dd{margin:.35rem 0 0;font-weight:600}.history-row{width:100%;min-height:64px;color:var(--ink);text-align:left;background:#fff;border:0;border-bottom:1px solid #e8edef;grid-template-columns:auto 1fr auto;align-items:center;gap:.85rem;display:grid}.history-row:hover{background:#f5f9fa}.history-row div{display:grid}.history-row span{color:var(--muted);font-size:.74rem}.status-dot{background:#8ea1a7;border-radius:50%;width:10px;height:10px}.status-dot.in_progress{background:var(--amber)}.status-dot.submitted,.status-dot.reviewed{background:#7765c6}.status-dot.completed{background:#3b9a74}.recommendation{border-left:3px solid var(--amber);background:#fafcfc;gap:.35rem;margin:.8rem 0;padding:.7rem .8rem;display:grid}.recommendation p{margin:0;font-size:.8rem}.recommendation small{color:var(--muted);text-transform:capitalize}.severity{text-transform:uppercase;letter-spacing:.08em;background:#e4ecee;border-radius:3px;justify-self:start;padding:.2rem .4rem;font-size:.6rem}.severity.major{color:#75510e;background:#fff0cd}.severity.critical{color:#922e2e;background:#ffe1e1}.offline-summary{grid-template-columns:repeat(4,1fr);gap:.85rem;margin-bottom:1rem;display:grid}.offline-summary>div{min-height:105px;box-shadow:var(--shadow);background:#fff;border:1px solid #e0e8ea;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:1rem;display:grid}.offline-summary svg{color:var(--teal)}.offline-summary span{color:var(--muted);font-size:.76rem;font-weight:700}.offline-summary strong{font-size:1.7rem}.offline-summary .danger{border-color:#dfacac}.offline-summary .danger svg,.offline-summary .danger strong{color:var(--red)}.conflict-panel{border-color:#e2b4b4;margin-bottom:1rem}.conflict{border:1px solid #e2b4b4;margin-top:1rem;padding:1rem}.conflict>div:first-child{justify-content:space-between;display:flex}.conflict code{color:var(--muted);font-size:.65rem}.compare{grid-template-columns:1fr 1fr;gap:.8rem;margin:.8rem 0;display:grid}.compare pre{white-space:pre-wrap;background:#f4f7f8;max-height:240px;margin:0;padding:.8rem;font-size:.67rem;overflow:auto}.compare pre strong{color:var(--teal-dark);margin-bottom:.5rem;display:block}.visit-header-actions{justify-items:center;gap:.6rem;display:grid}.visit-header-actions>button{white-space:nowrap}.visit-progress{place-content:center;width:120px;height:100px;display:grid;position:relative}.visit-progress svg{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.visit-progress circle{fill:none;stroke:#e1e9eb;stroke-width:3px}.visit-progress circle.done{stroke:var(--teal);stroke-dasharray:0 100;stroke-linecap:round}.visit-progress>div{text-align:center;z-index:1;display:grid}.visit-progress strong{font-size:1.4rem}.visit-progress span{color:var(--muted);font-size:.6rem}.safety-boundary{background:#fff8e9;border:1px solid #ead4a7;align-items:flex-start;gap:.8rem;margin-bottom:1rem;padding:.85rem 1rem;display:flex}.safety-boundary svg{color:#91651b;flex:none}.safety-boundary div{gap:.2rem;display:grid}.safety-boundary span{color:#755a27;font-size:.78rem;line-height:1.45}.inspection-layout{grid-template-columns:270px minmax(0,1fr);align-items:start;gap:1rem;display:grid}.section-list{background:var(--navy);color:#fff;max-height:calc(100vh - 100px);padding:1.1rem .75rem;position:sticky;top:84px;overflow-y:auto}.section-list .eyebrow{color:var(--mint);padding:0 .6rem .5rem}.section-list button{color:#c8d8dc;text-align:left;background:0 0;border:0;border-radius:7px;grid-template-columns:30px 1fr;align-items:center;gap:.55rem;width:100%;min-height:50px;padding:.45rem .5rem;display:grid}.section-list button:hover,.section-list button.active{color:#fff;background:#ffffff17}.section-list button span{background:#ffffff1a;border-radius:50%;place-content:center;width:26px;height:26px;font-size:.68rem;display:grid}.section-list button span svg{width:14px;color:var(--mint)}.section-list button b{font-size:.74rem;line-height:1.25}.inspection-card{box-shadow:var(--shadow);background:#fff;border:1px solid #dce5e7;min-width:0}.inspection-card>header{border-bottom:1px solid #dce5e7;justify-content:space-between;align-items:center;min-height:90px;padding:1.2rem 1.4rem;display:flex}.inspection-card>header>span{background:#edf4f5;border-radius:99px;padding:.4rem .7rem;font-size:.72rem;font-weight:700}.inspection-editor{border:0;min-inline-size:0;margin:0;padding:0}.inspection-editor:disabled{opacity:.66}.inspection-editor>footer{border-top:1px solid #dce5e7;justify-content:space-between;padding:1rem 1.4rem;display:flex}.field-list{padding:0 1.4rem}.inspection-field{border-bottom:1px solid #dfe7e9;padding:1.3rem 0 1.5rem}.field-title{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.field-title h3{margin-bottom:.3rem}.field-title h3 sup{color:var(--red);text-transform:uppercase;letter-spacing:.05em;margin-left:.45rem;font-size:.55rem}.field-title p{color:#697d84;align-items:center;gap:.4rem;margin-bottom:.8rem;font-size:.72rem;display:flex}.field-title p svg{flex:none;width:15px}.saved{color:#277152;white-space:nowrap;align-items:center;gap:.35rem;font-size:.68rem;display:inline-flex}.saved svg{width:15px}.status-picker{margin-top:.85rem}.status-buttons{grid-template-columns:repeat(5,1fr);gap:.45rem;display:grid}.status-buttons button{color:#536970;background:#f5f8f9;border:1px solid #cbd7da;border-radius:7px;justify-content:center;align-items:center;gap:.35rem;min-height:54px;font-size:.7rem;font-weight:700;display:flex}.status-buttons svg{width:18px}.status-buttons button:hover{border-color:var(--teal)}.status-buttons button.selected.pass{color:#236348;background:#e2f5eb;border-color:#82c7a5}.status-buttons button.selected.fail{color:#9b3030;background:#ffeded;border-color:#df8e8e}.status-buttons button.selected.not_applicable,.status-buttons button.selected.not_tested,.status-buttons button.selected.unable_to_test{color:#344e57;background:#e7eff1;border-color:#8ba2a9}.reason-select{background:#fff8e9;margin-top:.5rem;padding:.7rem}.reason-select label{margin:0}.reason-chip{color:#536970;text-transform:capitalize;background:#e8eef0;border-radius:4px;margin-top:.5rem;padding:.25rem .5rem;display:inline-block}.notes-field{margin-top:.8rem}.notes-field textarea{min-height:70px}.dictation-field{position:relative}.dictation-field textarea{min-height:120px;padding-right:58px}.voice-button{width:44px;height:44px;color:var(--teal);background:#fff;border:1px solid #b8c8cc;border-radius:50%;place-content:center;display:grid;position:absolute;top:8px;right:8px}.voice-button.listening{color:var(--red);background:#ffe1e1;animation:1s infinite pulse}.phase-grid{grid-template-columns:repeat(3,1fr);gap:.65rem;margin-top:.5rem;display:grid}.phase-grid.phases-1{grid-template-columns:minmax(180px,320px)}.phase-grid label>span{color:var(--teal-dark);margin-bottom:.3rem;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.72rem;display:block}.phase-grid label>div{position:relative}.phase-grid input{min-height:56px;padding-right:55px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:1.15rem}.phase-grid b{color:#71858c;font-size:.7rem;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.measurement-context{background:#f5f8f9;border:1px solid #dbe4e6;margin-top:.9rem}.measurement-context summary{cursor:pointer;align-items:center;gap:.4rem;min-height:45px;padding:.6rem .8rem;font-size:.76rem;font-weight:700;display:flex}.measurement-context summary span{color:var(--muted);font-weight:400}.context-grid{border-top:1px solid #dbe4e6;grid-template-columns:repeat(3,1fr);gap:.7rem;padding:.8rem;display:grid}.context-grid label{margin:0}.context-grid input,.context-grid textarea{min-height:44px}.span-2{grid-column:span 2}.photo-actions{grid-template-columns:1.25fr .75fr;gap:.6rem;display:grid}.photo-button{width:100%;min-height:64px;color:var(--teal-dark);background:#eef8f9;border:2px dashed #85abb2}.photo-button:hover{background:#e2f2f4}.photo-button.secondary-photo{background:#fff;border-style:solid}.photo-audit-note{color:var(--muted);background:#f3f7f8;align-items:flex-start;gap:.45rem;margin:0 0 .75rem;padding:.6rem .7rem;font-size:.7rem;display:flex}.photo-audit-note svg{flex:0 0 16px;width:16px}.photo-save-message{color:var(--teal-dark);margin-top:.5rem;display:block}.photo-evidence-stack{gap:.6rem;margin-top:.8rem;display:grid}.evidence-photo-grid{grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:.7rem;width:100%;display:grid}.evidence-photo-card{background:#fff;border:1px solid #d6e1e3;min-width:0;overflow:hidden}.evidence-photo-preview{width:100%;min-height:145px;color:var(--muted);background:#e8eff1;border:0;border-radius:0;place-items:center;padding:0;display:grid;position:relative;overflow:hidden}.evidence-photo-preview img{object-fit:cover;width:100%;height:175px;display:block}.evidence-photo-preview>span{place-items:center;gap:.4rem;font-size:.72rem;display:grid}.evidence-photo-preview>span svg{width:30px}.evidence-photo-preview i{color:#fff;background:#082f3ce0;align-items:center;gap:.25rem;padding:.3rem .45rem;font-size:.62rem;font-style:normal;display:flex;position:absolute;bottom:.45rem;right:.45rem}.evidence-photo-preview i svg{width:13px}.evidence-photo-details{gap:.3rem;padding:.65rem;display:grid}.evidence-photo-details b{font-size:.76rem}.evidence-photo-details span{color:var(--muted);align-items:center;gap:.35rem;font-size:.64rem;display:flex}.evidence-photo-details span svg{flex:0 0 14px;width:14px}.evidence-photo-details small{color:var(--muted);overflow-wrap:anywhere;font-size:.6rem}.queued-photo-card{border-left:4px solid var(--amber)}.remove-queued{color:#943838;background:#fff5f5;border:1px solid #d8a5a5;min-height:34px;margin-top:.3rem;font-size:.68rem}.remove-queued svg{width:15px}.panel-intro{color:var(--muted);margin:0 0 .9rem;font-size:.76rem}.asset-photo-panel{overflow:hidden}.photo-evidence-row{grid-template-columns:minmax(180px,.35fr) minmax(0,1fr);align-items:start}.photo-evidence-row .evidence-photo-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.loading,.empty-state{text-align:center;min-height:55vh;color:var(--muted);place-content:center;justify-items:center;gap:.8rem;display:grid}.empty-state svg{width:54px;height:54px;color:var(--teal)}.empty-state button{background:#fff;border:1px solid #b9c9ce;border-radius:8px;min-height:48px;padding:.6rem 1rem}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{box-shadow:0 0 0 7px #c54a4a26}}@media (width<=1100px){.metric-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}.wide-panel{grid-row:auto}.asset-layout{grid-template-columns:1fr}.inspection-layout{grid-template-columns:220px minmax(0,1fr)}.context-grid,.offline-summary{grid-template-columns:repeat(2,1fr)}}@media (width<=780px){.mobile-only{display:flex!important}.desktop-only{display:none!important}.app-shell{padding:58px 0 75px}.app-header{height:58px;padding:0 .55rem}.wordmark{width:auto;height:58px;padding:0 .3rem}.wordmark span{display:none}.connection-pill{margin-left:auto;padding:.28rem .48rem;font-size:0}.connection-pill svg{margin:0}.sync-button{height:40px;margin-left:.35rem;padding:0 .55rem}.sync-button span{display:none}.side-nav{z-index:80;width:min(86vw,330px);padding:calc(env(safe-area-inset-top) + 1rem) 1rem 1rem;transition:transform .2s;top:0;transform:translate(-105%)}.side-nav.open{transform:translate(0)}.nav-close{color:#fff;background:0 0;border:0;margin-left:auto}.nav-user{padding:1rem .75rem 1.4rem;display:grid}.nav-user span{color:#a9c1c7;text-transform:capitalize;font-size:.75rem}.scrim{z-index:70;background:#00000080;position:fixed;inset:0}.bottom-nav{z-index:40;height:calc(67px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid #cad6d9;grid-template-columns:1fr 1.2fr 1fr;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -5px 20px #082f3c17;display:grid!important}.bottom-nav button{color:#637980;background:#fff;border:0;flex-direction:column;justify-content:center;align-items:center;gap:.15rem;font-size:.62rem;display:flex;position:relative}.bottom-nav button svg{width:21px}.bottom-nav button.active{color:var(--teal)}.bottom-nav button.scan{background:var(--navy);color:#fff;border-radius:12px;margin:-10px .35rem 7px}.bottom-nav button.scan svg{color:var(--mint)}.bottom-nav em{background:var(--red);color:#fff;border-radius:99px;min-width:17px;padding:.08rem .25rem;font-style:normal;position:absolute;top:5px;right:23%}.content{padding:1rem}.page-heading{flex-direction:column;align-items:flex-start;gap:1rem;min-height:90px}.page-heading .button-row{width:100%}.page-heading .button-row button{flex:1}.page-heading h1{font-size:2.2rem}.metric-grid{grid-template-columns:repeat(2,1fr)}.metric{min-height:95px}.metric strong{font-size:1.8rem}.scan-cta{width:100%}.progress-row{grid-template-columns:1fr 48px}.progress-track{grid-area:2/1/auto/-1}.scan-hero{align-items:flex-start}.scan-art{width:90px;height:90px}.scan-art svg{width:52px}.search-form{grid-template-columns:1fr}.asset-results>button{grid-template-columns:72px 1fr auto}.asset-hero>svg{display:none}.detail-grid,.offline-summary{grid-template-columns:repeat(2,1fr)}.compare{grid-template-columns:1fr}.inspection-layout{display:block}.section-list{max-height:none;margin-bottom:.7rem;padding:.6rem;display:flex;position:static;overflow-x:auto}.section-list .eyebrow{display:none}.section-list button{flex:0 0 58px;grid-template-columns:1fr;justify-items:center;padding:.35rem;display:grid}.section-list button b{display:none}.section-list button.active{flex-basis:170px;grid-template-columns:28px 1fr;justify-items:start}.section-list button.active b{display:block}.field-list{padding:0 1rem}.inspection-card>header,.inspection-editor>footer{padding:1rem}.status-buttons{grid-template-columns:repeat(3,1fr)}.status-buttons button{min-height:58px}.phase-grid{gap:.45rem}.phase-grid input{padding:.5rem 38px .5rem .5rem;font-size:1rem}.phase-grid b{font-size:.6rem;right:5px}.context-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.visit-header{min-height:150px}.visit-progress{flex:0 0 90px;width:90px}.visit-header-actions>button{padding:.65rem .75rem;font-size:.7rem}.safety-boundary{font-size:.8rem}.photo-actions,.photo-evidence-row{grid-template-columns:1fr}}@media (width<=520px){.metric-grid{grid-template-columns:repeat(2,1fr);gap:.55rem}.metric{padding:.8rem}.dashboard-grid{gap:.65rem}.panel{padding:1rem}.scan-hero{display:block}.scan-art{margin-bottom:1rem}.asset-results>button{grid-template-columns:1fr auto}.asset-results .asset-id{grid-column:1/-1}.offline-summary>div{grid-template-columns:auto 1fr}.offline-summary strong{grid-column:2}.visit-header h1{font-size:1.7rem}.visit-progress{flex-basis:74px;width:74px;height:84px}.visit-progress span{display:none}.phase-grid{grid-template-columns:repeat(3,1fr)}.phase-grid input{min-height:54px}.status-buttons button{flex-direction:column;gap:.05rem}.inspection-card>footer button{padding-inline:.7rem}.field-title{display:block}.saved{margin-bottom:.5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.side-nav nav{overflow-y:auto}.workspace-tabs{gap:.5rem;margin-bottom:1rem;display:flex;overflow-x:auto}.workspace-tabs button{min-height:50px;color:var(--muted);background:#fff;border:1px solid #c7d4d7;flex:none;align-items:center;gap:.5rem;padding:.65rem 1rem;font-weight:700;display:flex}.workspace-tabs button[aria-selected=true]{background:var(--navy);color:#fff;border-color:var(--navy)}.workspace-tabs button[aria-selected=true] svg{color:var(--mint)}.office-layout{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);align-items:start;gap:1rem;display:grid}.office-form,.office-list{min-width:0}.office-form label,.review-filters label,.inline-form label,.create-report label,.narrative-editor label,.sub-control label,.stack-form label{color:#50666e;gap:.4rem;font-size:.74rem;font-weight:700;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.form-help{color:var(--muted);line-height:1.55}.asset-picker{border:1px solid var(--line);margin:.5rem 0 1rem}.picker-toolbar{border-bottom:1px solid var(--line);background:#f2f7f8;align-items:center;gap:.7rem;min-height:62px;padding:.55rem;display:flex}.picker-toolbar>label{flex:1;margin:0;display:block;position:relative}.picker-toolbar>label svg{color:var(--muted);position:absolute;top:50%;left:.7rem;transform:translateY(-50%)}.picker-toolbar input{min-height:44px;padding-left:2.25rem}.picker-count{color:var(--muted);white-space:nowrap;font-size:.7rem}.picker-count b{color:var(--teal-dark);font-size:.9rem}.picker-toolbar>button{min-height:42px;color:var(--teal-dark);background:#fff;border:1px solid #afc0c5;padding:.5rem .7rem;font-weight:700}.picker-list{max-height:365px;overflow-y:auto}.picker-list>label{cursor:pointer;border-bottom:1px solid #e6ecee;grid-template-columns:auto 1fr;align-items:center;gap:.75rem;min-height:58px;padding:.55rem .75rem;display:grid}.picker-list>label:hover,.picker-list>label.selected{background:#edf8f6}.picker-list input[type=checkbox],.grant-picker input[type=checkbox],.user-detail input[type=checkbox]{width:19px;min-height:19px;accent-color:var(--teal)}.picker-list span{gap:.15rem;display:grid}.picker-list small{color:var(--muted);font-weight:400}.empty-row{color:var(--muted);padding:1rem .2rem;font-size:.8rem}.office-list article{border-bottom:1px solid #e5ebed;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.7rem;min-height:82px;padding:.65rem .15rem;display:grid}.office-list article>div:first-child{flex:1;gap:.15rem;display:grid}.office-list article span,.office-list article small{color:var(--muted);font-size:.72rem}.office-list article>button{width:100%;color:var(--teal-dark);background:#eaf5f6;border:0;grid-column:1/-1;min-height:38px;padding:.45rem .65rem;font-weight:700}.label-print-ready{gap:.45rem;margin:0 0 1rem;display:grid}.label-print-ready small{color:var(--muted);line-height:1.45}.label-controls{border:0;min-width:0;margin:0;padding:0}.label-filters{background:#f2f7f8;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:.75rem;padding:.85rem;display:grid}.label-selection-actions{flex-wrap:wrap;gap:.6rem;padding:.75rem .85rem .3rem;display:flex}.label-selection-actions button{white-space:normal;text-align:center;min-height:44px}.label-selection-status{color:var(--teal-dark);margin:.45rem .85rem;font-weight:700}.label-selection-help{color:var(--muted);margin:.35rem .85rem .85rem;font-size:.74rem;line-height:1.5}.label-picker .picker-list{border-top:1px solid var(--line)}.label-picker .picker-list span{overflow-wrap:anywhere;min-width:0}.office-list article>.label-batch-print{width:100%;min-height:40px;color:var(--teal-dark);background:#eaf5f6;grid-column:1/-1;justify-content:center;align-items:center;gap:.45rem;padding:.5rem .7rem;font-weight:700;display:inline-flex}.label-batch-print svg{width:17px}.campaign-count{text-align:center;min-width:58px;display:grid}.campaign-count strong{font-size:1.15rem}.campaign-count span{font-size:.6rem!important}.upload-zone{background:#f4f9fa;border:2px dashed #9bb4ba;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;min-height:180px;margin:1rem 0;padding:1.2rem;display:grid}.upload-zone>svg{width:45px;height:45px;color:var(--teal)}.upload-zone label{margin:0}.upload-zone input{background:#fff;padding:.5rem}.validation-result{gap:.8rem;display:grid}.validation-metrics{grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}.validation-metrics span{text-align:center;min-height:75px;color:var(--muted);background:#eef3f4;place-content:center;font-size:.68rem;display:grid}.validation-metrics b{color:var(--ink);font-size:1.35rem;display:block}.validation-metrics .good{background:#e6f6ed}.validation-metrics .bad{background:#fff0f0}.table-scroll{max-width:100%;overflow:auto}.table-scroll table{border-collapse:collapse;width:100%;font-size:.72rem}.table-scroll th{text-align:left;color:var(--muted);background:#f2f6f7}.table-scroll th,.table-scroll td{vertical-align:top;white-space:nowrap;border:1px solid #dce5e7;padding:.55rem}.table-scroll td:last-child{white-space:normal;min-width:180px}.review-filters{grid-template-columns:1fr .65fr 1fr;gap:.8rem;margin-bottom:1rem;display:grid}.input-icon{position:relative}.input-icon svg{width:18px;color:var(--muted);position:absolute;top:50%;left:.7rem;transform:translateY(-50%)}.input-icon input{padding-left:2.4rem}.review-layout{grid-template-columns:minmax(300px,.38fr) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.review-queue{max-height:calc(100vh - 105px);position:sticky;top:84px;overflow-y:auto}.review-queue>button{text-align:left;width:100%;min-height:92px;color:var(--ink);background:#fff;border:0;border-bottom:1px solid #e4ebed;grid-template-columns:auto 1fr auto;align-items:center;gap:.65rem;padding:.65rem .25rem;display:grid}.review-queue>button:hover,.review-queue>button.selected{background:#eef8f8}.review-queue>button.selected{box-shadow:inset 4px 0 var(--teal)}.review-queue>button>div:nth-child(2){gap:.12rem;display:grid}.review-queue span,.review-queue small,.queue-meta time{color:var(--muted);font-size:.68rem}.queue-meta{text-align:right;gap:.25rem;display:grid}.review-detail{gap:1rem;min-width:0;display:grid}.review-summary>p{color:var(--muted)}.review-metrics{border:1px solid #dce5e7;grid-template-columns:repeat(5,1fr);margin:1rem 0;display:grid}.review-metrics div{border-right:1px solid #dce5e7;padding:.75rem}.review-metrics div:last-child{border:0}.review-metrics dt{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.58rem;font-weight:700}.review-metrics dd{margin:.3rem 0 0;font-size:1.25rem;font-weight:700}.evidence-section{margin-top:1rem}.evidence-section h3{background:var(--navy);color:#fff;margin:0;padding:.65rem .75rem}.evidence-row{border:1px solid #e0e7e9;border-top:0;grid-template-columns:minmax(180px,1fr) minmax(170px,.8fr);align-items:center;gap:1rem;min-height:65px;padding:.6rem .75rem;display:grid}.evidence-row>div:first-child{display:grid}.evidence-row small{color:var(--muted);font-size:.66rem}.measurement-values{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.evidence-value{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.evidence-value b{font-size:.76rem}.evidence-value small{text-align:right;width:100%}.review-actions-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.register-item{border-bottom:1px solid #e3eaec;gap:.25rem;padding:.7rem 0;display:grid}.register-item p{margin:0;font-size:.76rem}.register-item small{color:var(--muted)}.inline-form{background:#f3f7f8;border:1px solid #d5e0e2;grid-template-columns:1fr 1fr;gap:.65rem;margin-top:.7rem;padding:.8rem;display:grid}.inline-form .notice{margin:0}.review-decision{border-left:5px solid #3b9a74;justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.review-decision p{color:var(--muted);margin:.5rem 0 0}.create-report{border-left:5px solid var(--teal);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.create-report p{color:var(--muted);margin:.45rem 0 0}.create-report form{flex:1;grid-template-columns:repeat(3,1fr) auto;align-items:end;gap:.7rem;display:grid}.create-report form .notice{grid-column:1/-1}.report-builder{border-left:5px solid var(--teal);gap:1rem;margin-bottom:1rem;display:grid}.report-builder>header,.builder-preview>header,.builder-job>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.report-builder>header p{color:var(--muted);margin:.35rem 0 0}.builder-filters{grid-template-columns:repeat(5,minmax(120px,1fr));gap:.65rem;display:grid}.builder-filters label,.builder-formats label{color:var(--muted);gap:.35rem;font-size:.7rem;font-weight:750;display:grid}.builder-search{grid-column:span 2;position:relative}.builder-search>svg{width:17px;color:var(--muted);position:absolute;bottom:.72rem;left:.7rem}.builder-search input{padding-left:2.1rem}.builder-selection-bar{background:#eef6f6;border:1px solid #d8e6e7;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .8rem;display:flex}.builder-selection-bar>div:first-child{color:var(--muted);align-items:center;gap:.35rem;font-size:.76rem;display:flex}.builder-selection-bar svg{width:18px;color:var(--teal)}.builder-candidates{content-visibility:auto;border:1px solid #dce5e7;max-height:430px;overflow:auto}.builder-candidate{cursor:pointer;background:#fff;border-bottom:1px solid #e3e9ea;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;min-height:74px;padding:.65rem .8rem;display:grid}.builder-candidate:hover{background:#f5fbfa}.builder-candidate>input{width:18px;height:18px;accent-color:var(--teal)}.builder-candidate>div{gap:.12rem;min-width:0;display:grid}.builder-candidate>div:last-child{justify-items:end}.builder-candidate b,.builder-candidate span,.builder-candidate small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.builder-candidate span{color:var(--ink);font-size:.74rem}.builder-candidate small{color:var(--muted);font-size:.66rem}.builder-formats{border:1px solid #dce5e7;grid-template-columns:repeat(3,1fr);gap:.5rem;margin:0;padding:.8rem;display:grid}.builder-formats legend{color:var(--ink);padding:0 .4rem;font-size:.75rem;font-weight:800}.builder-formats label{color:var(--ink);cursor:pointer;background:#f5f8f8;grid-template-columns:auto auto 1fr;align-items:center;padding:.55rem}.builder-formats input{width:17px;height:17px;accent-color:var(--teal)}.builder-formats svg{width:18px;color:var(--teal)}.builder-preview,.builder-job{background:#f4f8f8;border:1px solid #cfdfe1;gap:.8rem;padding:1rem;display:grid}.builder-preview h3,.builder-job h3{margin:.15rem 0 0}.builder-preview time{color:var(--muted);font-size:.7rem}.builder-metrics{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.builder-metrics span{min-height:62px;color:var(--muted);background:#fff;border:1px solid #dce5e7;align-content:center;gap:.15rem;padding:.55rem .7rem;font-size:.67rem;display:grid}.builder-metrics b{color:var(--ink);font-size:1.05rem}.builder-frozen-note{color:var(--muted);margin:0;font-size:.72rem}.builder-jobs{border-top:1px solid #dfe7e9;gap:.35rem;padding-top:.8rem;display:grid}.builder-jobs h3{margin:0 0 .25rem}.builder-jobs>button{min-height:44px;color:var(--ink);text-align:left;background:#fff;border:1px solid #dce5e7;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;padding:.45rem .6rem;display:grid}.builder-jobs>button:hover,.builder-jobs>button.selected{background:#edf8f7;border-color:#aacdca}.builder-jobs time{color:var(--muted);font-size:.67rem}.job-progress{background:#dfe9ea;border-radius:4px;height:34px;position:relative;overflow:hidden}.job-progress>div{background:#84d4c9;height:100%;transition:width .25s}.job-progress>span{color:#173b42;place-content:center;font-size:.68rem;font-weight:800;display:grid;position:absolute;inset:0}.job-outputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.job-outputs button{text-align:left;justify-content:flex-start;min-width:0}.job-outputs button span{text-overflow:ellipsis;display:grid;overflow:hidden}.job-outputs small{color:var(--muted);font-size:.62rem}.report-layout{grid-template-columns:minmax(300px,.38fr) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.report-register{max-height:calc(100vh - 105px);position:sticky;top:84px;overflow-y:auto}.report-register>button{width:100%;min-height:92px;color:var(--ink);text-align:left;background:#fff;border:0;border-bottom:1px solid #e2e9eb;grid-template-columns:auto 1fr auto;align-items:center;gap:.65rem;padding:.7rem .25rem;display:grid}.report-register>button:hover,.report-register>button.selected{background:#edf8f7}.report-register>button.selected{box-shadow:inset 4px 0 var(--teal)}.report-register>button>svg{color:var(--teal)}.report-register>button>div{gap:.12rem;display:grid}.report-register span,.report-register small{color:var(--muted);font-size:.68rem}.report-detail{gap:1rem;min-width:0;display:grid}.report-header>header>div:last-child{justify-items:end;gap:.35rem;display:grid}.hash{word-break:break-all;font-family:ui-monospace,Consolas,monospace;font-size:.68rem}.narrative-editor{gap:.8rem;display:grid}.narrative-editor textarea{min-height:115px}.report-controls{gap:.8rem;display:grid}.export-grid{grid-template-columns:repeat(5,1fr);gap:.5rem;display:grid}.sub-control{border-top:1px solid #dfe7e9;padding-top:.8rem}.sub-control>form{background:#f3f7f8;gap:.65rem;margin-top:.8rem;padding:.8rem;display:grid}.control-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.delivery-row{border-bottom:1px solid #e1e8ea;grid-template-columns:1fr auto auto;align-items:center;gap:.8rem;min-height:58px;display:grid}.delivery-row div{display:grid}.delivery-row span,.delivery-row time{color:var(--muted);font-size:.7rem}.admin-grid{grid-template-columns:.7fr .9fr 1.4fr;align-items:start;gap:1rem;display:grid}.admin-grid.users-admin{grid-template-columns:minmax(330px,.75fr) minmax(0,1.25fr)}.stack-form{gap:.75rem;display:grid}.admin-register article{border-bottom:1px solid #e2e9eb;gap:.45rem;padding:.8rem 0;display:grid}.admin-register article>span{color:var(--ink);font-size:.76rem;display:grid}.admin-register article small{color:var(--muted);font-size:.68rem}.password-field{grid-template-columns:1fr auto;display:grid}.password-field input{border-radius:8px 0 0 8px;font-family:ui-monospace,Consolas,monospace}.password-field button{color:var(--teal-dark);background:#edf5f6;border:1px solid #b9c9ce;align-items:center;gap:.4rem;padding:.5rem;font-weight:700;display:flex}.grant-picker,.user-detail fieldset{border:1px solid #d4dfe1;gap:.35rem;max-height:270px;padding:.7rem;display:grid;overflow-y:auto}.grant-picker legend,.user-detail legend{color:var(--muted);font-size:.7rem;font-weight:700}.grant-picker>label,.user-detail fieldset>label{grid-template-columns:auto 1fr auto;align-items:center;gap:.55rem;min-height:36px;display:grid}.write-check{align-items:center;gap:.3rem;margin:0!important;display:flex!important}.write-check input{width:17px!important;min-height:17px!important}.user-split{grid-template-columns:.7fr 1.3fr;min-height:520px;display:grid}.user-list{border-right:1px solid #dce5e7}.user-list button{text-align:left;width:100%;min-height:62px;color:var(--ink);background:#fff;border:0;border-bottom:1px solid #e4eaec;padding:.6rem;display:grid}.user-list button.selected{box-shadow:inset 4px 0 var(--teal);background:#eaf7f6}.user-list small{color:var(--muted)}.user-detail{padding-left:1rem}.user-detail>p{color:var(--muted);font-size:.78rem}.user-detail fieldset{margin-bottom:.8rem}.session-control{margin-top:.7rem}.session-control form{background:#fff1f1;border:1px solid #e7b1b1;gap:.6rem;padding:.75rem;display:grid}.stack-form code{-webkit-user-select:all;user-select:all;font-weight:700}@media (width<=1200px){.office-layout,.review-layout,.report-layout{grid-template-columns:1fr}.office-list,.review-queue,.report-register{max-height:none;position:static}.admin-grid{grid-template-columns:1fr 1fr}.admin-grid>:last-child{grid-column:1/-1}.create-report form{grid-template-columns:1fr 1fr}.create-report form .button-row{align-self:end}.builder-filters{grid-template-columns:repeat(3,1fr)}.builder-search{grid-column:span 2}}@media (width<=780px){.workspace-tabs{margin-inline:-1rem;padding-inline:1rem}.workspace-tabs button{min-height:46px}.form-grid,.review-filters,.review-actions-grid,.admin-grid,.admin-grid.users-admin{grid-template-columns:1fr}.form-grid .span-2,.inline-form .span-2{grid-column:auto}.upload-zone{text-align:center;grid-template-columns:1fr}.upload-zone>svg{justify-self:center}.validation-metrics{grid-template-columns:repeat(2,1fr)}.review-metrics{grid-template-columns:repeat(3,1fr)}.review-metrics div{border-bottom:1px solid #dce5e7}.create-report{flex-direction:column;align-items:stretch}.create-report form{grid-template-columns:1fr}.export-grid{grid-template-columns:repeat(2,1fr)}.builder-filters,.builder-formats,.builder-metrics,.job-outputs{grid-template-columns:1fr}.builder-search{grid-column:auto}.builder-selection-bar{flex-direction:column;align-items:stretch}.builder-candidate{grid-template-columns:auto minmax(0,1fr)}.builder-candidate>div:last-child{grid-column:2;justify-items:start}.builder-jobs>button{grid-template-columns:auto 1fr}.builder-jobs time{grid-column:2}.evidence-row{grid-template-columns:1fr}.measurement-values,.evidence-value{justify-content:flex-start}.evidence-value small{text-align:left}.review-decision{flex-direction:column;align-items:stretch}.admin-grid>:last-child{grid-column:auto}.user-split{grid-template-columns:1fr}.user-list{border-bottom:1px solid #dce5e7;border-right:0;max-height:230px;overflow-y:auto}.user-detail{padding:1rem 0 0}}@media (width<=520px){.picker-toolbar{display:grid}.picker-toolbar>button{width:100%}.office-list article{flex-wrap:wrap;align-items:flex-start}.campaign-count{margin-left:auto}.review-queue>button,.report-register>button{grid-template-columns:auto 1fr}.queue-meta,.report-register>button>div:last-child{text-align:left;grid-column:2;justify-items:start}.review-metrics{grid-template-columns:repeat(2,1fr)}.inline-form{grid-template-columns:1fr}.delivery-row{grid-template-columns:1fr auto}.delivery-row time{grid-column:1/-1}.control-heading{flex-direction:column;align-items:stretch}.password-field{grid-template-columns:1fr}.password-field input{border-radius:8px}.password-field button{justify-content:center;min-height:42px}}.campus-heading .link-button svg{width:18px}.campus-summary{grid-template-columns:repeat(4,1fr);gap:.8rem;margin-bottom:1rem;display:grid}.campus-summary>div{border:1px solid #dce5e7;border-top:4px solid var(--teal);min-height:94px;box-shadow:var(--shadow);background:#fff;grid-template-columns:auto 1fr;align-content:center;column-gap:.7rem;padding:1rem;display:grid}.campus-summary svg{color:var(--teal);grid-row:1/3;align-self:center}.campus-summary span{color:var(--muted);font-size:.7rem;font-weight:700}.campus-summary strong{font-size:1.15rem}.campus-summary .check-in{background:var(--navy);color:#fff;border-color:var(--mint)}.campus-summary .check-in span{color:#bdd1d6}.campus-summary .check-in svg{color:var(--mint)}.campus-tools{margin-bottom:1rem;padding:.85rem 1rem}.campus-search{margin-bottom:.8rem;display:block;position:relative}.campus-search svg{z-index:1;color:var(--muted);width:20px;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.campus-search input{min-height:54px;padding-left:2.65rem}.building-filter{gap:.45rem;padding-bottom:.15rem;display:flex;overflow-x:auto}.building-filter button{min-height:43px;color:var(--teal-dark);background:#fff;border:1px solid #c4d1d4;border-radius:999px;flex:none;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.72rem;font-weight:700;display:flex}.building-filter button b{min-width:21px;height:21px;color:var(--navy);background:#e4eff0;border-radius:50%;place-content:center;font-size:.64rem;display:grid}.building-filter button.active{color:#fff;background:var(--navy);border-color:var(--navy)}.building-filter button.active b{background:var(--mint)}.floor-selector{background:#f1f6f7;border-top:1px solid #dbe5e7;margin:.75rem -1rem -.85rem;padding:.75rem 1rem .85rem;animation:.16s ease-out reveal-floors}.floor-selector>span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem;font-size:.68rem;font-weight:800;display:block}.floor-filter{gap:.45rem;padding-bottom:.1rem;display:flex;overflow-x:auto}.floor-filter button{min-height:40px;color:var(--navy);background:#fff;border:1px solid #acc2c7;border-radius:7px;flex:none;align-items:center;gap:.45rem;padding:.45rem .7rem;font-size:.72rem;font-weight:700;display:flex}.floor-filter button b{min-width:21px;height:21px;color:var(--navy);background:#e2edef;border-radius:50%;place-content:center;font-size:.63rem;display:grid}.floor-filter button.active{color:#fff;background:var(--teal);border-color:var(--teal)}.floor-filter button.active b{background:#fff}.floor-filter button small{color:#176249;letter-spacing:.04em;text-transform:uppercase;background:#def3ed;border-radius:999px;padding:.18rem .35rem;font-size:.54rem;font-weight:900}.floor-filter button.active small{color:#fff;background:#ffffff2e}@keyframes reveal-floors{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.schedule-option{cursor:pointer;background:#eef7f6;border:1px solid #cbdadd;align-items:center;padding:.75rem;grid-template-columns:auto 1fr!important}.schedule-option input{width:20px;min-height:20px;accent-color:var(--teal)}.schedule-option span{gap:.15rem;display:grid}.schedule-option small{color:var(--muted);font-weight:400}.schedule-workspace{gap:1rem;display:grid}.schedule-metrics{grid-template-columns:repeat(4,1fr);gap:.7rem;display:grid}.schedule-metrics button{min-height:86px;color:var(--ink);text-align:left;box-shadow:var(--shadow);background:#fff;border:1px solid #cbdadd;align-content:center;gap:.25rem;padding:.8rem;display:grid}.schedule-metrics button.active{border-color:var(--teal);box-shadow:inset 0 4px var(--teal), var(--shadow)}.schedule-metrics span{color:var(--muted);font-size:.68rem;font-weight:700}.schedule-metrics strong{font-size:1.5rem}.service-request-queue{border-left:5px solid #d18a26}.request-count{color:#7a4a08;background:#fff1d8;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .55rem;font-weight:800;display:flex}.request-count svg{width:17px}.service-request-queue>article{border-top:1px solid #e1e8ea;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;min-height:88px;padding:.7rem 0;display:grid}.service-request-queue>article>div:nth-child(2){gap:.15rem;display:grid}.service-request-queue p{color:var(--ink);margin:0;font-size:.76rem}.service-request-queue small{color:var(--muted);font-size:.67rem}.request-urgency{min-width:58px;color:var(--muted);text-align:center;text-transform:uppercase;background:#edf2f3;border-radius:999px;padding:.3rem .45rem;font-size:.62rem;font-weight:800}.request-urgency.soon{color:#7a4a08;background:#fff1d8}.request-urgency.urgent{color:#922d2d;background:#ffe2e2}.request-actions{gap:.4rem;display:flex}.request-actions button{min-height:36px;color:var(--teal-dark);background:#f2f7f8;border:1px solid #b9c9cd;padding:.35rem .55rem;font-size:.68rem;font-weight:700}.schedule-board{min-width:0}.schedule-toolbar{background:#f2f7f8;border:1px solid #dae4e6;align-items:center;gap:.8rem;min-height:58px;padding:.55rem;display:flex}.schedule-toolbar label{flex:1;position:relative}.schedule-toolbar svg{width:18px;color:var(--muted);position:absolute;top:50%;left:.7rem;transform:translateY(-50%)}.schedule-toolbar input{padding-left:2.3rem}.schedule-toolbar>span{color:var(--muted);font-size:.72rem;font-weight:700}.schedule-list{display:grid}.schedule-row{border-bottom:1px solid #e1e8ea;grid-template-columns:minmax(220px,1.1fr) minmax(160px,.65fr) minmax(185px,.75fr) minmax(210px,1fr) auto;align-items:end;gap:.65rem;padding:.8rem 0;display:grid}.schedule-row>label{color:#50666e;gap:.3rem;font-size:.66rem;font-weight:700;display:grid}.schedule-row>label small{color:var(--muted);font-weight:400}.schedule-asset{color:var(--ink);text-align:left;background:0 0;border:0;gap:.12rem;padding:.35rem;display:grid}.schedule-asset:hover{background:#eef7f6}.schedule-asset span,.schedule-asset small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.schedule-row>.secondary{min-height:44px}.schedule-saved{color:#277a58;grid-column:1/-1;justify-content:flex-end;align-items:center;gap:.25rem;display:flex}.schedule-saved.error{color:#9a2929}.schedule-saved svg{width:15px}@media (width<=1100px){.schedule-row{grid-template-columns:1fr 1fr}.schedule-asset{grid-column:1/-1}.schedule-row>.secondary{justify-self:end}.schedule-saved{grid-column:1/-1}}@media (width<=700px){.schedule-metrics{grid-template-columns:1fr 1fr}.service-request-queue>article{grid-template-columns:auto 1fr}.request-actions{grid-column:1/-1}.schedule-row{grid-template-columns:1fr}.schedule-asset,.schedule-saved{grid-column:auto}.schedule-row>.secondary{width:100%}.schedule-toolbar{flex-direction:column;align-items:stretch}.schedule-toolbar>span{padding-left:.2rem}}.public-qr-page{--public-navy:#063846;--public-teal:#0d8589;--public-mint:#8ef0cf;color:#102c35;background:#edf3f3;min-height:100vh;padding:0 max(1rem,50vw - 490px) 2rem}.public-brand{color:#fff;background:var(--public-navy);padding:0 1.25rem;align-items:center;gap:.7rem;min-height:78px;margin-inline:calc(-1*max(1rem,50vw - 490px));padding-inline:max(1rem,50vw - 490px);display:flex}.public-brand-mark{background:var(--public-mint);width:42px;height:42px;color:var(--public-navy);border-radius:11px;place-content:center;display:grid;transform:rotate(-3deg)}.public-brand-mark svg{width:25px}.public-brand>div:nth-child(2){letter-spacing:.055em;display:grid}.public-brand>div:nth-child(2) b{font-size:.95rem}.public-brand>div:nth-child(2) span{color:#b9d1d5;letter-spacing:.15em;font-size:.64rem;font-weight:700}.public-secure{color:#cae0e2;align-items:center;gap:.4rem;margin-left:auto;font-size:.72rem;font-weight:700;display:flex}.public-secure svg{width:18px;color:var(--public-mint)}.public-asset-hero{background:linear-gradient(125deg, var(--public-navy), #0a4d59);color:#fff;border-left:7px solid var(--public-mint);justify-content:space-between;align-items:center;gap:2rem;min-height:225px;margin-top:1rem;padding:2.2rem 2rem;display:flex;box-shadow:0 10px 28px #06384629}.public-asset-hero h1{margin:.5rem 0 .3rem;font-size:clamp(2rem,6vw,3.4rem);line-height:1}.public-asset-hero p{color:#d6e7e9;margin:0 0 .7rem}.public-asset-hero small{color:#a9c3c7}.public-service-id{background:#ffffff14;border:1px solid #6fa1a8;padding:.3rem .6rem;font:800 .8rem/1 ui-monospace,Consolas,monospace;display:inline-flex}.public-status{color:#176543;text-align:center;text-transform:capitalize;background:#dff8ed;border-radius:999px;align-self:flex-start;min-width:88px;padding:.45rem .75rem;font-size:.72rem;font-weight:800}.public-status.inaccessible,.public-status.removed,.public-status.retired{color:#8b2525;background:#ffe3e3}.public-service-summary{grid-template-columns:repeat(3,1fr);gap:.8rem;margin:.8rem 0;display:grid}.public-service-summary article{background:#fff;border:1px solid #d4e0e2;grid-template-columns:auto 1fr;align-content:center;column-gap:.7rem;min-height:122px;padding:1rem;display:grid;box-shadow:0 5px 16px #0638460f}.public-service-summary svg{color:var(--public-teal);grid-row:1/4}.public-service-summary span{color:#60777d;text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:700}.public-service-summary strong{text-transform:capitalize;margin-top:.2rem;font-size:1rem}.public-service-summary small{color:#6e8287;margin-top:.15rem;font-size:.67rem}.public-drive-card,.public-actions,.public-request-card,.public-technician{background:#fff;border:1px solid #d4e0e2;box-shadow:0 5px 16px #0638460f}.public-drive-card{padding:1.3rem}.public-drive-card h2,.public-actions h2,.public-request-card h2{margin:.2rem 0}.public-drive-card dl{border:1px solid #dce6e8;grid-template-columns:repeat(3,1fr);margin:1rem 0 0;display:grid}.public-drive-card dl div{border-bottom:1px solid #dce6e8;border-right:1px solid #dce6e8;min-height:78px;padding:.8rem}.public-drive-card dl div:nth-child(3n){border-right:0}.public-drive-card dl div:nth-last-child(-n+3){border-bottom:0}.public-drive-card dt{color:#64797f;text-transform:uppercase;font-size:.64rem;font-weight:700}.public-drive-card dd{word-break:break-word;margin:.3rem 0 0;font-weight:750}.public-actions{border-left:6px solid var(--public-teal);justify-content:space-between;align-items:center;gap:1rem;margin-top:.8rem;padding:1.25rem;display:flex}.public-actions>div{align-items:center;gap:1rem;display:flex}.public-actions>div>svg{width:34px;height:34px;color:var(--public-teal)}.public-actions p{color:#61767c;margin:.25rem 0 0;font-size:.78rem}.public-primary{background:var(--public-teal);color:#fff;border:0;border-radius:7px;min-height:48px;padding:.7rem 1rem;font-weight:800;box-shadow:0 4px 11px #0d858938}.public-request-card{margin-top:.8rem;padding:1.25rem}.public-request-card header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.public-request-card header>button{color:#405a61;background:#fff;border:1px solid #c8d6d9;width:38px;height:38px;font-size:1.4rem}.public-request-card form>label{color:#526970;gap:.4rem;font-size:.72rem;font-weight:700;display:grid}.public-request-card textarea{min-height:120px}.public-form-grid{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem;display:grid}.public-form-grid label{color:#526970;gap:.4rem;font-size:.72rem;font-weight:700;display:grid}.public-request-card .public-primary{width:100%;margin-top:.8rem}.public-form-help{color:#64797f;font-size:.68rem}.public-form-error{color:#8b2525;background:#fff0f0;align-items:center;gap:.5rem;padding:.7rem;font-size:.74rem;font-weight:700;display:flex}.public-honeypot{width:1px;height:1px;left:-10000px;overflow:hidden;position:absolute!important}.public-request-success{text-align:center;align-content:center;place-items:center;gap:.5rem;min-height:230px;display:grid}.public-request-success>svg{color:#26845c;width:45px;height:45px}.public-request-success p{color:#60777d;max-width:600px}.public-request-success small{font-family:ui-monospace,Consolas,monospace}.public-request-success button{min-height:42px;color:var(--public-navy);background:#eff5f5;border:1px solid #b7c9cc;margin-top:.5rem;padding:.5rem 1.2rem;font-weight:750}.public-technician{grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;margin-top:.8rem;padding:1rem 1.25rem;display:grid}.public-technician>svg{color:var(--public-teal)}.public-technician>div{display:grid}.public-technician span{color:#687e83;font-size:.72rem}.public-technician button{min-height:42px;color:var(--public-navy);background:#eef6f6;border:1px solid #afc3c7;padding:.5rem .8rem;font-weight:750}.public-technician>small{color:#9a2929;grid-column:2/-1}.public-footer{color:#677d82;text-align:center;padding:1.5rem 0 .5rem;font-size:.68rem}.public-loading,.public-error{text-align:center;place-content:center;justify-items:center;gap:.7rem;min-height:100vh;display:grid}.public-loading svg,.public-error svg{width:44px;height:44px;color:var(--public-teal)}.public-error a{color:var(--public-teal);font-weight:750}@media (width<=700px){.public-secure{display:none}.public-asset-hero{align-items:flex-start;min-height:205px;padding:1.5rem 1.2rem}.public-service-summary{grid-template-columns:1fr}.public-service-summary article{min-height:94px}.public-drive-card dl{grid-template-columns:1fr 1fr}.public-drive-card dl div,.public-drive-card dl div:nth-child(3n),.public-drive-card dl div:nth-last-child(-n+3){border-bottom:1px solid #dce6e8;border-right:1px solid #dce6e8}.public-drive-card dl div:nth-child(2n){border-right:0}.public-drive-card dl div:nth-last-child(-n+2){border-bottom:0}.public-actions{flex-direction:column;align-items:stretch}.public-form-grid{grid-template-columns:1fr}.public-technician{grid-template-columns:auto 1fr}.public-technician button,.public-technician>small{grid-column:1/-1}}.campus-layout{grid-template-columns:minmax(0,1fr) minmax(330px,390px);align-items:start;gap:1rem;display:grid}.campus-map-panel{grid-template-rows:auto auto minmax(0,1fr) auto;min-width:0;min-height:0;padding:.8rem;display:grid}.campus-map-panel>header{gap:.8rem;min-height:54px;margin-bottom:.55rem;padding-bottom:.65rem}.campus-map-panel:focus{outline:none}.map-controls,.map-zoom{align-items:center;gap:.35rem;display:flex}.map-zoom button,.map-control-button{min-width:38px;height:38px;color:var(--teal-dark);white-space:nowrap;background:#fff;border:1px solid #b9c9ce;border-radius:7px;justify-content:center;align-items:center;gap:.35rem;font-size:.68rem;font-weight:800;display:inline-flex}.map-control-button{padding:0 .6rem}.map-zoom button svg,.map-control-button svg{width:17px}.map-zoom span{text-align:center;min-width:45px;color:var(--muted);font-size:.7rem;font-weight:700}.map-gesture-hint{color:var(--muted);text-align:right;margin:0 0 .45rem;font-size:.66rem;line-height:1.35}.campus-map-scroll{overscroll-behavior:contain;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;background:#cbd7d9;border:1px solid #aebfc3;width:100%;min-width:0;height:clamp(440px,62vh,680px);min-height:0;position:relative;overflow:hidden}.campus-map-scroll.is-fit{cursor:zoom-in}.campus-map-scroll.is-dragging{cursor:grabbing}.campus-map-scroll:focus-visible{outline:3px solid var(--teal);outline-offset:2px}.campus-map-sheet{transform-origin:0 0;will-change:left, top, transform;background:#fff;position:absolute;overflow:visible;container-type:inline-size}.campus-map-sheet>img{object-fit:fill;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.floor-plan-scroll{background:#d5dfe1}.floor-plan-sheet{background:#fff}.floor-plan-location-card{z-index:3;color:#fff;background:#033441f0;border:2px solid #fff;border-radius:9px;gap:.25rem;max-width:285px;padding:.75rem .85rem;display:grid;position:absolute;top:14px;right:14px;box-shadow:0 6px 18px #0000003d}.floor-plan-location-card span{color:var(--mint);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:.35rem;font-size:.59rem;font-weight:900;display:flex}.floor-plan-location-card span svg{width:15px}.floor-plan-location-card b{font-size:.75rem}.floor-plan-location-card small{color:#d7e8ea;font-size:.68rem;line-height:1.35}.floor-plan-empty{width:100%;min-height:100%;color:var(--navy);text-align:center;background:linear-gradient(145deg,#f7fafb,#e5edef);place-content:center;justify-items:center;gap:.65rem;padding:2rem;display:grid}.floor-plan-empty svg{width:44px;height:44px;color:var(--teal)}.floor-plan-empty h3{margin:0;font-size:1.15rem}.floor-plan-empty p{max-width:520px;color:var(--muted);margin:0;font-size:.78rem;line-height:1.55}.floor-plan-caption .plan-dot{background:#14767b;border-radius:2px}.map-pin{z-index:2;background:var(--teal);color:#fff;cursor:pointer;touch-action:none;border:clamp(2px,.6cqw,3px) solid #fff;border-radius:50% 50% 50% 8px;place-content:center;width:clamp(26px,8cqw,42px);height:clamp(26px,8cqw,42px);line-height:1;display:grid;position:absolute;transform:translate(-50%,-50%)rotate(-45deg);box-shadow:0 3px 9px #00000073}.map-pin>*{rotate:45deg}.map-pin span{font-size:clamp(.58rem,2.1cqw,.75rem);font-weight:800}.map-pin b{background:var(--navy);border:2px solid #fff;border-radius:999px;place-content:center;min-width:clamp(18px,4.6cqw,24px);height:clamp(18px,4.6cqw,24px);padding:0 3px;font-size:clamp(.5rem,1.7cqw,.62rem);display:grid;position:absolute;top:clamp(-9px,-1.7cqw,-5px);right:clamp(-9px,-1.7cqw,-5px)}.map-pin:hover,.map-pin.active{z-index:4;background:#bf3b3b;transform:translate(-50%,-50%)scale(1.15)}.map-pin.check-in-pin{outline:4px solid #eab74de6}.map-pin.dim{opacity:.28}.map-caption{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.45rem 1rem;padding-top:.6rem;font-size:.66rem;display:flex}.map-caption span{align-items:center;gap:.4rem;font-weight:700;display:flex}.map-caption small{flex:100%;line-height:1.45}.legend-dot{background:var(--teal);border-radius:50%;width:12px;height:12px}.legend-dot.check-in-dot{outline:3px solid var(--amber)}.campus-route-panel{gap:.75rem;min-width:0;display:grid}.route-card ol{margin:.7rem 0 1rem;padding:0;list-style:none}.route-card li{border-bottom:1px solid #e4eaec;grid-template-columns:30px 1fr;gap:.7rem;padding:.75rem 0;display:grid}.route-card li>span{background:var(--navy);width:28px;height:28px;color:var(--mint);border-radius:50%;place-content:center;font-size:.7rem;font-weight:800;display:grid}.route-card li div{gap:.2rem;display:grid}.route-card li small{color:var(--muted);line-height:1.4}.campus-results{min-height:0;padding-bottom:.65rem}.campus-result-list{overscroll-behavior:contain;max-height:520px;overflow-y:auto}.campus-result-list>button{width:100%;min-height:84px;color:var(--ink);text-align:left;content-visibility:auto;contain-intrinsic-size:84px;background:#fff;border:0;border-bottom:1px solid #e4eaec;grid-template-columns:68px 1fr auto;align-items:center;gap:.65rem;padding:.65rem .2rem;display:grid}.campus-result-list>button:hover,.campus-result-list>button.selected{background:#edf8f7}.campus-result-list>button.selected{box-shadow:inset 4px 0 var(--teal);padding-left:.6rem}.campus-result-list>button div{gap:.18rem;min-width:0;display:grid}.campus-result-list small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.campus-result-list>button>svg{width:18px;color:var(--teal)}.open-asset{margin-top:.75rem}.campus-source-note{background:#e8f1f2;border:1px solid #c9d7da;grid-template-columns:auto 1fr;gap:.75rem;margin-top:1rem;padding:1rem 1.2rem;font-size:.75rem;line-height:1.5;display:grid}.campus-source-note b{color:var(--teal-dark)}.site-rules{margin-top:1rem}.site-rules>div{grid-template-columns:repeat(3,1fr);display:grid}.site-rules article{border-bottom:1px solid #e2e9eb;border-right:1px solid #e2e9eb;align-content:center;gap:.3rem;min-height:92px;padding:.8rem 1rem;display:grid}.site-rules article:nth-child(3n){border-right:0}.site-rules article span{color:var(--muted);font-size:.74rem;line-height:1.45}.asset-map-link{min-height:40px;color:var(--teal-dark);background:#fff;border:1px solid #b9c9ce;border-radius:8px;align-items:center;gap:.45rem;margin-top:.8rem;padding:.45rem .7rem;font-weight:700;display:inline-flex}.asset-map-link svg{width:18px}body.campus-map-expanded{overflow:hidden}.campus-map-panel.is-expanded{z-index:80;background:#fff;width:auto;height:calc(100dvh - 20px);padding:.8rem;position:fixed;inset:10px;box-shadow:0 20px 70px #03242f61}.campus-map-panel.is-expanded .campus-map-scroll{height:auto}@media (width>=1181px){.campus-heading{min-height:68px;margin-bottom:.65rem}.campus-heading h1{font-size:clamp(1.7rem,2.2vw,2.5rem)}.campus-heading .link-button{min-height:42px;padding-block:.5rem}.campus-summary{gap:.65rem;margin-bottom:.65rem}.campus-summary>div{border-top-width:3px;min-height:62px;padding:.55rem .75rem}.campus-summary strong{font-size:1rem}.campus-tools{grid-template-columns:minmax(275px,360px) minmax(0,1fr);align-items:center;gap:.65rem;margin-bottom:.65rem;padding:.55rem .7rem;display:grid}.campus-search{margin:0}.campus-search input{min-height:43px}.floor-selector{grid-column:1/-1;margin:0 -.7rem -.55rem;padding:.55rem .7rem .65rem}.campus-layout{align-items:stretch;height:max(440px,100dvh - 418px);max-height:760px}.campus-route-panel{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;overflow:hidden}.route-card{padding:.8rem 1rem}.route-card ol{margin:.35rem 0 0}.route-card li{padding:.48rem 0}.campus-results{grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.campus-results>header{margin-bottom:.35rem;padding-bottom:.65rem}.campus-result-list{min-height:0;max-height:none}.campus-map-scroll{height:auto}}@media (width<=1180px){.campus-layout{grid-template-columns:1fr}.campus-route-panel{grid-template-columns:minmax(280px,.65fr) minmax(0,1.35fr)}.campus-result-list{max-height:420px}}@media (width<=980px){.bottom-nav{grid-template-columns:1fr 1.15fr 1fr 1fr}.campus-summary{grid-template-columns:repeat(2,1fr)}.campus-map-scroll{height:clamp(420px,60vh,600px)}}@media (width<=700px){.campus-heading .button-row{grid-template-columns:1fr 1fr;display:grid}.campus-heading .link-button{padding-inline:.55rem}.campus-layout{margin-inline:-1rem}.campus-map-panel,.campus-route-panel{margin-inline:0}.campus-map-panel{padding-inline:.55rem}.campus-route-panel{grid-template-columns:1fr}.campus-map-scroll{height:clamp(360px,56vh,500px)}.floor-plan-location-card{max-width:230px;padding:.6rem .7rem}.campus-source-note{grid-template-columns:1fr}.map-caption{padding-inline:.35rem}.map-gesture-hint{text-align:left;padding-inline:.35rem}.site-rules>div{grid-template-columns:1fr}.site-rules article,.site-rules article:nth-child(3n){border-right:0}}@media (width<=460px){.campus-summary{gap:.5rem}.campus-summary>div{min-height:84px;padding:.7rem}.campus-summary strong{font-size:.92rem}.campus-map-panel>header{align-items:flex-start}.map-controls{flex-wrap:wrap;justify-content:flex-end}.map-control-button span{display:none}.campus-result-list>button{grid-template-columns:58px 1fr auto}}fieldset.builder-filters{border:0;min-width:0;margin:0;padding:0}fieldset.builder-selection-inputs{border:0;gap:1rem;min-width:0;margin:0;padding:0;display:grid}.service-workflow>p,.checklist-review>p{color:var(--muted,#64748b);line-height:1.6}.service-workflow .stack-form{max-width:640px}.checklist-review-toggle{margin-top:1rem}.checklist-review{min-width:0;margin-top:1rem}.checklist-review h3{margin:0 0 .75rem}.checklist-preview{background:#f8fafc;border:1px solid #dbe2ea;border-radius:12px;margin:1rem 0;padding:1rem}.checklist-preview h4{margin:.5rem 0}.checklist-preview ul{margin:.5rem 0 1.5rem;padding-left:1.25rem}.checklist-preview li{padding:.4rem 0;line-height:1.5}.checklist-preview li>span{color:#526176;font-size:.8rem;display:block}.checklist-preview li p{margin:.25rem 0;font-size:.85rem}.checklist-sources{border-left:3px solid #cbd5e1;padding-left:1rem;font-size:.85rem}.checklist-confirm{align-items:flex-start;gap:.75rem;margin:1rem 0;line-height:1.5;display:flex}.checklist-confirm input{flex:none;width:20px;height:20px;margin-top:.2rem}.technician-approval{border-top:1px solid var(--line);margin-top:1rem;padding:1.25rem;line-height:1.5}.technician-approval details{padding:.8rem 0}.signed-record-summary dl>div{border-bottom:1px solid var(--line);padding:.6rem 0}.signed-record-summary dt{font-weight:700}.signed-record-summary dd{overflow-wrap:anywhere;margin:.3rem 0 0}.daily-signoff-filters{flex-wrap:wrap;gap:1rem;margin-bottom:1rem;display:flex}.daily-signoff-filters label{flex:220px;gap:.5rem;display:grid}.daily-signoff-filters select,.daily-signoff-filters input,.customer-signoff-form input:not([type=checkbox]){border:1px solid var(--line);border-radius:8px;width:100%;min-height:48px;padding:.6rem}.customer-signoff-form{gap:1rem;max-width:900px;margin-top:1rem;display:grid}.customer-signoff-form>label:not(.checklist-confirm){gap:.5rem;display:grid}.customer-signature-pad{aspect-ratio:2;border:2px solid var(--teal);touch-action:none;cursor:crosshair;background:#fff;border-radius:10px;width:100%;max-width:600px;height:auto;display:block}.daily-vfd-record{border:1px solid var(--line);border-radius:10px;margin:1rem 0;padding:.8rem}.daily-vfd-record summary{cursor:pointer;line-height:1.6}.test-result-summary{margin-block:1rem}.test-result-summary>p{color:var(--muted);margin-top:.8rem}.result-group{border:1px solid var(--line);border-left:4px solid var(--muted);overflow-wrap:anywhere;border-radius:8px;margin-block:.8rem;padding:.8rem}.result-group.failed{border-left-color:var(--red)}.result-group.in-progress{border-left-color:#b77a16}.building-progress-filter{text-align:left;color:inherit;background:0 0;border:2px solid #0000;border-radius:10px;width:100%;padding:0;display:block}.building-progress-filter[aria-pressed=true]{border-color:var(--blue,#245f93);background:#f0f5fa}.building-progress-filter:focus-visible{outline-offset:2px;outline:3px solid #245f93}.result-group.passed{border-left-color:#21835a}.result-group>summary{cursor:pointer;padding-block:.4rem;font-weight:700}.result-group p{margin:.5rem 0}.result-group .secondary{text-align:left;margin-top:.5rem}.test-outcome-picker .status-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.test-outcome-picker{border:1px solid var(--line);border-radius:8px;margin-block:.8rem;padding:.8rem}.test-outcome-picker button{justify-content:center;align-items:center;gap:.5rem;min-height:48px;display:flex}.daily-signed-record{flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:1rem 0;line-height:1.6;display:flex}.inspection-editor>footer{flex-wrap:wrap;gap:.75rem}.inspection-editor>footer button{max-width:100%}@media (width>=781px) and (width<=1200px){.inspection-layout{display:block}.section-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;margin-bottom:1rem;display:grid;position:static}.section-list .eyebrow{grid-column:1/-1}.status-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}}.session-warning{z-index:150;bottom:calc(100px + env(safe-area-inset-bottom));left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));max-width:640px;max-height:45vh;margin:0 auto;position:fixed;overflow-y:auto;box-shadow:0 6px 24px #0005}.report-corrections{overflow-wrap:anywhere;margin-block:1rem}.report-corrections fieldset{border:0;gap:1rem;min-width:0;padding:0;display:grid}.report-corrections label:not(.checkbox-label){gap:.5rem;display:grid}.report-corrections select,.report-corrections textarea{border:1px solid var(--line);border-radius:8px;width:100%;min-width:0;min-height:48px;padding:.65rem}.report-corrections textarea{min-height:100px}.report-corrections .checkbox-label{align-items:flex-start;gap:.7rem;line-height:1.5;display:flex}.report-corrections .checkbox-label input{flex:none;width:22px;height:22px}.report-corrections article,.correction-history article{border-bottom:1px solid var(--line);padding-block:1rem}.correction-history{overflow-wrap:anywhere;margin-block:1rem}.correction-history>summary,.report-corrections button,.report-corrections input,.report-corrections textarea,.report-corrections select{scroll-margin-block:120px 140px}.correction-history>summary{cursor:pointer;min-height:48px}.section-list .section-completion{margin-top:.25rem;font-size:.68rem;font-weight:400;display:block}.customer-report-exports{margin-bottom:1.5rem;padding:1.25rem}.customer-report-exports>label{margin:1rem 0;display:block}.customer-report-exports select{width:100%;max-width:100%;margin-top:.4rem;display:block}.customer-report-exports h3{margin-top:1.5rem}.export-job{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;display:flex}.export-job p{margin:.4rem 0}.export-job.highlighted{border-left:4px solid var(--teal);padding-left:.75rem}@media (width<=600px){.export-job{display:block}.export-job button{margin-top:.8rem}}.failure-field{border:0;min-width:0;margin:0;padding:0}.failure-field:disabled{opacity:.45;filter:grayscale()}.failure-field:disabled .field-card{background:#eef0f2}.report-sharing{min-width:0}.report-sharing section{overflow-wrap:anywhere;max-width:640px}.report-sharing form{gap:.75rem;display:grid}.report-sharing article{border-top:1px solid var(--border,#ccd6dc);padding:.75rem 0}.export-job:has(.report-sharing section){flex-wrap:wrap}.report-action-buttons{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.report-action-buttons>button{white-space:nowrap}.export-job>.report-sharing{margin-left:auto}:root{color:#122837;--ink:#122837;--muted:#60707a;--line:#dce1e2;--navy:#245f93;--teal:#245f93;--teal-dark:#1c4c76;--mint:#d9eafa;--shadow:0 5px 18px #1228370a;background:#fafbf9;font-family:Arial,Helvetica,sans-serif}body{line-height:1.5}h1{font-size:clamp(2rem,3vw,2.65rem);font-weight:500;line-height:1.15}h2{font-weight:600}.eyebrow,.login-eyebrow{color:#8b6c36;letter-spacing:.17em}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #71a6d2}.primary{box-shadow:none}.primary,.secondary,.danger-button,.back-button,.photo-button,.link-button{border-radius:7px;font-weight:600}.secondary,input,select,textarea{border-color:#ccd7df}.panel,.metric{border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px}.metric{border-top-width:3px}.panel>header{border-color:var(--line)}.app-shell{padding-top:94px}.app-header{height:94px;color:var(--ink);border-bottom:1px solid var(--line);box-shadow:none;background:#fafbf9;gap:12px;padding:0 3%}.wordmark,.login-wordmark{color:#245f93;width:auto;height:auto;padding:0}.wordmark .service-brand-name,.login-wordmark .service-brand-name{text-align:left}.service-brand-name small,.login-wordmark .service-brand-name small{color:#245f93}.header-actions{align-items:center;gap:18px;min-width:0;margin-left:auto;display:flex}.connection-pill{border-color:var(--line);min-height:32px;color:var(--muted);background:#fff;flex-shrink:0;gap:6px;margin-left:0;padding:6px 10px;font-size:12px;line-height:18px}.connection-pill svg{flex-shrink:0}.connection-pill.online svg{color:#278166}.connection-pill.offline{color:#946018;background:#fff8e8}.sync-button{color:var(--teal);background:#fff;border-color:#ccd7df;margin-left:0}.sync-button b{color:#fff}.sync-progress{background:#fff;border:1px solid #ccd7df;border-radius:8px;margin:-.4rem 0 1rem;padding:.75rem 1rem}.sync-progress-caption{color:var(--teal);justify-content:space-between;gap:12px;font-size:.8rem;display:flex}.sync-progress-caption strong{font-variant-numeric:tabular-nums}.sync-progress-track{background:#dce7f0;border-radius:8px;height:8px;margin:.4rem 0;overflow:hidden}.sync-progress-fill{background:var(--teal);height:100%}.sync-progress small{color:var(--muted);font-size:.72rem;display:block}.sync-progress[data-state=attention] .sync-progress-fill{background:#946018}.sync-progress-compact{pointer-events:none;background:0 0;border:0;border-radius:0;height:16px;margin:0;padding:0;position:absolute;inset:auto 0 0}.sync-progress-compact .sync-progress-caption{background:#fafbf9;gap:6px;padding:0 4px;font-size:10px;line-height:12px;position:absolute;bottom:4px;right:12px}.sync-progress-compact .sync-progress-track{border-radius:0;height:3px;margin:0;position:absolute;inset:auto 0 0}.header-account{border-left:1px solid var(--line);align-items:center;gap:18px;min-width:0;min-height:44px;padding-left:18px;display:flex}.user-button{min-width:0;max-width:220px;height:auto;color:var(--ink);border:0;margin-left:0;padding:0}.user-button span,.user-button small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.user-button span{font-size:14px;font-weight:600}.user-button small{color:var(--muted);font-size:12px}.header-signout{min-height:44px;color:var(--ink);white-space:nowrap;background:0 0;border:0;padding:10px;font-size:13px;font-weight:700}.header-account-button{width:44px;height:44px;color:var(--ink);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;padding:0}.header-account-button svg{stroke-width:1.7px;width:20px;height:20px}.header-signout:hover,.header-account-button:hover{background:#edf2f5}.side-nav{background:var(--paper);color:var(--ink);border-right:1px solid var(--line);padding:24px 14px 14px;top:94px}.side-nav nav{gap:24px;min-height:0;margin:-6px;padding:6px}.nav-group{align-content:start;gap:4px;display:grid}.nav-group h2{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin:0 12px 8px;font-size:.6875rem;font-weight:700;line-height:1.5}.side-nav nav button,.logout{color:var(--muted);font-weight:400}.side-nav nav button{border-radius:8px;gap:14px;min-height:46px;padding:10px 12px;font-size:.9375rem;line-height:1.4}.side-nav nav button span{min-width:0}.side-nav nav button svg,.logout svg{stroke-width:1.75px;flex:0 0 20px;width:20px;height:20px}.side-nav nav button:hover,.logout:hover{color:var(--ink);background:#f5f7f8}.side-nav nav button.active{color:var(--ink);background:#edf2f4;font-weight:700}.side-nav nav button.active svg{color:currentColor}.nav-footer{flex-shrink:0;margin-top:auto;padding-top:24px}.nav-brand{border-top:1px solid var(--line);color:var(--muted);gap:3px;padding:20px 12px 10px;font-size:.75rem;display:grid}.logout{border:0;border-radius:8px;min-height:44px;margin-top:0;font-size:.75rem;line-height:1.5}.content{max-width:none;padding:clamp(24px,3vw,52px)}.customer-shell{padding-left:0}.customer-shell .side-nav{display:none}.customer-shell .content{max-width:1240px;padding-top:clamp(28px,5vw,72px)}.customer-home .page-heading{border:0;min-height:auto;margin-bottom:32px}.customer-home .page-heading p:not(.eyebrow){margin-top:14px}.customer-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:22px;display:grid}.customer-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:13px;flex-direction:column;align-items:flex-start;min-width:0;padding:26px;display:flex}.workspace-icon{width:48px;height:48px;color:var(--teal);background:#edf4fa;border-radius:11px;place-items:center;margin-bottom:32px;display:grid}.customer-card h2{margin-bottom:12px;font-size:1.35rem}.customer-card p{color:var(--muted);font-size:.9rem}.workspace-link{border:0;border-top:1px solid var(--line);width:100%;color:var(--teal);text-align:left;background:#fff;justify-content:space-between;align-items:center;gap:16px;min-height:52px;margin-top:auto;padding:19px 0 0;font-weight:600;display:flex}.workspace-link:hover{color:var(--teal-dark)}.login-page{background:#fafbf9;font-family:Arial,Helvetica,sans-serif}.login-topbar{border-color:var(--line);background:#fafbf9;height:94px;padding:0 5%}.login-card{border-color:var(--line);box-shadow:var(--shadow)}.portal-signin{color:var(--ink);background:#fafbf9;padding:32px;font-weight:400}.portal-signin .login-wordmark{justify-self:center;margin-bottom:36px}.portal-signin>svg{color:var(--teal)}.portal-signin p{max-width:560px;color:var(--muted);margin-inline:auto}.portal-signin a.primary{justify-self:center;text-decoration:none}@media (width<=780px){.app-shell{padding-top:76px}.app-header{gap:6px;height:76px;padding:0 12px}.wordmark,.login-wordmark{--jz-brand-width:32px;--jz-brand-height:42px}.wordmark{--jz-brand-name-size:12px;--jz-brand-caption-size:8px;--jz-brand-caption-gap:5px;--jz-brand-gap:7px}.header-actions{gap:8px}.header-account{gap:0;padding-left:8px}.sync-button{padding:0 9px}.side-nav{padding:calc(env(safe-area-inset-top) + 16px) 16px calc(env(safe-area-inset-bottom) + 16px);top:0}.customer-shell .side-nav.open{display:flex}.nav-close{width:44px;min-height:44px;color:var(--ink);flex-shrink:0;justify-content:center;align-items:center}.nav-user{flex-shrink:0}.nav-user span{color:var(--muted)}.content,.customer-shell .content{padding:24px 16px}.customer-grid{gap:16px}.customer-card{padding:24px}.login-topbar{height:76px;padding-inline:5%}}@media (width<=600px){.app-header{gap:4px;padding-inline:8px}.app-header>.icon-button{flex-shrink:0;width:36px}.wordmark .service-brand-name{display:none}.header-actions{gap:4px}.sync-button{flex-shrink:0;padding-inline:8px}}.scan-hero{border-radius:12px}.service-progress-detail{flex-direction:column;align-items:flex-start;gap:4px;font-size:.8rem;display:inline-flex}.service-progress-detail small{color:var(--muted);font-size:.72rem}.service-progress-badge{white-space:nowrap;color:#526573;background:#edf1f4;border-radius:999px;align-items:center;gap:5px;padding:5px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.service-progress-badge svg{width:15px;height:15px}.service-progress-badge.in_progress{color:#80500c;background:#fff0cd}.service-progress-badge.completed{color:#176543;background:#e2f4ea}.service-progress-detail .service-pending{color:#80500c}.building-progress{border:1px solid var(--line);background:#fff;border-radius:10px;min-width:0;padding:16px}.building-progress.compact{border:0;border-bottom:1px solid var(--line);border-radius:0;margin-bottom:12px;padding:0 0 12px}.building-progress-heading,.building-progress-counts{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.building-progress-heading{justify-content:space-between;font-size:.85rem}.building-progress-heading strong{color:#176543;font-size:.75rem}.building-progress-counts{color:var(--muted);margin:8px 0;font-size:.73rem}.in-progress-count{color:#80500c}.completed-count{color:#176543}.service-completion-track{background:#e6ebef;border-radius:5px;height:8px;display:flex;overflow:hidden}.service-completion-track span{background:#278166}.service-completion-track i{background:#d99a2b}.building-progress-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:14px;display:grid}.campus-building-progress{margin-top:1rem}.campus-summary>div{border-radius:10px}.campus-summary .in-progress-summary{border-top-color:#d99a2b}.campus-summary .completed-summary{border-top-color:#278166}.map-pin[data-service-status=not_started]{background:#526573}.map-pin[data-service-status=in_progress]{background:#946018}.map-pin[data-service-status=completed]{background:#217354}.map-pin.active{box-shadow:0 0 0 3px #122837,0 3px 9px #0007}.legend-dot.not-started-dot{background:#526573}.legend-dot.in-progress-dot{background:#946018}.legend-dot.completed-dot{background:#217354}.campus-result-list .service-progress-detail{margin-top:6px}.campus-result-list .service-progress-badge svg{width:14px;height:14px}.customer-equipment>.panel{margin-bottom:22px}.customer-equipment-row{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:16px;padding:18px 0;display:flex}.customer-equipment-row>div{flex:1;min-width:min(100%,240px)}.customer-equipment-row h3{margin:7px 0 3px;font-size:1.1rem}.customer-equipment-row p{color:var(--muted);margin:0}.customer-equipment-row small{color:var(--muted)}.public-qr-page{--public-navy:#245f93;--public-teal:#245f93;--public-mint:#d9eafa;color:var(--ink);background:#fafbf9}.public-brand{border-bottom:1px solid var(--line);min-height:94px;color:var(--ink);background:#fafbf9}.public-secure,.public-secure svg{color:var(--muted)}.public-asset-hero{color:var(--ink);box-shadow:var(--shadow);background:#edf4fa;border:1px solid #d4e2ee;border-radius:13px}.public-asset-hero .eyebrow{color:#8b6c36}.public-asset-hero p,.public-asset-hero small{color:var(--muted)}.public-asset-hero h1{overflow-wrap:anywhere;font-weight:500}.public-asset-hero>div{min-width:0}.public-service-id{color:var(--teal);background:#fff;border-color:#b8cfe0;border-radius:5px}.public-asset-hero>.service-progress-detail{flex-shrink:0}.public-service-summary article,.public-drive-card,.public-actions,.public-request-card,.public-technician{border-color:var(--line);box-shadow:var(--shadow);border-radius:12px}.public-primary{background:var(--teal);box-shadow:none}.public-primary:hover{background:var(--teal-dark)}.public-progress-note{color:var(--muted);padding-inline:4px;font-size:.8rem}.public-drive-card dl{border-radius:8px;overflow:hidden}.public-technician button,.public-request-card header>button{border-radius:7px}@media (width>=1181px){.campus-layout{height:var(--campus-workspace-height,500px);max-height:850px}.campus-route-panel .route-card{min-height:0;overflow-y:auto}.campus-route-panel{grid-template-rows:minmax(0,.8fr) minmax(0,1fr)}}@media (width<=800px){.app-header .service-logo{width:32px;height:42px}.app-header .wordmark{gap:7px}.app-header .service-brand-name{font-size:12px}.app-header .service-brand-name small{margin-top:5px;font-size:8px}}@media (width<=780px){.public-brand{min-height:76px}.public-asset-hero{flex-direction:column;gap:16px}.customer-equipment-row>.secondary{width:100%}}.scan-hero .eyebrow{color:#f0d4a0}.workspace-tabs button{border-radius:7px}.side-nav .company-nav{flex-shrink:0;margin-top:auto;padding-top:24px;overflow:visible}.company-nav+.nav-footer{margin-top:0}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media screen and (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e6edf4;--ink:#e6edf4;--muted:#b0bfcc;--paper:#192530;--line:#3e5263;--navy:#193e5d;--teal:#92c9f5;--teal-dark:#b3dcff;--mint:#b3dcff;--amber:#f4c878;--red:#ffb1b1;--shadow:0 5px 18px #0000002e;--theme-page:#101820;--theme-soft:#233442;--theme-control-line:#60798d;--theme-button:#326fa2;--theme-button-hover:#285f8d;--theme-good:#8ce0b6;--theme-good-bg:#193d31;--theme-warn:#f4c878;--theme-warn-bg:#3b3020;--theme-bad:#ffb1b1;--theme-bad-bg:#472c32;background:#101820}body{background:var(--theme-page);color:var(--ink)}:root :is(.app-header,.login-page,.login-topbar,.portal-signin,.public-qr-page,.public-brand){background:var(--theme-page);color:var(--ink);border-color:var(--line)}:root :is(.panel,.metric,.side-nav,.customer-card,.login-card,.asset-hero,.visit-header,.inspection-card,.building-progress,.sync-progress,.offline-summary>div,.campus-summary>div,.schedule-metrics button,.public-service-summary article,.public-drive-card,.public-actions,.public-request-card,.public-technician,.campus-map-panel.is-expanded,.evidence-photo-card){background:var(--paper);color:var(--ink);border-color:var(--line)}:root :is(input,select,textarea,.login-form input){color:var(--ink);background:var(--theme-page);border-color:var(--theme-control-line);accent-color:var(--teal)}:root ::placeholder{color:#a0b1bf;opacity:1}:root :is(.secondary,.sync-button,.connection-pill,.voice-button,.map-zoom button,.map-control-button,.building-filter button,.floor-filter button,.picker-toolbar>button,.asset-map-link,.empty-state button,.public-technician button,.public-request-card header>button,.public-request-success button){color:var(--teal);background:var(--paper);border-color:var(--theme-control-line)}:root :is(.primary,.public-primary,.login-submit,.building-filter button.active,.floor-filter button.active){color:#fff;background:var(--theme-button);border-color:var(--theme-button)}:root :is(.primary,.public-primary,.login-submit):hover{background:var(--theme-button-hover)}:root :is(button,a,summary,input,select,textarea):focus-visible{outline-color:#a6d5ff}:root :is(.wordmark,.login-wordmark,.service-brand-name small,.login-wordmark .service-brand-name small){color:var(--teal)}:root :is(.eyebrow,.login-eyebrow,.public-asset-hero .eyebrow){color:#e1c38e}:root :is(.side-nav nav button,.logout,.bottom-nav button){color:var(--muted)}:root :is(.side-nav nav button:hover,.side-nav nav button.active,.logout:hover),:root :is(.header-account-button:hover,.header-signout:hover){color:var(--ink);background:var(--theme-soft)}:root :is(.bottom-nav,.bottom-nav button,.workspace-link){background:var(--paper);border-color:var(--line)}:root .bottom-nav button.active{color:var(--teal)}:root .bottom-nav button.scan{color:#fff;background:var(--theme-button)}:root :is(.sync-button b,.bottom-nav em){color:#201316;background:var(--theme-bad)}:root .side-nav nav em{color:#30220d}:root .sync-progress-compact{background:0 0}:root .sync-progress-compact .sync-progress-caption{background:var(--theme-page)}:root :is(.sync-progress-track,.service-completion-track,.progress-track){background:#344c5f}:root .sync-progress[data-state=attention] .sync-progress-fill{background:var(--theme-warn)}:root .visit-progress circle:not(.done){stroke:#344c5f}:root :is(.workspace-icon,.photo-audit-note,.checklist-preview,.measurement-context,.compare pre,.recommendation,.reason-chip,.inspection-card>header>span,.evidence-photo-preview,.picker-toolbar,.label-filters,.upload-zone,.inline-form,.builder-selection-bar,.builder-formats label,.sub-control>form,.schedule-toolbar,.floor-selector,.campus-source-note,.floor-plan-empty,.public-asset-hero,.login-service-art,.login-security-icon,.table-scroll th,.validation-metrics span){background:var(--theme-soft);color:var(--ink);border-color:var(--line)}:root :is(.asset-results>button,.history-row,.campus-result-list>button,.review-queue>button,.report-register>button,.user-list button,.builder-candidate,.workspace-tabs button){color:var(--ink);background:var(--paper);border-color:var(--line)}:root :is(.asset-results>button:hover,.history-row:hover,.campus-result-list>button:hover,.campus-result-list>button.selected,.review-queue>button:hover,.review-queue>button.selected,.report-register>button:hover,.report-register>button.selected,.user-list button.selected,.builder-candidate:hover,.workspace-tabs button.active){background:var(--theme-soft);color:var(--teal)}:root :is(.photo-button,.photo-button.secondary-photo,.status-buttons button,.office-list article>button,.request-actions button,.password-field button,.job-outputs button){color:var(--teal);background:var(--theme-soft);border-color:var(--theme-control-line)}:root :is(.status-badge,.service-progress-badge,.request-urgency,.severity),:root :is(.status-buttons button.selected.not_applicable,.status-buttons button.selected.not_tested,.status-buttons button.selected.unable_to_test){background:var(--theme-soft);color:var(--muted)}:root :is(.status-buttons button.selected.pass,.status-badge.completed,.service-progress-badge.completed,.notice.success,.public-status,.validation-metrics .good,.floor-filter button small){color:var(--theme-good);background:var(--theme-good-bg);border-color:#509d79}:root :is(.status-buttons button.selected.fail,.danger-button,.form-error,.notice.danger,.public-form-error,.public-status.inaccessible,.public-status.removed,.public-status.retired,.remove-queued,.severity.critical,.request-urgency.urgent,.validation-metrics .bad,.session-control form){color:var(--theme-bad);background:var(--theme-bad-bg);border-color:#b56a76}:root :is(.notice.warning,.safety-boundary,.reason-select,.service-progress-badge.in_progress,.status-badge.active,.status-badge.in_progress,.severity.major,.request-count,.request-urgency.soon,.connection-pill.offline){color:var(--theme-warn);background:var(--theme-warn-bg);border-color:#aa874f}:root :is(.safety-boundary span,.safety-boundary svg,.in-progress-count,.service-progress-detail .service-pending){color:var(--theme-warn)}:root :is(.saved,.schedule-saved,.completed-count,.building-progress-heading strong,.public-request-success>svg,.connection-pill.online svg){color:var(--theme-good)}:root :is(.schedule-saved.error,.public-technician>small){color:var(--theme-bad)}:root :is(.status-badge.submitted,.status-badge.reviewed){color:#dac8ff;background:#352e4e}:root .notice.info{color:#d3eaff;background:#19354a;border-color:#537b9b}:root :is(.field-title p,.context-grid label,.notes-field,.reason-select label,.phase-grid b,.office-form label,.review-filters label,.inline-form label,.create-report label,.narrative-editor label,.sub-control label,.stack-form label,.schedule-row>label,.checklist-preview li>span,.public-form-grid label,.public-request-card form>label,.public-drive-card dt,.public-service-summary span,.public-service-summary small,.public-actions p,.public-form-help,.public-technician span,.public-footer,.public-request-success p){color:var(--muted)}:root :is(.inspection-card>header,.inspection-editor>footer,.inspection-field,.context-grid,.detail-grid>div,.progress-row,.finding-row,.list-row,.route-card li,.site-rules article,.public-drive-card dl,.public-drive-card dl div,.review-metrics,.review-metrics div,.table-scroll th,.table-scroll td,.builder-candidates,.builder-formats,.schedule-row,.evidence-row,.register-item,.delivery-row,.login-divider,.login-footer){border-color:var(--line)}:root .public-qr-page{--public-navy:#92c9f5;--public-teal:#92c9f5}:root .public-service-id{background:var(--paper);color:var(--teal);border-color:var(--theme-control-line)}:root .login-page{--login-muted:var(--muted);--login-accent:#92c9f5;--login-accent-hover:#b3dcff}:root :is(.campus-map-scroll,.floor-plan-scroll){border-color:var(--theme-control-line);background:#263744}:root .map-pin.active{box-shadow:0 0 0 3px #d3eaff,0 3px 9px #0007}:root .campus-summary .in-progress-summary{border-top-color:var(--theme-warn)}:root .campus-summary .completed-summary{border-top-color:var(--theme-good)}.customer-signature-pad{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff}}jz-app-drawer{--jz-drawer-bg:var(--paper);--jz-drawer-ink:var(--ink);--jz-drawer-line:var(--line);--jz-drawer-muted:var(--muted);--jz-drawer-hover:var(--theme-soft,#edf2f5)}jz-company-header{--jz-header-primary:var(--teal);--jz-header-text:var(--ink);--jz-header-muted:var(--muted);--jz-header-line:var(--line);--jz-header-surface:var(--paper);--jz-header-hover:var(--theme-soft,#edf2f5)}@media (width<=800px){jz-company-header .connection-pill{display:none}.app-header{min-height:76px}jz-company-header .header-actions{gap:4px}jz-company-header .sync-button{min-width:28px;padding:4px}jz-company-header .sync-button span{display:none}}.service-update-notice{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:150;box-sizing:border-box;border:1px solid var(--line,#d5dfe5);background:var(--panel,#fff);width:min(390px,100vw - 24px);color:var(--ink,#122837);border-radius:12px;align-items:flex-start;gap:12px;padding:14px;font-size:13px;line-height:1.5;display:flex;position:fixed;box-shadow:0 5px 22px #12283724}.service-update-notice[hidden]{display:none}.service-update-notice>div{flex:1;min-width:0}.service-update-notice strong{font-size:14px}.service-update-notice p{margin:5px 0 0}.service-update-notice button{border:1px solid var(--line,#d5dfe5);min-height:36px;color:inherit;font:inherit;cursor:pointer;background:0 0;border-radius:7px;flex:none;padding:5px 9px}.service-update-notice button:focus-visible{outline-offset:3px;outline:2px solid #245f93}@media (prefers-color-scheme:dark){.service-update-notice{color:#e9f0f5;background:#192530;border-color:#40505d}}
