:root{color-scheme:dark;--bg:#090e14;--panel:#141d25;--panel2:#17232d;--edge:#2b3642;--gold:#c6a466;--gold2:#e5c785;--text:#e8edf1;--muted:#9aa8b5;--blue:#55adc7;--green:#63b994;--orange:#ecac60;--red:#e98278;--radius:13px;font:14px/1.5 Inter,"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}input,select,textarea{background:#0d151d;border:1px solid #35424c;border-radius:8px;color:var(--text);padding:10px 12px;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #c6a46688;outline-offset:1px}select option{background:#0f171e}button:disabled{opacity:.5;cursor:not-allowed}::selection{background:#bea06c;color:#111}.boot{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:16px}.boot img{width:48px}.muted,small{color:var(--muted)}small{font-size:11px}.brand{display:flex;align-items:center;gap:12px;font-weight:750;letter-spacing:.1em}.brand-logo{height:34px;width:34px;object-fit:contain}.brand span{display:block;color:#d6b77d;font-size:10px;letter-spacing:.19em}.app-shell{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr)}.rail{background:#0d151c;border-right:1px solid var(--edge);height:100vh;position:sticky;top:0;display:flex;flex-direction:column;min-width:0;z-index:20}.rail-head{padding:19px 19px 20px;border-bottom:1px solid var(--edge)}.rail-sub{display:block;color:var(--muted);font-size:10px;letter-spacing:.14em;margin-top:14px}.rail-nav{padding:18px 12px;overflow:auto;flex:1}.nav-label{font-size:10px;letter-spacing:.13em;color:#718293;padding:15px 12px 6px;text-transform:uppercase}.nav-item{border:0;background:transparent;color:#b5c0ca;width:100%;text-align:left;padding:10px 11px;display:flex;align-items:center;gap:12px;border-radius:8px;margin:2px 0}.nav-item:hover,.nav-item.active{background:#27313a;color:#e2c489}.nav-icon{font-size:16px;width:20px;text-align:center}.rail-foot{padding:17px 18px;border-top:1px solid var(--edge);font-size:12px}.rail-foot button{border:1px solid #39444b;background:#1b2730;color:#e6e9ee;border-radius:7px;padding:7px 11px;margin-top:9px}.main{min-width:0}.topbar{height:73px;border-bottom:1px solid var(--edge);background:#101821ee;display:flex;align-items:center;padding:0 30px;gap:14px;position:sticky;top:0;z-index:12;backdrop-filter:blur(16px)}.breadcrumbs{font-size:12px;color:#9babb7;display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.breadcrumbs b{color:#e4e8e8;font-weight:500}.grow{flex:1}.user-dot{background:#2f3b45;border-radius:50%;width:33px;height:33px;display:grid;place-items:center;color:var(--gold)}.content{padding:27px 31px 60px;max-width:1750px;margin:0 auto}.eyebrow{font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:var(--gold);font-weight:750}.page-head{display:flex;align-items:flex-end;gap:15px;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap}.page-head h1{font-weight:650;font-size:clamp(23px,3vw,32px);letter-spacing:-.045em;margin:5px 0}.page-head p{color:var(--muted);margin:3px 0;max-width:720px}.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.btn{background:#202c35;border:1px solid #45515c;color:#e1e8ee;border-radius:8px;padding:9px 13px;display:inline-flex;align-items:center;gap:7px;justify-content:center;white-space:nowrap}.btn:hover{border-color:var(--gold);color:#e9d19e}.btn.gold{background:linear-gradient(125deg,#b59054,#e3c78e);color:#151a1d;border-color:#c4a165;font-weight:700}.btn.ghost{border:0;background:transparent}.btn.small{padding:5px 9px;font-size:12px}.btn.active{border-color:var(--gold);color:var(--gold)}.tag{display:inline-block;border-radius:999px;border:1px solid #3e4c59;padding:3px 9px;font-size:11px;color:#b7c5d0}.tag.green{color:#8dd6b6;border-color:#38654f}.tag.orange{color:#eeb96f;border-color:#735536}.tag.red{color:#e78b81;border-color:#704342}.grid{display:grid;gap:16px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.panel{border-radius:var(--radius);border:1px solid var(--edge);background:linear-gradient(140deg,#17212b,#121b22);padding:21px;min-width:0}.panel h2{font-size:16px;font-weight:650;margin:0 0 6px}.panel p{color:var(--muted);margin:5px 0 15px}.card-hover{transition:border-color .15s,transform .15s;cursor:pointer}.card-hover:hover{border-color:var(--gold);transform:translateY(-2px)}.metric small{display:block}.metric strong{display:block;font-size:25px;font-weight:670;letter-spacing:-.04em;color:#f5efe3;margin:5px 0}.metric em{font-size:11px;font-style:normal;color:#8fa2b1}.table-wrap{overflow:auto;border-radius:9px;border:1px solid var(--edge);max-width:100%}table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}th{background:#1e2a33;color:#b6c3ce;font-size:10px;text-transform:uppercase;letter-spacing:.08em;position:sticky;top:0;z-index:1}td,th{padding:10px 13px;border-bottom:1px solid #2a3540;vertical-align:top}tr:last-child td{border-bottom:0}tr[data-row]{cursor:pointer}tr[data-row]:hover td{background:#26313b}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}.toolbar input{min-width:200px}.mono{font-family:ui-monospace,Consolas,monospace;font-size:11px}.hr{height:1px;background:var(--edge);margin:18px 0}.empty{padding:28px;text-align:center;color:#94a4ae}.hint{font-size:12px;color:#aebdca}.link{color:#dfbe81;text-decoration:underline;text-underline-offset:3px}.login-layout{min-height:100vh;display:grid;grid-template-columns:1fr minmax(340px,470px);background:radial-gradient(circle at 22% 28%,#142333,#080e13 70%)}.hero{position:relative;padding:60px 9%;display:flex;justify-content:center;flex-direction:column;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;background:url('/assets/vehm-connected-globe-gold.svg') center / 94% no-repeat;opacity:.16;pointer-events:none}.hero>*{position:relative}.hero h1{font-size:clamp(42px,5vw,77px);line-height:1.03;letter-spacing:-.055em;margin:25px 0;color:#f4f0e9}.hero h1 em{font-style:normal;color:var(--gold)}.hero p{max-width:620px;color:#afbdc6;font-size:17px;line-height:1.7}.hero-actions{display:flex;gap:10px;margin-top:25px}.login-side{background:#131d27e6;border-left:1px solid #394148;padding:58px 44px;display:flex;align-items:center;justify-content:center}.login-card{width:100%;max-width:380px}.login-card h2{font-size:29px;letter-spacing:-.04em;font-weight:680}.form-field{display:flex;flex-direction:column;gap:7px;margin:16px 0;color:#c4d0d9;font-size:12px}.form-field input{padding:13px 12px}.error{border:1px solid #95554b;background:#552d2b33;color:#f0a9a2;border-radius:9px;padding:12px;margin:12px 0}.globe{max-width:310px}.workspace-select{background:#1a2732;border:1px solid #41515b;border-radius:9px;color:#e2e8ee;padding:9px 11px;min-width:175px;max-width:260px}.tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;gap:5px;border-bottom:1px solid #34404b;margin:-3px 0 20px}.tab{border:0;background:transparent;color:#a8b4bf;padding:10px 12px;border-bottom:2px solid transparent}.tab.active{color:#e0c385;border-bottom-color:var(--gold)}.split{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px}.chart-bars{height:140px;display:flex;align-items:end;gap:8px}.bar{flex:1;background:linear-gradient(180deg,#d9bc7d,#8a7147);min-width:7px;border-radius:3px 3px 0 0}.bar-mute{background:linear-gradient(180deg,#7197a7,#456577)}.progress{height:7px;background:#2d3a46;border-radius:8px;overflow:hidden}.progress i{display:block;height:100%;background:var(--gold);border-radius:8px}.viewer{position:relative;background:#0a1218;border:1px solid #394754;border-radius:11px;overflow:hidden;min-height:440px}.viewer iframe{width:100%;height:min(73vh,760px);border:0;background:white}.viewer-canvas{height:min(69vh,680px);position:relative;overflow:hidden;background:#101820}.viewer-canvas canvas{width:100%;height:100%;display:block}.viewer-toolbar{position:absolute;top:12px;right:12px;display:flex;gap:6px;z-index:2;flex-wrap:wrap}.viewer-bottom{position:absolute;bottom:11px;left:12px;font-size:10px;color:#d2c0a1;background:#101b23ad;padding:5px 9px;border-radius:6px}.document-list{max-height:560px;overflow:auto}.sheet-row{border-bottom:1px solid #2e3a45;text-align:left;display:block;background:transparent;color:#cbd8df;width:100%;padding:11px;border-left:0;border-right:0;border-top:0}.sheet-row:hover{background:#233342}.sheet-row b{color:#e3bd7f}.drawer{position:fixed;right:0;top:0;height:100vh;width:min(500px,100%);background:#16222b;border-left:1px solid #4b5962;padding:25px 26px;z-index:50;box-shadow:-10px 0 35px #0009;overflow:auto}.drawer h2{font-size:21px}.drawer dl{display:grid;grid-template-columns:minmax(100px,40%) 1fr;gap:12px}.drawer dt{color:#a8b5c0}.drawer dd{margin:0;overflow-wrap:anywhere}.overlay{position:fixed;inset:0;background:#0009;z-index:49}.upload-zone{border:2px dashed #60634c;border-radius:11px;text-align:center;padding:28px;background:#1b251d3b}.upload-zone.drag{background:#4a442b66}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.formgrid label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#becbd5}.formgrid .wide{grid-column:1/-1}.notice{background:#142a2f;border-left:3px solid #4c9aaf;padding:12px;margin-bottom:12px;border-radius:0 7px 7px 0}.status{color:#c7b284}.footer-note{text-align:center;font-size:11px;color:#677f8d;padding:22px 0}.mobile-nav{display:none}.toast{position:fixed;right:22px;bottom:20px;background:#21313b;border:1px solid #69836e;border-radius:8px;padding:11px 16px;z-index:99;color:#eee;box-shadow:0 12px 50px #0008;display:none;max-width:min(420px,90vw)}#toast.show{display:block}.section-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.section-title h2{margin:0}.search-row{display:flex;align-items:center;gap:8px}.list-stack{display:grid;gap:8px}.line{padding:10px 0;border-bottom:1px solid #2d3943}.pill-row{display:flex;flex-wrap:wrap;gap:7px}.drop-message{color:var(--muted);font-size:12px}.chip{background:#1d2c35;border:1px solid #405057;padding:4px 9px;border-radius:5px;font-size:11px}.leftline{border-left:3px solid var(--gold);padding-left:10px}.caption{font-size:12px;color:var(--muted)}.help{cursor:help;border-bottom:1px dotted #889}@media(max-width:1050px){.app-shell{grid-template-columns:202px minmax(0,1fr)}.content{padding:22px}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr}}@media(max-width:720px){.app-shell{grid-template-columns:1fr}.rail{position:fixed;transform:translateX(-105%);transition:.2s;width:260px;box-shadow:5px 0 45px #0008}.rail.open{transform:translateX(0)}.mobile-nav{display:inline-flex}.topbar{height:auto;min-height:65px;padding:10px 12px}.topbar .breadcrumbs{font-size:11px}.content{padding:18px 13px 50px}.g2,.g3,.g4{grid-template-columns:1fr}.page-head h1{font-size:24px}.login-layout{display:flex;flex-direction:column}.hero{padding:33px 24px}.hero h1{font-size:41px}.login-side{padding:28px 24px;border:0}.formgrid{grid-template-columns:1fr}.viewer{min-height:300px}.viewer-canvas{height:420px}}
/* VEHM staff navigation and two-band project menus */
.tab-bands{display:grid;gap:7px;margin:0 0 22px}.tab-band{display:flex;flex-wrap:wrap;gap:4px;align-items:center;border:1px solid #2c3943;border-radius:9px;padding:7px 9px;background:#111a23;overflow:visible}.band-label{color:var(--gold);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;min-width:102px;padding:4px 8px}.tab{white-space:normal;line-height:1.25;text-align:center;padding:8px 9px;font-size:12px;flex:0 0 auto;border-radius:5px}.tab.active{background:#3a3428}.nav-parent{position:relative;display:flex;align-items:center}.nav-parent>.nav-item{padding-right:26px}.nav-parent-title{flex:1}.nav-count{font-size:10px;font-variant-numeric:tabular-nums;background:#34424e;color:#ecd298;border:1px solid #5c5645;border-radius:8px;padding:2px 6px;margin-left:auto}.nav-chevron{position:absolute;right:2px;top:3px;border:0;background:transparent;color:#e6c780;padding:6px 7px}.nav-child{padding:8px 9px 8px 34px;font-size:12px;justify-content:space-between;gap:5px}.nav-child span:first-child{overflow:hidden;text-overflow:ellipsis}.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px;margin-top:14px}.module-item{display:flex;gap:9px;align-items:center;border:1px solid #36434d;border-radius:8px;padding:10px;background:#101b24}.module-item span{flex:1}.module-item small{font-size:10px}.module-item input{accent-color:#c6a466}.staff-hint{color:#e4c084}.drawer{width:min(610px,100%)}@media(max-width:720px){.band-label{min-width:100%;padding:6px}.tab{font-size:11px}.rail-nav{padding:12px 9px}}

/* Restored full-width project Gantt, finance charts, and native coordination */
.full-gantt{padding:0;overflow:hidden}.gantt-ruler{display:grid;grid-template-columns:160px minmax(240px,1fr) minmax(360px,45%);padding:12px 16px;gap:12px;background:#172630;font-size:12px;color:#dfc088;font-weight:700}.gantt-ticks{display:flex;justify-content:space-between}.gantt-wrap{max-height:69vh;overflow:auto}.gantt-row{cursor:pointer}.gantt-row td:nth-child(1){width:160px}.gantt-row td:nth-child(2){min-width:240px}.gantt-row td:nth-child(3){width:45%;min-width:360px}.gantt-row small{display:block;color:#9caebb;font-size:11px;margin-top:3px}.gantt-time{padding:4px 12px!important}.gantt-track{position:relative;height:28px;width:100%;border-radius:4px}.gantt-bar{position:absolute;top:6px;height:16px;background:#b7955f;border:1px solid #e9ce93;border-radius:3px;min-width:4px;display:block;overflow:hidden}.gantt-bar>span{display:block;height:100%;background:#49a896}.gantt-bar.milestone{background:#f4d48a}.finance-chart{display:grid;gap:12px}.finance-chart-row{display:grid;grid-template-columns:minmax(100px,28%) 1fr auto;align-items:center;gap:12px;font-size:12px}.finance-chart-row>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-chart-row b{font-variant-numeric:tabular-nums}.finance-chart-track{height:13px;background:#243540;border-radius:3px}.finance-chart-track i{display:block;height:100%;background:linear-gradient(90deg,#937447,#efc77d);border-radius:3px}.viewer-native{min-height:700px;height:calc(100vh - 310px);width:100%;border:1px solid #364450;border-radius:10px;overflow:hidden;background:#08121a}.viewer-native iframe{width:100%;height:100%;border:0;display:block}@media(max-width:1100px){.gantt-ruler{grid-template-columns:120px 1fr 320px}.viewer-native{height:80vh}}

/* VEHM OCC schedule sheet */
.schedule-sheet{padding:0;overflow:hidden}.ms-ruler,.ms-row{display:grid;grid-template-columns:170px minmax(280px,32%) minmax(440px,1fr);align-items:center}.ms-ruler{height:48px;border-bottom:1px solid #765c39;background:#111f29;font-size:11px;color:#e5c184}.ms-ruler>span{padding:9px}.ms-ticks{display:flex;justify-content:space-between;padding:0 12px!important}.ms-schedule{position:relative;overflow:auto;max-height:600px}.ms-row{height:43px;min-width:930px;border-bottom:1px solid #293b44;cursor:pointer}.ms-row:hover{background:#243845}.ms-code,.ms-name{padding:5px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.ms-code small,.ms-name small{display:block;color:#9dafb3;overflow:hidden;text-overflow:ellipsis}.ms-track{height:100%;position:relative;background:repeating-linear-gradient(90deg,#14212a 0,#14212a calc(12.5% - 1px),#334650 calc(12.5% - 1px),#334650 12.5%)}.ms-bar{position:absolute;top:14px;height:15px;border:1px solid #cca15f;border-radius:2px;background:#9f743e;z-index:2;overflow:hidden;min-width:3px}.ms-bar i{display:block;height:100%;background:#efd397}.ms-bar.milestone{transform:rotate(45deg);width:12px!important;height:12px;top:16px}.ms-logic{position:absolute;top:0;left:calc(170px + 32%);right:0;pointer-events:none;z-index:3}.ms-logic svg{width:100%;height:100%;overflow:visible}

.vehm-mail-tooltray{position:sticky;bottom:8px;margin-top:22px!important;border:1px solid #987843;box-shadow:0 8px 35px #02050999;z-index:15;max-width:100%}.vehm-mail-tooltray>.btn{display:inline-flex;align-items:center;gap:8px}.vehm-mail-tooltray .toolbar{max-width:100%;display:flex;gap:7px;align-items:center;flex-wrap:wrap}.vehm-mail-tooltray .hint{margin:8px 0 0}.ms-schedule .ms-logic{opacity:.92}

/* Communications: two tabs in one project workspace, no global floating widget */
.communications-workspace{position:relative;min-height:520px}.communications-switch{display:flex;gap:4px;align-items:center;position:sticky;top:0;z-index:5;width:max-content;max-width:100%;padding:5px;background:var(--panel,#15171b);border:1px solid rgba(190,156,76,.27);border-radius:13px;margin:0 0 16px auto;box-shadow:0 7px 20px #0002}.communications-tab{border:0;background:transparent;color:inherit;padding:9px 15px;border-radius:9px;font:inherit;font-weight:650;cursor:pointer}.communications-tab.active{background:#b99145;color:#131313}.communications-tab:focus-visible{outline:2px solid #d8b566;outline-offset:2px}.communications-content{min-width:0}

/* V5: storyboard schedule, retained gold/green palette */
.storyboard{border:1px solid #43515a;border-radius:10px;overflow:hidden;background:#0d1821}.story-header,.story-row{display:grid;grid-template-columns:minmax(300px,35%) minmax(450px,65%)}.story-header{background:#1e3039;color:#ebc989;font-size:11px;font-weight:700;min-height:43px;align-items:center}.story-header>span{padding:12px}.story-months{display:flex;justify-content:space-between;padding:12px;background:#12212b}.story-scroll{max-height:68vh;overflow:auto}.story-rows{position:relative;min-width:850px}.story-row{height:49px;cursor:pointer;border-bottom:1px solid #30424c}.story-row:hover{background:#263a40}.story-meta{padding:3px 12px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.story-meta strong{font-size:12px;font-weight:600;color:#e8e5dd;margin-left:8px}.story-meta small{display:block;color:#90a7b3;font-size:10px}.story-code{display:inline;color:#d9af6a;font-size:11px;font-weight:800}.story-timeline{position:relative;background:repeating-linear-gradient(90deg,#12232c 0,#12232c calc(12.5% - 1px),#2a3d46 calc(12.5% - 1px),#2a3d46 12.5%)}.story-bar{z-index:1;position:absolute;top:15px;height:18px;min-width:4px;background:linear-gradient(#e6c483,#a77c3e);border:1px solid #dcb76b;border-radius:5px;box-shadow:0 1px 5px #050a12}.story-bar i{display:block;height:100%;background:#4caf8e;border-radius:4px}.story-row.critical .story-bar{border-color:#db7965}.critical-dot{color:#d87866}.story-diamond{z-index:2;position:absolute;top:18px;width:13px;height:13px;transform:rotate(45deg);background:#e7c282;border:1px solid #fff0b6}.story-dependencies{position:absolute;top:0;bottom:0;left:35%;width:65%;height:100%;pointer-events:none;overflow:visible;z-index:3}.story-dependencies path{fill:none;stroke:#f2ae57;stroke-width:.12;stroke-opacity:.8;marker-end:url(#story-arrow)}.story-dependencies marker path{fill:#f4bd73;stroke:none}.drawings-menu{position:relative;display:inline-flex}.drawings-options{display:none;position:absolute;z-index:40;top:100%;left:0;min-width:170px;background:#111e28;border:1px solid #ae8c59;border-radius:8px;box-shadow:0 15px 25px #000a;padding:5px}.drawings-options.open{display:grid}.drawings-options button,.drawing-subnav button{border:0;background:transparent;color:#c6d3dc;text-align:left;padding:8px 10px;cursor:pointer}.drawings-options button:hover,.drawing-subnav button:hover{background:#293944;color:#f2d6a0}.drawing-subnav{display:grid;margin:-1px 0 7px 38px;border-left:1px solid #80683c;padding-left:7px;gap:0}.drawing-subnav button{font-size:11px}.user-entry{cursor:pointer}.user-entry:hover td{background:#2c3d47}.viewer-native{height:calc(100vh - 250px);min-height:720px}@media(max-width:900px){.story-header,.story-row{grid-template-columns:300px minmax(450px,1fr)}.story-dependencies{left:300px;width:calc(100% - 300px)}}

.metric-chart{display:grid;gap:14px;margin-top:15px}.metric-chart-row{display:grid;grid-template-columns:150px minmax(100px,1fr) 120px;gap:10px;align-items:center;font-size:11px}.metric-chart-row>b{text-align:right;font-variant-numeric:tabular-nums;color:#e8d6b5}.metric-chart-track{height:15px;border-radius:5px;background:#253640;overflow:hidden}.metric-chart-track>i{display:block;background:linear-gradient(90deg,#bd9352,#e6c88b);height:100%;border-radius:5px}@media(max-width:800px){.metric-chart-row{grid-template-columns:100px 1fr 88px}}
/* V5.1 UI-only refinement: no source drawings, GLB, IFC, coordination assets or protected chunks changed. */
.staff-rail{background:#0b141e;border-right:1px solid #765c38}.staff-rail .rail-sub{color:#d0b886}.staff-rail .nav-label{color:#d5b87c}.staff-rail .nav-item.active{background:linear-gradient(90deg,#3c3325,#1b2731);border-left:2px solid #d1b070}.staff-content{max-width:1650px}.staff-hero,.staff-org-hero{padding:29px 32px;margin-bottom:22px;border:1px solid #6f5833;border-radius:13px;background:radial-gradient(ellipse at 88% 20%,#3f36239c,transparent 45%),linear-gradient(130deg,#1b2933,#111c27);position:relative;overflow:hidden}.staff-hero:after,.staff-org-hero:after{content:'';position:absolute;right:-20px;top:-60px;width:250px;height:250px;opacity:.12;background:url('/assets/vehm-connected-globe-gold.svg') center/contain no-repeat;pointer-events:none}.staff-hero h1,.staff-org-hero h1{font-size:clamp(26px,3vw,39px);margin:6px 0;letter-spacing:-.04em}.staff-hero p,.staff-org-hero p{color:#afbdc7;max-width:850px}.staff-org-hero{display:flex;align-items:center;justify-content:space-between;gap:20px}.staff-section-heading{display:flex;align-items:end;justify-content:space-between;margin:25px 0 13px;gap:16px}.staff-section-heading h2{font-size:22px;margin:0}.staff-metrics .panel{border-top:2px solid #b89b65}.staff-customer-card{border-left:3px solid #bb975a;cursor:default}.staff-customer-card h2{font-size:21px;margin:10px 0}.staff-sum{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:6px;align-items:baseline;margin:18px 0}.staff-sum b{font-size:24px;color:#e5c587}.staff-sum span{font-size:11px;color:#9daebe}.staff-project-card{border-top:2px solid #7b6440}.staff-lower{margin-top:20px}.staff-account-tabs,.staff-comm-tabs{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 18px;border-bottom:1px solid #3b4b57}.staff-account-tabs button,.staff-comm-tabs button{background:transparent;color:#b8c8d4;border:0;border-bottom:3px solid transparent;padding:12px 16px}.staff-account-tabs button.active,.staff-comm-tabs button.active{color:#e5c686;border-bottom-color:#d9b36f}.top-communications{display:flex;gap:5px;margin-left:auto}.top-comm-btn{width:37px;height:36px;border:1px solid #44515b;border-radius:9px;background:#182530;color:#e5c487;font-size:17px}.top-comm-btn:hover{border-color:#d8b478}.top-profile{display:flex;gap:11px;align-items:center;min-width:0}.profile-lines{display:flex;flex-direction:column;min-width:0}.profile-lines strong{font-size:12px;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}.profile-lines small{font-size:10px;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}.modal-overlay{position:fixed;inset:0;background:#000b;display:grid;place-items:center;padding:18px;z-index:90}.user-float-modal{position:relative;display:flex;flex-direction:column;max-height:min(90vh,8in);width:min(6in,calc(100vw - 32px));min-width:0;background:#121e28;border:1px solid #997747;border-radius:14px;box-shadow:0 25px 100px #000d;overflow:hidden}.modal-x{position:absolute;right:14px;top:13px;width:27px;height:27px;border:1px solid #b6bbc0;border-radius:50%;background:transparent;color:#f4f0e9;font-size:22px;line-height:18px;display:grid;place-items:center;z-index:2}.modal-header{padding:24px 25px 12px;border-bottom:1px solid #334552}.modal-header h2{font-size:21px;margin:5px 32px 3px 0}.modal-header p{color:#a5b5c1;font-size:12px;margin:3px 0}.user-profile-form{display:flex;flex-direction:column;overflow:hidden;min-height:0}.modal-body{padding:18px 25px;overflow:auto;flex:1}.modal-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.modal-form-grid .modal-full{grid-column:1/-1}.modal-form-grid .form-field{margin:0}.modal-form-grid input,.modal-form-grid select{width:100%;padding:8px 10px}.modal-footer{display:flex;gap:9px;justify-content:flex-end;padding:15px 25px;background:#0e1922;border-top:1px solid #324451}.staff-doc-content{font:12px/1.7 ui-monospace,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.viewer-workspace{border:0;border-radius:10px;overflow:hidden;background:#07121a}.viewer-controlbar{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:49px;padding:8px 12px;background:#0b1720;border-bottom:1px solid #43505a}.viewer-controlbar>div:first-child{display:flex;gap:12px;align-items:center}.viewer-controlbar strong{color:#e6eef2;font-size:12px}.viewer-controls{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.viewer-exit{display:none!important}.viewer-workspace:fullscreen{height:100vh;width:100vw;border-radius:0;display:flex;flex-direction:column}.viewer-workspace:fullscreen .viewer-native{flex:1;height:auto;min-height:0}.viewer-workspace:fullscreen .viewer-exit{display:inline-flex!important}.viewer-native{height:calc(100vh - 205px);min-height:590px;border:0;border-radius:0;background:#07121a}.viewer-workspace.is-meeting .viewer-native{height:calc(100vh - 150px)}.viewer-workspace.is-meeting:fullscreen .viewer-native{height:auto}.viewer-workspace.is-meeting .viewer-controlbar{border-color:#b99a61}.schedule-panel{margin-top:16px}.schedule-topline{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.schedule-topline h2{font-size:20px;margin:0}.schedule-scale-switch{display:inline-flex;align-items:center;padding:3px;background:#0b151e;border:1px solid #6f5939;border-radius:9px;gap:3px}.schedule-scale-switch button{padding:8px 14px;color:#bbcad4;border:0;border-radius:6px;background:transparent}.schedule-scale-switch button.active{background:#c6a466;color:#121a1f;font-weight:700}.schedule-controls{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:14px}.schedule-controls input{width:min(460px,100%)}.schedule-range-nav{display:flex;gap:6px}.schedule-board .story-header,.schedule-board .story-row{grid-template-columns:minmax(300px,36%) minmax(0,64%)}.schedule-board .story-header{min-height:50px}.schedule-board .story-months{gap:0;padding:0}.schedule-board .story-months span{flex:1;text-align:center;font-size:10px;border-left:1px solid #49616b;padding:12px 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-board .story-row{height:52px}.schedule-board .story-meta{padding:7px 14px}.schedule-board .story-meta strong{display:block;margin-left:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-board .story-timeline{background:#11202a;overflow:hidden}.schedule-board .calendar-gridline{position:absolute;top:0;bottom:0;width:1px;background:#38505a;opacity:.8;pointer-events:none}.schedule-board .story-dependencies{left:36%;width:64%;stroke-width:.09}.schedule-board .story-rows{min-width:980px}.schedule-board .story-scroll{max-height:min(68vh,900px)}
@media(max-width:920px){.topbar{padding:0 14px}.profile-lines small{max-width:135px}.staff-org-hero{flex-direction:column;align-items:flex-start}.staff-customer-grid{grid-template-columns:1fr 1fr}.staff-lower{grid-template-columns:1fr}.viewer-controlbar>div:first-child{flex-direction:column;align-items:start;gap:1px}.schedule-topline{align-items:start;flex-wrap:wrap}.schedule-controls{flex-wrap:wrap}}@media(max-width:650px){.staff-customer-grid{grid-template-columns:1fr}.top-comm-btn{width:31px}.profile-lines{display:none}.modal-form-grid{grid-template-columns:1fr}.modal-form-grid .modal-full{grid-column:1}.user-float-modal{max-height:95vh}.staff-hero,.staff-org-hero{padding:22px}.viewer-native{height:72vh;min-height:460px}.viewer-controls .btn{padding:5px 8px;font-size:11px}}

/* VEHM V5.2 — UI-only corrections. Source BIM, drawings and model payloads untouched. */
/* User editor: an inert backdrop behind the dialog, never a click-close ancestor. */
.modal-overlay{isolation:isolate}.modal-backdrop{position:absolute;inset:0;z-index:0;background:transparent;cursor:default}.user-float-modal{z-index:1;pointer-events:auto}.modal-overlay .user-float-modal input,.modal-overlay .user-float-modal select,.modal-overlay .user-float-modal textarea{pointer-events:auto}
.modal-overlay .user-float-modal :focus-visible{outline:2px solid #edce8f;outline-offset:2px}
/* Staff metrics link to the actual project/org tools. */
.staff-metric-link{appearance:none;position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;width:100%;cursor:pointer;min-height:116px;padding:19px 22px;transition:border-color .15s,background .15s,transform .15s}.staff-metric-link:hover,.staff-metric-link:focus-visible{background:#23343f;border-color:#d8b371;transform:translateY(-1px)}.staff-metric-link .metric-open{position:absolute;right:15px;top:15px;color:#dcbf82;font-size:18px}.staff-metric-link small{font-size:12px}.staff-metric-link strong{font-size:27px;margin:7px 0}.staff-metric-link em{font-size:11px;font-style:normal;color:#a4b5c0}
.top-comm-btn{display:grid;place-items:center;cursor:pointer}.top-comm-btn svg{width:20px;height:20px;display:block;stroke:#e4be7a}.staff-comm-tabs svg{width:19px;height:19px;vertical-align:middle;display:inline-block;margin-right:5px}.staff-comm-tabs button{display:inline-flex;align-items:center;gap:5px}
/* Large, native three-pane communications shell: never embeds Outlook in a blocked iframe. */
.staff-content:has(.staff-comms-shell){padding-top:18px}.staff-comms-shell{display:flex;flex-direction:column;min-width:0;min-height:calc(100vh - 135px);border:1px solid #3c4b54;border-radius:12px;background:#0b141d;overflow:hidden}.comms-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;background:linear-gradient(110deg,#192936,#121e27);border-bottom:1px solid #866a3e}.comms-toolbar h1{font-size:clamp(22px,2.3vw,30px);margin:4px 0 2px;color:#f1f3f5}.comms-toolbar p{font-size:12px;color:#b9c9d3;margin:0}.comms-toolbar .tag{font-size:11px;max-width:250px;overflow:hidden;text-overflow:ellipsis}.staff-comms-shell>.staff-comm-tabs{flex:none;padding:0 17px;margin:0;border-bottom:1px solid #43515d;background:#111d27}.staff-comms-shell .staff-comm-tabs button{padding:12px 16px}.mail-app{display:grid;grid-template-columns:minmax(170px,205px) minmax(255px,29%) minmax(320px,1fr);flex:1;min-height:540px;overflow:hidden}.mail-app>aside,.mail-app>section{min-height:0;min-width:0}.mail-folders{display:flex;flex-direction:column;background:#101e28;border-right:1px solid #344652;padding:18px 12px;gap:12px}.mail-compose{width:100%;font-weight:700;padding:10px 12px}.mail-folder-group{display:grid;gap:4px}.mail-folder{display:flex;align-items:center;gap:12px;width:100%;padding:12px 10px;border:0;border-radius:7px;color:#d3dce1;text-align:left;background:transparent;cursor:pointer}.mail-folder:hover,.mail-folder.active{background:#263d4c;color:#f8d797}.mail-folder>span{font-size:16px}.mail-folder small{margin-left:auto;background:#314653;padding:2px 6px;border-radius:8px;color:#edcb88}.mail-folder-help{margin-top:auto;font-size:11px;line-height:1.5;color:#aab9c3;border-top:1px solid #3a4850;padding-top:16px}.mail-folder-help b{color:#e9c988}.mail-folder-help .btn{margin-top:6px}.mail-list{display:flex;flex-direction:column;border-right:1px solid #354753;background:#101a23}.mail-list-tools,.mail-reading-top{height:53px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 18px;border-bottom:1px solid #344753}.mail-list-tools h2,.mail-reading-top b{margin:0;font-size:16px;color:#edeef0}.mail-icon-btn{border:1px solid #405460;background:#1e303b;border-radius:6px;color:#dcbf84;min-width:31px;height:30px;font-size:19px;cursor:pointer}.mail-icon-btn:hover{border-color:#e1b878}.mail-search{display:flex;align-items:center;margin:14px 12px;gap:6px;padding:5px 9px;background:#0c151d;border:1px solid #45545f;border-radius:7px;color:#aab9c2}.mail-search input{flex:1;min-width:0;padding:5px;border:0;background:transparent;color:#eff1f4;outline:0}.mail-search:focus-within{border-color:#e0be7f}.mail-list-results{overflow-y:auto;flex:1}.mail-list-empty{padding:34px 20px;text-align:center;color:#a5b6c0;font-size:12px}.mail-list-empty b{display:block;color:#e6eef2;font-size:14px;margin:8px 0}.mail-list-empty p{line-height:1.6}.empty-mail-icon{font-size:32px;color:#c2a069}.mail-list-item{display:flex;gap:9px;width:100%;padding:12px;text-align:left;border:0;border-bottom:1px solid #2b3b46;background:transparent;color:#ecf0f4;cursor:pointer}.mail-list-item.selected,.mail-list-item:hover{background:#243747}.mail-list-item>span:last-child{min-width:0;flex:1}.mail-list-item b{display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-list-item small{display:block;margin-top:6px;color:#9cabb6;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-item-avatar{width:31px;height:31px;flex:none;display:grid;place-items:center;border-radius:50%;background:#3a4f58;color:#e9c78b;font-weight:700}.mail-reading{display:flex;flex-direction:column;background:#131f29;overflow:hidden}.mail-reading-actions{display:flex;gap:6px}.mail-reading-placeholder{margin:auto;max-width:420px;text-align:center;padding:24px}.mail-reading-placeholder>span{font-size:52px;color:#d9b579}.mail-reading-placeholder h2{font-size:21px}.mail-reading-placeholder p{font-size:13px;color:#a9b9c5;line-height:1.6}.mail-preview-tools{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:20px}.mail-doc-browser,.mail-message{height:100%;overflow-y:auto;padding:23px;min-height:0}.mail-doc-browser h2,.mail-message h2{font-size:22px}.mail-doc-browser p{font-size:12px;color:#afbec7}.mail-doc-entry{width:100%;display:block;padding:13px;border:0;border-bottom:1px solid #33444d;background:transparent;text-align:left;color:#eceff2;cursor:pointer}.mail-doc-entry:hover{background:#273b46}.mail-doc-entry b,.mail-doc-entry small{display:block}.mail-doc-entry b{font-size:12px}.mail-doc-entry small{font-size:10px;margin-top:5px;color:#9fafbd}.mail-message-meta{font-size:12px;color:#b3bec6;margin-bottom:19px}.mail-message-body{padding:17px;border:1px solid #344753;border-radius:8px;background:#0b151e;white-space:pre-wrap;word-break:break-word;line-height:1.6;font-size:13px;margin-bottom:20px}.mail-compose-form{display:flex;flex-direction:column;min-height:0;flex:1;padding:0 20px 18px}.mail-compose-form label{display:flex;align-items:center;gap:14px;font-size:12px;padding:9px 0;border-bottom:1px solid #36434b;color:#aebcc7}.mail-compose-form label input{min-width:0;flex:1;padding:8px;border:0;color:#f1f2f5;background:transparent}.mail-compose-form textarea{min-height:190px;flex:1;margin-top:16px;padding:15px;border:1px solid #3c4c56;border-radius:7px;background:#0a151e;color:#e9eef1;resize:vertical;font-family:inherit;line-height:1.5}.mail-compose-form footer{display:flex;justify-content:flex-end;gap:8px;margin-top:9px}.team-message-app{display:grid;grid-template-columns:minmax(250px,32%) 1fr;flex:1;min-height:520px}.team-message-list{padding:19px;border-right:1px solid #43515b}.team-message-list h2{margin:0}.team-message-list p,.team-message-view p{font-size:12px;color:#afbdc7;line-height:1.6}.team-message-view{display:grid;align-content:center;justify-items:center;text-align:center;padding:50px}.team-message-view>p{max-width:520px}.message-hero-icon{border:1px solid #997943;border-radius:50%;width:78px;height:78px;display:grid;place-items:center;background:#233641}.message-hero-icon svg{width:45px;height:45px;stroke:#e8c482}.team-message-view .actions{margin-top:16px;justify-content:center}
/* Gantt: compact activity ledger + uncluttered, color-coded bars & correctly positioned timescale. */
.schedule-panel{padding:0!important;border-color:#506072;overflow:hidden;margin-top:16px}.schedule-topline{padding:19px 21px 13px;background:#162630;border-bottom:1px solid #394c55}.schedule-topline h2{font-size:21px}.schedule-controls{padding:13px 17px;align-items:center;background:#101c26}.schedule-search{display:flex;align-items:center;gap:9px;background:#0b161f;border:1px solid #40515d;border-radius:7px;color:#dfc082;padding:0 10px;min-width:260px;flex:1;max-width:430px}.schedule-search input{border:0!important;background:transparent!important;color:#dfe7ec!important;min-width:0;width:100%;padding:10px!important}.schedule-range-nav{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.schedule-scale-switch{margin-left:auto}.schedule-scale-switch button{min-width:56px}.gantt-legend{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:8px 19px;font-size:11px;background:#0c1720;color:#b4c2ca;border-top:1px solid #25343c}.gantt-legend span{display:flex;align-items:center;gap:5px}.legend-box{width:12px;height:9px;display:inline-block;border-radius:2px;background:#d2a759}.legend-box.progress{background:#6fd0ac}.schedule-board{border-radius:0!important;border:0!important;border-top:1px solid #344753!important}.schedule-board .story-header,.schedule-board .story-row{display:grid;grid-template-columns:minmax(360px,39%) minmax(400px,61%)}.schedule-board .story-header{height:58px;min-height:58px;background:#1b2b38}.schedule-board .gantt-task-heading{display:flex;flex-direction:column;gap:4px;justify-content:center;padding:8px 15px;border-right:1px solid #41515b}.gantt-task-heading strong{font-size:13px}.gantt-task-heading small{font-size:10px;font-weight:400;color:#9fb3bf}.schedule-board .story-months{padding:0;position:relative;min-width:0;background:#1c303e;height:100%;display:block}.schedule-board .story-months>span:not(.calendar-today){display:flex;justify-content:center;align-items:center;position:absolute;top:0;bottom:0;border-left:1px solid #48545a;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px}.schedule-board .calendar-today{display:block;position:absolute;width:1px;background:#d4b170;top:0;bottom:0;pointer-events:none;z-index:3}.schedule-board .story-scroll{max-height:min(65vh,720px);min-height:220px;overflow-y:auto;overflow-x:auto;scrollbar-color:#58707b #0a151e}.schedule-board .story-rows{min-width:800px}.schedule-board .story-row{height:58px;min-height:58px;border-bottom:1px solid #293d49;background:#111f2a;cursor:pointer}.schedule-board .story-row:nth-child(even){background:#172733}.schedule-board .story-row:hover,.schedule-board .story-row:focus-visible{background:#254050;outline:1px solid #cda867}.schedule-board .story-meta{padding:8px 13px;min-width:0;border-right:1px solid #3b4f5d}.story-meta-top{display:grid;grid-template-columns:44px minmax(0,1fr) 40px;align-items:center;gap:8px}.schedule-board .story-meta strong{margin:0!important;font-size:12px;line-height:1.3;color:#eaf0f5;display:block!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-board .story-meta .story-code{font-weight:700;font-size:11px;color:#e9bf77}.schedule-board .story-meta small{font-size:10px;margin:7px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-board .story-progress{font-size:11px;color:#86d5b5;text-align:right}.schedule-board .story-timeline{position:relative;background:#0e1c27;overflow:hidden}.schedule-board .story-row:nth-child(even) .story-timeline{background:#11222d}.schedule-board .calendar-gridline{opacity:.7;background:#455763!important}.schedule-board .story-bar{top:19px;height:20px;border:0;border-radius:4px;box-shadow:0 2px 5px #050a10aa;min-width:3px;background:#bb9b5c!important;z-index:1}.schedule-board .story-bar i{background:#66cfa2!important;box-shadow:0 0 2px #070b10 inset;min-width:0}.schedule-board .story-bar.tone-mep,.legend-box.tone-mep{background:#338e90!important}.schedule-board .story-bar.tone-power,.legend-box.tone-power{background:#696fc2!important}.schedule-board .story-bar.tone-arch,.legend-box.tone-arch{background:#8d67b8!important}.schedule-board .story-bar.tone-civil,.legend-box.tone-civil{background:#b78d4a!important}.schedule-board .story-bar.tone-admin,.legend-box.tone-admin{background:#c0a656!important}.schedule-board .story-bar.tone-water,.legend-box.tone-water{background:#5480b8!important}.schedule-board .story-bar.tone-other,.legend-box.tone-other{background:#6f8894!important}.schedule-board .story-row.critical .story-bar{box-shadow:0 0 0 1px #e18174,0 2px 6px #000a}.schedule-board .story-diamond{top:21px;width:13px;height:13px;background:#efcb7e;z-index:2}.schedule-board .story-dependencies{left:39%;width:61%;stroke-width:.10}.gantt-footnote{padding:10px 17px;margin:0!important;background:#101d27}.gantt-empty{padding:30px 22px}.schedule-analytics{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.schedule-analytics .panel{min-width:0}.schedule-analytics h2{font-size:16px}.viz-panel{margin-top:16px;min-width:0}.viz-rows{display:grid;gap:13px;margin-top:22px}.viz-progress-row>div:first-child{display:flex;justify-content:space-between;gap:14px;font-size:11px;margin-bottom:6px}.viz-progress-row>div:first-child b{font-weight:600}.viz-progress-row>div:first-child span{color:#aab9c5}.viz-track{height:13px;background:#283d49;border-radius:7px;overflow:hidden}.viz-track>i{height:100%;display:block;background:#b5a568;border-radius:7px}.viz-track>i.tone-mep{background:#338e90}.viz-track>i.tone-power{background:#696fc2}.viz-track>i.tone-arch{background:#8d67b8}.viz-track>i.tone-civil{background:#b78d4a}.viz-track>i.tone-admin{background:#c0a656}.viz-track>i.tone-water{background:#5480b8}.viz-columns{display:flex;gap:8px;align-items:end;height:185px;padding-top:18px;overflow-x:auto;min-width:0}.viz-column{display:flex;flex-direction:column;align-items:center;justify-content:end;height:100%;min-width:23px;flex:1;text-align:center;font-size:10px;color:#d4c7ac;gap:5px}.viz-column-track{height:125px;width:100%;background:#22333d;display:flex;align-items:end;border-radius:3px;overflow:hidden}.viz-column-track i{display:block;width:100%;background:linear-gradient(#6cc5a6,#357e78)}.viz-column small{font-size:10px;color:#9cb2bb}.viz-compare{display:grid;gap:10px;margin-top:18px}.viz-legend{display:flex;gap:15px;flex-wrap:wrap;font-size:11px;margin-bottom:5px;color:#c9d4db}.viz-legend span{display:flex;gap:5px;align-items:center}.viz-legend i{display:inline-block;width:11px;height:9px}.v-budget{background:#bb955d}.v-commit{background:#5f84b5}.v-actual{background:#5ab49b}.viz-compare-row{display:grid;grid-template-columns:minmax(120px,25%) minmax(130px,1fr) 85px;gap:12px;align-items:center;font-size:11px}.viz-compare-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viz-compare-row strong{font-weight:600;text-align:right;color:#d9e5e9}.viz-compare-bars{display:grid;gap:3px}.viz-compare-track{height:6px;border-radius:3px;background:#253540;overflow:hidden}.viz-compare-track i{display:block;height:100%;border-radius:3px}
@media(max-width:1150px){.mail-app{grid-template-columns:150px minmax(220px,34%) minmax(230px,1fr)}.schedule-analytics{grid-template-columns:1fr}.schedule-board .story-header,.schedule-board .story-row{grid-template-columns:320px minmax(480px,1fr)}.schedule-board .story-dependencies{left:320px;width:calc(100% - 320px)}}
@media(max-width:780px){.mail-app{grid-template-columns:135px 1fr}.mail-reading{grid-column:1/-1;min-height:360px;border-top:1px solid #465560}.mail-folder-help{font-size:10px}.comms-toolbar{align-items:start;flex-direction:column}.staff-comms-shell{height:auto}.team-message-app{grid-template-columns:1fr}.team-message-view{border-top:1px solid #374752}.schedule-board .story-rows{min-width:790px}.schedule-board .story-header{min-width:790px}.viz-compare-row{grid-template-columns:85px 1fr 70px}}

/* V5.3 — Compact source-derived STARCOM work package schedule; original source data unchanged */
.compact-schedule-panel{margin:4px 0 18px;border:1px solid #415665;border-radius:10px;overflow:hidden;background:#0c1720}
.compact-schedule-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background:#162631;border-bottom:1px solid #3c5360}
.compact-schedule-toolbar h2{font-size:17px;line-height:1.25;margin:0;color:#f2e1c7}
.compact-source-note{color:#b8c7cc;font-size:10px}
.compact-schedule-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.compact-search{display:flex;align-items:center;gap:5px;background:#0b1720;border:1px solid #435461;border-radius:6px;padding:3px 8px;color:#caa765}
.compact-search input{width:195px;max-width:28vw;background:transparent;border:0;color:#edf3f5;outline:0;font-size:11px;height:26px}
.compact-schedule-actions .schedule-scale-switch button{padding:6px 10px;font-size:11px}
.compact-gantt-scroll{width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-color:#ba945f #142733;scrollbar-width:thin;overscroll-behavior-inline:contain}
.compact-gantt-table{--compact-label-width:315px;display:block;width:calc(var(--compact-label-width) + var(--compact-time-width));min-width:100%;}
.compact-gantt-row{display:grid;grid-template-columns:var(--compact-label-width) var(--compact-time-width);height:20px;border-bottom:1px solid #223843;cursor:pointer}
.compact-gantt-row:hover{background:#233944}
.compact-gantt-header{height:31px;position:sticky;top:0;z-index:4;background:#243945;cursor:default}
.compact-task-label{position:sticky;left:0;z-index:3;min-width:0;display:flex;align-items:center;gap:7px;padding:0 8px;background:#12222c;border-right:1px solid #52636b;white-space:nowrap;overflow:hidden;min-height:0}
.compact-gantt-row:nth-child(odd) .compact-task-label{background:#172a35}
.compact-gantt-row:hover .compact-task-label{background:#294450}
.compact-task-label span{overflow:hidden;text-overflow:ellipsis;flex:1;font-size:11px;font-weight:530;color:#e9eff0}
.compact-task-label small{font-size:10px;color:#9fb6c2;flex:none}
.compact-task-code{font-size:9px;font-weight:750;flex:0 0 76px;color:#d7b477}
.compact-gantt-header .compact-task-label{z-index:5;background:#263b46;color:#efcc91;justify-content:space-between}
.compact-gantt-header .compact-task-label b{font-size:11px;flex:auto}
.compact-time-cell{position:relative;min-width:0;background:linear-gradient(180deg,#0a1922,#0c1f28)}
.compact-gantt-row:nth-child(odd) .compact-time-cell{background:#10232d}
.compact-axis{background:#253b49!important}
.compact-axis-unit{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;border-left:1px solid #64808d;color:#f0c78a;font-size:10px;font-weight:700;letter-spacing:.15px}
.compact-gridline{position:absolute;top:0;bottom:0;border-left:1px solid #39525c;opacity:.54;pointer-events:none}
.compact-workbar{position:absolute;top:4px;height:12px;min-width:3px;border-radius:3px;background:#ab8b53;border:1px solid #dcc184;z-index:1;box-shadow:0 1px 2px #0005}
.compact-workbar.tone-mep{background:#1c9c9d;border-color:#54b9b9}.compact-workbar.tone-power{background:#7a77cc;border-color:#a9a6eb}.compact-workbar.tone-water{background:#558dcb;border-color:#9abce0}.compact-workbar.tone-arch{background:#a46dbb;border-color:#c9a1d9}.compact-workbar.tone-civil{background:#ae8743;border-color:#d4b27a}.compact-workbar.tone-admin{background:#d2a751;border-color:#f3d58a}.compact-workbar.tone-other{background:#6a9296;border-color:#acc6c6}
.compact-milestone{position:absolute;top:5px;margin-left:-4px;width:9px;height:9px;transform:rotate(45deg);background:#e7ba65;border:1px solid #fff1c7;z-index:2}
.compact-today{position:absolute;top:0;bottom:0;border-left:2px solid #efaf63;z-index:2}
.compact-schedule-foot{display:flex;justify-content:space-between;gap:8px;padding:5px 10px;color:#95acb7;font-size:9px;background:#10202a}
.compact-empty{padding:15px}
.detail-heading h2{margin:6px 0 10px;font-size:19px}.detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:13px 0 20px}
.detail-facts>div{padding:8px 10px;border:1px solid #395461;border-radius:7px;background:#152a34;min-width:0}
.detail-facts small{display:block;font-size:10px;color:#a2b5bf;margin-bottom:4px;text-transform:capitalize}
.detail-facts b{display:block;overflow-wrap:anywhere;font-size:12px}
.detail-workfaces{display:grid;gap:7px}.detail-workfaces article{padding:10px;border:1px solid #2f4650;border-radius:7px;background:#10212c}
.detail-workfaces article b{display:block;color:#e3c68e;font-size:11px}.detail-workfaces article span,.detail-workfaces article small{display:block;margin-top:5px;color:#abc0c9;font-size:10px}
.detail-workfaces article p{font-size:11px;margin:5px 0 0}.detail-source-note{font-size:10px;color:#aab7bf;margin-top:18px}
/* Protected full-original drawing PDF and all 168 indexed sheets */
.source-drawings .viewer-controlbar{padding:9px 13px}
.source-drawings-body{display:grid;grid-template-columns:minmax(210px,260px) minmax(0,1fr);height:min(78vh,850px);min-height:500px;background:#0b1822}
.source-drawings-index{min-width:0;overflow:auto;border-right:1px solid #355160;background:#0e202b;padding:10px}
.source-drawings-index>input{display:block;width:100%;background:#07141d;color:#f5f5ee;border:1px solid #4a5b64;padding:9px;font-size:12px;border-radius:5px;margin-bottom:9px}
.source-drawings-index #sheet-results{display:grid;align-content:start;gap:3px}
.source-drawings-index .sheet-row{display:block;width:100%;text-align:left;font-size:10px;padding:6px;border:0;background:transparent;border-radius:5px;color:#d9e6ec}
.source-drawings-index .sheet-row:hover{background:#293e4b}
.source-pdf-pane{min-width:0;overflow:hidden}.source-pdf-pane iframe{display:block;width:100%;height:100%;border:0;background:#16252d}
.source-drawings:fullscreen{height:100vh;display:flex;flex-direction:column;background:#0b1620}
.source-drawings:fullscreen .source-drawings-body{flex:1;height:auto;min-height:0}
.viewer-workspace:fullscreen.is-fullscreen-bim{height:100vh;display:flex;flex-direction:column;background:#09131c}
.viewer-workspace:fullscreen.is-fullscreen-bim .viewer-native{flex:1;min-height:0}
.viewer-workspace:fullscreen.is-fullscreen-bim .viewer-controlbar{padding:4px 13px;min-height:36px}
@media(max-width:960px){.compact-gantt-table{--compact-label-width:255px}.compact-task-code{flex-basis:62px;font-size:8px}.compact-schedule-toolbar{flex-wrap:wrap}.compact-schedule-foot{flex-direction:column}.source-drawings-body{grid-template-columns:200px minmax(0,1fr)}}

/* Keep all 32 source-derived discipline packages within a typical 900px viewport. */
.compact-gantt-row:not(.compact-gantt-header){height:18px}
.compact-workbar{top:3px;height:12px}
.compact-milestone{top:4px}

/* Canvas-only complete contract-set viewer: indexed pages, protected source, no download control */
.source-pdf-pane{display:flex;flex-direction:column}
.source-pdf-controls{flex:none;display:flex;align-items:center;gap:9px;padding:7px 12px;background:#1b303d;border-bottom:1px solid #455764;font-size:11px;color:#e9ddc8}
.source-pdf-controls input{width:46px;height:27px;border:1px solid #465e6b;background:#0b1c27;color:#eef3f4;border-radius:4px;text-align:center}
#drawing-page-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:#d6c5a8;flex:1}
.source-pdf-canvas-scroll{position:relative;flex:1;min-height:0;overflow:auto;background:#26323a;display:flex;align-items:flex-start;justify-content:center;padding:18px}
.source-pdf-canvas-scroll canvas{display:block;max-width:none;box-shadow:0 5px 22px #0006;background:white}
.source-pdf-status{position:absolute;top:10px;left:12px;background:#0a182acc;color:#eac88a;padding:5px 8px;font-size:11px;border-radius:5px;pointer-events:none}
.source-pdf-status:empty{display:none}
.source-drawings-index #sheet-results .sheet-row small{display:block;margin-top:3px;color:#96b3c4}
.source-drawings-index #sheet-results .sheet-row.active{background:#304553;border-left:2px solid #d9b477}
.source-drawings-index .sheet-count{font-size:10px;color:#b5bbc0;margin:5px 0 8px}

/* V5.4 calendar and responsive fullscreen */
.compact-period-controls{padding:5px 11px;background:#0e1d27;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:1px solid #344d5c}
.compact-period-step{display:flex;align-items:center;gap:7px;min-width:220px;justify-content:center}
.compact-period-step strong{color:#f0dfbb;min-width:140px;font-size:12px;text-align:center}
.compact-period-step button{border:1px solid #52697b;border-radius:6px;color:#f0d6a5;background:#192b39;font-size:19px;line-height:20px;min-width:28px;cursor:pointer}
.compact-period-step button:disabled{opacity:.3;cursor:default}
.compact-mep-legend{display:flex;gap:11px;align-items:center;flex-wrap:wrap}.compact-mep-legend span{font-size:9px;color:#ced7de;white-space:nowrap}.compact-mep-legend i{display:inline-block;width:11px;height:8px;margin-right:4px;border-radius:2px;vertical-align:middle;background:#d2a751}
.compact-mep-legend i.tone-mep{background:#1aa0b0}.compact-mep-legend i.tone-power{background:#cda947}.compact-mep-legend i.tone-water{background:#428bd7}.compact-mep-legend i.tone-fire{background:#d85253}.compact-mep-legend i.tone-civil{background:#ad8b5b}.compact-mep-legend i.tone-arch{background:#8c8dd6}.compact-mep-legend i.tone-admin{background:#bca075}
.compact-workbar.tone-mep{background:#1aa0b0;border-color:#66d2dd}.compact-workbar.tone-power{background:#cda947;border-color:#eaca7c}.compact-workbar.tone-water{background:#428bd7;border-color:#92bff4}.compact-workbar.tone-fire{background:#d85253;border-color:#ff9696}.compact-workbar.tone-arch{background:#8c8dd6;border-color:#b7b9f4}.compact-workbar.tone-civil{background:#ad8b5b;border-color:#d5b98f}.compact-workbar.tone-admin{background:#bca075;border-color:#e5cb99}
.compact-task-label.tone-fire{box-shadow:inset 3px 0 #d85253}.compact-task-label.tone-mep{box-shadow:inset 3px 0 #1aa0b0}.compact-task-label.tone-power{box-shadow:inset 3px 0 #cda947}.compact-task-label.tone-water{box-shadow:inset 3px 0 #428bd7}.compact-task-label.tone-arch{box-shadow:inset 3px 0 #8c8dd6}.compact-task-label.tone-civil{box-shadow:inset 3px 0 #ad8b5b}
.compact-schedule-panel:fullscreen{display:flex;flex-direction:column;height:100vh;width:100vw;margin:0;border-radius:0;background:#09151e}.compact-schedule-panel:fullscreen .compact-gantt-scroll{flex:1;overflow-x:auto;overflow-y:auto}.compact-schedule-panel:fullscreen .compact-gantt-row:not(.compact-gantt-header){height:max(18px,calc((100vh - 170px)/32))}.compact-schedule-panel:fullscreen .compact-gantt-header{height:33px}.compact-schedule-panel:fullscreen .compact-task-label{position:sticky;left:0;z-index:4}.compact-schedule-panel:fullscreen .compact-gantt-header .compact-task-label{z-index:6}
@media(max-width:1150px){.compact-period-controls{justify-content:center}.compact-schedule-toolbar{flex-wrap:wrap}.compact-mep-legend{justify-content:center}}

/* VEHM OCC / Teams-style meeting dock — UI only; media uses approved provider */
.meeting-dock{position:fixed;right:20px;bottom:18px;width:min(680px,calc(100vw - 36px));height:min(610px,calc(100vh - 52px));background:#0b1620;border:1px solid #bc9349;border-radius:14px;box-shadow:0 24px 70px #000c;z-index:2147482000;display:flex;flex-direction:column;overflow:hidden;color:#ece7db}
.meeting-dock-bar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:9px 13px;background:#111f2b;border-bottom:1px solid #35506a;min-height:49px}.meeting-dock-title{display:flex;flex-direction:column;gap:3px}.meeting-dock-title b{font-size:12px;color:#e2bd78}.meeting-dock-title small{font-size:11px;color:#aec0cc}.meeting-dock-title small.error{color:#ff9393}.meeting-dock-window-actions{display:flex;gap:6px}.meeting-dock-window-actions button{width:28px;height:27px;border-radius:7px;border:1px solid #485867;background:#162737;color:#eee;cursor:pointer}
.meeting-body{flex:1;min-height:0;overflow:hidden;background:#07121a}.meeting-body>iframe{width:100%!important;height:100%!important;border:0}.meeting-placeholder{height:100%;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;text-align:center;padding:24px;color:#d5dae0}.meeting-placeholder strong{color:#e6bf77}.meeting-placeholder p{max-width:400px}
.meeting-controls{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-evenly;gap:3px;background:#132431;border-top:1px solid #344b5e;padding:7px 6px}.meeting-controls button{font:inherit;min-width:52px;border:none;border-radius:7px;background:transparent;color:#eee;cursor:pointer;display:flex;flex-direction:column;gap:3px;align-items:center;padding:5px 4px}.meeting-controls button:hover{background:#2b3a47}.meeting-controls button span{font-size:10px}.meeting-controls button.muted{color:#e4a39c}.meeting-controls button.meeting-leave{background:#b14c47;color:white}.meeting-dock.minimized{height:50px;width:295px}.meeting-dock.minimized .meeting-body,.meeting-dock.minimized .meeting-controls{display:none}.meeting-dock.expanded{inset:1.3vh 1.3vw;width:97.4vw;height:97.4vh;max-width:none;border-radius:9px}.meeting-dock.meeting-in-fullscreen{position:absolute;right:16px;bottom:16px}
.meetings-page{min-height:500px}.meeting-launch-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:15px;padding-top:16px}.meeting-feature{padding:20px;background:#11212d;border-radius:12px;border:1px solid #2b485c;min-height:260px}.meeting-feature h2{font-size:20px;margin:9px 0}.meeting-feature p{color:#b8cad4;min-height:75px}.meeting-feature-icon{font-size:25px;color:#dfbd80}
.teams-messaging{min-height:560px}.chat-library-head{display:flex;justify-content:space-between;gap:6px;align-items:center;padding:14px}.chat-library-head h2{margin:0}.chat-library-tabs{display:flex;border-bottom:1px solid #344858}.chat-library-tabs button{flex:1;padding:11px;border:none;background:transparent;color:#cad8e0;cursor:pointer}.chat-library-tabs button.active{color:#ffdb91;border-bottom:2px solid #dcb469}.team-chat-library h3{padding:8px 14px;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#9bb2c0}.team-thread{display:flex;gap:11px;align-items:center;width:100%;text-align:left;padding:10px 13px;border:0;background:transparent;color:#eee;cursor:pointer}.team-thread:hover,.team-thread.selected{background:#243847}.team-thread span:last-child{display:flex;flex-direction:column;gap:3px}.team-thread small{font-size:11px;color:#a8bac6}.thread-avatar{width:34px;height:34px;border:1px solid #987740;border-radius:9px;display:grid;place-items:center;color:#e8bd70;background:#263345;flex-shrink:0}.chat-thread-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:15px;border-bottom:1px solid #42505e}.chat-thread-head h2{margin:0}.chat-thread-head small{color:#9eb2bc}.chat-actions{display:flex;gap:7px}.chat-welcome{margin:auto;text-align:center;padding:25px;max-width:550px}.chat-welcome-mark{margin:0 auto 12px;display:grid;place-items:center;width:55px;height:55px;border-radius:50%;background:#283746;border:1px solid #c2a16c;color:#dabb86;font-weight:800;font-size:22px}.chat-welcome p{color:#bccbd4}.chat-welcome .actions{justify-content:center}.chat-month{padding:12px}.calendar-feature{margin:28px;padding:20px;border:1px solid #41566a;border-radius:10px}.calendar-date-note{padding:12px;color:#e3bd73}
@media(max-width:900px){.meeting-launch-grid{grid-template-columns:1fr}.teams-messaging{display:block}.team-chat-library{max-width:none}.meeting-dock{right:8px;bottom:8px;width:calc(100vw - 16px);height:min(550px,calc(100vh - 30px))}.meeting-controls button{min-width:36px}.meeting-controls button span{font-size:9px}}

/* V5.5 · Fixed contractor/resource roster beside disciplines */
.compact-gantt-table{--compact-label-width:315px;--compact-resource-width:192px;width:calc(var(--compact-label-width) + var(--compact-resource-width) + var(--compact-time-width))}
.compact-gantt-row{grid-template-columns:var(--compact-label-width) var(--compact-resource-width) var(--compact-time-width)}
.compact-resource-cell{position:sticky;left:var(--compact-label-width);z-index:3;min-width:0;display:flex;align-items:center;gap:5px;padding:0 8px;background:#152630;border-right:2px solid #60717c;white-space:nowrap;overflow:hidden}
.compact-gantt-row:nth-child(odd) .compact-resource-cell{background:#1a2e3a}
.compact-gantt-row:hover .compact-resource-cell{background:#284553}
.compact-resource-cell .resource-assignment{color:#f1e4ca;font-size:10px;font-weight:650;min-width:0;max-width:83px;overflow:hidden;text-overflow:ellipsis}
.compact-resource-cell .resource-assignment.pending{color:#aebbc2;font-weight:500;font-style:italic}
.compact-resource-cell small{color:#92b4c5;font-size:9px;min-width:0;overflow:hidden;text-overflow:ellipsis}
.compact-resource-header{z-index:6!important;background:#263b46!important;color:#f0cc90;justify-content:center;border-bottom:1px solid #4b6472}
.compact-resource-header b{font-size:10px;letter-spacing:.05px}
.compact-gantt-header .compact-task-label{z-index:7}
.compact-schedule-panel:fullscreen .compact-resource-cell{position:sticky;left:var(--compact-label-width);z-index:5}
.compact-schedule-panel:fullscreen .compact-resource-header{z-index:8!important}
@media(max-width:780px){.compact-gantt-table{--compact-label-width:240px;--compact-resource-width:152px}.compact-resource-cell{gap:3px;padding:0 5px}.compact-resource-cell .resource-assignment{max-width:60px;font-size:9px}.compact-resource-cell small{font-size:8px}.compact-task-code{flex-basis:52px}}

/* V5.6: visible start and finish milestones on every Gantt activity */
.compact-event-point{position:absolute;top:7px;width:6px;height:6px;margin-left:-3px;transform:rotate(45deg);z-index:4;background:#f3d18c;border:1px solid #fff3d4;box-shadow:0 0 0 1px #0b1d2b}
.compact-event-point.start{background:#e9f3ed;border-color:#8ce3bf}
.compact-event-point.finish{background:#ffca77;border-color:#ffe3ac}
.compact-workbar{z-index:2}
.milestone-register-btn{white-space:nowrap}
.detail-milestone-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:16px}
.detail-milestone-entry{border:1px solid #385260;border-radius:7px;padding:8px 10px;display:flex;flex-direction:column;gap:5px}
.detail-milestone-entry b{color:#f0cb86;font-size:11px}.detail-milestone-entry span{font-size:13px;font-weight:650}.detail-milestone-entry small{font-size:10px;color:#adc1c9}
.milestone-list{display:flex;flex-direction:column;gap:5px;max-height:65vh;overflow-y:auto}
.milestone-item{background:#132530;border:1px solid #304a58;color:#f5f6f2;border-radius:7px;padding:8px;text-align:left;display:grid;grid-template-columns:87px minmax(0,1fr);gap:4px 8px;cursor:pointer}
.milestone-item:hover{background:#263e4d;border-color:#a68c60}.milestone-item b{color:#f4c37e;font-size:11px}.milestone-item span{font-size:12px}.milestone-item small{grid-column:2;color:#a4b9c3;font-size:10px}
@media(max-width:1150px){.compact-schedule-actions{flex-wrap:wrap}}

/* V5.11 - Profile avatar picker */
.v511-avatar-choices{border:1px solid #344756;border-radius:12px;padding:12px;margin:12px 0;color:inherit}.v511-avatar-choices legend{font-weight:700;padding:0 6px}.v511-avatar-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.v511-avatar-option{position:relative;display:flex;align-items:center;flex-direction:column;gap:6px;cursor:pointer;border:1px solid transparent;padding:8px 4px;border-radius:10px}.v511-avatar-option:has(input:checked){border-color:#d7b26c;background:rgba(211,174,100,.13)}.v511-avatar-option input{position:absolute;opacity:0;top:3px;left:3px}.v511-avatar-option:focus-within{outline:2px solid #d7b26c;outline-offset:1px}.v511-avatar-option small{font-size:10px}.v511-avatar-bubble{height:40px;width:40px;display:grid;place-items:center;border-radius:50%;font-weight:800;font-size:18px;color:#fff;border:2px solid #ffffff44}.avatar-gold{background:linear-gradient(135deg,#8a591d,#e6bd67)}.avatar-navy{background:linear-gradient(135deg,#102847,#467da8)}.avatar-emerald{background:linear-gradient(135deg,#126b4a,#38b68b)}.avatar-violet{background:linear-gradient(135deg,#49356f,#a278d2)}.avatar-coral{background:linear-gradient(135deg,#893c44,#d88477)}.avatar-slate{background:linear-gradient(135deg,#35495a,#7990a4)}@media(max-width:560px){.v511-avatar-grid{grid-template-columns:repeat(3,1fr)}}
