:root,[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand-primary:#5a6b57;--brand-sage:#5a6b57;--brand-sage-bright:#7f916d;--brand-sage-deep:#3f4b3d;--brand-steel:#2a2d31;--brand-gunmetal:#787f83;--brand-concrete:#aeb4b7;--brand-stone:#f2f2f2;--brand-dark-bg:#111214;--bg:#080909;--bg-soft:#111214;--panel:#17191b;--card:#202327;--panel-strong:#2a2d31;--line:#f2f2f216;--line-strong:#f2f2f229;--text:#f2f2f2;--text-secondary:#c4c6ca;--muted:#aeb4b7;--quiet:#787f83;--accent:var(--brand-primary);--danger:#e05555;--good:#8ba36f;--warning:#c5a86a;--info:var(--brand-concrete);--chart-sage:#5a6b57;--chart-steel:#787f83;--chart-blue:var(--chart-steel);--chart-green:#8ba36f;--chart-gray:#6b7078;--sidebar-bg:#0b0d0e;--sidebar-hover:#2b2f36;--btn-secondary-bg:#202327;--btn-secondary-hover:#2a2d31;--table-stripe:#ffffff05;--table-row-hover:#5a6b571c;--table-row-selected:#5a6b572b;--radius-card:8px;--radius-button:6px;--shadow-card:0 1px 0 #ffffff09 inset, 0 10px 28px #00000047;--shadow-elevated:0 1px 0 #ffffff0a inset, 0 18px 48px #00000070;--shadow:var(--shadow-elevated);--motion-fast:.18s;--motion-base:.22s;--surface-hover:#ffffff0a;--surface-raised:#ffffff12;--surface-inset:#00000038;--accent-subtle:#5a6b5729;--accent-muted:#5a6b5747;--warning-subtle:#f4b9421f;--warning-muted:#f4b94238;--good-subtle:#35c46b1f;--danger-subtle:#e055551f;--danger-muted:#e0555538;--info-subtle:#a7acb31a;--info-muted:#a7acb333;--overlay:#0000007a;--brand-navy:var(--brand-dark-bg);--brand-slate:var(--brand-steel);--brand-stone-muted:var(--brand-concrete);--brand-cloud:var(--brand-stone);--brand-blue:var(--brand-gunmetal);--brand-action:var(--brand-primary);--brand-green:var(--good);--brand-yellow:var(--warning);--brand-red:var(--danger);--surface:var(--card);--border:var(--line);background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f2f2f2;--bg-soft:#fafafa;--panel:#e4e5e7;--card:#fff;--panel-strong:#fff;--line:#d0d2d6;--line-strong:#b8bbc0;--text:#111214;--text-secondary:#2a2d31;--muted:#787f83;--quiet:#aeb4b7;--sidebar-bg:#ebebed;--sidebar-hover:#e0e1e4;--btn-secondary-bg:#e4e5e7;--btn-secondary-hover:#d8dadf;--table-stripe:#2b2f3608;--table-row-hover:#5a6b5714;--table-row-selected:#5a6b5724;--shadow-card:0 1px 2px #2b2f360f, 0 4px 14px #2b2f3614;--shadow-elevated:0 6px 20px #2b2f361a;--shadow:var(--shadow-elevated);--surface-hover:#2b2f360d;--surface-raised:#2b2f3614;--surface-inset:#2b2f360a;--accent-subtle:#5a6b571a;--accent-muted:#5a6b572e;--warning-subtle:#f4b9421a;--warning-muted:#f4b9422e;--good-subtle:#35c46b1a;--danger-subtle:#e055551a;--danger-muted:#e055552e;--info-subtle:#51565e14;--info-muted:#51565e29;--overlay:#2b2f3659}*{box-sizing:border-box}html{background:var(--bg);min-width:320px;overflow-x:hidden}body{background:var(--bg);min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}[data-theme=dark] body{background:radial-gradient(ellipse 80% 50% at 52% -10%, #5a6b5714, transparent 58%), linear-gradient(135deg, #ffffff06, transparent 28%), var(--bg)}[data-theme=light] body{background:var(--bg)}button,input,textarea,select{font:inherit}button{cursor:pointer}.home-shell{isolation:isolate;width:min(100%,1680px);min-height:100vh;margin:0 auto;padding:22px clamp(16px,3vw,42px) 52px;position:relative}.app-data-ribbon{border:1px solid var(--line);color:var(--muted);background:#ffffff06;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0 0 14px;padding:8px 10px;font-size:.78rem;display:flex}.app-data-ribbon>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:min(220px,100%);overflow:hidden}.app-data-ribbon.is-error{color:var(--danger,#c0392b);background:#c0392b14;border-color:#c0392b73}.app-shell{isolation:isolate;background:radial-gradient(ellipse 70% 45% at 52% -8%, #5a6b5712, transparent 60%), var(--bg);width:100%;min-height:100vh;display:block;position:relative}.app-sidebar{z-index:20;background:linear-gradient(180deg, #5a6b5709, transparent 18%), var(--sidebar-bg);border-right:1px solid var(--line);flex-direction:column;width:232px;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.app-sidebar__brand{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:18px 14px 16px;display:flex}.app-sidebar__logo{object-fit:contain;border-radius:6px;flex-shrink:0;width:34px;height:34px}.app-sidebar__brand-text{flex-direction:column;gap:1px;min-width:0;display:flex}.app-sidebar__product{font-size:.95rem}.app-sidebar__company{color:var(--quiet);white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;overflow:hidden}.vulcon-wordmark,.sw-wordmark{letter-spacing:.085em;white-space:nowrap;flex-direction:column;gap:3px;font-family:Inter,Arial Narrow,Roboto Condensed,ui-sans-serif,system-ui,sans-serif;font-weight:850;line-height:1;display:inline-flex}.vulcon-wordmark--centered{text-align:center;align-items:center}.vulcon-wordmark__line{justify-content:center;align-items:baseline;display:inline-flex}.vulcon-wordmark__vul,.sw-wordmark__name{color:var(--brand-sage-bright);text-shadow:0 1px 10px #f2f2f20f}.vulcon-wordmark__con,.sw-wordmark__dot-ai{color:var(--brand-stone);text-shadow:0 0 18px #f2f2f224}.vulcon-wordmark__inc{color:var(--brand-sage-bright);letter-spacing:.42em;text-indent:.42em;justify-content:center;align-items:center;gap:8px;font-size:.48rem;font-weight:700;display:inline-flex}.vulcon-wordmark__inc:before,.vulcon-wordmark__inc:after{content:"";background:color-mix(in srgb, var(--accent) 76%, transparent);width:28px;height:1px}.vulcon-wordmark__tagline{letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-top:1px;font-size:.48rem;font-weight:650}.vulcon-mark{color:var(--accent);place-items:center;line-height:0;display:inline-grid}.vulcon-mark svg{width:100%;height:100%;display:block}.vulcon-mark--framed{background:radial-gradient(circle at 34% 18%,#5a6b573d,#0000 38%),linear-gradient(145deg,#2a2d31,#111214 72%);border:1px solid #5a6b576b;box-shadow:inset 0 1px #ffffff0f,0 10px 24px #00000061}.vulcon-app-icon,.sw-app-icon{border-radius:9px;flex-shrink:0;width:34px;height:34px;padding:5px}.sw-app-icon{background:var(--brand-dark-bg);letter-spacing:-.04em;border:1px solid #5a6b576b;border-radius:7px;justify-content:center;align-items:baseline;padding-top:9px;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.62rem;font-weight:800;line-height:1;display:inline-flex}.sw-app-icon__sw{color:var(--text)}.sw-app-icon__dot-ai{color:var(--accent);font-size:.55rem}.app-sidebar__nav{flex-direction:column;gap:2px;padding:12px 8px;display:flex}.app-sidebar__nav-section-label{color:var(--quiet);letter-spacing:.08em;text-transform:uppercase;margin:0 10px 6px;font-size:.68rem;font-weight:650}.app-sidebar__nav-item{width:100%;color:var(--muted);text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;padding:8px 10px;font-size:.875rem;font-weight:500;transition:background .12s,color .12s;display:flex}.app-sidebar__nav-item:hover{background:var(--surface-raised);color:var(--text)}.app-sidebar__nav-item--active{border-left:2px solid var(--accent);background:linear-gradient(90deg, #5a6b5729, #5a6b5708), var(--sidebar-hover);color:var(--text)}.app-sidebar__more{border-top:1px solid var(--line);margin-top:4px;padding:0 8px}.app-sidebar__more-toggle{width:100%;color:var(--quiet);letter-spacing:.06em;text-transform:uppercase;background:0 0;border:none;justify-content:space-between;align-items:center;padding:9px 10px;font-size:.75rem;font-weight:600;display:flex}.app-sidebar__more-toggle:hover{color:var(--muted)}.app-sidebar__chevron--open{transform:rotate(180deg)}.app-sidebar__more-nav{flex-direction:column;gap:1px;padding-bottom:8px;display:flex}.app-sidebar__more-item{width:100%;color:var(--quiet);text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:.8rem;transition:background .1s,color .1s;display:flex}.app-sidebar__more-item:hover{color:var(--muted);background:#ffffff0d}.app-sidebar__more-item--active{color:var(--accent);background:#5a6b5714}.app-sidebar__workspace{border-top:1px solid var(--line);margin-top:2px}.app-sidebar__workspace-toggle{width:100%;color:var(--quiet);letter-spacing:.07em;text-transform:uppercase;text-align:left;background:0 0;border:none;align-items:center;gap:7px;padding:8px 10px;font-size:.72rem;font-weight:650;display:flex}.app-sidebar__workspace-toggle:hover{color:var(--muted)}.app-sidebar__workspace-toggle>span:first-of-type{flex:1}.app-sidebar__workspace-items{flex-direction:column;gap:1px;padding-bottom:4px;display:flex}.app-sidebar__preview-dot{background:var(--quiet);border-radius:50%;flex-shrink:0;width:5px;height:5px;margin-left:auto}.app-sidebar__planned-dot{border:1px solid var(--muted);background:0 0;border-radius:50%;flex-shrink:0;width:5px;height:5px;margin-left:auto}.app-sidebar__more-item--planned span:not(.app-sidebar__planned-dot){color:var(--muted)}.app-sidebar__footer{border-top:1px solid var(--line);flex-direction:column;gap:8px;margin-top:auto;padding:12px 10px;display:flex}.app-sidebar__save-status{color:var(--quiet);padding:0 2px;font-size:.72rem}.app-sidebar__role-selector{border:1px solid var(--line);color:var(--quiet);background:#ffffff08;border-radius:6px;align-items:center;gap:6px;padding:5px 8px;font-size:.75rem;display:flex}.app-sidebar__role-selector select{color:var(--text);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:.78rem;font-weight:600}.app-sidebar__role-selector option{color:#11151c}.app-sidebar__role-selector strong,.app-sidebar__role-selector small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.app-sidebar__role-selector strong{color:var(--text);font-size:.78rem}.app-sidebar__role-selector small{color:var(--muted);font-size:.68rem}.app-sidebar__footer-actions{flex-direction:column;gap:3px;display:flex}.app-sidebar__footer-btn{color:var(--muted);text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:7px;padding:6px 8px;font-size:.78rem;transition:background .1s;display:flex}.app-sidebar__footer-btn:hover{background:var(--surface-raised);color:var(--text)}.app-sidebar__footer-btn--muted{color:var(--quiet)}.app-main{background:0 0;flex:1;width:auto;min-width:0;max-width:100%;min-height:100vh;margin-left:232px;overflow-x:clip}.app-mobile-bar,.app-sidebar__backdrop{display:none}.job-lifecycle-spine__stage.is-clickable{cursor:pointer;text-align:left}button.job-lifecycle-spine__stage{border:1px solid var(--line);width:100%;color:inherit;font:inherit}button.job-lifecycle-spine__stage.is-active{border-color:#5a6b5773}.job-workspace-tabs{flex-wrap:nowrap;overflow-x:auto}.performance-rank-list__row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.admin-sections{flex-direction:column;gap:12px;max-width:640px;display:flex}.admin-section-card{border:1px solid var(--line);background:var(--panel);border-radius:14px;padding:20px 22px}.admin-section-card__header{align-items:flex-start;gap:14px;display:flex}.admin-section-card__icon{color:var(--accent);flex-shrink:0;margin-top:2px}.admin-section-card__header h3{margin:0 0 3px;font-size:.95rem;font-weight:600}.admin-section-card__header p{color:var(--muted);margin:0;font-size:.82rem}.admin-section-card__header .badge{flex-shrink:0;margin-left:auto}.admin-section-card__body{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.admin-role-mapping-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:16px;display:grid}.admin-engine-list,.admin-role-template-list{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.admin-engine-list li,.admin-role-template-list article{border:1px solid var(--line);border-radius:var(--radius-button);background:var(--surface-inset);gap:4px;padding:10px 12px;display:grid}.admin-engine-list li{grid-template-columns:minmax(0,1fr) auto;align-items:center}.admin-engine-list strong,.admin-role-template-list strong{color:var(--text);font-size:.86rem}.admin-engine-list span,.admin-role-template-list span,.admin-role-template-list small{color:var(--muted);text-transform:capitalize;font-size:.76rem}@media (width<=760px){.admin-role-mapping-grid{grid-template-columns:1fr}}.texture-layer{z-index:-1;opacity:.36;background-image:radial-gradient(circle at 20% 12%,#5a6b5714,#0000 22%),linear-gradient(135deg,#ffffff09 0 1px,#0000 1px 12px),linear-gradient(45deg,#ffffff05 0 1px,#0000 1px 10px);background-size:100% 100%,18px 18px,22px 22px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000000eb,#0000 82%);mask-image:linear-gradient(#000000eb,#0000 82%)}.portal-loading{place-items:center;min-height:78vh;padding:24px;display:grid}.portal-loading article{border:1px solid var(--line);background:var(--panel);width:min(520px,100%);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(24px)saturate(140%);backdrop-filter:blur(24px)saturate(140%);border-radius:28px;padding:24px}.portal-loading h1{letter-spacing:0;margin:6px 0 10px;font-size:clamp(2rem,4vw,3.2rem)}.portal-loading p{color:var(--muted);margin:0}.topbar,.operations-overview,.today-panel,.weather-panel,.chat-dialog,.portal-card{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(24px)saturate(140%);backdrop-filter:blur(24px)saturate(140%)}.topbar{z-index:5;border-radius:28px;grid-template-columns:auto minmax(280px,1fr) auto;align-items:center;gap:18px;min-height:72px;padding:12px;display:grid;position:sticky;top:14px}.brand-lockup,.topbar__center,.topbar__actions,.context-pill,.search-field,.profile-button,.weather-panel__top,.portal-card__topline,.portal-card__roles,.portal-card__status,.portal-card__actions,.chat-launcher,.chat-dialog__header,.chat-input,.add-on-card__badge{align-items:center;display:flex}.brand-lockup{gap:12px;min-width:250px}.brand-mark,.icon-button,.add-on-card__icon{place-items:center;display:grid}.brand-mark{color:#0d1615;background:linear-gradient(145deg,#7f916d,#5a6b57);border-radius:15px;width:44px;height:44px}.brand-lockup strong,.brand-lockup span{display:block}.brand-lockup strong{letter-spacing:0;font-size:1rem}.brand-lockup span,.section-heading span,.panel-kicker{color:var(--muted);font-size:.78rem}.topbar__center{justify-content:center;gap:10px;min-width:0}.context-pill,.profile-button,.search-field,.icon-button{border:1px solid var(--line);color:var(--text);background:var(--surface-raised)}.context-pill,.profile-button{white-space:nowrap;border-radius:999px;gap:8px;height:44px;padding:0 14px}.search-field{width:min(430px,100%);height:44px;color:var(--muted);border-radius:999px;gap:10px;padding:0 14px}.search-field input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0}.search-field input::placeholder{color:var(--quiet)}.topbar__actions{justify-content:flex-end;gap:8px}.icon-button{border-radius:50%;width:44px;height:44px;padding:0}.operations-overview{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr);gap:16px;margin-top:22px;padding:0;display:grid}.workspace-logo{justify-items:center;gap:8px;width:fit-content;max-width:min(420px,100%);margin:22px auto 0;display:grid}.workspace-logo img{object-fit:contain;width:min(220px,58vw);height:108px}.workspace-logo span{color:var(--muted);font-size:.8rem}.today-panel{background:linear-gradient(145deg, #5a6b571f, transparent 38%), var(--panel-strong);border-radius:28px;flex-direction:column;justify-content:space-between;align-self:stretch;min-height:320px;padding:24px;display:flex}.today-panel h2,.weather-panel h2,.chat-dialog h2,.section-heading h2{letter-spacing:0;margin:4px 0 0;font-size:1.35rem}.snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0;display:grid}.snapshot-grid div{border:1px solid var(--line);background:var(--surface-raised);border-radius:20px;min-height:98px;padding:16px}.snapshot-grid strong,.snapshot-grid span{display:block}.snapshot-grid strong{font-size:2rem}.snapshot-grid span{color:var(--muted);margin-top:8px;font-size:.86rem;line-height:1.35}.panel-status-list{gap:8px;display:grid}.weather-panel{background:linear-gradient(145deg, var(--warning-subtle), transparent 42%), var(--panel-strong);border-radius:28px;flex-direction:column;justify-content:space-between;min-height:320px;padding:24px;display:flex}.weather-panel__top{justify-content:space-between;gap:16px}.weather-icon{border:1px solid var(--warning-muted);width:52px;height:52px;color:var(--warning);background:var(--warning-subtle);border-radius:50%;place-items:center;display:grid}.weather-temp{margin:28px 0}.weather-temp strong,.weather-temp span{display:block}.weather-temp strong{font-size:clamp(3.2rem,6vw,5rem);line-height:.9}.weather-temp span{color:var(--muted);margin-top:10px}.weather-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.weather-details div{border:1px solid var(--line);background:#ffffff0d;border-radius:18px;min-height:70px;padding:12px}.weather-details span,.weather-details strong{display:block}.weather-details span{color:var(--quiet);font-size:.76rem}.weather-details strong{margin-top:7px;font-size:.92rem}.portal-section{margin-top:28px}.section-heading{margin-bottom:14px}.featured-grid,.portal-grid{gap:16px;display:grid}.featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.portal-card{background:linear-gradient(155deg, var(--surface-raised), #ffffff07), #16191fc7;border-radius:22px;min-height:272px;padding:18px;position:relative;overflow:hidden}.portal-card:before{content:"";border-radius:inherit;pointer-events:none;opacity:.72;background:linear-gradient(145deg,#ffffff1f,#0000 34%);position:absolute;inset:0}.portal-card>*{position:relative}.portal-card--featured{background:linear-gradient(145deg, #5a6b571f, var(--warning-subtle)), #181b20d1;min-height:290px}.portal-card__topline{justify-content:space-between;gap:12px}.portal-card__label{color:var(--quiet);text-transform:uppercase;letter-spacing:.08em;font-size:.74rem}.portal-card__roles{flex-wrap:wrap;gap:7px}.role-badge{min-height:28px;color:var(--text-secondary);background:var(--surface-raised);white-space:nowrap;border:1px solid #ffffff1f;border-radius:999px;align-items:center;padding:5px 9px;font-size:.75rem;display:inline-flex}.portal-card__body{margin-top:22px}.portal-card__body--button{width:100%;color:inherit;text-align:left;background:0 0;border:0;padding:0;display:block}.portal-card__body h2{letter-spacing:0;margin:0;font-size:clamp(1.2rem,1.7vw,1.65rem)}.portal-card__body p{color:var(--muted);margin:12px 0 0;font-size:.94rem;line-height:1.48}.portal-card__status{flex-wrap:wrap;gap:7px;margin-top:18px}.status-indicator{border:1px solid var(--line);min-height:28px;color:var(--text-secondary);background:var(--surface-raised);border-radius:999px;align-items:center;gap:7px;padding:5px 9px;font-size:.75rem;display:inline-flex}.status-dot{background:var(--muted);border-radius:999px;width:7px;height:7px}.portal-card__actions{gap:9px;margin-top:20px}.portal-action{border:1px solid var(--line);min-width:0;min-height:42px;color:var(--text);background:var(--surface-raised);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.portal-action--input{color:#fff;background:linear-gradient(145deg,#7f916d,#5a6b57);border-color:#0000}.portal-action--review{background:var(--surface-raised)}.portal-action--ask,.portal-action--add{color:var(--text);border-color:var(--line);background:var(--btn-secondary-bg)}.add-on-card{border-style:dashed;border-color:var(--warning-muted);background:linear-gradient(145deg, var(--warning-subtle), var(--surface-inset)), #14161bad}.add-on-card__badge{border:1px solid var(--warning-muted);width:fit-content;min-height:32px;color:var(--warning);background:var(--warning-subtle);border-radius:999px;gap:8px;padding:6px 10px;font-size:.78rem}.add-on-card__icon{border:1px solid var(--warning-muted);width:44px;height:44px;color:var(--warning);background:var(--warning-subtle);border-radius:50%;position:absolute;top:18px;right:18px}.chat-launcher{right:max(18px, env(safe-area-inset-right));z-index:10;min-height:48px;color:var(--brand-stone);background:linear-gradient(145deg, #2b2f36f5, #0d0f10f5), var(--panel);border:1px solid #5a6b5757;border-radius:999px;gap:9px;padding:0 18px;position:fixed;bottom:24px;box-shadow:0 18px 42px #0000006b,inset 0 0 0 1px #5a6b571f}.chat-launcher span{color:var(--accent);letter-spacing:.01em;font-weight:800}.demo-data-control{z-index:10;border:1px solid var(--line);min-height:44px;color:var(--muted);background:linear-gradient(145deg, var(--surface-raised), var(--surface-inset)), #16191fe0;-webkit-backdrop-filter:blur(22px)saturate(140%);backdrop-filter:blur(22px)saturate(140%);border-radius:999px;align-items:center;gap:9px;padding:7px 8px 7px 13px;display:flex;position:fixed;bottom:24px;left:clamp(16px,3vw,36px);box-shadow:0 18px 42px #00000042}.demo-data-control span{white-space:nowrap;font-size:.8rem}.demo-data-control button{min-height:32px;color:var(--text);background:var(--surface-raised);border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:7px;padding:0 11px;display:inline-flex}.demo-user-selector{background:var(--surface-hover);border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:7px;min-height:32px;padding:0 9px;display:inline-flex}.demo-user-selector span{color:var(--quiet);font-size:.72rem}.demo-user-selector select{color:var(--text);background:0 0;border:0;outline:none;font-size:.8rem;font-weight:700}.demo-user-selector option{color:#11151c}.demo-walkthrough-launch{z-index:10;border:1px solid var(--warning-muted);min-height:42px;color:var(--warning);background:linear-gradient(145deg, var(--warning-muted), var(--surface-hover)), #16191fe6;-webkit-backdrop-filter:blur(22px)saturate(140%);backdrop-filter:blur(22px)saturate(140%);border-radius:999px;align-items:center;gap:8px;padding:0 14px;display:inline-flex;position:fixed;bottom:78px;left:calc(220px + clamp(16px,2vw,24px));box-shadow:0 18px 42px #00000042}.demo-walkthrough{z-index:12;border:1px solid var(--warning-muted);width:min(430px,100vw - 32px);color:var(--text);background:linear-gradient(145deg, var(--warning-subtle), #5a6b570f), #16191ff5;-webkit-backdrop-filter:blur(24px)saturate(150%);backdrop-filter:blur(24px)saturate(150%);border-radius:24px;padding:16px;position:fixed;bottom:78px;left:calc(220px + clamp(16px,2vw,24px));box-shadow:0 24px 70px #0000006b}.demo-walkthrough__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.demo-walkthrough h2{margin:4px 0 0;font-size:1.35rem}.demo-walkthrough p{color:var(--muted);margin:14px 0;line-height:1.45}.demo-highlight-note{color:var(--text-secondary);background:var(--accent-subtle);border:1px solid #5a6b5747;border-radius:18px;align-items:flex-start;gap:10px;padding:12px;display:flex}.demo-highlight-note svg{color:var(--accent);flex:none;margin-top:1px}.demo-step-dots{gap:7px;margin:14px 0;display:flex}.demo-step-dots button{background:#ffffff24;border:0;border-radius:999px;width:100%;height:7px}.demo-step-dots button.is-active{background:var(--accent)}.demo-walkthrough__actions{grid-template-columns:.8fr 1.4fr .8fr;gap:8px;display:grid}.demo-walkthrough__actions .portal-command{min-height:48px;padding:0 12px}.demo-walkthrough__actions .portal-command:disabled{opacity:.45}.chat-dialog{z-index:11;background:linear-gradient(145deg,#ffffff17,#ffffff08),#16191ff0;border-radius:24px;width:min(390px,100vw - 32px);padding:16px;position:fixed;bottom:86px;right:clamp(16px,3vw,36px)}.chat-dialog__header{justify-content:space-between;gap:12px}.chat-dialog__body{border:1px solid var(--line);color:var(--muted);background:var(--surface-hover);border-radius:18px;margin:18px 0;padding:14px}.chat-dialog__body p{margin:0;font-size:.92rem;line-height:1.45}.chat-message{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;padding:10px 12px}.chat-message--user{color:var(--text);background:#5a6b571c}.chat-input{border:1px solid var(--line);background:var(--surface-raised);border-radius:999px;gap:8px;height:46px;padding:0 7px 0 14px}.chat-input input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1}.chat-input button{color:#fff;background:var(--accent);border:0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.admin-links{justify-content:center;gap:14px;margin-top:24px;padding-bottom:22px;display:flex}.admin-links button{color:var(--quiet);text-underline-offset:4px;background:0 0;border:0;font-size:.78rem;text-decoration:underline}.portal-page{gap:18px;display:grid}.portal-page__header,.crm-toolbar,.crm-status-card,.pipeline-column,.lead-card,.crm-table-wrap,.slide-over__panel,.intake-section,.upload-dropzone{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(24px)saturate(140%);backdrop-filter:blur(24px)saturate(140%)}.portal-page__header{border-radius:28px;grid-template-columns:1fr;align-items:start;gap:16px;padding:18px;display:grid}.portal-page__header--with-back{grid-template-columns:auto minmax(220px,1fr)}.portal-page__header h1{letter-spacing:0;margin:4px 0 0;font-size:clamp(2rem,4vw,3.6rem);line-height:1}.portal-page__header p{color:var(--muted);margin:10px 0 0}.back-button,.portal-command,.view-toggle button{border:1px solid var(--line);min-height:42px;color:var(--text);background:var(--surface-raised);border-radius:999px;justify-content:center;align-items:center;gap:8px;display:inline-flex}.back-button{padding:0 14px}.portal-page__actions{flex-wrap:wrap;grid-column:1/-1;gap:9px;display:flex}.portal-search{border:1px solid var(--line);min-height:44px;color:var(--muted);background:var(--surface-raised);border-radius:999px;flex:320px;align-items:center;gap:10px;padding:0 14px;display:flex}.portal-search input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0}.portal-command{padding:0 14px}.portal-command--primary{color:#fff;background:linear-gradient(145deg,#7f916d,#5a6b57);border-color:#0000}.crm-status-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.crm-status-card{min-height:132px;color:var(--text);text-align:left;border-radius:22px;gap:9px;padding:16px;display:grid}.crm-status-card>span{color:var(--muted);font-size:.84rem}.crm-status-card strong{font-size:2.15rem;line-height:1}.crm-status-card div{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.crm-status-card small{color:var(--quiet)}.crm-status-card.is-active{background:linear-gradient(145deg, #5a6b571f, var(--surface-inset)), #16191fc7;border-color:#5a6b5773}.crm-toolbar{border-radius:24px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.crm-toolbar h2{margin:4px 0 0;font-size:1.3rem}.view-toggle{border:1px solid var(--line);background:var(--surface-hover);border-radius:999px;gap:6px;padding:5px;display:flex}.view-toggle button{background:0 0;border-color:#0000;min-height:36px;padding:0 12px}.view-toggle button.is-active{color:#fff;background:var(--accent)}.pipeline-board{grid-auto-columns:minmax(278px,1fr);grid-auto-flow:column;gap:12px;padding-bottom:10px;display:grid;overflow-x:auto}.pipeline-column{background:#16191fa8;border-radius:22px;min-height:340px;padding:12px}.pipeline-column__header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.pipeline-column__header h3{margin:0;font-size:.92rem}.pipeline-column__header span{border:1px solid var(--line);width:28px;height:28px;color:var(--muted);border-radius:50%;place-items:center;font-size:.78rem;display:grid}.pipeline-column__cards{gap:10px;display:grid}.lead-card{background:linear-gradient(155deg, #ffffff12, var(--surface-inset)), var(--surface-hover);border-radius:18px;padding:13px}.lead-card__top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.lead-card h3{margin:0;font-size:1rem}.lead-card__top span,.lead-card p,.lead-card__next{color:var(--muted);font-size:.82rem}.lead-card p{margin:10px 0;line-height:1.35}.lead-card__meta{flex-wrap:wrap;gap:7px;display:flex}.lead-card__meta span{border:1px solid var(--line);color:var(--text-secondary);background:#ffffff0d;border-radius:999px;padding:5px 8px;font-size:.75rem}.lead-card__next{border-top:1px solid var(--line);margin-top:10px;padding-top:10px}.crm-table-wrap{border-radius:24px;overflow-x:auto}.crm-table{border-collapse:collapse;width:100%;min-width:1180px}.crm-table th,.crm-table td{border-bottom:1px solid var(--line);text-align:left;padding:13px 14px;font-size:.86rem}.crm-table th{color:var(--muted);font-weight:600}.crm-table td{color:var(--text-secondary)}.slide-over{z-index:20;background:#0000006b;justify-content:flex-end;display:flex;position:fixed;inset:0}.slide-over__panel{background:linear-gradient(145deg, var(--surface-raised), var(--surface-inset)), #121418f5;border-radius:28px 0 0 28px;width:min(760px,100%);height:100%;padding:18px;overflow-y:auto}.slide-over__header,.slide-over__footer{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.slide-over__header h2{margin:4px 0 0;font-size:1.8rem}.slide-over__header p{color:var(--muted);margin:8px 0 0}.intake-sections{gap:12px;margin-top:18px;display:grid}.intake-section{background:var(--surface-hover);border-radius:20px;padding:14px}.intake-section h3{margin:0 0 12px;font-size:1rem}.intake-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.intake-grid label{gap:6px;display:grid}.intake-grid span{color:var(--muted);font-size:.78rem}.intake-grid input{border:1px solid var(--line);width:100%;min-height:42px;color:var(--text);background:var(--surface-raised);border-radius:14px;padding:0 12px}.upload-dropzone{color:var(--muted);background:var(--surface-inset);border-style:dashed;border-radius:20px;align-items:center;gap:12px;margin-top:12px;padding:16px;display:flex}.upload-dropzone strong,.upload-dropzone span{display:block}.upload-dropzone strong{color:var(--text)}.slide-over__footer{justify-content:flex-end;margin-top:16px}.estimate-card__open{border:1px solid var(--line);width:100%;min-height:36px;color:var(--text);background:var(--surface-raised);border-radius:999px;margin-top:10px}.estimate-calendar,.estimate-workspace{gap:14px;display:grid}.estimate-calendar{grid-template-columns:repeat(4,minmax(0,1fr))}.calendar-day,.estimate-nav,.estimate-builder,.ai-estimator-panel,.job-packet-list,.document-packet,.document-issues-panel,.job-packet-card,.document-category-card,.contract-preview,.pm-jobs-board,.pm-detail-panel,.pm-card{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(24px)saturate(140%);backdrop-filter:blur(24px)saturate(140%)}.calendar-day{border-radius:22px;min-height:220px;padding:14px}.calendar-day h3{margin:0 0 12px;font-size:1rem}.calendar-day button{border:1px solid var(--line);width:100%;color:var(--text);text-align:left;background:var(--surface-raised);border-radius:16px;gap:5px;margin-top:8px;padding:12px;display:grid}.calendar-day button span{color:var(--muted);font-size:.8rem}.estimate-workspace{grid-template-columns:220px minmax(0,1fr) 300px;align-items:start}.estimate-nav,.estimate-builder,.ai-estimator-panel{border-radius:24px}.estimate-nav{gap:6px;padding:14px;display:grid}.estimate-nav button{min-height:38px;color:var(--muted);text-align:left;background:0 0;border:1px solid #0000;border-radius:14px}.estimate-nav button.is-active{color:var(--text);background:#5a6b5717;border-color:#5a6b5752}.estimate-builder,.ai-estimator-panel{padding:16px}.estimate-builder__header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.estimate-builder__header h2,.ai-estimator-panel h3{margin:4px 0 0}.estimate-builder__header p,.ai-estimator-panel p{color:var(--muted);margin:8px 0 0}.pricing-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.pricing-summary div{border:1px solid var(--line);background:#ffffff0d;border-radius:18px;min-height:96px;padding:14px}.pricing-summary span,.pricing-summary strong{display:block}.pricing-summary span{color:var(--muted);font-size:.8rem}.pricing-summary strong{margin-top:12px;font-size:1.35rem}.pricing-lines{gap:8px;margin-top:14px;display:grid}.pricing-lines>div{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;justify-content:space-between;gap:12px;padding:12px;display:flex}.pricing-lines span{color:var(--muted);margin-top:4px;font-size:.8rem;display:block}.ai-suggestion-list{gap:8px;margin:16px 0;display:grid}.documents-control-room{grid-template-columns:300px minmax(0,1fr) 320px;align-items:start;gap:14px;display:grid}.job-packet-list,.document-packet,.document-issues-panel{border-radius:24px;padding:14px}.packet-heading h2,.document-issues-panel h3,.document-inbox h3{margin:4px 0 12px;font-size:1.15rem}.job-packet-list{gap:10px;display:grid}.job-packet-card{width:100%;color:var(--text);text-align:left;background:var(--surface-hover);border-radius:18px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;display:flex}.job-packet-card.is-active{background:#5a6b5714;border-color:#5a6b576b}.job-packet-card strong,.job-packet-card span{display:block}.job-packet-card span{color:var(--muted);margin-top:5px;font-size:.8rem}.packet-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:16px;display:grid}.packet-summary div{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;min-height:82px;padding:12px}.packet-summary span,.packet-summary strong{display:block}.packet-summary span{color:var(--muted);text-transform:capitalize;font-size:.76rem}.packet-summary strong{margin-top:10px;font-size:.95rem}.document-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.document-category-card{background:var(--surface-hover);border-radius:18px;padding:13px}.document-category-card>div{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.document-category-card h3{margin:0;font-size:.98rem}.document-category-card p{color:var(--muted);margin:10px 0;font-size:.84rem}.document-category-card footer{color:var(--quiet);justify-content:space-between;gap:8px;font-size:.76rem;display:flex}.document-issues-panel p{color:var(--muted);line-height:1.45}.document-inbox{gap:9px;margin-top:18px;display:grid}.document-inbox article{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;gap:6px;padding:11px;display:grid}.document-inbox span{color:var(--muted);font-size:.8rem}.document-inbox button{border:1px solid var(--line);width:fit-content;min-height:32px;color:var(--text);background:var(--surface-raised);border-radius:999px;padding:0 10px}.contract-preview{background:var(--surface-hover);border-radius:20px;align-items:center;gap:12px;margin-top:12px;padding:16px;display:flex}.contract-preview strong,.contract-preview span{display:block}.contract-preview span{color:var(--muted);margin-top:4px}.pm-command-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);align-items:start;gap:14px;display:grid}.pm-jobs-board,.pm-detail-panel,.pm-card{border-radius:24px;padding:14px}.pm-job-list{gap:9px;display:grid}.pm-job-row{border:1px solid var(--line);width:100%;min-height:62px;color:var(--text);text-align:left;background:var(--surface-hover);border-radius:18px;grid-template-columns:80px minmax(150px,1fr) minmax(130px,.8fr) 70px 90px repeat(3,auto);align-items:center;gap:10px;padding:10px 12px;display:grid}.pm-job-row.is-active{background:#5a6b5714;border-color:#5a6b576b}.pm-job-row>span{color:var(--muted);font-size:.82rem}.pm-detail-panel h2{margin:4px 0 0;font-size:1.4rem}.pm-detail-panel p,.pm-ai-note{color:var(--muted);line-height:1.45}.pm-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.pm-detail-grid div{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;min-height:72px;padding:11px}.pm-detail-grid span,.pm-detail-grid strong{display:block}.pm-detail-grid span{color:var(--quiet);font-size:.75rem}.pm-detail-grid strong{margin-top:6px;font-size:.88rem}.pm-detail-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.pm-approval-workspace{grid-template-columns:minmax(0,1.1fr) minmax(280px,.65fr);align-items:start;gap:14px;display:grid}.pm-review-card{grid-row:span 2}.pm-review-summary,.pm-review-stat-grid{gap:9px;display:grid}.pm-review-summary{grid-template-columns:repeat(3,minmax(0,1fr));margin:14px 0}.pm-review-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.pm-review-summary div,.pm-review-stat-grid div,.pm-review-decision{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;min-height:76px;padding:12px}.pm-review-summary span,.pm-review-summary strong,.pm-review-stat-grid span,.pm-review-stat-grid strong{display:block}.pm-review-summary span,.pm-review-stat-grid span{color:var(--quiet);font-size:.76rem}.pm-review-summary strong,.pm-review-stat-grid strong{margin-top:7px}.pm-review-decision{margin-top:14px}.pm-review-decision h3{margin-bottom:0}.pm-review-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.pm-review-actions .portal-command{min-height:60px;font-weight:800}.pm-review-actions .portal-command:disabled{opacity:.45}.pm-review-blockers{min-height:auto}.pm-review-detail-page{padding-bottom:90px}.pm-review-detail-hero,.pm-review-detail-grid,.pm-review-decision-grid{gap:14px;display:grid}.pm-review-detail-hero,.pm-review-decision-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}.pm-review-impact-grid,.pm-review-mini-grid{gap:9px;margin-top:14px;display:grid}.pm-review-impact-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pm-review-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-review-impact-grid div,.pm-review-mini-grid div{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;min-height:86px;padding:12px}.pm-review-impact-grid span,.pm-review-impact-grid strong,.pm-review-mini-grid span,.pm-review-mini-grid strong{display:block}.pm-review-impact-grid span,.pm-review-mini-grid span{color:var(--quiet);font-size:.76rem}.pm-review-impact-grid strong,.pm-review-mini-grid strong{margin-top:9px;font-size:1.15rem}.pm-review-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pm-review-detail-grid .pm-card{min-height:auto}.pm-review-note{gap:8px;display:grid}.pm-review-note span{color:var(--muted);font-size:.82rem}.pm-review-note textarea{border:1px solid var(--line);width:100%;min-height:128px;color:var(--text);background:var(--surface-raised);resize:vertical;border-radius:18px;padding:14px;line-height:1.45}.pm-bento-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.pm-card{min-height:260px}.pm-card h3{margin:4px 0 12px;font-size:1.12rem}.pm-card:first-child,.pm-card:nth-child(2){grid-column:span 2}.pm-checklist,.pm-action-list,.pm-simple-list{gap:9px;display:grid}.pm-checklist div,.pm-action-list>div,.pm-simple-list>div{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;padding:11px}.pm-checklist strong,.pm-checklist span,.pm-action-list strong,.pm-action-list span,.pm-simple-list strong,.pm-simple-list span{display:block}.pm-checklist strong,.pm-action-list strong,.pm-simple-list strong{margin-top:7px}.pm-checklist span,.pm-action-list span,.pm-simple-list span{color:var(--muted);margin-top:4px;font-size:.82rem}.pm-action-list p{color:var(--muted);margin:8px 0;font-size:.84rem}.pm-action-list footer{gap:8px;display:flex}.pm-action-list footer button{border:1px solid var(--line);min-height:32px;color:var(--text);background:var(--surface-raised);border-radius:999px;padding:0 10px}.pm-pricing{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-performance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.pm-performance-grid div{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;min-height:88px;padding:12px}.pm-performance-grid span,.pm-performance-grid strong{display:block}.pm-performance-grid span{color:var(--muted);font-size:.78rem}.pm-performance-grid strong{margin-top:10px;font-size:1.3rem}.job-tabs{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.job-tabs button{border:1px solid var(--line);min-height:36px;color:var(--text);background:var(--surface-raised);border-radius:999px;padding:0 11px}.performance-hero,.performance-grid{gap:14px;display:grid}.performance-hero{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}.performance-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.7fr)}.performance-main-card h2{margin:4px 0 14px;font-size:clamp(1.7rem,3vw,2.8rem)}.performance-rank-list{gap:9px;display:grid}.performance-rank-list button{border:1px solid var(--line);min-height:58px;color:var(--text);text-align:left;background:var(--surface-hover);border-radius:16px;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;display:grid}.performance-rank-list button.is-active{background:#5a6b5714;border-color:#5a6b576b}.performance-rank-list span{color:var(--muted);font-size:.84rem}.performance-table-wrap{box-shadow:none;margin-top:12px}.executive-tabs{border:1px solid var(--line);background:var(--surface-hover);border-radius:999px;gap:8px;padding:6px;display:flex;overflow-x:auto}.executive-tabs button{min-height:38px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:999px;flex:none;padding:0 13px}.executive-tabs button.is-active{color:#fff;background:var(--accent)}.executive-overview-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:14px;display:grid}.executive-chart-card{min-width:0}.executive-line-chart{width:100%;min-height:180px;margin:8px 0 2px;overflow:visible}.executive-line-chart__grid{fill:none;stroke:#ffffff2e;stroke-width:1px}.executive-line-chart__line{fill:none;stroke:var(--accent);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.executive-line-chart__dot{fill:var(--accent);stroke:#fff;stroke-width:2px}.executive-line-chart text{fill:var(--muted);font-size:.64rem}.executive-bar-stack{gap:12px;margin-top:14px;display:grid}.executive-bar-row{gap:7px;display:grid}.executive-bar-row__label{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.executive-bar-row__label strong,.executive-bar-row__label span{display:block}.executive-bar-row__label span{color:var(--muted);font-size:.78rem}.executive-bar-row__track{border:1px solid var(--line);background:var(--surface-raised);border-radius:999px;height:10px;overflow:hidden}.executive-bar-row__track span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--warning));height:100%;display:block}.executive-health-card h2{margin:4px 0 14px;font-size:clamp(1.7rem,3vw,2.6rem)}.company-health-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.company-health-grid div{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;min-height:96px;padding:12px}.company-health-grid span,.company-health-grid strong{display:block}.company-health-grid span{color:var(--muted);font-size:.78rem}.company-health-grid strong{margin:9px 0;font-size:1.25rem}.executive-brief-card{background:linear-gradient(145deg, #5a6b5717, var(--warning-subtle)), #16191fc7}.executive-card-top{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.executive-card-top h3{margin:4px 0 0}.executive-list-card{min-height:auto}.permission-card{border-color:var(--warning-muted);background:linear-gradient(145deg, var(--warning-subtle), var(--surface-inset)), #16191fc7}.procurement-tabs{border-radius:24px}.procurement-overview{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:14px;display:grid}.dispatch-command-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start;gap:14px;display:grid}.dispatch-board-card{min-height:100%}.dispatch-job-grid{gap:10px;display:grid}.dispatch-job-grid button{border:1px solid var(--line);width:100%;min-height:74px;color:var(--text);text-align:left;background:var(--surface-hover);border-radius:18px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;display:flex}.dispatch-job-grid button.is-active{background:#5a6b5714;border-color:#5a6b576b}.dispatch-job-grid strong,.dispatch-job-grid span{display:block}.dispatch-job-grid span{color:var(--muted);margin-top:5px;font-size:.82rem}.schedule-board-grid{grid-template-columns:repeat(4,minmax(260px,1fr));gap:12px;display:grid;overflow-x:auto}.map-placeholder{border:1px solid var(--line);min-height:360px;color:var(--muted);background:linear-gradient(var(--surface-inset) 1px, transparent 1px), linear-gradient(90deg, #ffffff08 1px, transparent 1px), var(--surface-hover);text-align:center;background-size:34px 34px;border-radius:22px;place-items:center;gap:12px;display:grid}.field-ops-page .pm-card:first-child,.field-ops-page .pm-card:nth-child(2){grid-column:auto}.field-hero,.field-command-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:stretch;gap:14px;display:grid}.field-greeting-card,.field-ai-priorities,.field-active-job,.field-readiness-card{background:linear-gradient(145deg, #5a6b5714, var(--warning-subtle)), #16191fc7;min-height:auto}.field-greeting-card h2{margin:5px 0 10px;font-size:clamp(1.8rem,3vw,3rem);line-height:1}.field-greeting-card p,.field-muted{color:var(--muted);line-height:1.45}.field-hero-details,.field-planned-actual,.field-report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px;display:grid}.field-hero-details div,.field-planned-actual div,.field-report-grid div{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;min-height:74px;padding:12px}.field-hero-details span,.field-hero-details strong,.field-planned-actual span,.field-planned-actual strong{display:block}.field-hero-details span,.field-planned-actual span{color:var(--quiet);font-size:.76rem}.field-hero-details strong,.field-planned-actual strong{margin-top:7px;font-size:.94rem}.field-priority-list button{min-height:86px}.field-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.foreman-report-flow{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:start;gap:14px;display:grid}.foreman-report-panel{grid-row:span 2}.foreman-step-strip{grid-template-columns:repeat(8,minmax(112px,1fr));gap:8px;margin:18px 0;padding-bottom:4px;display:grid;overflow-x:auto}.foreman-step-pill{border:1px solid var(--line);min-height:76px;color:var(--muted);text-align:left;background:var(--surface-hover);border-radius:18px;gap:7px;padding:12px;display:grid}.foreman-step-pill span{width:25px;height:25px;color:var(--quiet);background:var(--surface-raised);border-radius:999px;place-items:center;font-size:.78rem;display:grid}.foreman-step-pill strong{color:inherit;font-size:.9rem;line-height:1.15}.foreman-step-pill.is-active{color:var(--text);background:linear-gradient(145deg, #5a6b572b, var(--surface-raised)), var(--surface-raised);border-color:#5a6b5780}.foreman-step-pill.is-active span{color:#fff;background:var(--good-subtle)}.foreman-active-step{border:1px solid var(--line);background:linear-gradient(145deg, var(--surface-raised), #5a6b5712), var(--surface-inset);border-radius:24px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:15px;min-height:210px;padding:18px;display:grid}.foreman-active-step__icon{width:64px;height:64px;color:var(--accent);background:#5a6b571f;border-radius:21px;place-items:center;display:grid}.foreman-active-step h2{letter-spacing:0;margin:4px 0 8px;font-size:clamp(1.85rem,3vw,2.75rem);line-height:1}.foreman-active-step p{max-width:780px;color:var(--muted);margin:0 0 14px;line-height:1.5}.foreman-big-actions{grid-template-columns:.7fr 1.4fr .7fr;gap:10px;margin-top:14px;display:grid}.foreman-big-actions .portal-command{min-height:62px;font-weight:800}.foreman-big-actions .portal-command:disabled{opacity:.45}.foreman-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px;display:grid}.foreman-summary-grid div{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;min-height:82px;padding:13px}.foreman-summary-grid span,.foreman-summary-grid strong{display:block}.foreman-summary-grid span{color:var(--quiet);font-size:.78rem}.foreman-summary-grid strong{color:var(--text);margin-top:9px;font-size:1.06rem}.foreman-blockers{gap:8px;margin-top:12px;display:grid}.foreman-blockers button,.foreman-no-blockers{border:1px solid var(--line);min-height:58px;color:var(--text);background:var(--surface-raised);border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.foreman-blockers button span,.foreman-no-blockers span{color:var(--muted);font-size:.85rem}.foreman-blockers button:disabled,.performance-rank-list button:disabled,.portal-command:disabled,.field-detail-actions button:disabled,.office-packet-section-grid button:disabled{opacity:.6;cursor:not-allowed}.foreman-no-blockers{color:var(--accent);justify-content:flex-start}.field-command-grid .pm-card,.field-ops-page .performance-grid .pm-card{min-height:auto}.field-connected-list,.field-message-list{gap:9px;display:grid}.field-connected-list div{border:1px solid var(--line);min-height:44px;color:var(--text-secondary);background:var(--surface-hover);border-radius:15px;align-items:center;gap:9px;padding:10px 11px;display:flex}.field-connected-list svg{color:var(--accent)}.field-workflow-grid{grid-template-columns:repeat(7,minmax(180px,1fr));gap:12px;padding-bottom:4px;display:grid;overflow-x:auto}.field-step-card{grid-template-columns:auto minmax(0,1fr);gap:12px;min-width:180px;display:grid}.field-step-number{color:#fff;background:var(--accent);border-radius:50%;place-items:center;width:36px;height:36px;font-weight:800;display:grid}.field-step-card p,.field-photo-card p,.field-readiness-card p{color:var(--muted);line-height:1.45}.field-photo-card{gap:8px;min-height:190px;display:grid}.field-photo-card svg{color:var(--accent)}.field-message-list div{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;gap:4px;padding:11px;display:grid}.field-message-list span{color:var(--text-secondary);font-size:.88rem}.field-message-list small{color:var(--quiet)}.field-capture-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.field-readiness-score{aspect-ratio:1;background:radial-gradient(circle at center, #5a6b5729, #ffffff08 58%), conic-gradient(var(--accent) 0 82%, #ffffff1a 82% 100%);width:min(220px,58vw);color:var(--text);border:1px solid #5a6b5757;border-radius:50%;place-items:center;margin:12px auto;font-size:clamp(2.4rem,6vw,4rem);font-weight:800;display:grid}.field-detail-open-button{width:100%;min-height:54px;margin-top:10px}.field-report-detail-page{padding-bottom:90px}.field-detail-hero,.field-detail-grid{gap:14px;display:grid}.field-detail-hero{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}.field-report-progress{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:14px;display:grid}.field-report-progress div{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;min-height:88px;padding:12px}.field-report-progress span,.field-report-progress strong{display:block}.field-report-progress span{color:var(--quiet);font-size:.78rem}.field-report-progress strong{margin-top:10px;font-size:1.35rem}.field-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.field-detail-card{gap:12px;min-height:auto;display:grid}.field-detail-input,.field-detail-textarea{gap:8px;display:grid}.field-detail-input span,.field-detail-textarea span{color:var(--muted);font-size:.82rem}.field-detail-input input,.field-detail-textarea textarea{border:1px solid var(--line);width:100%;color:var(--text);background:var(--surface-raised);border-radius:18px}.field-detail-input input{min-height:58px;padding:0 14px;font-size:1.35rem;font-weight:800}.field-detail-textarea textarea{resize:vertical;min-height:128px;padding:14px;line-height:1.45}.field-detail-two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.field-detail-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.field-detail-actions button,.field-detail-blockers button,.field-detail-blockers div,.field-signature-toggle{border:1px solid var(--line);min-height:56px;color:var(--text);background:var(--surface-raised);border-radius:18px;padding:12px}.field-detail-actions button{justify-content:center;align-items:center;gap:8px;font-weight:800;display:inline-flex}.field-detail-blockers{gap:9px;display:grid}.field-detail-blockers button,.field-detail-blockers div{text-align:left;justify-content:space-between;align-items:center;gap:10px;display:flex}.field-detail-blockers span,.field-signature-toggle span{color:var(--muted);font-size:.84rem}.field-signature-toggle{text-align:left;gap:8px;display:grid}.field-signature-toggle svg{color:var(--quiet)}.field-signature-toggle.is-complete{background:#5a6b5717;border-color:#5a6b576b}.field-signature-toggle.is-complete svg{color:var(--accent)}.field-detail-review{min-height:auto}.fleet-page .pm-card:first-child,.fleet-page .pm-card:nth-child(2){grid-column:auto}.fleet-page .performance-grid .pm-card,.fleet-page .field-command-grid .pm-card{min-height:auto}.fleet-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.fleet-command-card{border-color:#5a6b5733}.fleet-board{grid-auto-columns:minmax(286px,1fr)}.fleet-asset-card{gap:10px;display:grid}.fleet-asset-photo{border:1px solid var(--line);min-height:92px;color:var(--accent);background:linear-gradient(145deg, #5a6b571f, var(--surface-inset)), var(--surface-hover);border-radius:16px;place-items:center;display:grid}.fleet-filter-row{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.fleet-filter-row button{border:1px solid var(--line);min-height:36px;color:var(--muted);background:var(--surface-raised);border-radius:999px;padding:0 12px}.fleet-library,.fleet-library-section{gap:14px;display:grid}.fleet-library-card-grid{margin-top:0}.office-page .pm-card:first-child,.office-page .pm-card:nth-child(2){grid-column:auto}.office-page .performance-grid .pm-card,.office-page .field-command-grid .pm-card{min-height:auto}.office-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.office-command-card{border-color:var(--warning-muted);background:linear-gradient(145deg, var(--warning-subtle), #5a6b570b), #16191fc7}.office-action-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.office-action-card{min-height:190px;color:var(--text);text-align:left}.office-action-card h3{margin-top:8px}.office-action-card p{color:var(--muted);line-height:1.45}.office-invoice-rollup,.office-packet-workspace{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start;gap:14px;display:grid}.office-billing-board{grid-template-columns:repeat(6,minmax(240px,1fr));gap:12px;padding-bottom:4px;display:grid;overflow-x:auto}.office-billing-column{min-height:auto}.office-job-card-list{gap:9px;display:grid}.office-job-card-list button{border:1px solid var(--line);min-height:132px;color:var(--text);text-align:left;background:var(--surface-hover);border-radius:18px;gap:6px;padding:12px;display:grid}.office-job-card-list button.is-active{background:linear-gradient(145deg, #5a6b571f, var(--surface-hover)), #ffffff0d;border-color:#5a6b577a}.office-job-card-list span,.office-job-card-list small{color:var(--muted)}.office-packet-builder{grid-row:span 2}.office-packet-section-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px;display:grid}.office-packet-section-grid button{border:1px solid var(--line);min-height:98px;color:var(--text);text-align:left;background:var(--surface-hover);border-radius:16px;gap:7px;padding:12px;display:grid}.office-packet-section-grid span,.office-ai-readiness p,.office-preview-grid p{color:var(--muted);line-height:1.45}.office-action-stack{gap:9px;display:grid}.office-action-stack .portal-command{justify-content:flex-start;min-height:54px}.office-packet-preview{gap:14px;display:grid}.office-preview-cover,.office-preview-grid{gap:10px;display:grid}.office-preview-cover{grid-template-columns:repeat(4,minmax(0,1fr));margin:14px 0}.office-preview-cover div,.office-preview-grid section{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;min-height:92px;padding:13px}.office-preview-cover span,.office-preview-cover strong{display:block}.office-preview-cover span{color:var(--quiet);font-size:.78rem}.office-preview-cover strong{margin-top:9px}.office-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.office-preview-grid h4{margin:0 0 8px}.office-packet-detail-page{padding-bottom:90px}.office-packet-detail-hero,.office-packet-detail-actions{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start;gap:14px;display:grid}.office-packet-detail-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:14px;display:grid}.office-packet-detail-stats div{border:1px solid var(--line);background:var(--surface-hover);border-radius:16px;min-height:86px;padding:12px}.office-packet-detail-stats span,.office-packet-detail-stats strong{display:block}.office-packet-detail-stats span{color:var(--quiet);font-size:.76rem}.office-packet-detail-stats strong{margin-top:9px;font-size:1.12rem}.office-packet-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.office-packet-detail-section{min-height:auto}.office-packet-detail-section p{color:var(--muted);line-height:1.45}.office-packet-detail-section .portal-command{width:100%;margin-top:8px}.office-packet-detail-actions .pm-card{min-height:auto}.knowledge-page .pm-card:first-child,.knowledge-page .pm-card:nth-child(2){grid-column:auto}.knowledge-page .performance-grid .pm-card,.knowledge-page .field-command-grid .pm-card{min-height:auto}.knowledge-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.knowledge-command-card{background:linear-gradient(145deg, #5a6b5717, var(--surface-inset)), #16191fc7;border-color:#5a6b573d}button:hover{transform:translateY(-1px)}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (width<=1180px){.topbar{grid-template-columns:1fr}.topbar__center,.topbar__actions{justify-content:flex-start}.operations-overview,.featured-grid{grid-template-columns:1fr}.portal-grid,.crm-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-page__header{grid-template-columns:1fr}.estimate-calendar{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-workspace{grid-template-columns:1fr}.estimate-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.documents-control-room{grid-template-columns:1fr}.packet-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-command-grid,.performance-hero,.performance-grid,.pm-approval-workspace,.pm-review-detail-hero,.pm-review-decision-grid,.executive-overview-grid,.procurement-overview,.dispatch-command-grid,.office-invoice-rollup,.office-packet-workspace,.office-packet-detail-hero,.office-packet-detail-actions,.field-detail-hero,.field-hero,.foreman-report-flow,.field-command-grid,.job-workspace-hero,.job-workspace-grid{grid-template-columns:1fr}.field-kpi-grid,.fleet-kpi-grid,.office-kpi-grid,.knowledge-kpi-grid,.office-action-grid,.field-ops-page .performance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-board-grid{grid-template-columns:repeat(4,minmax(260px,82vw))}.company-health-grid,.pm-bento-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-card:first-child,.pm-card:nth-child(2){grid-column:span 1}.pm-job-row{grid-template-columns:1fr}}@media (width<=720px){.app-sidebar{box-shadow:none;transition:transform .2s;transform:translate(-105%)}.app-sidebar--open{box-shadow:0 0 0 1px var(--line), 0 18px 48px #00000073;transform:translate(0)}.app-sidebar__backdrop{z-index:19;background:#00000073;border:none;display:block;position:fixed;inset:0}.app-main{margin-left:0}.app-mobile-bar{z-index:10;border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0c0feb;border-radius:12px;align-items:center;gap:10px;margin:0 0 10px;padding:10px 12px;display:flex;position:sticky;top:0}.app-mobile-bar__menu{border:1px solid var(--line);width:44px;height:44px;color:var(--text);background:var(--surface-hover);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.app-mobile-bar__title{flex-direction:column;gap:2px;min-width:0;display:flex}.app-mobile-bar__title strong{font-size:.92rem}.app-mobile-bar__title span{color:var(--quiet);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.home-shell{padding:12px 12px 36px}.topbar{border-radius:22px;grid-template-columns:1fr auto;gap:10px;padding:10px;position:static}.brand-lockup{min-width:0}.profile-button span{display:none}.topbar__center,.topbar__actions{flex-wrap:wrap}.topbar__center{grid-column:1/-1;justify-content:flex-start}.topbar__actions{justify-content:flex-end}.search-field{order:2;width:100%}.context-pill span{text-overflow:ellipsis;max-width:170px;overflow:hidden}.today-panel,.weather-panel{min-height:auto;padding:18px}.snapshot-grid,.portal-grid,.crm-status-grid,.role-action-grid,.intake-grid{grid-template-columns:1fr}.job-lifecycle-spine__summary,.job-lifecycle-spine__next{flex-direction:column}.job-lifecycle-spine__rail{grid-template-columns:repeat(10,minmax(112px,62vw))}.crm-toolbar{flex-direction:column;align-items:flex-start}.view-toggle,.view-toggle button{width:100%}.portal-page__actions{flex-direction:column}.portal-search,.portal-command{width:100%}.pipeline-board{grid-auto-columns:minmax(260px,88vw)}.slide-over__panel{border-radius:0}.estimate-calendar,.pricing-summary,.estimate-nav{grid-template-columns:1fr}.estimate-builder__header,.pricing-lines>div{flex-direction:column}.packet-summary,.document-category-grid,.pm-bento-grid,.pm-detail-grid,.pm-pricing,.pm-performance-grid,.pm-review-summary,.pm-review-stat-grid,.pm-review-actions,.pm-review-impact-grid,.pm-review-mini-grid,.pm-review-detail-grid,.office-packet-section-grid,.office-preview-cover,.office-preview-grid,.office-packet-detail-stats,.office-packet-detail-grid,.field-report-progress,.field-detail-grid,.field-detail-two-col,.field-detail-actions,.field-hero-details,.field-planned-actual,.field-report-grid,.foreman-summary-grid,.field-capture-actions,.field-kpi-grid,.fleet-kpi-grid,.office-kpi-grid,.knowledge-kpi-grid,.office-action-grid,.job-workspace-grid,.field-ops-page .performance-grid{grid-template-columns:1fr}.foreman-step-strip{grid-template-columns:repeat(8,minmax(132px,70vw))}.foreman-active-step,.foreman-big-actions{grid-template-columns:1fr}.foreman-active-step__icon{width:58px;height:58px}.performance-rank-list button,.company-health-grid{grid-template-columns:1fr}.portal-card{border-radius:22px;min-height:auto}.portal-card__actions{flex-wrap:wrap}.workspace-logo img{height:88px}.demo-data-control{justify-content:space-between;bottom:82px;left:12px;right:12px}.demo-data-control button{flex:none}.demo-walkthrough-launch{justify-content:center;bottom:136px;left:12px;right:12px}.demo-walkthrough{width:auto;bottom:136px;left:12px;right:12px}.demo-walkthrough__actions{grid-template-columns:1fr}}.login-screen{place-items:center;min-height:100vh;padding:24px;display:grid}.login-screen__card{border:1px solid var(--line);background:linear-gradient(145deg, var(--surface-raised), #ffffff05), #16191fe0;width:min(420px,100%);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px)saturate(140%);backdrop-filter:blur(22px)saturate(140%);border-radius:18px;padding:40px 36px}.login-screen__header{text-align:center;flex-direction:column;align-items:center;gap:6px;margin-bottom:32px;display:flex}.login-screen__icon{border-radius:12px;width:52px;height:52px;margin-bottom:4px;padding-top:15px;font-size:1rem}.login-screen__wordmark{font-size:1.35rem}.login-screen__header h1{letter-spacing:-.02em;margin:0;font-size:1.6rem;font-weight:700}.login-screen__form{flex-direction:column;gap:16px;display:flex}.login-screen__field{color:var(--muted);letter-spacing:.03em;flex-direction:column;gap:6px;font-size:.82rem;font-weight:600;display:flex}.login-screen__field input{border:1px solid var(--line-strong);width:100%;color:var(--text);background:var(--surface-hover);border-radius:10px;outline:none;padding:10px 14px;font-size:.95rem;transition:border-color .15s}.login-screen__field input:focus{border-color:var(--accent)}.login-screen__field input:disabled{opacity:.5}.login-screen__error{border:1px solid var(--danger-muted);color:var(--danger);background:var(--danger-subtle);border-radius:10px;margin:0;padding:10px 14px;font-size:.85rem}.login-screen__submit{color:#07080a;background:var(--accent);letter-spacing:.01em;border:none;border-radius:10px;margin-top:4px;padding:12px;font-size:.95rem;font-weight:700;transition:opacity .15s}.login-screen__submit:disabled{opacity:.55;cursor:default}.login-screen__submit:not(:disabled):hover{opacity:.88}.login-screen__demo-accounts{border-top:1px solid var(--surface-raised);color:var(--muted);margin-top:28px;padding-top:20px;font-size:.82rem;line-height:1.5}.login-screen__demo-title{letter-spacing:.06em;text-transform:uppercase;color:#ffffff8c;margin:0 0 8px;font-size:.75rem;font-weight:700}.login-screen__demo-accounts ul{margin:0 0 8px;padding-left:18px}.login-screen__demo-accounts li{margin-bottom:4px}.login-screen__demo-password{margin:0;font-size:.8rem}.login-screen__tagline{color:var(--muted);text-align:center;margin:0;font-size:.85rem}.login-screen__powered{color:var(--muted);text-align:center;margin:12px 0 0;font-size:.75rem}.preview-module-banner{border:1px solid var(--warning-muted);background:var(--warning-subtle);color:#ffffffd1;border-radius:12px;gap:4px;margin:0 0 16px;padding:14px 16px;display:grid}.preview-module-banner strong{color:var(--warning);letter-spacing:.04em;text-transform:uppercase;font-size:.82rem}.planned-module-banner{border-color:var(--line);background:#ffffff08}.planned-module-banner strong{color:var(--muted)}.planned-engine-list{color:var(--muted);gap:6px;margin:12px 0 0;padding-left:18px;display:grid}.job-hub-promo-banner{border:1px solid var(--info-muted);background:var(--info-subtle);border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin:0 0 18px;padding:16px 18px;display:flex}.job-hub-promo-banner p{color:var(--muted);margin:6px 0 0;font-size:.9rem}.portal-page{min-width:0;max-width:100%;overflow-x:clip}.demo-data-badge{border:1px solid var(--line);background:var(--warning-subtle);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-flex}.data-mode-badge{border:1px solid var(--line);background:var(--panel);width:fit-content;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;margin-top:10px;padding:5px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.data-mode-badge:before{content:"";background:currentColor;border-radius:999px;width:7px;height:7px}.data-mode-badge.is-live{color:var(--accent);background:#5a685729;border-color:#5a6857b3}.data-mode-badge.is-demo{color:#d8b36f;background:#ffbf5c1c;border-color:#ffbf5c5c}.crm-status-card__label-row,.exec-metric__label-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.jobs-portfolio-page__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.jobs-portfolio-toolbar{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.jobs-portfolio-search{border:1px solid var(--line);background:var(--panel);border-radius:12px;flex:240px;align-items:center;gap:8px;min-width:0;padding:10px 12px;display:inline-flex}.jobs-portfolio-search input{width:100%;min-width:0;color:var(--text);background:0 0;border:none}.jobs-portfolio-filter{color:var(--muted);flex-direction:column;gap:4px;font-size:.78rem;display:inline-flex}.jobs-portfolio-filter select{border:1px solid var(--line);background:var(--panel);min-height:44px;color:var(--text);border-radius:10px;padding:8px 10px}.jobs-portfolio-summary{color:var(--muted);margin:0 0 10px;font-size:.84rem}.jobs-create-form{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--card);box-shadow:var(--shadow-card);gap:14px;margin:14px 0;padding:16px;display:grid}.jobs-create-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.jobs-create-form label{min-width:0;color:var(--muted);gap:6px;font-size:.78rem;display:grid}.jobs-create-form input,.jobs-create-form select,.jobs-create-form textarea{border:1px solid var(--line);border-radius:var(--radius-button);background:var(--panel);width:100%;min-width:0;min-height:42px;color:var(--text);padding:9px 10px}.jobs-create-form textarea{resize:vertical;line-height:1.4}.jobs-create-form__wide{grid-column:1/-1}.jobs-create-form__actions{flex-wrap:wrap;gap:10px;display:flex}.jobs-portfolio-table-wrap{border:1px solid var(--line);background:var(--panel);border-radius:14px;width:100%;max-width:100%;overflow-x:auto}.jobs-portfolio-table{border-collapse:collapse;width:100%;min-width:760px}.jobs-portfolio-table th,.jobs-portfolio-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px 14px}.jobs-portfolio-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.74rem}.jobs-portfolio-table__job-link{color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:4px;padding:0;display:flex}.jobs-portfolio-table__job-link span{color:var(--muted);font-size:.84rem}.jobs-portfolio-table__statuses{flex-wrap:wrap;gap:6px;display:flex}.jobs-portfolio-empty{color:var(--muted);margin:0;padding:18px 14px}@media (width<=720px){.jobs-create-form__grid{grid-template-columns:1fr}}.admin-cost-form{gap:14px;display:grid}.admin-cost-form__checkbox{align-items:center;gap:10px;font-size:.88rem;display:flex}.admin-rate-item input{border:1px solid var(--line);background:var(--panel);width:100%;min-height:44px;color:var(--text);border-radius:10px;margin-top:6px;padding:8px 10px}.chat-launcher,.chat-input button,.chat-input input{min-height:48px}.dispatch-job-grid__statuses{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.scheduling-portal__header,.scheduling-portal__actions{flex-wrap:wrap;gap:10px;display:flex}.scheduling-portal__search{flex:240px;min-width:0}.scheduling-portal__status{color:var(--muted);margin:0 0 12px}.scheduling-portal__tabs button{align-items:center;gap:8px;display:inline-flex}.scheduling-portal__kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.estimating-portal__header,.estimating-portal__actions{flex-wrap:wrap;gap:10px;display:flex}.estimating-portal__search{flex:240px;min-width:0}.estimating-portal__status{color:var(--muted);margin:0 0 12px}.estimating-portal__kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.estimating-portal__table-wrap{width:100%;max-width:100%;overflow-x:auto}.estimating-stage-form{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:14px 0;display:grid}.estimating-stage-form label{color:var(--muted);flex-direction:column;gap:6px;font-size:.82rem;display:flex}.estimating-stage-form input,.estimating-stage-form select{border:1px solid var(--line);background:var(--panel);min-height:44px;color:var(--text);border-radius:10px;padding:8px 10px}.office-portal__tabs button{align-items:center;gap:8px;display:inline-flex}.office-portal__kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.fleet-portal__header,.fleet-portal__header .portal-page__actions{flex-wrap:wrap;gap:10px;display:flex}.fleet-portal__search{flex:240px;min-width:0}.fleet-portal__tabs button{align-items:center;gap:8px;display:inline-flex}.fleet-portal__kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.crm-portal__header,.crm-portal__header .portal-page__actions{flex-wrap:wrap;gap:10px;display:flex}.portal-save-message{color:var(--muted);margin:0 0 12px}.portal-save-message.is-error{color:var(--danger,#c0392b)}.crm-pipeline-layout{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start;gap:14px;display:grid}.crm-portal__board{min-width:0;overflow-x:auto}.lead-card--selectable{text-align:left;cursor:pointer;border:1px solid var(--line);background:var(--panel);width:100%}.lead-card--selectable.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.crm-stage-form{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:14px 0;display:grid}.crm-stage-form label{color:var(--muted);flex-direction:column;gap:6px;font-size:.82rem;display:flex}.crm-stage-form input,.crm-stage-form select{border:1px solid var(--line);background:var(--panel);min-height:44px;color:var(--text);border-radius:10px;padding:8px 10px}.crm-table__job-link{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.jobs-portfolio-row__meta{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.app-sidebar__theme-toggle{border:1px solid var(--line);width:100%;color:var(--muted);background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:8px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.app-sidebar__theme-toggle:hover{color:var(--text);border-color:var(--line-strong)}.demo-logout-button{color:var(--muted)!important;border-color:var(--surface-raised)!important}.dashboard-portal{flex-direction:column;gap:20px;padding:28px 24px 96px;display:flex}.portal-header{margin-bottom:4px}.portal-subtitle{color:var(--muted);margin-top:4px;font-size:.875rem}.dashboard-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.job-lifecycle-spine{border:1px solid var(--line);background:var(--surface-inset);border-radius:8px;margin:0 0 18px;padding:14px}.job-lifecycle-spine__summary,.job-lifecycle-spine__next{justify-content:space-between;gap:14px;display:flex}.job-lifecycle-spine__summary h2{letter-spacing:0;margin:3px 0 0;font-size:1rem}.job-lifecycle-spine__truth{min-width:min(420px,100%);color:var(--muted);gap:5px;font-size:.78rem;display:grid}.job-lifecycle-spine__truth span,.job-lifecycle-spine__next>div{align-items:center;gap:7px;display:flex}.job-lifecycle-spine__truth strong,.job-lifecycle-spine__next strong{color:var(--text);font-weight:650}.job-lifecycle-spine__rail{grid-template-columns:repeat(10,minmax(86px,1fr));gap:6px;margin:13px 0;display:grid;overflow-x:auto}.job-lifecycle-spine__stage{border:1px solid var(--line);min-height:58px;color:var(--quiet);background:var(--surface-inset);border-radius:7px;padding:9px}.job-lifecycle-spine__stage span{color:var(--quiet);margin-bottom:5px;font-size:.68rem;display:block}.job-lifecycle-spine__stage strong{letter-spacing:0;font-size:.72rem}.job-lifecycle-spine__stage.is-complete{color:var(--muted);background:#5a6b570d}.job-lifecycle-spine__stage.is-active{color:var(--text);background:#5a6b571f;border-color:#5a6b5773}.job-lifecycle-spine__next{color:var(--muted);align-items:center;font-size:.78rem}.job-lifecycle-spine__next>div{flex-direction:column;align-items:flex-start}.role-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.role-action-card{border:1px solid var(--line);color:var(--text);text-align:left;background:var(--surface-hover);cursor:pointer;border-radius:8px;flex-direction:column;gap:10px;padding:16px;display:flex}.role-action-card:hover{background:#5a6b5712;border-color:#5a6b5759}.role-action-card h3{letter-spacing:0;margin:0;font-size:1.02rem}.role-action-card p{color:var(--muted);margin:0;font-size:.86rem;line-height:1.45}.role-action-card__facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.role-action-card__facts span{min-width:0;color:var(--quiet);font-size:.72rem}.role-action-card__facts strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.dashboard-kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:6px;padding:16px 18px;display:flex}.dashboard-kpi-card__icon{color:var(--muted)}.dashboard-kpi-card>span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.dashboard-kpi-card>strong{letter-spacing:-.02em;color:var(--text);font-size:1.6rem;font-weight:700}.dashboard-alerts{flex-direction:column;gap:8px;display:flex}.dashboard-alert{text-align:left;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:10px 14px;font-size:.875rem;display:flex}.dashboard-alert--warning{background:var(--warning-subtle);border-color:var(--warning-muted);color:var(--warning)}.dashboard-section h2{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:10px;font-size:.8rem;font-weight:600}.crm-status-card:disabled{cursor:default;opacity:.82}.crm-status-card--status{cursor:default}@media (pointer:coarse){.app-sidebar__nav-item,.app-sidebar__more-item,.app-sidebar__more-toggle,.role-action-card{min-height:44px}}.dashboard-jobs-table-wrap{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.margin-badge{border-radius:99px;padding:2px 8px;font-size:.8rem;font-weight:600;display:inline-block}.margin-badge--positive,.margin-badge--green{background:var(--good-subtle);color:var(--good)}.margin-badge--neutral{background:var(--muted);color:var(--text-secondary)}.margin-badge--warning,.margin-badge--yellow{background:var(--warning-subtle);color:var(--warning)}.margin-badge--red{background:var(--danger-subtle);color:var(--danger)}.badge--live{background:var(--good-subtle);color:var(--good);border-radius:99px;padding:1px 6px;font-size:.7rem}.dashboard-placeholder-note{color:var(--muted);opacity:.7;margin-top:10px;font-size:.75rem}.admin-rate-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.admin-rate-item{background:var(--bg);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.admin-rate-item>span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.admin-rate-item>strong{color:var(--text);font-size:1.35rem;font-weight:700}.admin-rate-item>small{color:var(--muted);font-size:.72rem;line-height:1.4}.admin-rate-note{color:var(--muted);font-size:.78rem;line-height:1.5}.admin-rate-note code{background:#ffffff0f;border-radius:4px;padding:1px 5px;font-family:monospace}.portal-view{flex-direction:column;gap:20px;padding:28px 24px 96px;display:flex}.hr-portal-body{flex-direction:column;gap:2rem;display:flex}.hr-section-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.hr-section-header h3{margin:.25rem 0;font-size:1.1rem}.hr-summary-strip{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.hr-empty{opacity:.6;text-align:center;padding:2rem}.hr-timesheet-detail-row td{background:var(--surface-raised);padding:.5rem .75rem .75rem 2.5rem}.hr-entry-table{border-collapse:collapse;width:100%;font-size:.85rem}.hr-entry-table th,.hr-entry-table td{text-align:left;border-bottom:1px solid var(--border-subtle);padding:.3rem .6rem}.hr-entry-table th{opacity:.6;font-weight:600}.hr-crew-list{flex-direction:column;gap:.3rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.hr-crew-list li{background:var(--surface-raised);border-radius:4px;justify-content:space-between;align-items:center;padding:.3rem .5rem;font-size:.87rem;display:flex}.hr-crew-list li span{opacity:.6;font-size:.8rem}.msg-launcher{z-index:200;background:var(--brand-sage);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:background .15s;display:flex;position:fixed;bottom:5.5rem;right:1.5rem;box-shadow:0 2px 8px #0006}.msg-launcher:hover{background:var(--brand-sage-bright)}.msg-launcher__badge{background:var(--accent);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.72rem;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.msg-tray{z-index:300;background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:340px;max-height:520px;display:flex;position:fixed;bottom:6rem;right:1.5rem;overflow:hidden;box-shadow:0 8px 32px #00000080}.msg-tray__header{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.9rem;font-weight:600;display:flex}.msg-tray__header span:first-child{flex:1}.msg-thread-list{flex:1;overflow-y:auto}.msg-thread-item{border:none;border-bottom:1px solid var(--border-subtle);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;transition:background .1s;display:flex}.msg-thread-item:hover{background:var(--surface-raised)}.msg-thread-item__avatar{background:var(--brand-sage-deep);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;font-weight:700;display:flex}.msg-thread-item__body{flex:1;min-width:0}.msg-thread-item__top{justify-content:space-between;align-items:center;display:flex}.msg-thread-item__name{font-size:.88rem;font-weight:600}.msg-thread-item__time{opacity:.55;font-size:.75rem}.msg-thread-item__preview{opacity:.65;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.8rem;overflow:hidden}.msg-thread-item__badge{background:var(--accent);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:.72rem;font-weight:700;display:flex}.msg-thread-view{flex-direction:column;height:100%;display:flex}.msg-thread-view__header{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.6rem .75rem;font-size:.88rem;font-weight:600;display:flex}.msg-thread-view__header strong{flex:1}.msg-job-badge{background:var(--brand-sage-deep);color:var(--brand-sage-bright);border-radius:4px;padding:2px 6px;font-size:.72rem}.msg-thread-view__messages{flex-direction:column;flex:1;gap:.5rem;padding:.75rem;display:flex;overflow-y:auto}.msg-bubble{flex-direction:column;max-width:80%;display:flex}.msg-bubble--mine{align-self:flex-end;align-items:flex-end}.msg-bubble__sender{opacity:.6;margin-bottom:2px;font-size:.72rem}.msg-bubble p{background:var(--card);border-radius:10px;margin:0;padding:.45rem .7rem;font-size:.85rem;line-height:1.4}.msg-bubble--mine p{background:var(--brand-sage-deep)}.msg-bubble time{opacity:.45;margin-top:2px;font-size:.7rem}.msg-thread-view__input{border-top:1px solid var(--border);align-items:flex-end;gap:.5rem;padding:.5rem .75rem;display:flex}.msg-thread-view__input textarea{resize:none;background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:8px;flex:1;padding:.4rem .6rem;font-family:inherit;font-size:.85rem}.msg-send-btn{flex-shrink:0}.msg-empty{text-align:center;opacity:.5;margin:0;padding:1.5rem;font-size:.85rem}.msg-empty--error{color:var(--status-danger);opacity:1}.link-button{color:var(--accent);cursor:pointer;background:0 0;border:none;text-decoration:underline}.msg-new-thread{flex-direction:column;flex:1;gap:.5rem;padding:.75rem;display:flex;overflow-y:auto}.msg-new-thread__tabs{gap:.25rem;display:flex}.msg-new-thread__tabs button{border:1px solid var(--border);cursor:pointer;color:var(--text-secondary);background:0 0;border-radius:6px;flex:1;padding:.35rem;font-size:.82rem}.msg-new-thread__tabs button.is-active{background:var(--brand-sage-deep);color:var(--brand-sage-bright);border-color:var(--brand-sage)}.msg-new-thread__search,.msg-new-thread__group-name{background:var(--card);border:1px solid var(--border);width:100%;color:var(--text);box-sizing:border-box;border-radius:6px;padding:.4rem .6rem;font-size:.85rem}.msg-new-thread__list{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.msg-new-thread__user{cursor:pointer;text-align:left;width:100%;color:var(--text);background:0 0;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.4rem .5rem;display:flex}.msg-new-thread__user:hover{background:var(--surface-raised)}.msg-new-thread__user.is-selected{background:var(--brand-sage-deep)}.msg-new-thread__user-avatar{background:var(--brand-sage);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8rem;font-weight:700;display:flex}.msg-new-thread__user span:not(.msg-new-thread__user-avatar){flex:1;font-size:.85rem;font-weight:500}.msg-new-thread__user small{opacity:.55;font-size:.75rem}.msg-new-thread__footer{gap:.5rem;margin-top:auto;display:flex}.msg-new-thread__footer button{flex:1}.estimate-map-measure{margin:1.25rem 0 0}.estimate-map-measure__results{background:var(--card);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:.4rem;margin-top:.75rem;padding:.75rem;display:flex}.estimate-map-measure__row{align-items:baseline;gap:.75rem;font-size:.87rem;display:flex}.estimate-map-measure__row span{flex:1}.estimate-map-measure__row strong{color:var(--brand-sage-bright)}.estimate-map-measure__row small{opacity:.6}.estimate-map-measure__total{border-top:1px solid var(--border);justify-content:space-between;margin-top:.2rem;padding-top:.4rem;font-size:.87rem;font-weight:600;display:flex}.map-measure-trigger{align-items:center;gap:.4rem;display:flex}.map-measure-trigger__badge{background:var(--status-warning-bg);color:var(--status-warning);border-radius:3px;padding:2px 5px;font-size:.7rem}.map-measure-overlay{z-index:400;background:#000000b3;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.map-measure-modal{background:var(--panel);border-radius:12px;flex-direction:column;width:100%;max-width:1000px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 16px 48px #0009}.map-measure-modal__header{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.map-measure-modal__header>div:first-child{flex:1;align-items:center;gap:.5rem;font-weight:600;display:flex}.map-measure-modal__tools{gap:.4rem;display:flex}.portal-command--active{background:var(--brand-sage-deep)!important;color:var(--brand-sage-bright)!important}.map-measure-modal__body{flex:1;min-height:0;display:flex}.map-measure-modal__map{flex:1;min-height:480px;position:relative}.map-measure-modal__loading{opacity:.6;background:var(--bg-soft);justify-content:center;align-items:center;font-size:.9rem;display:flex;position:absolute;inset:0}.map-measure-modal__loading--error{color:var(--status-danger);opacity:1}.map-measure-modal__sidebar{border-left:1px solid var(--border);flex-direction:column;gap:.6rem;width:220px;padding:1rem;display:flex;overflow-y:auto}.map-measure-modal__sidebar h4{opacity:.7;margin:0;font-size:.85rem}.map-measure-modal__hint{opacity:.55;margin:0;font-size:.82rem}.map-measure-item{align-items:flex-start;gap:.4rem;display:flex}.map-measure-item>div{flex-direction:column;flex:1;gap:2px;font-size:.82rem;display:flex}.map-measure-item strong{font-size:.8rem}.map-measure-item span{color:var(--brand-sage-bright);font-weight:600}.map-measure-item small{opacity:.6}.map-measure-total{border-top:1px solid var(--border);justify-content:space-between;align-items:baseline;padding-top:.5rem;font-size:.83rem;font-weight:600;display:flex}.map-measure-modal__footer{flex-direction:column;gap:.4rem;margin-top:auto;display:flex}.map-measure-panel--no-key{text-align:center;background:var(--panel);border-radius:12px;flex-direction:column;align-items:center;gap:.75rem;max-width:380px;padding:2rem;display:flex}.map-measure-panel--no-key h3{margin:0}.map-measure-panel--no-key p{opacity:.7;margin:0;font-size:.88rem}.admin-cost-row--checkbox{flex-direction:row;align-items:center;gap:.5rem}.admin-cost-row--checkbox input[type=checkbox]{width:auto}.crew-roster-panel{grid-column:1/-1}.crew-roster-panel__header{flex-wrap:wrap;align-items:baseline;gap:.75rem;display:flex}.crew-roster-panel__header h3{flex:1;margin:0}.crew-roster-panel__msg{color:var(--brand-sage-bright);font-size:.8rem}.crew-roster-list{flex-direction:column;gap:.4rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.crew-roster-list__item{background:var(--surface-raised);border-radius:6px;align-items:center;gap:.6rem;padding:.45rem .6rem;transition:opacity .15s;display:flex}.crew-roster-list__item--absent{opacity:.5}.crew-roster-list__item--added{border:1px solid var(--brand-sage-deep)}.crew-roster-list__avatar{background:var(--brand-sage-deep);width:30px;height:30px;color:var(--brand-sage-bright);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.82rem;font-weight:700;display:flex}.crew-roster-list__info{flex:1}.crew-roster-list__info strong{font-size:.87rem;display:block}.crew-roster-list__info small{opacity:.6;font-size:.75rem}.crew-roster-list__absent-btn{color:var(--status-warning)}.crew-roster-panel__add-btn{align-items:center;gap:.4rem;margin-top:.75rem;font-size:.84rem;display:flex}.crew-roster-add{flex-direction:column;gap:.4rem;margin-top:.75rem;display:flex}.crew-roster-add input{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:.4rem .6rem;font-size:.85rem}.crew-roster-add__list{background:var(--card);border:1px solid var(--border);border-radius:6px;margin:0;padding:0;list-style:none;overflow:hidden}.crew-roster-add__list li button{border:none;border-bottom:1px solid var(--border-subtle);cursor:pointer;width:100%;color:var(--text);text-align:left;background:0 0;align-items:center;gap:.4rem;padding:.4rem .6rem;font-size:.84rem;display:flex}.crew-roster-add__list li button:hover{background:var(--surface-raised)}.crew-roster-add__list li:last-child button{border-bottom:none}.crew-roster-add__empty{opacity:.5;padding:.5rem .75rem;font-size:.82rem}.landing-screen{background:radial-gradient(ellipse 60% 34% at 50% 0%, #f2f2f212, transparent 70%), var(--bg);flex-direction:column;align-items:center;min-height:100vh;padding:48px 24px 28px;display:flex;position:relative}.landing-screen__hero{text-align:center;z-index:1;flex-direction:column;align-items:center;gap:0;margin:auto;display:flex}.landing-screen__mark{width:clamp(120px,18vw,170px);height:clamp(120px,18vw,170px);margin-bottom:10px}.landing-screen__wordmark{gap:8px;font-size:clamp(3rem,8vw,4.6rem)}.landing-screen__wordmark .vulcon-wordmark__inc{font-size:clamp(1rem,2.2vw,1.35rem)}.landing-screen__wordmark .vulcon-wordmark__inc:before,.landing-screen__wordmark .vulcon-wordmark__inc:after{width:clamp(70px,11vw,130px)}.landing-screen__wordmark .vulcon-wordmark__tagline{letter-spacing:.38em;text-indent:.38em;color:var(--text-secondary);margin-top:10px;font-size:clamp(.72rem,1.6vw,1rem)}.landing-screen__coming-soon{letter-spacing:.22em;text-indent:.22em;text-transform:uppercase;color:var(--text);margin:clamp(40px,7vh,72px) 0 0;font-family:Inter,Arial Narrow,Roboto Condensed,ui-sans-serif,system-ui,sans-serif;font-size:clamp(2.4rem,7vw,4.4rem);font-weight:800;line-height:1.05}.landing-screen__divider{background:var(--brand-sage-bright);opacity:.85;width:56px;height:2px;margin:22px 0 18px}.landing-screen__subtitle{color:var(--text-secondary);letter-spacing:.01em;margin:0;font-size:clamp(1rem,2.4vw,1.3rem)}.landing-screen__cta{border:1px solid color-mix(in srgb, var(--brand-sage-bright) 70%, transparent);color:var(--text);letter-spacing:.14em;text-indent:.14em;text-transform:uppercase;cursor:pointer;transition:background var(--motion-fast) ease, border-color var(--motion-fast) ease, transform var(--motion-fast) ease;background:#5a6b570f;border-radius:8px;align-items:center;gap:12px;margin-top:clamp(28px,5vh,44px);padding:16px 34px;font-size:1rem;font-weight:650;display:inline-flex}.landing-screen__cta span{color:var(--brand-sage-bright);transition:transform var(--motion-fast) ease}.landing-screen__cta:hover{border-color:var(--brand-sage-bright);background:#5a6b5729;transform:translateY(-1px)}.landing-screen__cta:hover span{transform:translate(3px)}.landing-screen__footer{z-index:1;color:var(--muted);align-items:center;gap:28px;padding-top:40px;font-size:.86rem;display:flex}.landing-screen__footer nav{align-items:center;gap:14px;display:inline-flex}.landing-screen__footer a{color:var(--text-secondary);transition:color var(--motion-fast) ease;text-decoration:none}.landing-screen__footer a:hover{color:var(--brand-sage-bright)}.landing-screen__footer-sep{opacity:.4}@media (width<=560px){.landing-screen__footer{flex-direction:column;gap:10px;padding-top:28px}}.portal-header h1,.portal-page__header h1{letter-spacing:-.03em;font-size:clamp(1.75rem,2.8vw,2.35rem);font-weight:700;line-height:1.12}.portal-page__header p,.portal-subtitle{color:var(--text-secondary);font-size:.9375rem;line-height:1.55}.panel-kicker,.section-heading span{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.6875rem;font-weight:600}.dashboard-section h2{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin:0 0 14px;font-size:.8125rem;font-weight:600}.crm-table th{letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:600}.crm-table td{color:var(--text-secondary);font-weight:400}.crm-table td strong{color:var(--text);font-weight:600}.texture-layer{opacity:.24}.portal-page__header,.crm-toolbar,.crm-status-card,.pipeline-column,.lead-card,.crm-table-wrap,.slide-over__panel,.intake-section,.upload-dropzone,.pm-card,.portal-loading article,.calendar-day,.estimate-nav,.estimate-builder,.ai-estimator-panel,.job-packet-list,.document-packet,.document-issues-panel,.job-packet-card,.document-category-card,.contract-preview,.pm-jobs-board,.pm-detail-panel,.job-lifecycle-spine,.admin-section-card,.login-screen__card{-webkit-backdrop-filter:none;background:linear-gradient(145deg, #ffffff09, #ffffff02), var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.portal-page__header{border-radius:var(--radius-card);padding:22px 24px;position:relative;overflow:hidden}.portal-page__header:before{content:"";background:linear-gradient(180deg, var(--brand-sage-bright), var(--brand-primary), transparent);opacity:.8;width:3px;position:absolute;inset:0 auto 0 0}.pm-card{border-radius:var(--radius-card);transition:transform var(--motion-base) ease, box-shadow var(--motion-base) ease, border-color var(--motion-fast) ease;padding:18px 20px}@media (prefers-reduced-motion:no-preference){.pm-card:hover,.role-action-card:hover,.dashboard-kpi-card:hover,.crm-status-card:hover,.lead-card:hover{box-shadow:var(--shadow-elevated);transform:translateY(-2px)}}.portal-command,.back-button,.view-toggle button{border-radius:var(--radius-button);border:1px solid var(--line);background:var(--btn-secondary-bg);min-height:40px;color:var(--text);transition:background var(--motion-fast) ease, border-color var(--motion-fast) ease, color var(--motion-fast) ease, box-shadow var(--motion-fast) ease, transform var(--motion-fast) ease;padding:0 16px;font-size:.875rem;font-weight:500}.portal-command:hover:not(:disabled),.back-button:hover:not(:disabled){background:var(--btn-secondary-hover);border-color:var(--line-strong)}.portal-command:active:not(:disabled),.back-button:active:not(:disabled){transform:translateY(1px)}.portal-command--primary{background:linear-gradient(180deg, var(--brand-sage-bright), var(--accent));color:var(--brand-stone);border-color:#0000;box-shadow:0 1px 2px #5a6b574d,0 4px 14px #5a6b5733}.portal-command--primary:hover:not(:disabled){background:color-mix(in srgb, var(--brand-sage-bright) 88%, #fff);box-shadow:0 2px 6px #5a6b5761,0 8px 20px #5a6b5738}.portal-command--ghost{background:0 0;border-color:#0000}.portal-command--ghost:hover:not(:disabled){background:var(--btn-secondary-hover)}.portal-command--danger{border-color:color-mix(in srgb, var(--danger) 40%, transparent);background:color-mix(in srgb, var(--danger) 12%, transparent);color:var(--danger)}.portal-command:disabled,.back-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.portal-search{border-radius:var(--radius-button);background:var(--panel);border-color:var(--line)}.app-sidebar{background:var(--sidebar-bg);border-right:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;width:232px;transition:width var(--motion-base) ease}.app-sidebar__nav-item,.app-sidebar__more-item{border-radius:var(--radius-button);transition:background var(--motion-fast) ease, color var(--motion-fast) ease;position:relative}.app-sidebar__nav-item:hover,.app-sidebar__more-item:hover{background:var(--sidebar-hover);color:var(--text)}.app-sidebar__nav-item--active,.app-sidebar__more-item--active{background:var(--accent-subtle);color:var(--text);border-color:color-mix(in srgb, var(--accent) 38%, transparent)}.app-sidebar__nav-item--active:before,.app-sidebar__more-item--active:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:7px;bottom:7px;left:0}.app-sidebar__nav-item--active svg,.app-sidebar__more-item--active svg{color:var(--accent)}.app-sidebar__theme-toggle{border:1px solid var(--line);border-radius:var(--radius-button);background:var(--panel);width:100%;color:var(--text-secondary);transition:background var(--motion-fast) ease, border-color var(--motion-fast) ease;align-items:center;gap:8px;padding:8px 10px;font-size:.8125rem;font-weight:500;display:flex}.app-sidebar__theme-toggle:hover{background:var(--sidebar-hover);color:var(--text)}.crm-table-wrap,.dashboard-jobs-table-wrap{border-radius:var(--radius-card);background:var(--card);max-height:min(68vh,720px);overflow:auto}.crm-table{min-width:100%}.crm-table thead{z-index:2;background:var(--panel);position:sticky;top:0}.crm-table thead th{border-bottom:1px solid var(--line-strong);color:var(--muted);background:var(--panel);padding:14px 16px}.crm-table tbody td{border-bottom:1px solid var(--line);min-height:52px;padding:16px}.crm-table tbody tr:nth-child(2n){background:var(--table-stripe)}.crm-table__row--clickable{cursor:pointer;transition:background var(--motion-fast) ease}.crm-table__row--clickable:hover{background:var(--table-row-hover)}.crm-table__row--clickable:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.crm-table__row--selected,.crm-table__row--clickable:active{background:var(--table-row-selected);box-shadow:inset 3px 0 0 var(--accent)}.dashboard-portal{gap:28px;padding:32px 28px 96px}.portal-header{margin-bottom:8px;padding-bottom:4px}.dashboard-kpis{gap:16px}.dashboard-kpi-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:transform var(--motion-base) ease, box-shadow var(--motion-base) ease, border-color var(--motion-fast) ease;gap:8px;padding:20px 22px}.dashboard-kpi-card__icon{color:var(--accent);margin-bottom:2px}.dashboard-kpi-card>span{letter-spacing:.08em;color:var(--muted);font-size:.6875rem;font-weight:600}.dashboard-kpi-card>strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:1.75rem;font-weight:700}.role-action-grid{gap:16px}.role-action-card{border-radius:var(--radius-card);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-card);transition:transform var(--motion-base) ease, box-shadow var(--motion-base) ease, border-color var(--motion-fast) ease;padding:20px}.role-action-card:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--line));background:var(--card)}.dashboard-alert{border-radius:var(--radius-button);border:1px solid var(--line);background:var(--panel);padding:12px 14px}.dashboard-alert--warning{border-color:color-mix(in srgb, var(--warning) 35%, var(--line));background:color-mix(in srgb, var(--warning) 8%, var(--panel))}.exec-metrics-strip{grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:12px;margin:4px 0 8px;display:grid}.exec-metric{border:1px solid var(--line);border-radius:var(--radius-card);background:linear-gradient(145deg, #ffffff0d, #ffffff02), var(--card);box-shadow:var(--shadow-card);min-width:0;min-height:96px;transition:border-color var(--motion-fast) ease, box-shadow var(--motion-base) ease;align-items:flex-start;gap:12px;padding:16px;display:flex}.exec-metric:hover{border-color:var(--line-strong);box-shadow:var(--shadow-elevated)}.exec-metric__icon{background:var(--panel);width:36px;height:36px;color:var(--accent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.exec-metric--positive .exec-metric__icon{color:var(--good)}.exec-metric--warning .exec-metric__icon{color:var(--warning)}.exec-metric__label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:.6875rem;font-weight:600;display:block}.exec-metric__value{letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--text);font-size:1.375rem;font-weight:700;line-height:1.1;display:block}.exec-metric__detail{color:var(--text-secondary);margin-top:6px;font-size:.75rem;line-height:1.35;display:block}.job-lifecycle-spine{border-radius:var(--radius-card);background:var(--panel);padding:18px 20px}.job-lifecycle-spine__stage.is-active{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));background:color-mix(in srgb, var(--accent) 10%, var(--card));color:var(--text)}.job-lifecycle-spine__stage.is-complete{background:color-mix(in srgb, var(--good) 8%, var(--card));border-color:color-mix(in srgb, var(--good) 25%, var(--line))}.margin-badge--positive{color:var(--good);background:color-mix(in srgb, var(--good) 12%, transparent)}.margin-badge--warning{color:var(--warning);background:color-mix(in srgb, var(--warning) 12%, transparent)}.margin-badge--neutral{color:var(--text-secondary);background:var(--panel)}.crew-productivity-bar{background:var(--line-soft);border-radius:2px;height:3px;margin-top:4px;position:relative;overflow:hidden}.crew-productivity-bar:after{content:"";width:var(--pct);background:var(--brand-sage-bright,#a6b794);border-radius:2px;position:absolute;inset:0 auto 0 0}.chart-swatch--sage{color:var(--chart-sage)}.chart-swatch--steel,.chart-swatch--blue{color:var(--chart-steel)}.chart-swatch--green{color:var(--chart-green)}.chart-swatch--gray{color:var(--chart-gray)}.status-indicator--positive .status-dot{background:var(--good);box-shadow:0 0 0 3px color-mix(in srgb, var(--good) 22%, transparent)}.status-indicator--warning .status-dot{background:var(--warning);box-shadow:0 0 0 3px color-mix(in srgb, var(--warning) 22%, transparent)}.status-indicator--neutral .status-dot{background:var(--chart-gray)}.pm-ai-note,.ai-estimator-panel,.chat-message--assistant{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius-button);background:var(--accent-subtle);color:var(--text-secondary)}.preview-module-banner{border-color:var(--warning-muted);background:var(--warning-subtle);color:var(--text-secondary)}.preview-module-banner strong{color:var(--warning)}.job-hub-promo-banner{border-color:var(--info-muted);background:var(--info-subtle);color:var(--text-secondary)}.trend-icon--down{color:var(--danger)}.trend-icon--up{color:var(--good)}.status-indicator{color:var(--text-secondary);background:var(--surface-hover)}.add-on-card{border-color:var(--line-strong);background:var(--surface-inset);color:var(--text-secondary)}.chat-launcher{border-radius:var(--radius-button);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-elevated);transition:transform var(--motion-fast) ease, box-shadow var(--motion-fast) ease}.chat-launcher:hover{box-shadow:var(--shadow-elevated);transform:translateY(-1px)}.chat-launcher span{color:var(--accent);font-weight:600}.home-shell{padding:24px clamp(20px,3vw,48px) 56px;overflow-x:clip}.app-main{width:auto;min-width:0;max-width:100%;margin-left:232px;overflow-x:clip}@media (width<=960px){.exec-metrics-strip,.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.app-main{width:100%;margin-left:0}}@media (width<=640px){.exec-metrics-strip{grid-template-columns:1fr}.home-shell{padding:14px 12px 88px}}.app-mobile-bar{display:none}@media (width<=960px){.app-mobile-bar{background:var(--sidebar-bg);border-bottom:1px solid var(--line);z-index:50;align-items:center;gap:12px;height:52px;padding:0 16px;display:flex;position:sticky;top:0}.app-mobile-bar__menu{width:36px;height:36px;color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.app-mobile-bar__menu:hover{background:var(--sidebar-hover)}.app-mobile-bar__title{flex-direction:column;gap:1px;min-width:0;display:flex}.app-mobile-bar__title strong{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.app-mobile-bar__title span{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.app-sidebar{z-index:100;height:100dvh;transition:transform .22s;position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:4px 0 24px #0000004d}.app-sidebar--open{transform:translate(0)}.app-sidebar__backdrop{z-index:99;cursor:pointer;background:#00000080;border:none;position:fixed;inset:0}.pm-review-stat-grid,.dashboard-kpis,.portal-command-grid,.exec-card-grid,.executive-brief-grid,.role-action-grid{grid-template-columns:1fr}.pm-review-actions{flex-direction:column}.portal-command{justify-content:center;width:100%}.job-lifecycle-spine{-webkit-overflow-scrolling:touch;overflow-x:auto}.login-screen{padding:24px 16px}.login-screen__card{padding:24px 20px}}
