:root { color-scheme: dark; --bg:#050505; --surface:#0b0b0c; --surface-2:#111113; --text:#f1f1f2; --muted:#8f8f96; --line:rgba(255,255,255,.14); --red:#ff3025; --blue:#6681ff; --green:#5fc88a; --yellow:#e2b95f; --radius:14px; }
* { box-sizing:border-box; } [hidden]{display:none!important} body{margin:0;min-width:320px;background:var(--bg);color:var(--text);font-family:"Helvetica Neue",Arial,sans-serif} button,input,select,textarea{color:inherit;font:inherit} button{border:0;cursor:pointer} :focus-visible{outline:2px solid var(--blue);outline-offset:3px}.eyebrow{margin:0;color:var(--muted);font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.auth-view{display:grid;min-height:100svh;grid-template-columns:.8fr 1.2fr;background:radial-gradient(circle at 20% 70%,rgba(255,48,37,.14),transparent 25%),#050505}.auth-brand{padding:45px 6vw;font-size:22px;font-weight:700;letter-spacing:.2em}.auth-brand span,.crm-brand span{color:var(--red)}.auth-brand small,.crm-brand small{margin-left:14px;color:var(--muted);font-size:9px;font-weight:500;letter-spacing:.15em}.auth-panel{display:grid;place-items:center;padding:40px;border-left:1px solid var(--line);background:var(--surface)}.auth-panel>div{width:min(440px,100%)}.auth-panel h1{margin:28px 0 18px;font-size:clamp(42px,5vw,72px);font-weight:250;line-height:.95;letter-spacing:-.05em;text-transform:uppercase}.auth-panel>div>p:not(.eyebrow){margin:0 0 42px;color:var(--muted);line-height:1.6}.auth-panel form{display:grid;gap:20px}.auth-panel label,.lead-drawer label{display:grid;gap:9px}.auth-panel label span,.lead-drawer label span,.filters label span{color:var(--muted);font-size:9px;letter-spacing:.12em;text-transform:uppercase}.auth-panel input,.lead-drawer input,.lead-drawer select,.lead-drawer textarea,.filters input,.filters select{width:100%;border:1px solid var(--line);border-radius:10px;background:#080809;outline:0}.auth-panel input{height:56px;padding:0 14px}.auth-panel input:focus,.lead-drawer input:focus,.lead-drawer select:focus,.lead-drawer textarea:focus,.filters input:focus,.filters select:focus{border-color:var(--blue)}.auth-panel button,.lead-drawer form>button{min-height:56px;border-radius:10px;background:var(--red);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.form-message{min-height:20px;margin:0;color:#ff776f;font-size:12px;line-height:1.5}.form-message.is-success{color:var(--green)}
.crm-header{position:sticky;z-index:20;top:0;display:grid;height:72px;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(18px,3.5vw,56px);border-bottom:1px solid var(--line);background:rgba(5,5,5,.92);backdrop-filter:blur(18px)}.crm-brand{font-size:18px;font-weight:700;letter-spacing:.2em}.crm-header nav{display:flex;height:100%;gap:25px}.crm-header nav button{position:relative;padding:0 10px;background:none;color:var(--muted);font-size:11px;letter-spacing:.09em;text-transform:uppercase}.crm-header nav button::after{position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--red);content:"";opacity:0}.crm-header nav button.is-active{color:#fff}.crm-header nav button.is-active::after{opacity:1}.crm-header nav i{display:inline-grid;min-width:20px;height:20px;margin-left:6px;place-items:center;border-radius:99px;background:rgba(255,48,37,.15);color:#ff766e;font-size:9px;font-style:normal}.user-menu{justify-self:end;display:flex;align-items:center;gap:18px;color:var(--muted);font-size:11px}.user-menu button,.refresh-button{padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:transparent;color:#c8c8cc;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.crm-content{padding:clamp(35px,5vw,78px) clamp(18px,4vw,64px) 80px}.crm-section{max-width:1500px;margin:auto}.page-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:48px}.page-heading h1{margin:18px 0 0;font-size:clamp(52px,7vw,105px);font-weight:200;line-height:.88;letter-spacing:-.06em;text-transform:uppercase}.period-label{color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.lead-summary,.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.lead-summary article,.metric-grid article{min-height:150px;padding:24px;border-right:1px solid var(--line)}.lead-summary article:last-child,.metric-grid article:last-child{border-right:0}.lead-summary span,.metric-grid span,.metric-grid small{display:block;color:var(--muted);font-size:9px;letter-spacing:.12em;text-transform:uppercase}.lead-summary b,.metric-grid b{display:block;margin-top:45px;font-size:42px;font-weight:250}.metric-grid b i{font-style:normal}.metric-grid small{margin-top:7px;letter-spacing:.04em;text-transform:none}.filters{display:grid;grid-template-columns:1fr 240px;gap:14px;margin:35px 0 18px}.filters label{display:grid;gap:8px}.filters input,.filters select{height:48px;padding:0 13px;background:var(--surface)}
.leads-table-wrap{min-height:300px;overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.leads-table{width:100%;border-collapse:collapse}.leads-table th{padding:15px 16px;border-bottom:1px solid var(--line);color:var(--muted);font-size:9px;font-weight:500;letter-spacing:.12em;text-align:left;text-transform:uppercase}.leads-table td{padding:17px 16px;border-bottom:1px solid var(--line);font-size:12px}.leads-table tbody tr{transition:background .16s}.leads-table tbody tr:hover{background:rgba(255,255,255,.025)}.leads-table td small{display:block;margin-top:5px;color:var(--muted);font-size:10px}.leads-table td strong{font-size:13px;font-weight:550}.lead-open{width:34px;height:34px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--blue)}.status-pill{display:inline-flex;padding:7px 9px;border-radius:99px;background:rgba(255,255,255,.06);color:#bbb;font-size:9px;letter-spacing:.07em;text-transform:uppercase}.status-pill[data-status="new"]{background:rgba(255,48,37,.13);color:#ff827b}.status-pill[data-status="in_progress"]{background:rgba(102,129,255,.14);color:#9cadff}.status-pill[data-status="waiting"]{background:rgba(226,185,95,.13);color:#e2c679}.status-pill[data-status="won"]{background:rgba(95,200,138,.13);color:#71d49a}.empty-state{display:grid;min-height:360px;place-content:center;text-align:center}.empty-state span{color:var(--red);font-size:10px}.empty-state h2{margin:22px 0 10px;font-size:30px;font-weight:300}.empty-state p{margin:0;color:var(--muted);font-size:13px}
.chart-card,.breakdown-card{margin-top:30px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.card-heading{display:flex;min-height:68px;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--line);font-size:12px}.card-heading small{display:block;margin-top:5px;color:var(--muted);font-size:9px}.legend{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:9px}.legend i{width:8px;height:8px;border-radius:2px;background:var(--blue)}.legend i:nth-of-type(2){margin-left:10px;background:var(--red)}.activity-chart{display:grid;height:280px;grid-template-columns:repeat(14,1fr);align-items:end;gap:8px;padding:28px 20px 20px}.chart-day{display:grid;height:100%;grid-template-rows:1fr auto;gap:9px;align-items:end}.chart-bars{display:flex;height:100%;align-items:end;justify-content:center;gap:3px}.chart-bars i{display:block;width:8px;min-height:2px;border-radius:3px 3px 0 0;background:var(--blue)}.chart-bars i:last-child{background:var(--red)}.chart-day span{color:var(--muted);font-size:8px;text-align:center}.metric-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px}.breakdown-card>div:last-child{padding:10px 20px 20px}.breakdown-row{display:grid;grid-template-columns:140px 1fr 45px;align-items:center;gap:15px;padding:13px 0;border-bottom:1px solid var(--line);font-size:11px}.breakdown-row:last-child{border-bottom:0}.breakdown-row span{color:var(--muted)}.breakdown-row i{height:5px;border-radius:99px;background:var(--line);overflow:hidden}.breakdown-row i b{display:block;height:100%;background:linear-gradient(90deg,var(--red),var(--blue))}.breakdown-row> b{text-align:right}.privacy-note{margin:28px 0 0;color:var(--muted);font-size:11px;line-height:1.6}
.drawer-backdrop{position:fixed;z-index:29;inset:0;background:rgba(0,0,0,.62);opacity:0;pointer-events:none;transition:opacity .25s}.drawer-backdrop.is-open{opacity:1;pointer-events:auto}.lead-drawer{position:fixed;z-index:30;top:0;right:0;width:min(520px,100%);height:100svh;overflow:auto;padding:45px 34px;background:#0b0b0c;box-shadow:-30px 0 80px rgba(0,0,0,.4);transform:translateX(105%);transition:transform .35s cubic-bezier(.22,1,.36,1)}.lead-drawer.is-open{transform:translateX(0)}.drawer-close{position:absolute;top:20px;right:20px;width:38px;height:38px;border:1px solid var(--line);border-radius:8px;background:transparent;font-size:23px}.lead-drawer h2{margin:22px 0 35px;font-size:43px;font-weight:250;line-height:1;letter-spacing:-.04em}.lead-info{margin-bottom:34px;border-top:1px solid var(--line)}.lead-info p{display:grid;grid-template-columns:130px 1fr;gap:15px;margin:0;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.lead-info span{color:var(--muted);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.lead-drawer form{display:grid;gap:20px}.lead-drawer input,.lead-drawer select{height:49px;padding:0 12px}.lead-drawer textarea{padding:12px;resize:vertical}.lead-drawer form>button{margin-top:5px}
.user-menu>span{display:grid;gap:3px;text-align:right}.user-menu b{color:#ddd;font-size:11px;font-weight:500}.user-menu small{color:var(--muted);font-size:8px;letter-spacing:.1em;text-transform:uppercase}
.overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.overview-grid article{min-height:170px;padding:26px;border-right:1px solid var(--line)}.overview-grid article:last-child{border-right:0}.overview-grid span,.overview-grid small{display:block;color:var(--muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.overview-grid b{display:block;margin:34px 0 7px;font-size:48px;font-weight:250}.overview-grid small{letter-spacing:.02em;text-transform:none}.workspace-card{position:relative;margin-top:30px;padding:clamp(28px,5vw,70px);overflow:hidden;border:1px solid rgba(255,48,37,.32);border-radius:var(--radius);background:radial-gradient(circle at 85% 20%,rgba(255,48,37,.15),transparent 35%),var(--surface)}.workspace-card::after{position:absolute;right:-8%;bottom:-55%;width:38%;aspect-ratio:1;border:1px solid rgba(102,129,255,.22);border-radius:50%;content:""}.workspace-card h2{max-width:760px;margin:55px 0 18px;font-size:clamp(34px,4.5vw,68px);font-weight:250;line-height:1}.workspace-card>p:not(.eyebrow){max-width:700px;color:#b8b8be;line-height:1.7}.workspace-card button{position:relative;z-index:1;min-height:48px;margin-top:22px;padding:0 18px;border:1px solid var(--line);border-radius:8px;background:transparent;font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.section-state{min-height:120px;margin:0;display:grid;place-items:center;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);font-size:13px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-card{display:grid;min-height:370px;grid-template-rows:auto auto auto 1fr auto;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.project-card__top{display:flex;justify-content:space-between;color:var(--muted);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.project-card__top>span{color:var(--red)}.project-card h2{margin:50px 0 12px;font-size:clamp(24px,2.2vw,34px);font-weight:300;line-height:1.05}.project-card__address{margin:0 0 35px;color:var(--muted);font-size:12px}.progress-row{margin-top:16px}.progress-row p{display:flex;justify-content:space-between;margin:0 0 8px;color:var(--muted);font-size:9px;letter-spacing:.04em}.progress-row p b{color:#ddd;font-weight:500}.progress-row>i{display:block;height:3px;overflow:hidden;background:var(--line)}.progress-row>i>b{display:block;height:100%;background:linear-gradient(90deg,var(--red),var(--blue))}.project-card__open{align-self:end;min-height:44px;margin-top:28px;border-top:1px solid var(--line);background:none;color:#aab7ff;font-size:10px;letter-spacing:.08em;text-align:left;text-transform:uppercase}.project-detail__close{margin-bottom:28px;padding:10px 0;background:none;color:#aab7ff;font-size:11px}.project-detail__heading h2{margin:14px 0 10px;font-size:clamp(38px,5vw,74px);font-weight:250;letter-spacing:-.04em}.project-detail__heading p:last-child{color:var(--muted)}.project-progress{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:45px 0;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.subheading{margin:50px 0 18px;font-size:24px;font-weight:300}.task-list{border-top:1px solid var(--line)}.task-list article{display:flex;min-height:82px;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.task-list h4{margin:0 0 7px;font-size:16px;font-weight:400}.task-list small{color:var(--muted)}.task-status{padding:7px 9px;border-radius:99px;background:rgba(102,129,255,.12);color:#9cadff;font-size:8px;letter-spacing:.08em;text-transform:uppercase}
.project-dialog{width:min(580px,calc(100% - 32px));padding:0;border:1px solid var(--line);border-radius:var(--radius);background:#0b0b0c;color:var(--text)}.project-dialog::backdrop{background:rgba(0,0,0,.75);backdrop-filter:blur(5px)}.project-dialog form{display:grid;gap:18px;padding:28px}.dialog-heading{display:flex;align-items:start;justify-content:space-between;margin-bottom:8px}.dialog-heading h2{margin:14px 0 0;font-size:38px;font-weight:300}.dialog-heading button{width:38px;height:38px;border:1px solid var(--line);border-radius:8px;background:transparent;font-size:22px}.project-dialog label{display:grid;gap:8px}.project-dialog label span{color:var(--muted);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.project-dialog input,.project-dialog select{width:100%;height:50px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#080809}.project-dialog input:focus,.project-dialog select:focus{border-color:var(--blue);outline:0}.project-dialog form>button[type=submit]{min-height:52px;margin-top:8px;border-radius:8px;background:var(--red);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.users-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.users-table{width:100%;border-collapse:collapse}.users-table th{padding:15px 18px;border-bottom:1px solid var(--line);color:var(--muted);font-size:9px;font-weight:500;letter-spacing:.12em;text-align:left;text-transform:uppercase}.users-table td{padding:19px 18px;border-bottom:1px solid var(--line);font-size:12px}.users-table tbody tr:last-child td{border-bottom:0}.users-table td strong{display:block;font-size:13px;font-weight:500}.users-table td small{display:block;margin-top:5px;color:var(--muted);font-size:9px}.role-pill,.access-pill{display:inline-flex;padding:7px 9px;border-radius:99px;background:rgba(102,129,255,.12);color:#aab7ff;font-size:9px;letter-spacing:.06em;text-transform:uppercase}.access-pill.is-active{background:rgba(95,200,138,.12);color:#71d49a}.access-pill.is-disabled{background:rgba(255,48,37,.12);color:#ff827b}.user-dialog h2{max-width:430px;font-size:34px}
.project-team{margin:30px 0 0;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.project-team__heading{display:flex;min-height:58px;align-items:start;justify-content:space-between;gap:24px}.project-team__heading h3{margin:10px 0 0;font-size:28px;font-weight:300}.project-team__message{margin:4px 0 0;color:var(--muted);font-size:11px}.project-team__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.project-team__group{padding:20px;border:1px solid var(--line);border-radius:10px;background:#080809}.project-team__group h4{margin:0 0 16px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.project-team__list{display:grid;gap:8px;min-height:55px}.project-team__empty{margin:0;padding:15px 0;color:var(--muted);font-size:11px}.project-team__person{display:flex;min-height:52px;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line)}.project-team__person span{display:grid;gap:4px}.project-team__person strong{font-size:12px;font-weight:500}.project-team__person small{color:var(--muted);font-size:9px}.project-team__person button{padding:7px 9px;border:1px solid rgba(255,48,37,.28);border-radius:7px;background:transparent;color:#ff827b;font-size:9px;text-transform:uppercase}.project-team__controls{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:18px}.project-team__controls select{min-width:0;height:44px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#0d0d0f;font-size:11px}.project-team__controls button{padding:0 13px;border-radius:8px;background:var(--red);font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.project-team__controls button:disabled{cursor:not-allowed;opacity:.4}
@media(max-width:850px){.auth-view{grid-template-columns:1fr}.auth-brand{padding:25px}.auth-panel{border-left:0;border-top:1px solid var(--line);padding:50px 24px}.crm-header{grid-template-columns:1fr auto;height:auto;min-height:68px;padding:12px 18px;background:#050505;-webkit-backdrop-filter:none;backdrop-filter:none}.crm-header nav{position:fixed;z-index:18;right:0;bottom:0;left:0;height:62px;justify-content:center;border-top:1px solid var(--line);background:#080808}.crm-header nav button{flex:1}.user-menu span{display:none}.crm-content{padding-bottom:95px}.lead-summary,.metric-grid{grid-template-columns:repeat(2,1fr)}.lead-summary article:nth-child(2),.metric-grid article:nth-child(2){border-right:0}.lead-summary article:nth-child(-n+2),.metric-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.filters{grid-template-columns:1fr}.metric-columns{grid-template-columns:1fr}.leads-table th:nth-child(3),.leads-table td:nth-child(3),.leads-table th:nth-child(4),.leads-table td:nth-child(4){display:none}.activity-chart{gap:4px;padding-right:10px;padding-left:10px}.chart-bars i{width:5px}.breakdown-row{grid-template-columns:110px 1fr 35px}}
@media(max-width:850px){.crm-header nav{overflow-x:auto;justify-content:flex-start;scrollbar-width:none}.crm-header nav::-webkit-scrollbar{display:none}.crm-header nav button{min-width:78px;flex:0 0 auto;padding-right:7px;padding-left:7px}}
@media(max-width:1100px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.project-grid{grid-template-columns:1fr 1fr}.project-card{min-height:340px}.overview-grid{grid-template-columns:1fr 1fr}.project-team__grid{grid-template-columns:1fr}}
@media(max-width:480px){.page-heading{align-items:start}.page-heading h1{font-size:52px}.refresh-button{padding:9px}.lead-summary article,.metric-grid article{min-height:120px;padding:18px}.lead-summary b,.metric-grid b{margin-top:30px;font-size:34px}.leads-table th:nth-child(1),.leads-table td:nth-child(1){display:none}.lead-drawer{padding:55px 20px 30px}.lead-drawer h2{font-size:36px}.activity-chart{height:230px}.chart-day:nth-child(even) span{opacity:0}.crm-header nav{overflow-x:auto;justify-content:flex-start;scrollbar-width:none}.crm-header nav::-webkit-scrollbar{display:none}.crm-header nav button{min-width:78px;padding:0 5px;font-size:9px}.project-grid,.overview-grid,.project-progress{grid-template-columns:1fr}.overview-grid article{min-height:135px;border-right:0;border-bottom:1px solid var(--line)}.overview-grid article:last-child{border-bottom:0}.project-card{min-height:330px}.field-pair{grid-template-columns:1fr}.project-dialog form{padding:22px}.workspace-card h2{margin-top:40px}.users-table th:nth-child(3),.users-table td:nth-child(3){display:none}.users-table th,.users-table td{padding-right:12px;padding-left:12px}.project-team{padding:20px}.project-team__heading{display:block}.project-team__message{margin-top:10px}.project-team__controls{grid-template-columns:1fr}.project-team__controls button{min-height:42px}}

/* Estimate constructor and role-specific work volumes. */
.project-progress{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.estimate-module{margin-top:30px;padding:clamp(20px,3vw,32px);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,rgba(102,129,255,.05),transparent 35%),var(--surface)}.estimate-module__heading,.estimate-editor__header,.estimate-card__top,.client-estimate__top{display:flex;align-items:start;justify-content:space-between;gap:20px}.estimate-module__heading h3{margin:10px 0 0;font-size:30px;font-weight:300}.estimate-button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;padding:0 14px;border-radius:8px;background:var(--red);color:#fff;font-size:9px;font-weight:700;letter-spacing:.07em;text-decoration:none;text-transform:uppercase}.estimate-button--ghost{border:1px solid var(--line);background:transparent;color:#b9c2ff}.estimate-button--danger{border:1px solid rgba(255,48,37,.34);background:transparent;color:#ff827b}.estimate-button:disabled{cursor:not-allowed;opacity:.45}.estimate-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}.estimate-card{padding:20px;border:1px solid var(--line);border-radius:11px;background:#080809}.estimate-card h4,.client-estimate__top h4{margin:12px 0 5px;font-size:21px;font-weight:350}.estimate-card small,.client-estimate__top p{color:var(--muted);font-size:10px}.estimate-status{display:inline-flex;padding:6px 8px;border-radius:99px;background:rgba(226,185,95,.12);color:#e2c679;font-size:8px;letter-spacing:.08em;text-transform:uppercase}.estimate-status--approved{background:rgba(95,200,138,.12);color:#71d49a}.estimate-status--draft{background:rgba(102,129,255,.12);color:#aab7ff}.estimate-card__totals{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.estimate-card__totals span{display:grid;gap:6px}.estimate-card__totals small{font-size:8px;text-transform:uppercase}.estimate-card__totals b{font-size:11px;font-weight:500}.estimate-empty{margin:20px 0;padding:28px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-size:12px}.estimate-create,.estimate-metadata,.estimate-new-section{display:grid;grid-template-columns:2fr 1fr auto;gap:12px;align-items:end;margin-top:20px;padding:18px;border:1px solid rgba(102,129,255,.25);border-radius:10px;background:#09090b}.estimate-create label,.estimate-metadata label,.estimate-new-section label,.estimate-item label,.task-from-volume__fields label{display:grid;gap:7px;min-width:0}.estimate-create label span,.estimate-metadata label span,.estimate-new-section label span,.estimate-item label span,.task-from-volume__fields label span{color:var(--muted);font-size:8px;letter-spacing:.08em;text-transform:uppercase}.estimate-create input,.estimate-metadata input,.estimate-new-section input,.estimate-item input,.estimate-item select,.task-from-volume input,.task-from-volume select{width:100%;height:42px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:#070708;font-size:11px}.estimate-editor{margin-top:26px;padding-top:26px;border-top:1px solid var(--line)}.estimate-editor__header h4{margin:10px 0;font-size:34px;font-weight:300}.estimate-editor__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.estimate-editor__message{min-height:18px;color:var(--yellow);font-size:11px}.estimate-summary{display:grid;grid-template-columns:repeat(4,1fr);margin:24px 0;border:1px solid var(--line);border-radius:10px}.estimate-summary article{padding:16px;border-right:1px solid var(--line)}.estimate-summary article:last-child{border:0}.estimate-summary span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase}.estimate-summary b{display:block;margin-top:13px;font-size:18px;font-weight:400}.estimate-section{margin-top:20px;padding:20px;border:1px solid var(--line);border-radius:11px;background:#080809}.estimate-section__heading small{color:var(--red);font-size:8px;text-transform:uppercase}.estimate-section__heading h5,.client-estimate__section h5{margin:8px 0 18px;font-size:20px;font-weight:400}.estimate-item{display:grid;grid-template-columns:80px 100px minmax(180px,2fr) 70px 95px repeat(3,minmax(100px,1fr));gap:9px;margin-top:10px;padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:9px}.estimate-item label:nth-of-type(9),.estimate-item label:nth-of-type(10),.estimate-item__footer{grid-column:1/-1}.estimate-item__footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding-top:5px}.estimate-item__footer>span{margin-right:auto;color:var(--muted);font-size:9px}.estimate-add{margin-top:12px}.estimate-add summary,.estimate-history summary{cursor:pointer;color:#aab7ff;font-size:10px;text-transform:uppercase}.estimate-add .estimate-item{margin-top:14px}.estimate-new-section{grid-template-columns:1fr 1fr auto}.estimate-history{margin-top:24px;padding:18px;border:1px solid var(--line);border-radius:10px}.estimate-history__row{display:grid;width:100%;grid-template-columns:110px 1fr 1fr;gap:14px;margin-top:10px;padding:12px;border-top:1px solid var(--line);background:transparent;text-align:left}.estimate-history__row span,.estimate-history__row small{color:var(--muted)}.client-estimate__top{margin-top:24px;padding-bottom:22px;border-bottom:1px solid var(--line)}.client-estimate__section{margin-top:24px}.client-estimate__rows{border-top:1px solid var(--line)}.client-estimate__row,.work-volume__row{display:grid;grid-template-columns:minmax(220px,2fr) 120px 120px 140px;align-items:center;gap:14px;min-height:64px;border-bottom:1px solid var(--line);font-size:11px}.client-estimate__row>span:first-child{display:grid;gap:5px}.client-estimate__row small{color:var(--muted);font-size:8px}.client-estimate__row b{text-align:right}.client-estimate__total{display:flex;justify-content:flex-end;gap:30px;padding:24px 0;font-size:16px}.client-estimate__total b{font-size:22px}.estimate-note{color:var(--muted);font-size:11px}.work-volumes{margin-top:34px;padding-top:28px;border-top:1px solid var(--line)}.work-volumes>h4{margin:10px 0 20px;font-size:26px;font-weight:300}.work-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:18px;border:1px solid var(--line);border-radius:10px}.task-from-volume{margin-top:20px}.work-volume__row{grid-template-columns:28px minmax(180px,1.5fr) minmax(210px,1fr) 110px}.work-volume__row>span{display:grid;gap:4px}.work-volume__row small,.work-volume__stats{color:var(--muted);font-size:9px}.work-volume__row>input[type=number]{height:38px}.task-from-volume__fields{display:grid;grid-template-columns:2fr 2fr 1fr 1fr 1fr 1fr;gap:10px;margin-top:18px}.task-checkbox{display:flex!important;align-items:center;align-self:end;min-height:42px}.task-checkbox input{width:18px;height:18px}.task-from-volume>button{margin-top:16px}
@media(max-width:1100px){.estimate-item{grid-template-columns:80px 90px minmax(180px,2fr) 70px repeat(2,1fr)}.estimate-item label:nth-of-type(9),.estimate-item label:nth-of-type(10),.estimate-item__footer{grid-column:1/-1}.task-from-volume__fields{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.estimate-list{grid-template-columns:1fr}.estimate-card__totals,.estimate-summary{grid-template-columns:repeat(2,1fr)}.estimate-item{grid-template-columns:repeat(2,1fr)}.estimate-item__name,.estimate-item label:nth-of-type(9),.estimate-item label:nth-of-type(10),.estimate-item__footer{grid-column:1/-1}.client-estimate__rows,.work-volume__rows{overflow-x:auto}.client-estimate__row{min-width:680px}.work-volume__row{min-width:720px}.task-from-volume__fields{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.estimate-module{padding:16px}.estimate-module__heading,.estimate-editor__header,.client-estimate__top{display:block}.estimate-module__heading>.estimate-button,.client-estimate__top>.estimate-button{margin-top:16px}.estimate-create,.estimate-metadata,.estimate-new-section,.task-from-volume__fields{grid-template-columns:1fr}.estimate-editor__actions{justify-content:flex-start;margin-top:16px}.estimate-summary,.work-progress{grid-template-columns:1fr}.estimate-summary article{border-right:0;border-bottom:1px solid var(--line)}.estimate-item{grid-template-columns:1fr}.estimate-item>*{grid-column:1!important}.estimate-item__footer{align-items:stretch;flex-direction:column}.estimate-item__footer>span{margin:0 0 6px}.client-estimate__total{justify-content:space-between;gap:12px}}

/* Temporary, guarded local-development login shortcuts. */
.dev-quick-login{margin-top:30px;padding:18px;border:1px solid rgba(226,185,95,.42);border-radius:12px;background:linear-gradient(135deg,rgba(226,185,95,.11),rgba(255,48,37,.04))}
.dev-quick-login__heading{display:flex;align-items:center;gap:10px}.dev-quick-login__heading>span{display:inline-flex;min-height:24px;align-items:center;padding:0 8px;border-radius:99px;background:var(--yellow);color:#17130a;font-size:8px;font-weight:800;letter-spacing:.12em}.dev-quick-login__heading>strong{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.dev-quick-login>p{margin:12px 0 0;color:#b8aa87;font-size:11px;line-height:1.55}.dev-quick-login__users{display:grid;gap:8px;margin-top:16px}
.auth-panel .dev-quick-login__button{display:grid;min-height:58px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 14px;padding:10px 12px;border:1px solid rgba(255,255,255,.12);border-radius:9px;background:#09090a;text-align:left;text-transform:none}.auth-panel .dev-quick-login__button:hover{border-color:rgba(226,185,95,.56);background:#11100d}.auth-panel .dev-quick-login__button:disabled{cursor:wait;opacity:.5}.dev-quick-login__button span{overflow:hidden;font-size:13px;font-weight:600;text-overflow:ellipsis}.dev-quick-login__button small{grid-row:2;overflow:hidden;color:var(--muted);font-size:9px;letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.dev-quick-login__button i{grid-row:1/3;grid-column:2;color:#e2c679;font-size:9px;font-style:normal;letter-spacing:.04em;text-transform:uppercase}.dev-quick-login__message{min-height:17px!important;color:#e2c679!important}
@media(max-width:480px){.auth-panel .dev-quick-login__button{grid-template-columns:1fr}.dev-quick-login__button i{grid-row:auto;grid-column:auto;margin-top:4px}}

/* Estimate import entry points and imported subsection hierarchy. */
.estimate-module__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.estimate-section__children{display:grid;gap:12px;margin:18px 0 4px;padding-left:18px;border-left:2px solid rgba(102,129,255,.22)}.estimate-section--subsection{margin-top:0;background:#060607}.estimate-section--subsection .estimate-section__heading small{color:#aab7ff}.client-estimate__section--subsection{margin:16px 0 0 18px;padding-left:18px;border-left:2px solid rgba(102,129,255,.2)}
@media(max-width:480px){.estimate-module__actions{justify-content:flex-start;margin-top:16px}.estimate-module__actions .estimate-button{width:100%}.estimate-section__children,.client-estimate__section--subsection{margin-left:0;padding-left:10px}}

/* Client estimate document: shared visual language with the A4 PDF. */
.estimate-module--document{max-width:1240px;margin-inline:auto;padding:0;border:0;background:#f5f5f3;color:#111}
.estimate-module--document>.estimate-module__heading{padding:22px 26px;color:var(--text)}
.estimate-document{--estimate-accent:#f15a0a;--estimate-accent-hover:#d94d00;--estimate-text:#111;--estimate-text-secondary:#686868;--estimate-border:#e3e3e0;--estimate-surface:#f7f7f5;--estimate-surface-strong:#f0f0ed;--estimate-white:#fff;max-width:1180px;margin:0 auto 32px;padding:clamp(24px,5vw,58px);border-radius:16px;background:var(--estimate-white);box-shadow:0 10px 40px rgba(0,0,0,.06);color:var(--estimate-text);font-family:Arial,sans-serif}
.estimate-document__actions{display:flex;justify-content:flex-end;gap:10px;margin-bottom:24px}
.estimate-document__button{display:inline-flex;min-height:44px;align-items:center;padding:0 16px;border:1px solid var(--estimate-accent);border-radius:7px;background:var(--estimate-accent);color:#fff;font-size:12px;font-weight:700;text-decoration:none}
.estimate-document__button:hover{background:var(--estimate-accent-hover)}.estimate-document__button--secondary{background:#fff;color:var(--estimate-accent)}
.estimate-document__header{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(28px,5vw,72px);align-items:end}
.estimate-document__logo{font-size:24px;font-weight:800;letter-spacing:-.04em}.estimate-document__label{margin:34px 0 12px;color:var(--estimate-accent);font-size:12px;font-weight:700;letter-spacing:.12em}
.estimate-document__intro h4{margin:0;white-space:pre-line;font-size:clamp(42px,5vw,60px);font-weight:700;letter-spacing:-.045em;line-height:.98}.estimate-document__draft{display:inline-flex;margin-top:16px;padding:5px 8px;border:1px solid var(--estimate-border);border-radius:5px;color:var(--estimate-text-secondary);font-size:11px}
.estimate-document__summary{display:grid;gap:13px;padding:26px;border:1px solid var(--estimate-border);border-bottom:2px solid var(--estimate-accent);border-radius:10px;background:var(--estimate-surface)}
.estimate-document__summary>small{font-size:11px;font-weight:700;letter-spacing:.1em}.estimate-document__summary>strong{color:var(--estimate-accent);font-size:clamp(38px,4vw,52px);line-height:1;white-space:nowrap}
.estimate-document__summary-row{display:flex;justify-content:space-between;gap:20px;padding-top:11px;border-top:1px solid var(--estimate-border);font-size:12px}.estimate-document__summary-row b{font-weight:700;white-space:nowrap}
.estimate-document__meta{display:grid;grid-template-columns:1.35fr 1fr 1fr .9fr;margin:42px 0 36px;border:1px solid var(--estimate-border);border-radius:9px;background:var(--estimate-surface)}
.estimate-document__meta>div{min-width:0;padding:18px;border-right:1px solid var(--estimate-border)}.estimate-document__meta>div:last-child{border:0}.estimate-document__meta dt{margin-bottom:9px;color:var(--estimate-text-secondary);font-size:10px}.estimate-document__meta dd{margin:0;white-space:pre-line;font-size:12px;font-weight:600;line-height:1.45}
.estimate-document__section{margin-top:14px;border:1px solid var(--estimate-border);border-radius:9px;overflow:hidden}.estimate-document__section-heading{display:grid;width:100%;min-height:64px;grid-template-columns:42px minmax(0,1fr) auto 140px 20px;align-items:center;gap:14px;padding:12px 18px;background:var(--estimate-surface);color:var(--estimate-text);text-align:left}
.estimate-document__section-heading:focus-visible{outline:3px solid rgba(241,90,10,.28);outline-offset:-3px}.estimate-document__section-number,.estimate-document__section-heading>b{color:var(--estimate-accent);font-weight:800}.estimate-document__section-heading>strong{overflow:hidden;font-size:15px;text-overflow:ellipsis;text-transform:uppercase}.estimate-document__section-heading>small{color:var(--estimate-text-secondary)}.estimate-document__section-heading>b{text-align:right;white-space:nowrap}.estimate-document__section-heading>i{width:9px;height:9px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform 180ms ease}.estimate-document__section-heading[aria-expanded=true]>i{transform:rotate(225deg)}
.estimate-document__section-body{padding:0 18px 18px}.estimate-document__section-body[hidden]{display:none}.estimate-document__table{width:100%;border-collapse:collapse;font-size:12px}.estimate-document__table th{padding:13px 9px;border-bottom:1px solid var(--estimate-border);color:var(--estimate-text-secondary);font-size:10px;font-weight:600;text-align:left}.estimate-document__table td{padding:14px 9px;border-bottom:1px solid var(--estimate-border);vertical-align:top}.estimate-document__table th:nth-child(n+3),.estimate-document__table td:nth-child(n+3){text-align:right;white-space:nowrap}.estimate-document__table th:nth-child(2),.estimate-document__table td:nth-child(2){text-align:center}.estimate-document__table td:first-child{width:55%}.estimate-document__table td strong{font-weight:600}.estimate-document__table td small{display:block;margin-top:5px;color:var(--estimate-text-secondary);line-height:1.4}.estimate-document__section-body>.estimate-document__summary-row{justify-content:flex-end;gap:50px;padding:16px 9px;color:var(--estimate-text);font-size:15px}.estimate-document__section-body>.estimate-document__summary-row b{color:var(--estimate-accent)}
.estimate-document__note{margin-top:8px;padding:16px;border:1px solid var(--estimate-border);border-radius:7px;background:var(--estimate-surface)}.estimate-document__note strong{font-size:12px}.estimate-document__note p{margin:8px 0 0;color:var(--estimate-text-secondary);font-size:12px;line-height:1.55}
.estimate-document__footer{margin-top:34px;padding:26px;border:1px solid var(--estimate-border);border-radius:10px;background:var(--estimate-surface)}.estimate-document__footer-totals{max-width:520px;margin-left:auto}.estimate-document__footer-totals .estimate-document__summary-row:last-child{margin-top:9px;padding-top:17px;border-top:2px solid var(--estimate-accent);font-size:20px}.estimate-document__footer-totals .estimate-document__summary-row:last-child b{color:var(--estimate-accent);font-size:28px}.estimate-document__signatures{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:38px;padding-top:26px;border-top:1px solid var(--estimate-border)}.estimate-document__signatures p{margin:0;white-space:pre-line;color:var(--estimate-text-secondary);font-size:12px;line-height:1.8}
.estimate-document__invite{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:22px;max-width:520px;margin:28px 0 0 auto}.estimate-document__invite img{width:150px;height:150px;background:#fff}.estimate-document__invite p{display:grid;gap:12px;margin:0;color:var(--estimate-text-secondary);font-size:12px;line-height:1.5}.estimate-document__invite strong{color:var(--estimate-text);font-size:14px}
.invite-estimate-summary{padding:12px;border:1px solid var(--line);border-radius:8px;color:var(--muted);line-height:1.5}
@media(max-width:850px){.estimate-document__header{grid-template-columns:1fr}.estimate-document__meta{grid-template-columns:1fr 1fr}.estimate-document__meta>div:nth-child(2){border-right:0}.estimate-document__meta>div:nth-child(-n+2){border-bottom:1px solid var(--estimate-border)}.estimate-document__section-heading{grid-template-columns:36px minmax(0,1fr) 120px 18px}.estimate-document__section-heading>small{display:none}.estimate-document__table-wrap{overflow-x:auto}.estimate-document__table{min-width:680px}}
@media(max-width:480px){.estimate-document{padding:22px 14px;border-radius:0}.estimate-document__actions{justify-content:stretch}.estimate-document__button{flex:1;justify-content:center}.estimate-document__intro h4{font-size:40px}.estimate-document__summary{padding:19px}.estimate-document__summary>strong{font-size:36px}.estimate-document__meta{grid-template-columns:1fr}.estimate-document__meta>div{border-right:0;border-bottom:1px solid var(--estimate-border)!important}.estimate-document__meta>div:last-child{border-bottom:0!important}.estimate-document__section-heading{grid-template-columns:30px minmax(0,1fr) 18px;padding:10px}.estimate-document__section-heading>b{grid-column:2;text-align:left}.estimate-document__section-heading>i{grid-row:1/3;grid-column:3}.estimate-document__section-body{padding:0 10px 12px}.estimate-document__invite{grid-template-columns:1fr;text-align:center}.estimate-document__invite img{margin:auto}.estimate-document__signatures{grid-template-columns:1fr;gap:24px}}
@media print{body{background:#fff!important}.crm-header,.estimate-module__heading,.estimate-document__actions,.project-detail__close,.action-center{display:none!important}.crm-content{padding:0!important}.workspace-card,.estimate-module--document{padding:0!important;border:0!important;background:#fff!important}.estimate-document{max-width:none;margin:0;padding:0;border-radius:0;box-shadow:none}.estimate-document__section-body[hidden]{display:block!important}.estimate-document__section-heading>i{display:none}.estimate-document__section,.estimate-document__footer,.estimate-document__summary{break-inside:avoid}.estimate-document__table tr{break-inside:avoid}.estimate-document__table thead{display:table-header-group}}
