:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--bg: #050505;--panel: #101010;--panel-strong: #181818;--line: rgba(226, 184, 70, .44);--gold: #ffd22e;--gold-dark: #b98614;--text: #f7f7f0;--muted: #a7a7a7;--danger: #ff9b9b}*{box-sizing:border-box}body{background:linear-gradient(135deg,#020202,#111 52%,#050505);color:var(--text);margin:0;min-height:100vh;overflow-x:hidden;position:relative}body:before{background-image:url(/assets/crownlogo-white.png);background-position:center;background-repeat:no-repeat;background-size:min(78vw,820px) auto;content:"";filter:blur(9px);inset:-34px;opacity:.18;pointer-events:none;position:fixed;transform:rotate(-7deg) scale(1.08);z-index:0}body:after{background:linear-gradient(90deg,#000000d1,#0000006b 48%,#000000d1),repeating-linear-gradient(135deg,rgba(255,210,46,.05) 0 1px,transparent 1px 18px);content:"";inset:0;pointer-events:none;position:fixed;z-index:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{margin:0 auto;max-width:min(1920px,calc(100vw - 28px));min-height:100vh;padding:22px 14px 28px;position:relative;z-index:1}.home-shell{max-width:none;padding:0}.centered{align-items:center;display:grid}.login-shell{align-items:center;display:grid;max-width:1180px;padding:32px}.login-panel,.panel,.topbar,.command-hub,.hub-node{background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 36%),repeating-linear-gradient(45deg,rgba(255,255,255,.03) 0 1px,transparent 1px 9px),#0c0c0ce6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--line);box-shadow:0 22px 60px #0000005c}.login-panel{border-radius:8px;display:grid;gap:0;grid-template-columns:minmax(0,1fr) minmax(360px,440px);min-height:560px;overflow:hidden;padding:0}.login-loading-panel{gap:16px;grid-template-columns:1fr;justify-items:center;min-height:0;padding:44px;text-align:center}.login-loading-panel h1{font-size:30px;margin:0}.login-hero{align-content:space-between;background:linear-gradient(140deg,#ffd22e26,#ffd22e00 42%),linear-gradient(180deg,#ffffff14,#ffffff05),#0a0a0af0;display:grid;gap:28px;padding:42px;position:relative}.login-hero:after{background-image:url(/assets/crownlogo-white.png);background-position:center;background-repeat:no-repeat;background-size:contain;content:"";inset:74px 34px 34px;opacity:.09;pointer-events:none;position:absolute}.login-hero>*{position:relative;z-index:1}.login-logo-lockup{align-items:center;display:flex;gap:14px}.login-logo-lockup img{background:#fffffff0;border-radius:8px;height:54px;object-fit:contain;padding:8px 10px;width:150px}.login-hero h1{font-size:64px;line-height:.96;margin:0;max-width:520px}.login-hero p{color:#d8d8d8;font-size:18px;line-height:1.55;margin-top:16px;max-width:420px}.login-security-row{display:flex;flex-wrap:wrap;gap:10px}.login-security-row span{align-items:center;background:#ffffff14;border:1px solid rgba(255,210,46,.22);border-radius:8px;color:#f6f1df;display:inline-flex;font-size:12px;font-weight:900;gap:8px;min-height:38px;padding:9px 12px;text-transform:uppercase}.login-security-row svg{color:var(--gold)}.login-form{align-content:center;background:#050505cc;border-left:1px solid rgba(255,255,255,.09);display:grid;gap:18px;padding:42px}.login-form-header{display:grid;gap:8px;margin-bottom:8px}.login-form-header h2{font-size:30px;line-height:1.05}.field-label{gap:8px}.field-label span{color:#c6cfca}.field-label input{border-radius:8px;min-height:52px;padding:13px 14px}.field-label input::placeholder{color:#f7f7f061}.login-form .primary-button{border-radius:8px;min-height:52px;margin-top:4px}.brand-mark{color:var(--gold);font-size:12px;font-weight:1000;letter-spacing:.12em;text-transform:uppercase}h1,h2,p{margin:0}h1{font-size:42px;line-height:1;margin-top:8px}h2{font-size:26px}p{color:var(--muted);font-weight:700}form,label{display:grid;gap:10px}label{color:var(--muted);font-size:12px;font-weight:1000;text-transform:uppercase}input,select,textarea{background:#050707;border:1px solid rgba(255,255,255,.13);color:var(--text);min-height:42px;outline:none;padding:10px 12px}input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #ffd22e1f}textarea{min-height:122px;resize:vertical}.primary-button,.ghost-button,.text-button{align-items:center;border:1px solid var(--line);display:inline-flex;font-weight:1000;gap:8px;justify-content:center;min-height:40px;padding:9px 14px;text-transform:uppercase}.primary-button{background:linear-gradient(180deg,var(--gold),var(--gold-dark));color:#111}.ghost-button,.text-button{background:linear-gradient(180deg,#242424,#080808);color:var(--gold)}.text-button{min-height:0;padding:6px 10px}.topbar{align-items:center;display:flex;justify-content:flex-end;margin-bottom:22px;padding:18px 20px}.home-shell .topbar{background:transparent;border:0;box-shadow:none;margin:0;padding:14px;position:fixed;right:0;top:0;z-index:10}.topbar h1{font-size:28px}.signout-button{border-radius:50%;min-height:34px;padding:0;width:34px}.signout-button svg{flex:0 0 auto}.toast,.status{background:#daffd71f;border:1px solid rgba(137,255,141,.32);color:#dfffdc;font-weight:900;margin-bottom:16px;padding:12px 14px}.toast.error,.status.error{background:#ff60601f;border-color:#ff78785c;color:var(--danger)}.command-hub{border-radius:0;display:grid;gap:0;grid-template-rows:auto minmax(0,1fr);min-height:100vh;overflow:hidden;padding:28px 34px 34px;position:relative}.command-hub:before{background:linear-gradient(rgba(255,210,46,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:54px 54px;content:"";inset:0;opacity:.5;pointer-events:none;position:absolute}.command-hub:after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent),repeating-linear-gradient(180deg,rgba(255,255,255,.045) 0 1px,transparent 1px 9px),radial-gradient(circle at 50% 50%,rgba(255,210,46,.08),transparent 42%);content:"";inset:0;mix-blend-mode:screen;opacity:.18;pointer-events:none;position:absolute}.hub-copy{display:flex;justify-content:center;min-height:92px;padding-top:10px;position:relative;text-align:center;z-index:2}.hub-copy h2{color:#f2f2f2;font-size:clamp(34px,4.4vw,68px);line-height:.92;max-width:980px;text-shadow:0 0 28px rgba(255,210,46,.28);text-transform:uppercase}.hub-copy p{color:#b9b9b9;font-size:15px;line-height:1.5;text-align:right}.hub-stage{min-height:0;position:relative;z-index:1}.hub-stage:before{background:radial-gradient(circle at center,rgba(255,255,255,.08),transparent 32%),conic-gradient(from 18deg,#ffd22e2e,#ffffff21,#48484833,#ffd22e2e);border:1px solid rgba(255,210,46,.2);border-radius:50%;content:"";height:min(55vw,560px);left:50%;opacity:.28;position:absolute;top:50%;transform:translate(-50%,-50%);width:min(55vw,560px)}.hub-orbit{aspect-ratio:1;left:50%;max-height:min(840px,calc(100vh - 124px));max-width:min(1180px,calc(100vw - 92px));position:absolute;top:50%;transform:translate(-50%,-48%);width:min(1180px,calc(100vw - 92px),calc(100vh - 124px))}.hub-map,.hub-core,.hub-node{left:50%;position:absolute;top:50%}.hub-map{height:100%;overflow:visible;pointer-events:none;transform:translate(-50%,-50%);width:100%}.hub-link{filter:drop-shadow(0 0 5px rgba(255,210,46,.55));stroke:#ffd22eb8;stroke-linecap:round;stroke-width:1.15}.hub-core{align-items:center;aspect-ratio:1;background:radial-gradient(circle at 50% 42%,#fffffff5,#e2e2e2eb 42%,#3e3e3efa 70%),linear-gradient(145deg,#f0f0f0,#6b6b6b 58%,#111);border:1px solid rgba(255,210,46,.78);border-radius:50%;box-shadow:0 0 0 8px #ffd22e1a,0 0 44px #ffd22e75,inset 0 0 30px #00000047;color:#f8fbff;display:grid;justify-items:center;padding:28px;transform:translate(-50%,-50%);width:clamp(160px,18vw,230px);z-index:3}.hub-core img{filter:drop-shadow(0 10px 16px rgba(0,0,0,.42));height:auto;max-width:78%;position:relative;z-index:1}.hub-core-ring{border:1px solid rgba(255,210,46,.5);border-radius:50%;inset:-18px;pointer-events:none;position:absolute}.hub-core-ring.middle{border-color:#ffffff42;inset:14px}.hub-core-ring.inner{border-color:#ffd22e47;inset:35px}.hub-node{align-items:center;border-radius:8px;color:var(--gold);display:grid;gap:10px;grid-template-columns:42px minmax(0,1fr);min-height:84px;padding:11px;text-align:left;left:var(--hub-x);top:var(--hub-y);transform:translate(-50%,-50%);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;width:clamp(178px,15vw,230px);z-index:4}.hub-node:hover,.hub-node:focus-visible{border-color:currentColor;box-shadow:0 0 0 3px #ffd22e29,0 18px 46px #0000007a;outline:none;transform:translate(-50%,calc(-50% - 3px))}.hub-node-icon{align-items:center;aspect-ratio:1;background:radial-gradient(circle,#ffd22e2e,#ffffff0d),#060606b8;border:1px solid currentColor;border-radius:50%;box-shadow:inset 0 0 20px #ffd22e24;display:inline-flex;justify-content:center}.hub-node-copy{display:grid;gap:5px;min-width:0}.hub-node-copy strong{color:#f1f1f1;font-size:15px;font-weight:1000;line-height:1.05}.hub-node-copy span{color:#adadad;font-size:10.5px;font-weight:800;line-height:1.25}.panel{display:grid;gap:18px;padding:20px}.small-panel{justify-self:center;max-width:520px}.panel-header{align-items:start;display:flex;gap:18px;justify-content:space-between}.panel-header>div:first-child{display:grid;gap:8px}.panel-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:end}.scope-detail-heading{align-items:baseline;display:flex;flex-wrap:wrap;gap:10px}.scope-detail-heading span{color:var(--muted);font-size:12px;font-weight:900;line-height:1.35}.user-table{display:grid;grid-template-columns:150px 150px 180px 1.3fr 180px 180px;overflow-x:auto}.user-table>*{border-bottom:1px solid rgba(255,255,255,.08)}.user-table input,.user-table select{border-radius:0;min-width:0}.table-head{background:#050707;color:var(--gold);font-size:12px;font-weight:1000;padding:12px;text-transform:uppercase}.crm-panel{gap:22px}.crm-summary-row{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.crm-summary-row>div,.detail-status-bar>div{background:#0507078a;border:1px solid rgba(255,255,255,.1);display:grid;gap:5px;padding:13px}.crm-summary-row .attention,.detail-status-bar .attention{background:#ff9b9b1a;border-color:#ff9b9b57}.crm-summary-row strong,.detail-status-bar strong{color:var(--gold);font-size:24px;line-height:1}.crm-summary-row span,.detail-status-bar span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.crm-layout{display:grid;gap:18px;grid-template-columns:minmax(340px,420px) minmax(0,1fr)}.opportunity-list,.opportunity-detail,.form-section{background:#05070773;border:1px solid rgba(255,255,255,.09)}.opportunity-list{align-content:start;display:grid;gap:14px;padding:14px}.filter-row{display:grid;gap:10px}.segmented-control{background:#050707;border:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:1fr 1fr;padding:4px}.segmented-control button{background:transparent;border:0;color:var(--muted);font-size:12px;font-weight:1000;min-height:34px;text-transform:uppercase}.segmented-control button.selected{background:#ffd22e29;color:var(--gold)}.search-label{align-items:center;background:#050707;border:1px solid rgba(255,255,255,.13);display:grid;gap:8px;grid-template-columns:auto 1fr;padding-left:10px}.search-label input{border:0}.metric-row{display:grid;gap:10px;grid-template-columns:1fr 1fr}.metric-row>div{background:#ffd22e14;border:1px solid rgba(255,210,46,.2);display:grid;gap:4px;padding:12px}.metric-row strong{color:var(--gold);font-size:24px;line-height:1}.metric-row span,.opportunity-card small,.opportunity-card em,.empty-state span,.linked-job span{color:var(--muted);font-size:12px;font-weight:800}.opportunity-cards{display:grid;gap:10px;max-height:840px;overflow:auto;padding-right:2px}.opportunity-cards.compact{max-height:320px}.opportunity-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);color:var(--text);display:grid;gap:8px;padding:12px;text-align:left}.opportunity-card.active,.opportunity-card:hover{border-color:var(--gold)}.opportunity-card strong{font-size:16px;line-height:1.2}.opportunity-card em{color:#dfffdc;font-style:normal}.late-text{color:var(--danger)!important}.pipeline-board{display:grid;gap:10px;max-height:520px;overflow:auto}.pipeline-column{background:#ffffff09;border:1px solid rgba(255,255,255,.09);display:grid;gap:8px;padding:10px}.pipeline-heading{align-items:center;background:transparent;border:0;color:var(--text);display:flex;justify-content:space-between;padding:0;text-align:left}.pipeline-heading span{color:var(--gold);font-size:12px;font-weight:1000;text-transform:uppercase}.pipeline-heading strong{background:#ffd22e1f;color:var(--gold);min-width:28px;padding:5px 7px;text-align:center}.pipeline-item{background:#050707c2;border:1px solid rgba(255,255,255,.1);color:var(--text);display:grid;gap:5px;padding:9px;text-align:left}.pipeline-item.active,.pipeline-item:hover{border-color:var(--gold)}.pipeline-item strong{font-size:13px}.pipeline-item span,.pipeline-empty{color:var(--muted);font-size:11px;font-weight:800}.status-pill{background:#ffd22e1f;border:1px solid rgba(255,210,46,.28);color:var(--gold);font-size:11px;font-weight:1000;justify-self:start;padding:5px 8px;text-transform:uppercase}.empty-state{align-items:start;background:#ffffff0a;color:var(--text);display:grid;gap:8px;padding:16px}.empty-state svg{color:var(--gold)}.opportunity-detail{padding:14px;min-width:0}.detail-status-bar{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.detail-status-bar strong{color:var(--text);font-size:15px;line-height:1.25}.detail-grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.form-section{display:grid;gap:14px;padding:16px}.form-section.wide{grid-column:1 / -1}.form-section.double{grid-column:span 2}.form-section h3{color:var(--gold);font-size:14px;letter-spacing:.08em;margin:0;text-transform:uppercase}.field-grid{display:grid;gap:12px}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field-grid .wide{grid-column:1 / -1}.estimating-v2-panel{min-height:calc(100vh - 126px)}.estimating-home{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(300px,420px) minmax(0,1fr)}.create-estimate-card,.estimate-start-list{background:#05070780;border:1px solid rgba(255,255,255,.1)}.create-estimate-card{color:var(--text);display:grid;gap:14px;min-height:260px;padding:24px;text-align:left}.create-estimate-card:hover,.create-estimate-card:focus-visible{border-color:var(--gold);transform:translateY(-1px)}.create-estimate-card svg{color:var(--gold)}.create-estimate-card strong{font-size:28px;font-weight:1000;line-height:1.05}.create-estimate-card span,.estimate-start-card span{color:var(--muted);font-weight:800;line-height:1.4}.estimate-start-list{align-content:start;display:grid;gap:12px;min-height:260px;padding:18px}.estimate-start-list h3{color:var(--gold);font-size:14px;letter-spacing:.08em;margin:0;text-transform:uppercase}.estimate-start-card{background:#ffffff0b;border:1px solid rgba(255,255,255,.1);color:var(--text);display:grid;gap:6px;padding:12px;text-align:left}.estimate-start-card:hover,.estimate-start-card:focus-visible{border-color:var(--gold)}.estimate-start-card strong{font-size:17px;line-height:1.2}.timekeeping-panel{min-height:calc(100vh - 126px)}.time-summary-row,.time-card-header{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.time-summary-row>div,.time-card-header>div{background:#05070794;border:1px solid rgba(255,255,255,.1);display:grid;gap:6px;min-height:82px;padding:13px}.time-summary-row .attention{background:#ff9b9b1a;border-color:#ff9b9b57}.time-summary-row span,.time-card-header span{color:var(--muted);font-size:11px;font-weight:1000;text-transform:uppercase}.time-summary-row strong,.time-card-header strong{color:var(--gold);font-size:25px;line-height:1}.timekeeping-layout{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(310px,390px) minmax(0,1fr)}.time-entry-list,.time-entry-workspace{background:#05070773;border:1px solid rgba(255,255,255,.09);display:grid;gap:14px;padding:14px}.panel-header.compact{padding:0}.panel-header.compact h3{color:var(--gold);font-size:14px;letter-spacing:.08em;margin:0;text-transform:uppercase}.section-title-row{align-items:center;display:flex;gap:12px;justify-content:space-between}.crew-time-table{display:grid;grid-template-columns:minmax(180px,1.2fr) 150px 110px 110px 100px 110px 100px;overflow-x:auto}.equipment-time-table{display:grid;grid-template-columns:minmax(180px,1fr) 140px 110px minmax(220px,1.2fr) 100px;overflow-x:auto}.crew-time-table>*,.equipment-time-table>*{border-bottom:1px solid rgba(255,255,255,.08)}.crew-time-table input,.crew-time-table select,.equipment-time-table input,.equipment-time-table select{border-radius:0;min-width:0}.time-table-total{align-items:center;background:#050707;color:var(--gold);display:flex;font-size:13px;font-weight:1000;padding:10px 12px}.danger-action{border-color:#ff9b9b70;color:var(--danger)}.modal-backdrop{background:#000000b8;display:grid;inset:0;padding:24px;place-items:center;position:fixed;z-index:20}.estimate-start-modal{background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 34%),#0c0c0cfa;border:1px solid var(--line);box-shadow:0 28px 90px #00000094;display:grid;gap:18px;max-height:calc(100vh - 48px);overflow:auto;padding:20px;width:min(980px,100%)}.estimate-start-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-start-grid .wide{grid-column:1 / -1}.estimate-start-grid select[multiple]{min-height:126px;padding:8px}.estimate-start-grid select[multiple] option{padding:8px}.field-source{color:var(--gold);font-size:10px;font-weight:1000;margin-left:6px}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.scopes-page{display:grid;gap:10px;margin-top:-140px}.estimate-context-strip{display:grid;gap:8px;grid-template-columns:1fr .55fr .85fr 1fr}.estimate-context-strip>div{background:#05070794;border:1px solid rgba(255,255,255,.1);display:grid;gap:3px;min-height:46px;padding:8px 10px}.estimate-context-strip span{color:var(--muted);font-size:9px;font-weight:1000;text-transform:uppercase}.estimate-context-strip strong{color:var(--text);font-size:12px;line-height:1.25}.scope-division-list{display:grid;gap:12px}.scope-division-card{background:#05070780;border:1px solid rgba(255,255,255,.1)}.scope-division-card[open]{border-color:#ffd22e80}.scope-division-card>summary{align-items:center;cursor:pointer;display:flex;gap:16px;justify-content:space-between;list-style:none;padding:16px}.scope-division-card>summary::-webkit-details-marker{display:none}.scope-summary-title{align-items:center;color:var(--text);display:inline-flex;font-size:20px;font-weight:1000;gap:8px}.scope-add-button{align-items:center;background:#ffd22e24;border:1px solid rgba(255,210,46,.46);color:var(--gold);display:inline-flex;height:24px;justify-content:center;padding:0;width:24px}.scope-add-button:hover,.scope-add-button:focus-visible{background:#ffd22e38;border-color:var(--gold)}.scope-delete-button{align-items:center;align-self:end;background:#ffffff0a;border:1px solid rgba(255,255,255,.22);color:var(--muted);display:inline-flex;height:28px;justify-content:center;padding:0;width:28px}.scope-delete-button:hover,.scope-delete-button:focus-visible{border-color:#ffd22e8c;color:var(--gold)}.field-label-with-action{align-items:center;display:inline-flex;gap:8px}.material-picker .scope-add-button{height:22px;position:relative;top:-2px;width:22px}.scope-division-card>summary strong{color:var(--gold);font-size:12px;font-weight:1000;text-transform:uppercase}.scope-division-card label,.scope-division-card p{margin:0 16px 16px}.scope-picker{display:grid;gap:10px}.scope-picker-actions{display:flex;gap:10px;justify-content:flex-end;margin:-6px 16px 16px}.scope-division-card select[multiple]{min-height:164px;padding:8px}.scope-division-card select[multiple] option{padding:8px}.selected-scope-list{display:grid;gap:8px;margin:0 16px 16px 42px;padding-left:18px}.selected-scope-list li{color:var(--gold);padding-left:4px}.selected-scope-row{align-items:center;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) 30px}.selected-scope-item{align-items:center;background:#ffffff09;border:1px solid rgba(255,255,255,.1);color:var(--text);display:grid;font-size:14px;font-weight:1000;gap:12px;grid-template-columns:minmax(160px,1fr) minmax(620px,2.8fr);padding:10px 12px;text-align:left;width:100%}.selected-scope-item:hover,.selected-scope-item:focus-visible{border-color:#ffd22e6b}.selected-scope-name{min-width:0}.selected-scope-metrics{align-items:center;display:grid;gap:8px;grid-template-columns:1.2fr .55fr .85fr .85fr .65fr}.selected-scope-metrics span{color:var(--muted);display:grid;font-size:9px;font-weight:1000;gap:2px;text-transform:uppercase}.selected-scope-metrics strong{color:var(--text);font-size:11px;line-height:1.1;text-transform:none}.selected-scope-delete{align-self:stretch;height:auto}.scope-detail-page{display:grid;gap:18px}.scope-detail-card{background:#05070780;border:1px solid rgba(255,255,255,.1);display:grid;gap:16px;padding:18px}.options-control{min-width:130px}.options-control input{min-height:38px;width:110px}.scope-option-stack{display:grid;gap:14px}.scope-option-card{align-content:start;background:#ffffff09;border:1px solid rgba(255,255,255,.1);display:grid;gap:10px;padding:10px}.scope-option-card>summary{cursor:pointer;display:block;list-style:none}.scope-option-card>summary::-webkit-details-marker{display:none}.scope-option-card:not([open]){gap:0}.scope-option-card:not([open]) .scope-option-toggle{margin-bottom:0}.scope-option-summary-card{align-items:end;background:#ffd22e0b;border:1px solid rgba(255,210,46,.22);display:grid;gap:8px;grid-template-columns:minmax(220px,1.2fr) repeat(3,minmax(130px,.5fr));padding:10px 12px}.scope-option-summary-card strong{color:var(--gold);font-size:12px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}.scope-option-summary-card span{color:var(--text);font-size:12px;font-weight:900}.option-title-editor{background:#ffd22e0f;border-color:#ffd22e57;color:var(--gold);font-size:13px;font-weight:1000;justify-self:start;letter-spacing:.08em;min-height:34px;text-transform:uppercase;width:min(340px,100%)}.scope-option-subheader{border-top:1px solid rgba(255,255,255,.1);color:var(--gold);font-size:11px;font-weight:1000;letter-spacing:.08em;margin:4px 0 0;padding-top:8px;text-transform:uppercase}.option-title-editor+.scope-option-subheader{border-top:0;margin-top:0;padding-top:0}.hauling-shared-toggle{justify-self:start}.scope-method-toggle-group{display:flex;flex-wrap:wrap;gap:10px;justify-self:start}.curb-general-grid{align-items:end;display:grid;gap:12px;grid-template-columns:220px auto auto;justify-content:start}.curb-general-grid label{gap:4px}.curb-general-grid .inline-toggle{align-items:center;display:grid;gap:5px;justify-items:center;margin:0;min-width:76px;text-align:center}.curb-general-grid .inline-toggle input{height:28px;min-height:28px;padding:0;width:28px}.curb-general-grid select{min-height:34px;padding:7px 9px}.curb-material-grid{align-items:end;display:grid;gap:8px;grid-template-columns:170px 110px 145px 160px 180px 130px minmax(120px,1fr) 150px;padding-right:26px}.flatwork-material-grid{align-items:end;display:grid;gap:8px;grid-template-columns:130px 76px 120px 100px 125px 130px 120px 150px 170px 120px minmax(120px,1fr) 150px;padding-right:26px}.ramp-material-grid{align-items:end;display:grid;gap:8px;grid-template-columns:120px 70px 112px 90px 118px 125px 112px 150px 150px 160px 116px minmax(120px,1fr) 150px;padding-right:26px}.island-material-grid{align-items:end;display:grid;gap:8px;grid-template-columns:120px 70px 112px 90px 118px 125px 112px 150px 150px 160px minmax(120px,1fr) 150px;padding-right:26px}.island-backfill-needed{grid-column:1 / 3}.island-backfill-picker{align-items:center;display:flex;flex-wrap:wrap;gap:10px;grid-column:3 / -1}.island-backfill-row-label{color:var(--muted);font-size:11px;font-weight:1000;padding-bottom:9px;text-transform:uppercase}.material-row-label{color:var(--gold);font-size:11px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}.striping-items-grid{align-items:end;display:grid;gap:8px;grid-template-columns:180px 100px 80px 105px 105px minmax(170px,1fr) 100px 110px 120px 32px;padding-right:26px}.striping-delete-button{align-self:end;height:34px;width:32px}.striping-add-row-button{align-items:center;display:inline-flex;gap:6px;justify-self:start;margin-top:4px}.bollards-details-grid{align-items:end;display:grid;gap:8px;grid-template-columns:90px 100px 145px 145px 105px 110px 124px 130px 124px 116px minmax(120px,1fr) 136px;padding-right:26px}.wheel-stops-material-grid{align-items:end;display:grid;gap:8px;grid-template-columns:110px 220px 138px 170px 118px minmax(120px,1fr) 150px;padding-right:26px}.signs-material-grid{align-items:end;display:grid;gap:8px;grid-template-columns:110px 130px 110px 124px 92px 104px 132px 108px minmax(120px,1fr) 150px;padding-right:26px}.scope-detail-grid{display:grid;gap:8px;grid-template-columns:120px 84px 145px 112px 96px 140px 110px 118px 76px 116px 104px 104px}.material-layer-grid{align-items:end;display:grid;gap:8px;grid-template-columns:120px 84px 145px 112px 96px 140px 110px 118px 76px 116px 104px 104px}.scope-detail-grid:has(.line-total-field),.material-layer-grid:has(.line-total-field){grid-template-columns:105px 72px 128px 96px 84px 118px 96px 104px 70px 96px 86px 86px minmax(120px,1fr) 136px;padding-right:26px}.asphalt-material-grid{grid-template-columns:105px 72px 128px 96px 84px 118px 96px 104px 70px 96px 86px 86px minmax(120px,1fr) 136px;padding-right:26px}.new-install-asphalt-layer-grid{grid-template-columns:105px 72px 128px 96px 84px 118px 96px 104px 70px 96px 86px 86px minmax(120px,1fr) 136px 32px;padding-right:26px}.new-install-material-grid{grid-template-columns:105px 72px 128px 96px 84px 118px 96px 104px 70px 96px 86px 86px minmax(120px,1fr) 136px;padding-right:26px}.hauling-grid{align-items:end;display:grid;gap:8px;grid-template-columns:100px 90px 120px 120px 112px 118px;max-width:690px}.hauling-cost-grid{grid-template-columns:100px 90px 120px 120px 112px 118px minmax(120px,1fr) 136px;max-width:none;padding-right:26px}.stone-installation-hauling-grid{grid-template-columns:100px 90px 90px 120px 120px minmax(120px,1fr) 150px;max-width:none;padding-right:26px}.hauling-cost-grid .concrete-dump-loads{grid-column:2}.hauling-cost-grid .concrete-dump-label{grid-column:1}.hauling-cost-grid .concrete-dump-fee{grid-column:3}.hauling-cost-grid .concrete-dump-cost{grid-column:4}.labor-grid{align-items:end;display:grid;gap:8px;grid-template-columns:100px 90px 120px;max-width:330px}.labor-cost-grid{grid-template-columns:100px 90px 120px 112px 118px minmax(120px,1fr) 136px;max-width:none;padding-right:26px}.equipment-grid{display:grid;gap:8px;grid-template-columns:150px 120px 110px 150px 120px 110px;max-width:780px}.equipment-grid:has(.line-total-field){grid-template-columns:150px 120px minmax(120px,1fr) 136px;max-width:none;padding-right:26px}.concrete-equipment-grid{align-items:end;grid-template-columns:repeat(3,96px) minmax(120px,1fr) 136px;max-width:none;padding-right:26px}.equipment-grid.concrete-equipment-grid:has(.line-total-field){grid-template-columns:repeat(3,96px) minmax(120px,1fr) 136px;max-width:none;padding-right:26px}.concrete-equipment-grid .inline-toggle{margin:0}.concrete-equipment-toggle{align-items:center;display:grid;gap:5px;justify-items:center;text-align:center}.concrete-equipment-toggle:nth-of-type(1){grid-column:1}.concrete-equipment-toggle:nth-of-type(2){grid-column:2}.concrete-equipment-toggle:nth-of-type(3){grid-column:3}.concrete-equipment-toggle input{height:28px;min-height:28px;padding:0;width:28px}.compact-checkbox-toggle{align-items:center;display:grid;gap:5px;justify-items:center;margin:0;text-align:center}.compact-checkbox-toggle input{height:28px;min-height:28px;padding:0;width:28px}.line-total-field{grid-column:-2 / -1}.new-install-asphalt-layer-grid .line-total-field{grid-column:-3 / -2}.new-install-asphalt-layer-grid .scope-delete-button{grid-column:-2 / -1}.travel-grid{display:grid;gap:8px}.travel-total-row{display:grid;grid-template-columns:minmax(120px,1fr) 136px;padding-right:26px}.travel-row{align-items:end;display:grid;gap:8px;grid-template-columns:100px 150px 110px 96px 96px 108px 108px 108px;max-width:900px}.hauling-grid strong,.labor-grid strong,.travel-row strong{color:var(--muted);font-size:11px;font-weight:1000;padding-bottom:9px;text-transform:uppercase}.scope-detail-grid label,.material-layer-grid label,.hauling-grid label,.labor-grid label,.equipment-grid label,.travel-row label,.travel-total-row label,.curb-material-grid label,.flatwork-material-grid label,.ramp-material-grid label,.island-material-grid label,.striping-items-grid label,.bollards-details-grid label,.wheel-stops-material-grid label,.signs-material-grid label{align-content:start;gap:4px}.scope-detail-grid input,.scope-detail-grid select,.material-layer-grid input,.material-layer-grid select,.hauling-grid input,.labor-grid input,.equipment-grid select,.travel-row input,.travel-row select,.travel-total-row input,.curb-material-grid input,.curb-material-grid select,.flatwork-material-grid input,.flatwork-material-grid select,.ramp-material-grid input,.ramp-material-grid select,.island-material-grid input,.island-material-grid select,.striping-items-grid input,.striping-items-grid select,.bollards-details-grid input,.bollards-details-grid select,.wheel-stops-material-grid input,.wheel-stops-material-grid select,.signs-material-grid input,.signs-material-grid select{min-height:34px;padding:7px 9px}.input-with-unit{align-items:center;background:#00000075;border:1px solid rgba(255,255,255,.08);display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:34px}.input-with-unit input{background:transparent;border:0;min-height:32px;min-width:0;padding-right:4px}.input-with-unit input:focus{outline:0}.input-with-unit:focus-within{border-color:var(--gold);box-shadow:0 0 0 1px #ffd22e52}.input-with-unit span{color:var(--muted);font-size:11px;font-weight:1000;padding:0 9px 0 4px;text-transform:none;white-space:nowrap}.scope-detail-grid .material-picker select,.material-layer-grid .material-picker select{transform:translateY(-2px)}.conditional-field-spacer{min-height:1px}.chip-grid{display:flex;flex-wrap:wrap;gap:8px}.chip{background:#ffffff0d;border:1px solid rgba(255,255,255,.14);color:var(--text);font-size:12px;font-weight:900;min-height:34px;padding:8px 10px}.chip.selected{background:#ffd22e29;border-color:var(--gold);color:var(--gold)}.check-list{display:grid;gap:8px}.check-item{align-items:center;border:1px solid rgba(255,255,255,.11);display:flex;gap:8px;padding:9px 10px}.check-item.missing{background:#ff9b9b14;color:var(--danger)}.check-item.ready{background:#89ff8d14;color:#dfffdc}.linked-job{background:#89ff8d14;border:1px solid rgba(137,255,141,.24);display:grid;gap:6px;padding:12px}.communication-grid{display:grid;gap:14px;grid-template-columns:minmax(220px,.6fr) minmax(320px,1fr) minmax(300px,.8fr)}.activity-feed{align-content:start;display:grid;gap:10px}.activity-item,.history-item{background:#ffffff0b;border:1px solid rgba(255,255,255,.1);color:var(--text);display:grid;gap:5px;padding:10px;text-align:left}.activity-item span,.history-item span{color:var(--muted);font-size:11px;font-weight:900}.activity-item p{font-size:13px;line-height:1.35}.history-grid{display:grid;gap:14px;grid-template-columns:1fr 1fr}.history-grid>div{align-content:start;display:grid;gap:9px}.history-grid h4{align-items:center;color:var(--gold);display:flex;font-size:13px;gap:6px;margin:0;text-transform:uppercase}.kpi-capture-grid{display:grid;gap:14px;grid-template-columns:1fr}.kpi-capture-grid>div{background:#ffffff09;border:1px solid rgba(255,255,255,.09);display:grid;gap:12px;padding:12px}.kpi-capture-grid h4{color:var(--gold);font-size:13px;margin:0;text-transform:uppercase}.check-grid{display:flex;flex-wrap:wrap;gap:8px}.checkbox-row{align-items:center;background:#05070799;border:1px solid rgba(255,255,255,.1);display:flex;gap:8px;min-height:38px;padding:8px 10px}.checkbox-row input{min-height:0;width:16px}.estimate-panel{gap:20px}.estimate-layout{display:grid;gap:18px;grid-template-columns:minmax(320px,400px) minmax(0,1fr)}.estimate-sidebar,.estimate-workspace{background:#05070773;border:1px solid rgba(255,255,255,.09);min-width:0;padding:14px}.estimate-sidebar{align-content:start;display:grid;gap:14px}.estimate-sidebar h3{color:var(--gold);font-size:13px;margin:0;text-transform:uppercase}.estimate-workspace{display:grid;gap:14px}.estimate-summary-row{display:grid;gap:10px;grid-template-columns:repeat(5,minmax(0,1fr))}.estimate-summary-row>div{background:#ffd22e14;border:1px solid rgba(255,210,46,.18);display:grid;gap:5px;padding:13px}.estimate-summary-row span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.estimate-summary-row strong{color:var(--gold);font-size:22px;line-height:1}.section-title-row,.line-heading{align-items:center;display:flex;gap:12px;justify-content:space-between}.estimate-line-grid{display:grid;gap:14px}.estimate-line{background:#ffffff09;border:1px solid rgba(255,255,255,.1);display:grid;gap:12px;padding:14px}.line-heading strong{color:var(--gold);font-size:14px;text-transform:uppercase}.line-totals{display:grid;gap:8px;grid-template-columns:repeat(7,minmax(0,1fr))}.line-totals span{align-items:center;background:#050707ad;border:1px solid rgba(255,255,255,.09);color:var(--text);display:flex;font-size:12px;font-weight:900;gap:5px;min-height:36px;padding:8px}.cost-line-table{display:grid;grid-template-columns:minmax(180px,1.3fr) 150px 110px 90px 120px 120px 100px;overflow-x:auto}.cost-line-table>*{border-bottom:1px solid rgba(255,255,255,.08)}.cost-line-table input,.cost-line-table select{border-radius:0;min-width:0}.cost-total{align-items:center;background:#050707;color:var(--text);display:flex;font-size:13px;font-weight:900;padding:10px 12px}.context-grid{display:grid;gap:10px;grid-template-columns:repeat(6,minmax(0,1fr))}.context-grid>div{background:#050707ad;border:1px solid rgba(255,255,255,.1);display:grid;gap:5px;min-height:82px;padding:11px}.context-grid span{color:var(--muted);font-size:11px;font-weight:1000;text-transform:uppercase}.context-grid strong{color:var(--text);font-size:14px;line-height:1.25}.context-grid small{color:var(--muted);font-size:12px;font-weight:800}.estimate-project-header{background:#f7f7f0f7;border:1px solid rgba(120,130,140,.28);color:#2d3035;display:grid;gap:14px;padding:18px 22px}.project-title-row{align-items:baseline;display:flex;flex-wrap:wrap;gap:10px}.project-title-row span{color:#667085;font-size:24px;font-weight:700}.project-title-row strong{color:#2d3035;font-size:30px;font-weight:1000;line-height:1.05}.project-context-row{display:grid;gap:16px;grid-template-columns:1.25fr 1.35fr 1.1fr 1fr}.project-context-row>div{align-content:start;border-left:3px solid #d9dde5;display:grid;gap:4px 10px;grid-template-columns:auto 1fr;min-height:92px;padding-left:14px}.project-context-row span{color:#667085;font-size:16px;font-weight:800}.project-context-row strong{color:#15839a;font-size:16px;font-weight:800}.project-context-row small{color:#2d3035;font-size:16px;font-weight:700;grid-column:2}@media(max-width:820px){.shell,.login-shell{padding:16px}.login-panel{grid-template-columns:1fr}.login-panel{min-height:0}.login-hero,.login-form,.login-loading-panel{padding:26px}.login-hero{min-height:360px}.login-hero:after{inset:92px 18px 18px}.login-hero h1{font-size:44px}.login-form{border-left:0;border-top:1px solid rgba(255,255,255,.09)}.login-logo-lockup{align-items:flex-start;flex-direction:column}.command-hub{grid-template-rows:auto auto;min-height:100vh;padding:18px}.hub-copy{align-items:start;min-height:0;padding-top:4px}.hub-copy h2{font-size:38px}.hub-copy p{text-align:left}.hub-stage{display:grid;gap:12px;grid-template-columns:1fr;min-height:0}.hub-orbit{aspect-ratio:auto;display:grid;gap:12px;left:auto;max-height:none;max-width:none;position:relative;top:auto;transform:none;width:100%}.hub-stage:before,.hub-map,.hub-core-ring{display:none}.hub-core,.hub-node{left:auto;position:relative;top:auto;transform:none;width:100%}.hub-core{aspect-ratio:auto;border-radius:8px;justify-items:center;min-height:112px;padding:18px}.hub-core:hover,.hub-core:focus-visible,.hub-node:hover,.hub-node:focus-visible{transform:none}.hub-core img{max-height:92px;max-width:180px}.hub-node{min-height:92px}.topbar,.panel-header{align-items:stretch;display:grid}.home-shell .topbar{align-items:center;display:flex;padding:10px}.panel-actions{justify-content:stretch}.crm-summary-row,.time-summary-row,.time-card-header,.timekeeping-layout,.crm-layout,.estimating-home,.estimate-context-strip,.estimate-layout,.estimate-summary-row,.detail-status-bar,.detail-grid,.communication-grid,.history-grid,.line-totals,.context-grid,.project-context-row,.curb-general-grid,.selected-scope-item,.scope-detail-grid,.material-layer-grid,.hauling-grid,.labor-grid,.equipment-grid,.travel-grid,.travel-row,.field-grid.two{grid-template-columns:1fr}.project-context-row>div{grid-template-columns:1fr}.project-context-row small{grid-column:auto}.selected-scope-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.form-section.wide,.field-grid .wide,.estimate-start-grid .wide{grid-column:auto}.estimate-start-grid{grid-template-columns:1fr}}
