:root{--bg:#fff;--surface:#fff;--surface-2:#f4f5f7;--text:#15181c;--muted:#59626e;--border:#d3d8de;--steel:#1c2127;--steel-2:#2a3038;--accent:#c75000;--accent-hover:#a64300;--accent-ink:#fff;--accent-soft:#fdeee6;--warn:#b45309;--error:#b42318;--ok:#15803d;--material:#2f5d8a;--labor:#d97706;--room:#fbfbfa;--grid:#e7e9ec;--grid-line:#1c21270a;--wall:#2b2f33;--radius:6px;--tap:44px;--display:"Barlow Condensed", "Arial Narrow", "Roboto Condensed", system-ui, sans-serif;color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Barlow,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);margin:0}body{overscroll-behavior-y:none}h1,h2,h3{margin:0 0 .5rem;line-height:1.2}h1{font-size:1.7rem}h2{font-size:1.15rem}a{color:var(--accent)}input,select,textarea,button{font:inherit;color:inherit}input,select,textarea{background:var(--surface);border:1px solid var(--border);width:100%;min-height:var(--tap);border-radius:8px;padding:.6rem .7rem;font-size:16px}textarea{resize:vertical;min-height:5rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:#0000}input[type=checkbox]{width:22px;height:22px;min-height:0;accent-color:var(--accent)}.muted{color:var(--muted)}.small{font-size:.86rem}.tiny{font-size:.76rem}.grow{flex:1;min-width:0}.pre{white-space:pre-wrap}.warn-text{color:var(--warn)}.ok-text{color:var(--ok)}.error-text{color:var(--error)}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.stack{flex-direction:column;gap:1rem;display:flex}.input-row{align-items:center;gap:.5rem;display:flex}.input-row.wrap{flex-wrap:wrap}.input-row>input,.input-row>select{flex:1;min-width:0}.btn{background:var(--accent);color:var(--accent-ink);min-height:var(--tap);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;border:0;border-radius:10px;justify-content:center;align-items:center;gap:.35rem;padding:.55rem 1rem;font-weight:650;text-decoration:none;transition:filter .1s,transform 50ms;display:inline-flex}.btn:active{transform:scale(.98)}.btn:hover{filter:brightness(1.06)}.btn:disabled{opacity:.55;cursor:default;transform:none}.btn.secondary{background:var(--accent-soft);color:var(--accent)}.btn.ghost{color:var(--muted);background:0 0}.btn.ghost:hover{color:var(--text);background:var(--surface-2)}.btn.big{min-height:50px;padding:.7rem 1.2rem;font-size:1.02rem}.btn.small{min-height:34px;padding:.25rem .6rem;font-size:.85rem}.btn.icon{width:var(--tap);padding:0}.btn.danger,.danger{color:var(--error)!important}.link{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:.3rem 0;font-weight:600}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.badge{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border:1px solid var(--border);border-radius:4px;padding:.1rem .55rem;font-size:.72rem;font-weight:650}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chip{border:1px solid var(--border);background:var(--surface);cursor:pointer;white-space:nowrap;border-radius:4px;min-height:38px;padding:.45rem .9rem;font-size:.92rem}.chip.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.segmented{border:1px solid var(--border);background:var(--surface);border-radius:10px;align-self:flex-start;max-width:100%;display:inline-flex;overflow:hidden}.segmented button{cursor:pointer;min-height:42px;color:var(--muted);background:0 0;border:0;padding:.55rem .95rem;font-weight:600}.segmented button+button{border-left:1px solid var(--border)}.field{flex-direction:column;gap:.3rem;font-size:.9rem;font-weight:550;display:flex}.field>span{color:var(--muted)}.field.inline{flex-direction:row;align-items:center;gap:.5rem}.field.inline input,.field.inline select{width:160px}.field.pair .input-row input{min-width:0}.span-all{grid-column:1/-1}.form-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.85rem;margin-bottom:.75rem;display:grid}.check{cursor:pointer;flex-wrap:wrap;align-items:center;gap:.55rem;min-height:40px;display:flex}.check small{flex-basis:100%}.app{min-height:100dvh}.topbar{padding:.55rem 1rem;padding-top:max(.55rem, env(safe-area-inset-top));background:var(--surface);border-bottom:1px solid var(--border);z-index:20;align-items:center;gap:.5rem;display:flex;position:sticky;top:0}.brand{cursor:pointer;min-height:var(--tap);white-space:nowrap;background:0 0;border:0;align-items:center;gap:.5rem;min-width:0;padding:0;font-size:1.05rem;font-weight:750;display:flex;overflow:hidden}.brand-name{text-overflow:ellipsis;overflow:hidden}.brand-logo{object-fit:contain;max-width:120px;height:28px}.sync-pill{white-space:nowrap;border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:4px;flex-shrink:0;align-items:center;gap:.45rem;min-height:38px;padding:.35rem .8rem;font-size:.85rem;font-weight:600;display:inline-flex}@keyframes pulse{50%{opacity:.3}}main{max-width:1280px;margin:0 auto;padding:1rem 1rem 6rem}.dash-head{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:.75rem;display:flex}.dash-head h1{margin:0}.banner{background:var(--accent-soft);color:var(--accent);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;padding:.7rem 1rem;font-weight:550;display:flex}.search{margin-bottom:.6rem}.filters{scrollbar-width:none;gap:.4rem;margin-bottom:.6rem;padding-bottom:.4rem;display:flex;overflow-x:auto}.filters::-webkit-scrollbar{display:none}.job-grid{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:.75rem;display:grid}.job-card{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;gap:.8rem;width:100%;min-width:0;padding:.7rem;transition:border-color .15s,box-shadow .15s;display:flex}.job-card:hover{border-color:var(--accent);box-shadow:0 2px 10px #0000000d}.job-thumb{background:var(--surface-2);border-radius:10px;flex-shrink:0;place-items:center;width:92px;height:92px;display:grid;overflow:hidden}.job-thumb img{object-fit:cover;width:100%;height:100%}.job-info{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.job-customer{font-size:1.05rem}.status-badge{color:#fff;letter-spacing:.02em;border-radius:4px;padding:.12rem .55rem;font-size:.74rem;font-weight:700}.price{font-variant-numeric:tabular-nums;font-weight:700}.empty{text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:2.5rem 1rem;display:flex}.dash-foot{text-align:center;margin-top:1.5rem}.type-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.6rem;display:grid}.type-card{text-align:left;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.3rem;padding:.9rem;display:flex}.type-icon{font-size:1.7rem}.job-header{align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.job-title{flex-direction:column;display:flex}.title-input{background:0 0;border-color:#0000;min-height:0;padding:.2rem .4rem;font-size:1.3rem;font-weight:750}.title-input:focus{background:var(--surface)}.job-sub{text-overflow:ellipsis;white-space:nowrap;padding-left:.45rem;overflow:hidden}.status-select{background:var(--surface);border-width:2px;width:auto;font-weight:700}.menu{position:relative}.menu summary{list-style:none}.menu summary::-webkit-details-marker{display:none}.menu-items{background:var(--surface);border:1px solid var(--border);z-index:30;border-radius:10px;flex-direction:column;min-width:220px;display:flex;position:absolute;top:calc(100% + 4px);right:0;overflow:hidden;box-shadow:0 8px 24px #0002}.menu-items button{text-align:left;cursor:pointer;background:0 0;border:0;padding:.8rem 1rem}.menu-items button:hover{background:var(--surface-2)}.kpis{grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:.6rem;display:grid}.kpis>div{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;min-width:0;padding:.5rem .75rem;display:flex}.kpis span{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.7rem}.kpis strong{white-space:nowrap;text-overflow:ellipsis;font-size:.98rem;overflow:hidden}.steps{top:calc(56px + env(safe-area-inset-top));z-index:10;background:var(--bg);padding:.4rem 0;scrollbar-width:none;border-bottom:1px solid var(--border);gap:.3rem;margin:0 -1rem .8rem;padding-inline:1rem;display:flex;position:sticky;overflow-x:auto}.steps::-webkit-scrollbar{display:none}.step{cursor:pointer;min-height:40px;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:4px;align-items:center;gap:.35rem;padding:.45rem .85rem;font-weight:600;display:inline-flex;position:relative}.step.active{background:var(--accent);color:var(--accent-ink)}.step-icon{font-size:1rem}.dot{background:var(--warn);border-radius:50%;width:8px;height:8px}.step-footer{justify-content:space-between;gap:.75rem;margin-top:1.25rem;display:flex}.step-footer .btn{flex:1;max-width:260px}.setup{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem;display:grid}.field-row{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.field-row>*{flex:1;min-width:110px}.option-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.85rem;margin-top:.5rem;display:grid}.tier-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:.75rem;display:grid}.tier{text-align:left;background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:10px;flex-direction:column;gap:.2rem;padding:.65rem;font-size:.86rem;display:flex}.tier.active{border-color:var(--accent);background:var(--accent-soft)}.notes-list{flex-direction:column;gap:.4rem;margin:0;padding-left:1.1rem;font-size:.9rem;display:flex}.survey-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.9rem 1rem;margin-top:.5rem;display:grid}.computed{padding:.5rem 0;font-weight:700}.static-map{margin:.75rem 0 0}.static-map svg{border:1px solid var(--border);border-radius:10px;width:100%;height:auto;display:block}.static-map figcaption{color:var(--muted);text-align:right;font-size:.7rem}.photo-actions{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.5rem;display:grid}.big-select{min-height:50px}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.9rem;display:grid}.photo-card{flex-direction:column;gap:.45rem;margin:0;display:flex}.photo-frame{aspect-ratio:4/3;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;place-items:center;display:grid;position:relative;overflow:hidden}.photo-frame img{object-fit:cover;width:100%;height:100%}.photo-badge{background:var(--steel);color:#fff;letter-spacing:.05em;z-index:1;border-radius:4px;padding:.15rem .5rem;font-size:.72rem;font-weight:800;position:absolute;top:8px;right:8px}.photo-badge.left{background:var(--accent);color:#fff;left:8px;right:auto}.ba-preview{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.ba-preview figure{aspect-ratio:3/4;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;margin:0;position:relative;overflow:hidden}.ba-preview img{object-fit:cover;width:100%;height:100%}.ba-placeholder{color:var(--muted);text-align:center;place-items:center;padding:1rem;font-size:.9rem;display:grid;position:absolute;inset:0}.spinner{border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:36px;height:36px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}details summary{cursor:pointer;padding:.4rem 0;font-weight:600}details textarea{margin-top:.4rem;font-size:14px}.plan-layout{grid-template-columns:230px 1fr 260px;align-items:start;gap:1rem;display:grid}.palette{flex-direction:column;gap:.25rem;display:flex}.palette-item{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:.5rem;min-height:40px;padding:.45rem .5rem;font-size:.88rem;display:flex}.palette-item:hover{border-color:var(--border);background:var(--surface-2)}.swatch{border:1px solid #00000026;border-radius:3px;flex-shrink:0;width:14px;height:14px}.plan-canvas{touch-action:none;padding:.5rem;position:relative}.plan-mode{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.25rem .25rem .5rem;display:flex}.plan-svg{-webkit-user-select:none;user-select:none;width:100%;height:auto;max-height:70vh;display:block}.plan-svg .room{fill:var(--room)}.plan-svg .room.deck{fill:#d9b98c33}.plan-svg .board{stroke:#b0895744;stroke-width:.5px}.plan-svg .grid{stroke:var(--grid);stroke-width:.5px}.plan-svg .walls{fill:none;stroke:var(--wall);stroke-width:4px}.plan-svg .walls.deck-edge{stroke-width:2px;stroke-dasharray:6 3}.plan-svg .door-gap{stroke:var(--room);stroke-width:6px}.plan-svg .door-swing{fill:none;stroke:var(--muted);stroke-width:1px;stroke-dasharray:3 2}.plan-svg .dim{fill:var(--muted)}.plan-svg .clearance{fill:#3b82a61a;stroke:#3b82a666;stroke-width:.6px;stroke-dasharray:2 2;pointer-events:none}.plan-svg .fixture{cursor:grab}.plan-svg .fixture rect{stroke:#0005;stroke-width:.8px}.plan-svg .fixture-back{stroke:#0009;stroke-width:2.5px}.plan-svg .fixture-label{fill:#1d2125;pointer-events:none;font-weight:600}.plan-svg .fixture-size{fill:#333;pointer-events:none}.plan-svg .fixture-tag circle{fill:#fff;stroke:#111;stroke-width:.8px}.plan-svg .fixture-tag text{fill:#111;font-weight:700}.plan-svg .fixture.selected rect{stroke:var(--accent);stroke-width:2.5px}.plan-svg .fixture.has-warning rect{stroke:var(--error);stroke-width:2px;stroke-dasharray:4 2}.selection-bar{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem;display:flex}.selection-bar input{width:80px}.selection-bar label{align-items:center;gap:.25rem;display:flex}.warning-list{flex-direction:column;gap:.4rem;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.warning-list li{cursor:pointer;background:var(--surface-2);border-left:3px solid;border-radius:8px;padding:.55rem .65rem}.w-error{border-color:var(--error)!important}.w-warn{border-color:var(--warn)!important}.w-info{border-color:var(--accent)!important}.estimate,div.ai{flex-direction:column;gap:1rem;display:flex}.bars{flex-direction:column;gap:.4rem;margin-top:.5rem;display:flex}.bar-row{grid-template-columns:170px 1fr 90px;align-items:center;gap:.75rem;font-size:.88rem;display:grid}.bar-track{background:var(--surface-2);border-radius:4px;height:14px;display:flex;overflow:hidden}.bar-fill.material,.legend .material{background:var(--material)}.bar-fill.labor,.legend .labor{background:var(--labor)}.bar-value{text-align:right;font-variant-numeric:tabular-nums}.legend{color:var(--muted);gap:1rem;margin-top:.5rem;font-size:.8rem;display:flex}.legend i{border-radius:2px;width:10px;height:10px;margin-right:4px;display:inline-block}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.88rem}th,td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:.5rem}th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.78rem;font-weight:650}tfoot td{font-weight:650}tr.grand td{border-top:2px solid var(--text);font-size:1rem;font-weight:750}.custom-list{margin:0 0 .75rem;padding:0;list-style:none}.custom-list li{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.3rem 0;display:flex}.materials{margin:.5rem 0;padding:0;list-style:none}.materials li{border-bottom:1px solid var(--border);grid-template-columns:1fr 120px 90px;align-items:center;gap:.75rem;padding:.45rem 0;font-size:.92rem;display:grid}.materials li.done .grow{color:var(--muted);text-decoration:line-through}.qty{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.total-row{padding-top:.75rem}.gantt{flex-direction:column;gap:.3rem;margin-top:.75rem;display:flex}.gantt-scale{height:1.2rem;color:var(--muted);margin-left:280px;font-size:.75rem;position:relative}.gantt-scale span{white-space:nowrap;position:absolute;top:0}.gantt-row{grid-template-columns:270px 1fr;align-items:center;gap:10px;font-size:.86rem;display:grid}.gantt-track{background:var(--surface-2);border-radius:4px;height:18px;position:relative}.gantt-bar{border-radius:3px;position:absolute;top:2px;bottom:2px}div.ai textarea{margin:.5rem 0}.recs{flex-direction:column;gap:.75rem;padding:0;list-style:none;display:flex}.recs li{gap:.75rem;display:flex}.recs p{color:var(--muted);margin:.2rem 0 0}.impact{white-space:nowrap;background:var(--surface-2);border-radius:4px;height:fit-content;padding:.15rem .45rem;font-size:.75rem;font-weight:700}.impact.saves{color:var(--ok)}.impact.adds{color:var(--warn)}.two-col{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}.doc-panel{flex-direction:column;gap:1rem;display:flex}.checklist{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.35rem 1rem;margin:.75rem 0;padding:0;list-style:none;display:grid}.checklist li{align-items:center;gap:.5rem;min-height:38px;font-size:.92rem;display:flex}.check-icon{border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:.78rem;font-weight:800;display:grid}.checklist li.ok .check-icon{background:var(--ok);color:#fff}.checklist li.missing .check-icon{background:var(--surface-2);color:var(--muted);border:1px solid var(--border)}.checklist li.required .check-icon{background:var(--warn);color:#fff;border:0}.checklist li.ok{color:var(--muted)}.doc-options{flex-wrap:wrap;align-items:center;gap:.4rem 1.25rem;margin:.5rem 0 .75rem;display:flex}.template-picker{border:0;min-width:0;margin:.75rem 0 .25rem;padding:0}.template-picker legend{margin-bottom:.4rem;padding:0;font-weight:700}.template-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem;display:grid}.pro-tag.biz{background:#1f2937}.template-card{text-align:left;font:inherit;color:var(--text);background:var(--surface,#fff);border:2px solid var(--border);cursor:pointer;border-radius:10px;flex-direction:column;align-items:stretch;gap:.25rem;min-width:0;padding:.4rem;display:flex}.template-card img{aspect-ratio:8.5/11;object-fit:cover;object-position:top;border:1px solid var(--border);background:#f4f4f4;border-radius:6px;width:100%}.template-card.active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.template-card:disabled{cursor:not-allowed;opacity:.55}.template-name{justify-content:space-between;align-items:center;gap:.3rem;font-size:.9rem;font-weight:700;display:flex}.template-vibe{color:var(--muted);font-size:.75rem;line-height:1.3}.pro-tag{letter-spacing:.04em;color:#fff;background:var(--accent);border-radius:999px;align-items:center;gap:2px;padding:.05rem .4rem;font-size:.65rem;font-weight:800;display:inline-flex}.pro-tag.locked{background:var(--muted)}.demo-bar.over{background:#fff4e5}.pricebook{max-width:980px}.pb-import{gap:.6rem;margin:.5rem 0 .9rem;display:grid}.pb-drop{border:2px dashed var(--border);background:var(--surface-2);border-radius:12px;flex-wrap:wrap;align-items:center;gap:.9rem;padding:.9rem 1rem;display:flex}.pb-drop p{flex:14rem;margin:0}.pb-drop-actions{flex-wrap:wrap;gap:.5rem;display:flex}.pb-paste{gap:.4rem;display:grid}.pb-paste textarea{width:100%;font-family:ui-monospace,monospace;font-size:.85rem}.pb-preview{border:1px solid var(--border);border-radius:10px;padding:.6rem .75rem}.pb-preview p{margin:0 0 .4rem}.pb-preview-actions{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.pb-table{border-collapse:collapse;width:100%;font-size:.9rem}.pb-table th,.pb-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:.3rem .4rem}.pb-table .num{text-align:right}.pb-table.edit input,.pb-table.edit select{width:100%;min-width:0;padding:.3rem .4rem}.pb-table.edit td:first-child{min-width:14rem}.pb-table.edit input.unit{width:4.5rem}.pb-table.edit td.num input{text-align:right;width:6rem}.pb-table .tiny{display:block}.pb-list{max-height:50vh;overflow:auto}.pb-add{grid-template-columns:minmax(0,2.2fr) minmax(0,1fr) 6rem 7rem auto;gap:.4rem;margin:.4rem 0 .6rem;display:grid}.pb-add input,.pb-add select{min-width:0}.pb-tools{margin-bottom:.4rem}.pb-tools .search{border:1px solid var(--border);border-radius:8px;flex:16rem;align-items:center;gap:.35rem;padding:0 .5rem;display:flex}.pb-tools .search input{background:0 0;border:0;flex:1;min-width:0;padding:.45rem 0}.pb-pick{margin-bottom:.75rem}.pb-pick>input{width:100%}.pb-pick ul{gap:.25rem;margin:.4rem 0 0;padding:0;list-style:none;display:grid}.pb-pick li{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.3rem 0;display:flex}.pb-pick .qty{width:4.2rem}.nowrap{white-space:nowrap}@media (width<=640px){.pb-add{grid-template-columns:minmax(0,1fr) 5.5rem}.pb-add input:first-child{grid-column:1/-1}.pb-pick li{flex-wrap:wrap}.pb-pick li .grow{flex-basis:100%}}.milestones{border:1px solid var(--border);border-radius:10px;min-width:0;margin:.25rem 0 .75rem;padding:.6rem .75rem .5rem}.milestones legend{padding:0 .3rem;font-weight:700}.milestone-rows{gap:.4rem;margin-bottom:.5rem;display:grid}.milestone-row{grid-template-columns:minmax(0,1fr) 5.5rem 5.5rem auto;align-items:center;gap:.4rem;display:grid}.milestone-row input{width:100%;min-width:0}.milestone-row .pct{align-items:center;gap:.2rem;display:flex}.milestone-row .amount{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.milestone-actions{flex-wrap:wrap;gap:1rem;margin-top:.35rem;display:flex}@media (width<=560px){.milestone-row{grid-template-columns:minmax(0,1fr) 4.6rem auto}.milestone-row .amount{display:none}}@media (width<=900px){.template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=560px){.template-grid{scroll-snap-type:x mandatory;padding-bottom:.3rem;display:flex;overflow-x:auto}.template-card{scroll-snap-align:start;flex:0 0 42%}}.doc-actions{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.pdf-preview{padding:0;overflow:hidden}.pdf-preview iframe{background:#525659;border:0;width:100%;height:85vh;display:block}.modal-backdrop{z-index:50;background:#0009;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{flex-direction:column;gap:.8rem;width:min(620px,100%);max-height:92dvh;display:flex;overflow:auto}.modal.wide{width:min(880px,100%)}.brand-logo-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.logo-preview{border:1px dashed var(--border);background:#fff;border-radius:8px;place-items:center;width:140px;height:64px;display:grid;overflow:hidden}.logo-preview img{max-width:100%;max-height:100%}@media (width<=1000px){.plan-layout{grid-template-columns:1fr}.palette{flex-flow:row;order:2;overflow-x:auto}.palette h3,.palette .check,.palette p{flex-shrink:0}.palette-item{border-color:var(--border);flex-shrink:0}.checks{order:3}}@media (width<=640px){main{padding:.75rem .75rem 7rem}h1{font-size:1.45rem}.card{border-radius:10px;padding:.85rem}.dash-head .btn{right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));z-index:25;border-radius:4px;position:fixed;box-shadow:0 6px 20px #0004}.job-grid{grid-template-columns:minmax(0,1fr)}.status-select{display:none}.sync-pill{padding:.3rem .65rem;font-size:.8rem}.job-thumb{width:78px;height:78px}.kpis{grid-template-columns:repeat(2,1fr)}.steps{margin:0 -.75rem .7rem;padding-inline:.75rem}.title-input{font-size:1.1rem}.setup,.tier-grid,.form-grid,.survey-grid{grid-template-columns:1fr}.bar-row{grid-template-columns:105px 1fr 72px}.gantt-row{grid-template-columns:1fr;gap:2px}.gantt-scale{margin-left:0}.materials li{grid-template-columns:1fr 76px}.materials li .num{display:none}.step-footer{z-index:20;background:var(--surface);border-top:1px solid var(--border);padding:.6rem .75rem calc(.6rem + env(safe-area-inset-bottom));margin:0;position:fixed;bottom:0;left:0;right:0}.step-footer .btn{max-width:none}.doc-actions .btn{flex:45%}.pdf-preview{display:none}.field.inline{flex-direction:column;align-items:stretch}.field.inline input,.field.inline select{width:100%}.modal-backdrop{align-items:end;padding:0}.modal{width:100%;padding-bottom:calc(1rem + env(safe-area-inset-bottom));border-radius:16px 16px 0 0}.photo-grid{grid-template-columns:repeat(2,1fr);gap:.6rem}.photo-card .input-row{flex-wrap:wrap}.photo-card select{flex-basis:100%}}.error-card{border-color:var(--error);flex-direction:column;gap:.6rem;display:flex}.error-detail{white-space:pre-wrap;word-break:break-word;background:var(--surface-2);border-radius:8px;max-height:10rem;margin:0;padding:.6rem;font-size:.82rem;overflow:auto}body{background-color:var(--bg);background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);background-size:28px 28px}h1,h2,h3,.display{font-family:var(--display);text-transform:uppercase;letter-spacing:.03em;font-weight:700}h1{letter-spacing:.02em;font-size:2rem}h3{font-size:1.12rem}.card{border-radius:var(--radius);box-shadow:0 1px 2px #0000000d}.card>h3:first-child,.card>.row-between:first-child h3{border-bottom:1px solid var(--border);margin-bottom:.7rem;padding-bottom:.45rem}.card>.row-between:first-child{margin-bottom:.2rem}.card>.row-between:first-child h3{flex:1;margin-bottom:.4rem}.btn{border-radius:var(--radius);letter-spacing:.01em;font-weight:600}.btn:hover{filter:none;background:var(--accent-hover)}.btn.secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn.secondary:hover{background:var(--surface-2);border-color:var(--muted)}.btn.ghost:hover{background:var(--surface-2)}.btn.ai{background:var(--steel);color:#fff}.btn.ai:hover{background:var(--steel-2)}.btn.ai svg{color:#fb923c}.btn svg{flex-shrink:0}.link{color:var(--accent)}.topbar{background:var(--steel);color:#fff;border-bottom:3px solid var(--accent)}.brand{color:#fff;font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;font-size:1.3rem;font-weight:700}.brand-logo{background:#fff;border-radius:4px;height:32px;padding:2px 4px}.app-mark{background:var(--accent);color:#fff;border-radius:4px;place-items:center;width:34px;height:34px;display:inline-grid}.sync-pill{color:#e6e8eb;border-radius:var(--radius);background:0 0;border-color:#fff3}.sync-pill.syncing svg{color:#fb923c;animation:1s infinite pulse}.sync-pill.error svg,.sync-pill.offline svg{color:#fbbf24}.chip{border-radius:4px;font-weight:600}.chip.active{background:var(--steel);border-color:var(--steel);color:#fff}.badge{font-family:var(--display);letter-spacing:.06em;border-radius:3px}.status-badge{font-family:var(--display);text-transform:uppercase;letter-spacing:.06em;background:0 0;border:1.5px solid;border-radius:3px;padding:.05rem .45rem;font-size:.78rem;font-weight:700}.segmented{border-radius:var(--radius)}.segmented button.active{background:var(--steel);color:#fff}input,select,textarea{border-color:#c7cdd4;border-radius:4px}.field>span{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.82rem;font-weight:600}input[type=checkbox]{accent-color:var(--accent)}.dash-head h1{font-size:2.2rem}.new-job{box-shadow:0 2px 0 var(--accent-hover)}.search{background:var(--surface);border-radius:var(--radius);color:var(--muted);border:1px solid #c7cdd4;align-items:center;gap:.5rem;padding:0 .75rem;display:flex}.search input{background:0 0;border:0;padding-left:0}.search input:focus{outline:none}.search:focus-within{outline:2px solid var(--accent);border-color:#0000}.banner{background:var(--surface);color:var(--text);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius)}.job-card{border-radius:var(--radius);border-left:4px solid var(--border)}.job-card:hover{border-color:var(--border);border-left-color:var(--accent)}.job-thumb{color:var(--muted);border-radius:4px}.job-customer{font-family:var(--display);letter-spacing:.01em;font-size:1.25rem;font-weight:700}.price{font-family:var(--display);font-size:1.15rem}.type-grid{grid-template-columns:1fr;gap:.5rem}.type-card{border-radius:var(--radius);flex-direction:row;align-items:center;gap:.9rem;padding:.8rem .9rem}.type-card:hover{border-color:var(--accent)}.type-card .type-icon{background:var(--steel);color:#fb923c;border-radius:4px;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid}.type-text{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.type-text strong{font-family:var(--display);text-transform:uppercase;letter-spacing:.03em;font-size:1.1rem}.type-chev{color:var(--muted)}.empty h2{font-size:1.5rem}.title-input{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;font-size:1.6rem;font-weight:700}.job-sub{align-items:center;gap:.35rem;display:flex}.status-select{font-family:var(--display);text-transform:uppercase;letter-spacing:.05em;border-radius:4px}.kpis>div{border-radius:var(--radius);border-top:3px solid var(--steel)}.kpis span{font-family:var(--display);letter-spacing:.08em;font-size:.78rem;font-weight:600}.kpis strong{font-family:var(--display);font-size:1.25rem;font-weight:700}.steps{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);gap:0;margin:0 0 .9rem;padding:0;box-shadow:0 1px 2px #0000000d}.step{min-height:48px;color:var(--muted);font-family:var(--display);text-transform:uppercase;letter-spacing:.05em;border-bottom:3px solid #0000;border-radius:0;padding:.6rem .7rem;font-size:.98rem;font-weight:600}.step:hover{color:var(--text);background:var(--surface-2)}.step.active{color:var(--text);border-bottom-color:var(--accent);background:0 0}.step-num{background:var(--surface-2);border:1px solid var(--border);border-radius:4px;place-items:center;width:22px;height:22px;font-size:.8rem;font-weight:700;display:inline-grid}.step.active .step-num{background:var(--accent);border-color:var(--accent);color:#fff}.step-footer .btn.secondary{background:var(--surface)}.photo-frame,.ba-preview figure{border-radius:4px}.photo-badge{background:var(--steel);font-family:var(--display);letter-spacing:.08em;border-radius:3px}.photo-badge.left{background:var(--accent)}.palette-item,.warning-list li{border-radius:4px}.bar-track{border-radius:2px}.checklist li.ok .check-icon{background:var(--ok)}.checklist li.required .check-icon{background:var(--warn)}.check-icon svg{display:block}.modal{border-top:4px solid var(--accent)}.modal>.row-between:first-child h3{margin:0}@media (width<=640px){h1{font-size:1.7rem}.dash-head h1{font-size:1.9rem}.title-input{font-size:1.3rem}.steps{border-left:0;border-right:0;border-radius:0;margin:0 -.75rem .7rem}.step{padding:.55rem .75rem}.brand{font-size:1.15rem}.modal{border-radius:10px 10px 0 0}}.demo-banner{border-left-color:#64748b}.banner span svg{vertical-align:-3px;margin-right:.3rem}.address-box{flex:1;min-width:0;position:relative}.address-box input{width:100%}.address-list{z-index:30;background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:var(--radius);margin:0;padding:.25rem 0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 10px 28px #0003}.address-list li{cursor:pointer;min-height:var(--tap);align-items:flex-start;gap:.55rem;padding:.6rem .8rem;display:flex}.address-list li svg{color:var(--muted);flex-shrink:0;margin-top:2px}.address-list li.active,.address-list li:hover{background:var(--surface-2)}.address-list li.active svg{color:var(--accent)}.address-list .addr-main{font-weight:650;display:block}.address-list .addr-sub{color:var(--muted);font-size:.85rem;display:block}.address-list .addr-attr{cursor:default;min-height:0;color:var(--muted);justify-content:flex-end;padding:.3rem .8rem;font-size:.72rem}.address-list .addr-attr:hover{background:0 0}.field .address-list span{text-transform:none;letter-spacing:0;margin:0;font-family:inherit}.field .address-list .addr-main{color:var(--text);font-size:.95rem;font-weight:650}.field .address-list .addr-sub{color:var(--muted);font-size:.85rem;font-weight:400}.app-mark.monogram{width:auto;min-width:34px;font-family:var(--display);letter-spacing:.06em;padding:0 7px;font-weight:700;line-height:1}@media (width<=600px){.brand{text-align:left}.brand-name{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.92rem;line-height:1.1;display:-webkit-box}}.mobile-only,.mobile-inline,.mobile-flex{display:none!important}@media (width<=1000px){.desktop-only,.desktop-inline{display:none!important}.mobile-only{display:block!important}.mobile-inline{display:inline!important}.mobile-flex{display:inline-flex!important}}.plan-canvas{touch-action:auto;flex-direction:column;gap:.5rem;display:flex}.plan-mode{padding:0}.plan-tools{align-items:center;gap:.15rem;display:flex}.tool-sep{background:var(--border);width:1px;height:26px;margin:0 .25rem}.icon-btn{width:var(--tap);height:var(--tap);border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius);cursor:pointer;flex-shrink:0;place-items:center;display:inline-grid}.icon-btn:hover:not(:disabled){border-color:var(--steel)}.icon-btn:disabled{opacity:.35;cursor:default}.plan-scroll{border-radius:var(--radius);border:1px solid var(--border);-webkit-overflow-scrolling:touch;background:#fff;max-height:72vh;overflow:auto}.plan-svg{--room:#fff;--grid:#e3e8ee;--wall:#2b2f33;--muted:#5b6470;touch-action:pan-x pan-y pinch-zoom;max-height:68vh}.plan-svg .paper{fill:#fff}.plan-svg .dim{fill:#374151;font-weight:600}.plan-svg .fixture.selected{touch-action:none;cursor:move}.plan-svg .fixture.selected rect{stroke:var(--accent);stroke-width:3px;filter:drop-shadow(0 0 2px #c2410c88)}.plan-svg .door-gap{stroke:#fff}.sel-toolbar{border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:.5rem;padding:.6rem;display:flex}.sel-head{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.sel-head input{width:70px;min-height:36px;padding:.2rem .4rem}.sel-actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.nudge-pad{gap:.25rem;margin-right:auto;display:flex}.tool-btn{border:1px solid var(--border);background:var(--surface);min-width:58px;min-height:52px;color:var(--text);border-radius:var(--radius);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.78rem;font-weight:600;display:inline-flex}.tool-btn:hover{border-color:var(--steel)}.tool-btn.danger{color:var(--error)}.plan-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.warning-list li{cursor:default;align-items:center;gap:.5rem;display:flex}.warning-text{text-align:left;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;flex:1;padding:0}.fix-btn{flex-shrink:0;min-height:40px}.note-list{flex-direction:column;gap:.3rem;margin:.6rem 0 0;padding:0;list-style:none;display:flex}.checks.has-issues{border-top:3px solid var(--warn)}.sheet-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;display:grid}.sheet-tile{text-align:left;border:1px solid var(--border);background:var(--surface);min-height:84px;color:var(--text);border-radius:var(--radius);cursor:pointer;flex-direction:column;align-items:flex-start;gap:.3rem;padding:.7rem;display:flex}.sheet-tile:hover,.sheet-tile:active{border-color:var(--accent)}.sheet-tile strong{font-size:.95rem;line-height:1.2}.swatch.big{width:26px;height:18px}.sheet{border-top:4px solid var(--accent);flex-direction:column;gap:.8rem;width:min(720px,100%);max-height:85dvh;display:flex;overflow:auto}@media (width<=1000px){.plan-layout{flex-direction:column;gap:.75rem;display:flex}.plan-scroll{max-height:54vh}.plan-svg{max-height:52vh}.sheet-backdrop{align-items:end;padding:0}.sheet{padding-bottom:calc(1rem + env(safe-area-inset-bottom));border-radius:12px 12px 0 0}.sheet-grid{grid-template-columns:1fr 1fr}.sel-toolbar{gap:.4rem;padding:.5rem}.sel-actions{grid-template-columns:repeat(4,1fr);gap:.35rem;display:grid}.nudge-pad{display:contents}.nudge-pad .icon-btn{width:auto;height:46px}.sel-actions .tool-btn{min-width:0;min-height:50px}}.desktop-flex{display:flex}.kpi-line,.step-progress{text-align:left;width:100%;font:inherit;color:var(--text);cursor:pointer}.kpi-line{min-height:var(--tap);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:.9rem;margin-bottom:.5rem;padding:.55rem .8rem}.kpi-line strong{font-family:var(--display);font-size:1.15rem}.kpi-line svg{color:var(--muted);margin-left:auto;transition:transform .15s}.kpi-line svg.flip{transform:rotate(180deg)}.step-progress{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:.75rem;min-height:58px;margin-bottom:.75rem;padding:.6rem .8rem .85rem;position:relative;overflow:hidden}.step-progress-text{flex-direction:column;flex:1;min-width:0;line-height:1.15;display:flex}.step-progress-text strong{font-family:var(--display);text-transform:uppercase;letter-spacing:.03em;font-size:1.25rem}.step-progress-count{align-items:center;gap:.3rem;display:inline-flex}.step-progress-bar{background:var(--surface-2);height:4px;position:absolute;bottom:0;left:0;right:0}.step-progress-bar span{background:var(--accent);height:100%;transition:width .2s;display:block}.step-num.done{color:#fff;background:var(--ok)!important;border-color:var(--ok)!important}.step-menu{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.step-menu button{text-align:left;width:100%;min-height:52px;font:inherit;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:.75rem;padding:.4rem .7rem;font-size:1.02rem;display:flex}.step-menu button.current{border-color:var(--accent);box-shadow:inset 4px 0 0 var(--accent);font-weight:700}.step-menu .step-num{width:26px;height:26px}.footer-short{display:none}.step-footer .btn.action{flex:1.4}@media (width<=1000px){.desktop-flex{display:none!important}.kpis{display:none}.kpis.open{grid-template-columns:repeat(2,1fr);display:grid}}@media (width<=640px){.step-footer.has-action .footer-label{display:none}.step-footer.has-action .footer-short{display:inline}.step-footer.has-action .btn:first-child{flex:0 0 52px;padding:0}.step-footer.has-action .btn:last-child{flex:1}}.measure-progress{flex-direction:column;gap:.5rem;display:flex;position:relative}.step-progress-bar.static{border-radius:3px;height:6px;display:block;position:relative;overflow:hidden}.pair-row{flex-wrap:wrap}.pair-row input{flex:110px;min-width:0}.same-btn{flex:none;min-height:40px}.fraction-bar{z-index:30;left:0;right:0;bottom:max(var(--kb,0px), calc(72px + env(safe-area-inset-bottom)));background:var(--steel);border-top:3px solid var(--accent);scrollbar-width:none;gap:.3rem;padding:.4rem .5rem;display:flex;position:fixed;overflow-x:auto}.fraction-bar::-webkit-scrollbar{display:none}.fraction-bar button{color:#fff;min-width:34px;min-height:46px;font-family:var(--display);cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:4px;flex:1 1 0;padding:0;font-size:1.05rem;font-weight:700}.fraction-bar button.next{background:var(--accent);border-color:var(--accent);flex:1.6 1 0}@keyframes flash{0%,to{box-shadow:none}30%{box-shadow:0 0 0 3px var(--accent)}}.flash{border-radius:var(--radius);animation:1.2s 2 flash}@media (width>=1001px){.fraction-bar{border-radius:var(--radius);max-width:560px;bottom:1rem;left:auto;right:1rem}}.shot-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem;display:grid}.shot-tile{text-align:left;min-height:60px;font:inherit;background:var(--surface);color:var(--text);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius);cursor:pointer;align-items:center;gap:.7rem;padding:.55rem .7rem;display:flex}.shot-tile:hover{border-color:var(--accent)}.shot-tile.done{border-left-color:var(--ok)}.shot-icon{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.shot-tile.done .shot-icon{background:var(--ok);color:#fff}.shot-text{flex-direction:column;min-width:0;display:flex}@media (width<=640px){.shot-grid{grid-template-columns:1fr}}.today{border-top:3px solid var(--accent);margin-bottom:.75rem}.today h3{align-items:center;gap:.45rem;display:flex}.today-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.today-list li{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.6rem;padding:.5rem 0;display:flex}.today-list li:first-child{border-top:0;padding-top:0}.today-main{min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;min-height:var(--tap);background:0 0;border:0;flex-direction:column;flex:200px;justify-content:center;align-items:flex-start;padding:0;display:flex}.today-main strong{font-size:1.05rem}.today-actions{align-items:center;gap:.4rem;display:flex}a.icon-btn{text-decoration:none}@media (width<=640px){.today-actions{width:100%}.today-actions .btn{min-height:var(--tap);flex:1}}.install-banner{border-left-color:var(--steel)}.install-steps svg{vertical-align:-2px;margin:0}.install-actions{align-items:center;gap:.3rem;display:flex}:root{--tap:48px}@media (width<=640px){.field>span{text-transform:none;letter-spacing:0;color:var(--text);font-size:.92rem;font-weight:600}.kpis span,.badge{letter-spacing:.02em}.chip{min-height:var(--tap);padding-inline:1rem}input,select,textarea{min-height:var(--tap);font-size:16px}.btn.small{min-height:44px}.menu-items button{min-height:var(--tap)}.muted.small,.small{font-size:.88rem}.card h3{letter-spacing:.02em}}.brand-product{color:#aab2bc;font-family:var(--body);letter-spacing:.02em;text-transform:none;white-space:nowrap;border-left:1px solid #fff3;margin-left:.6rem;padding-left:.6rem;font-size:.85rem;font-weight:500}.topbar{color:var(--text);box-shadow:0 1px 0 var(--border);background:#fff;border-bottom:3px solid #ed7404}.brand{color:var(--text)}.brand-lockup{width:auto;height:40px;display:block}.brand-client{border-left:1px solid var(--border);min-width:0;color:var(--muted);font-family:var(--body);text-transform:none;letter-spacing:.01em;white-space:nowrap;align-items:center;gap:.5rem;margin-left:.9rem;padding-left:.9rem;font-size:.85rem;font-weight:500;display:flex}.brand-client img{object-fit:contain;max-width:110px;height:28px}.sync-pill{color:var(--text);border-color:var(--border);background:#fff}.sync-pill:hover{border-color:var(--steel)}.sync-pill.synced svg{color:var(--ok)}.sync-pill.syncing svg{color:#ed7404}@media (width<=640px){.brand-lockup{height:32px}}.job-tabs,.home-tabs{background:var(--surface);display:flex}.job-tab,.home-tab{cursor:pointer;min-width:0;min-height:52px;font:inherit;font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;flex:1 1 0;justify-content:center;align-items:center;gap:.5rem;padding:.6rem .5rem;font-size:1.08rem;font-weight:700;display:flex;position:relative}.job-tab:hover,.home-tab:hover{color:var(--text)}.job-tab.active,.home-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.job-tab-icon{display:inline-flex;position:relative}.job-tab-label{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.4rem;display:inline-flex;overflow:hidden}.job-tab-num{letter-spacing:0;border:1.5px solid;border-radius:50%;place-items:center;width:22px;height:22px;font-size:.8rem;display:inline-grid}.job-tab-done{background:var(--ok);color:#fff;border-radius:50%;padding:1px;position:absolute;top:-5px;right:-7px}.job-tab .dot{position:absolute;top:-3px;right:-5px}.tab-badge{background:var(--accent);color:#fff;min-width:18px;height:18px;font-family:var(--body);text-align:center;letter-spacing:0;border-radius:9px;padding:0 4px;font-size:.7rem;font-weight:700;line-height:18px;position:absolute;top:-7px;right:-10px}.job-tabs{top:calc(61px + env(safe-area-inset-top));z-index:15;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.9rem;position:sticky;box-shadow:0 1px 2px #0000000d}.home-tabs{border-bottom:1px solid var(--border);margin:-.25rem 0 1rem}.home-tab{flex:none;padding-inline:1.1rem}.home-tab.new{color:var(--accent);margin-left:auto;display:none}.sub-tabs{scrollbar-width:none;gap:.4rem;margin-bottom:.9rem;display:flex;overflow-x:auto}.sub-tabs::-webkit-scrollbar{display:none}.sub-tab{border:1px solid var(--border);background:var(--surface);min-height:40px;color:var(--text);font:inherit;cursor:pointer;border-radius:20px;flex:none;align-items:center;gap:.35rem;padding:.35rem 1rem;font-weight:600;display:inline-flex;position:relative}.sub-tab svg{color:var(--ok)}.sub-tab.active{background:var(--steel);border-color:var(--steel);color:#fff}.sub-tab.active svg{color:#fff}.sub-tab.add{color:var(--muted);border-style:dashed}.sub-tab.add svg{color:var(--muted)}.sub-tab .dot{position:static}.step-next{justify-content:flex-end;margin-top:1.25rem;display:flex}.step-next .btn{max-width:100%}.fab{right:1.25rem;bottom:calc(1.25rem + env(safe-area-inset-bottom));z-index:35;cursor:pointer;background:var(--accent);color:#fff;min-height:52px;font:inherit;border:0;border-radius:26px;align-items:center;gap:.5rem;padding:0 1.3rem;font-size:1rem;font-weight:700;display:inline-flex;position:fixed;box-shadow:0 6px 18px #0000003a}.fab:hover{background:var(--accent-hover)}.home-tools{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.home-tools .search{flex:1;margin:0}.status-filter{min-height:var(--tap);max-width:46%}.home-notes{flex-direction:column;gap:.25rem;margin-top:1.25rem;display:flex}.home-notes p{flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;display:flex}.home-sub{margin:1.25rem 0 .5rem}.home-today .today-list{padding:.25rem 1rem}.home-today .today-list li{padding:.65rem 0}.home-today .today-list li:first-child{border-top:0}.link-btn{color:var(--accent);font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.new-job-modal{max-height:min(88vh,900px);overflow-y:auto}.new-job-modal .row-between{gap:.25rem}.new-job-step{margin:-.4rem 0 .75rem}.btn.block{justify-content:center;width:100%;margin-top:.5rem}.package-list{flex-direction:column;gap:.5rem;margin-bottom:.6rem;display:flex}.package-item{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:var(--surface);align-items:flex-start;gap:.75rem;padding:.75rem .85rem;display:flex}.package-item.on{border-color:var(--accent);box-shadow:inset 4px 0 0 var(--accent)}.package-item input{width:22px;height:22px;accent-color:var(--accent);flex-shrink:0;margin-top:2px}.package-item .grow{flex-direction:column;gap:.15rem;display:flex}.package-advice{color:var(--muted);margin-top:.15rem;font-size:.85rem}.package-advice.need{color:var(--accent);font-weight:600}@media (width<=1000px){main{padding-bottom:calc(150px + env(safe-area-inset-bottom))}.job-tabs,.home-tabs{z-index:40;border:0;border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);border-radius:0;margin:0;position:fixed;inset:auto 0 0;box-shadow:0 -2px 10px #0000000f}.job-tab,.home-tab{min-height:60px;font-family:var(--body);letter-spacing:.01em;text-transform:none;border-top:3px solid #0000;border-bottom:0;flex-direction:column;flex:1 1 0;gap:.15rem;padding:.45rem .2rem .4rem;font-size:.74rem;font-weight:600}.job-tab.active,.home-tab.active{border-top-color:var(--accent);background:var(--accent-soft)}.home-tab.new{margin:0;display:flex}.home-tab.new .job-tab-icon{background:var(--accent);color:#fff;border-radius:50%;margin-top:-4px;padding:5px}.fab{bottom:calc(74px + env(safe-area-inset-bottom));right:.9rem}.fraction-bar{bottom:max(var(--kb,0px), calc(61px + env(safe-area-inset-bottom)))}.step-next .btn{justify-content:center;width:100%}.dashboard .dash-head{margin-bottom:.6rem}}@media (width<=640px){.dash-head .btn{box-shadow:none;position:static}.job-grid{gap:.5rem}.job-card{gap:.7rem;padding:.6rem}.job-thumb{width:56px;height:56px}.job-card .tiny{display:none}.modal.new-job-modal{max-height:92vh}}body:has(.fraction-bar) .fab{display:none}main{overflow-x:clip}.job-title,.job-sub{min-width:0}.job-sub span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.photo-card{min-width:0}.photo-card select,.photo-card input{min-width:0;max-width:100%}@media (width<=640px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1000px){.app.home .sync-pill{display:none}}@media (width>=1001px){.home-tab .job-tab-icon{order:2;align-items:center;gap:.4rem;position:static}.home-tab .job-tab-icon svg{display:none}.home-tab .tab-badge{background:var(--surface-2);color:var(--muted);display:inline-block;position:static}.home-tab.active .tab-badge{background:var(--accent);color:#fff}.home-tab.account,.fab{display:none}}.company-setup{flex-direction:column;gap:.75rem;max-height:min(92vh,900px);display:flex;overflow-y:auto}.company-setup h3{align-items:center;gap:.5rem;margin:0;display:flex}.company-setup .form-grid{margin:0}.logo-drop{cursor:pointer;color:var(--muted)}.stack-tight{flex-direction:column;flex:1;gap:.3rem;min-width:0;display:flex}.center{align-self:center}.admin h1{align-items:center;gap:.5rem;display:flex}.admin-btn{gap:.35rem}.admin-btn.active{background:var(--steel);color:#fff}.admin-accounts{flex-direction:column;gap:.6rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.admin-accounts>li{padding:0;overflow:hidden}.admin-account{width:100%;font:inherit;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.8rem;padding:.8rem 1rem;display:flex}.admin-account svg.flip{transform:rotate(180deg)}.admin-logo{border:1px solid var(--border);border-radius:var(--radius);width:52px;height:52px;font-family:var(--display);color:var(--muted);background:#fff;flex-shrink:0;place-items:center;font-size:1.4rem;font-weight:700;display:grid;overflow:hidden}.admin-logo img{object-fit:contain;max-width:100%;max-height:100%}.admin-who{flex-direction:column;min-width:0;display:flex}.admin-badges{flex-wrap:wrap;justify-content:flex-end;gap:.3rem;display:flex}.badge.warn{color:var(--warn);border-color:var(--warn)}.admin-detail{border-top:1px solid var(--border);padding:.6rem 1rem .9rem}.admin-jobs{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-jobs button{border:0;border-top:1px solid var(--border);width:100%;font:inherit;color:var(--text);text-align:left;cursor:pointer;min-height:var(--tap);background:0 0;align-items:center;gap:.7rem;padding:.55rem .2rem;display:flex}.admin-jobs li:first-child button{border-top:0}.admin-jobs button:hover{background:var(--surface-2)}.admin-kpis{margin:.6rem 0}.admin-table th{width:110px;color:var(--muted);font-weight:600}@media (width<=640px){.admin-account{flex-wrap:wrap}.admin-badges{justify-content:flex-start;width:100%;padding-left:calc(52px + .8rem)}.admin-jobs .status-badge{display:none}}.billing{flex-direction:column;gap:.8rem;max-height:min(92vh,1000px);display:flex;overflow-y:auto}.billing h3{align-items:center;gap:.5rem;display:flex}.billing p{margin:0}.billing-interval{align-self:flex-start}.plan-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;display:grid}.plan-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:.4rem;padding:.9rem;display:flex;position:relative}.plan-card.highlight{border-color:var(--accent);box-shadow:inset 0 3px 0 var(--accent)}.plan-card h4{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:1.35rem}.plan-tag{background:var(--accent);color:#fff;text-transform:uppercase;letter-spacing:.05em;border-radius:3px;padding:.1rem .5rem;font-size:.7rem;font-weight:700;position:absolute;top:-.65rem;right:.7rem}.plan-price strong{font-family:var(--display);font-size:2rem}.plan-features{flex-direction:column;flex:1;gap:.3rem;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.plan-features li{align-items:flex-start;gap:.35rem;display:flex}.plan-features svg{color:var(--ok);flex-shrink:0;margin-top:3px}.plan-card .btn.block{margin-top:.4rem}.row-between.wrap{flex-wrap:wrap;gap:.5rem}.trial-bar{border:0;border-bottom:1px solid var(--border);background:var(--accent-soft);width:100%;color:var(--text);font:inherit;cursor:pointer;text-align:center;padding:.45rem 1rem;font-size:.9rem;display:block}.trial-bar strong{color:var(--accent)}.billing-switch{border-left:4px solid var(--border);flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.billing-switch.on{border-left-color:var(--ok)}.billing-switch p{margin:.2rem 0 0}@media (width<=1000px){.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.plan-grid{grid-template-columns:minmax(0,1fr)}}.landing{max-width:1200px;margin:0 auto;padding:0 1.25rem 3rem}.landing-nav{padding:.9rem 0;padding-top:max(.9rem, env(safe-area-inset-top));z-index:20;background:#fff;border-bottom:3px solid #ed7404;align-items:center;gap:.75rem;margin:0 -1.25rem;padding-inline:1.25rem;display:flex;position:sticky;top:0}.landing-links{gap:1.5rem;margin-left:2rem}.landing-links a{color:var(--text);font-weight:600;text-decoration:none}.landing-links a:hover{color:var(--accent)}.landing-hero{grid-template-columns:1fr 1.05fr;align-items:center;gap:2.5rem;padding:3.5rem 0 2.5rem;display:grid}.landing-kicker{color:var(--accent);font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .6rem;font-weight:700}.landing h1{font-family:var(--display);text-transform:uppercase;letter-spacing:.01em;margin:0 0 1rem;font-size:clamp(2.4rem,5.2vw,4rem);line-height:1}.landing-lead{color:var(--text);max-width:34em;margin:0 0 1.4rem;font-size:1.15rem;line-height:1.55}.landing-cta{flex-wrap:wrap;gap:.6rem;margin-bottom:.7rem;display:flex}.landing-hero-art{padding-bottom:6%;position:relative}.landing-shot{border:1px solid var(--border);background:#fff;border-radius:8px;display:block;box-shadow:0 18px 50px #1c212726}.landing-shot.desktop{width:100%}.landing-shot.phone{border:4px solid var(--steel);border-radius:16px;width:26%;position:absolute;bottom:0;right:-2%}.landing-types{border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:center;gap:.5rem;padding:1.2rem 0;display:flex}.landing-type{border:1px solid var(--border);color:var(--text);background:#fff;border-radius:20px;align-items:center;gap:.4rem;padding:.35rem .8rem;font-size:.92rem;font-weight:600;display:inline-flex}.landing-type svg{color:var(--accent)}.landing-section{padding:3.2rem 0 .5rem}.landing h2{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;margin:0 0 1.4rem;font-size:clamp(1.7rem,3.4vw,2.5rem);line-height:1.05}.landing-sub{margin:-.9rem 0 1.4rem}.landing-features{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.landing-feature{border-top:3px solid var(--accent);padding-top:.9rem}.landing-feature svg{color:var(--accent)}.landing-feature h3{margin:.5rem 0 .35rem;font-size:1.1rem}.landing-feature p,.landing-split p{color:var(--muted);margin:0;line-height:1.5}.landing-split{grid-template-columns:1.1fr 1fr;align-items:center;gap:2.5rem;margin-top:2.8rem;display:grid}.landing-split img{border:1px solid var(--border);border-radius:8px;width:100%;box-shadow:0 12px 36px #1c21271f}.landing-split h3{align-items:center;gap:.4rem;margin:1.2rem 0 .35rem;font-size:1.2rem;display:flex}.landing-split h3:first-child{margin-top:0}.landing-docs{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:1.2rem;display:grid}.landing-doc{color:var(--text);flex-direction:column;gap:.6rem;text-decoration:none;display:flex}.landing-doc img{aspect-ratio:3/3.4;object-fit:cover;object-position:top;border:1px solid var(--border);background:#fff;border-radius:6px;width:100%;transition:transform .15s;box-shadow:0 8px 24px #1c21271a}.landing-doc:hover img{transform:translateY(-3px)}.landing-doc>span{flex-direction:column;gap:.15rem;display:flex}.landing-doc strong{align-items:center;gap:.35rem;display:inline-flex}.landing-steps{counter-reset:step;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.landing-steps li{counter-increment:step;border:1px solid var(--border);border-radius:var(--radius);background:#fff;flex-direction:column;gap:.3rem;padding:1.1rem;display:flex}.landing-steps li:before{content:counter(step);background:var(--steel);color:#fff;width:34px;height:34px;font-family:var(--display);border-radius:50%;place-items:center;margin-bottom:.3rem;font-size:1.1rem;font-weight:700;display:grid}.landing-steps strong{font-size:1.1rem}.landing-steps span{color:var(--muted)}.landing-final{text-align:center;background:var(--steel);color:#fff;border-bottom:4px solid #ed7404;border-radius:8px;margin-top:3.5rem;padding:2.5rem 1.5rem}.landing-final h2{margin-bottom:.5rem}.landing-final p{color:#c9d0d8;margin:0 0 1.2rem}.landing-final .landing-cta{justify-content:center}.landing-final .btn.secondary{color:#fff;background:0 0;border-color:#fff6}.landing-foot{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2.5rem;padding-top:1.2rem;display:flex}.landing-foot img{height:28px}.landing-foot .link{margin-left:auto}@media (width<=1000px){.landing-hero{grid-template-columns:1fr;gap:2rem;padding-top:2rem}.landing-features{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-split{grid-template-columns:1fr}}@media (width<=640px){.landing{padding-inline:1rem}.landing-nav{margin-inline:-1rem;padding-inline:1rem}.landing-features,.landing-docs,.landing-steps{grid-template-columns:minmax(0,1fr)}.landing-cta .btn{flex:100%;justify-content:center}.landing-doc img{aspect-ratio:auto;max-height:420px}.landing-lead{font-size:1.05rem}}
