@import "https://fonts.googleapis.com/css2?family=Hanken+Grotesk:wght@400;500;600;700;800;900&family=IBM+Plex+Mono:wght@500;600;700&display=swap";
:root{--font-sans:"Hanken Grotesk", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace;--bg:#f8faf8;--surface:#fff;--surface-2:#f2f6f4;--surface-3:#e8efec;--surface-muted:var(--surface-2);--ink:#14221f;--text:#33423e;--text-soft:#64716d;--text-mute:#89938f;--ink-muted:var(--text-soft);--border:#dfe7e3;--border-strong:#c5d1cc;--line:var(--border);--line-strong:var(--border-strong);--primary:#004d40;--navy-50:#e9f4f2;--navy-100:#cce2dd;--navy-500:#0b6a5a;--navy-600:#005b4e;--navy-700:#004d40;--green:#2e7d58;--green-strong:#004d40;--green-bg:#e7f5ee;--green-ink:#176143;--mint:var(--green-bg);--blue:#2f65a8;--blue-bg:#e7f0fb;--blue-soft:var(--blue-bg);--blue-ink:#255184;--sched-50:#e8f1f8;--sched-600:#285f8f;--sched-700:#1f4c73;--amber:#bd7a1b;--amber-bg:#fff5db;--amber-soft:var(--amber-bg);--amber-ink:#7b4f0a;--red:#b42318;--red-bg:#feecea;--red-soft:var(--red-bg);--red-ink:#8e1f16;--teal:#278f87;--teal-bg:#e4f5f3;--teal-ink:#1c6862;--violet:#6941c6;--violet-bg:#eee8ff;--violet-soft:var(--violet-bg);--violet-ink:#5630a9;--shadow:0 1px 2px #14221f0d, 0 10px 28px #14221f12;--shadow-soft:0 1px 2px #14221f0d;--sh-sm:0 1px 2px #14221f0d;--sh-md:0 1px 2px #14221f0f, 0 10px 24px #14221f12;--sh-lg:0 18px 42px #14221f1f;--sh-pop:0 24px 68px #14221f2e;--radius:8px;--r-xs:4px;--r-sm:6px;--r-md:8px;--r-lg:12px;--r-pill:999px}*{box-sizing:border-box}html{background:var(--bg);color:var(--text)}body{background:var(--surface-2);color:var(--text);font-family:var(--font-sans);letter-spacing:0;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.mono,.metric-value,.approval-price strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums}button{cursor:pointer}.login-page{background:linear-gradient(135deg, #d8f3dc85, transparent 38%), linear-gradient(315deg, #dbeafeb8, transparent 42%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);border-radius:var(--radius);width:min(430px,100%);box-shadow:var(--shadow);background:#fffffff0;gap:16px;padding:24px;display:grid}.approval-shell{gap:18px;width:min(920px,100%);margin:0 auto;display:grid}.approval-summary,.approval-document,.approval-actions,.approval-success{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fffffff0}.approval-summary{justify-content:space-between;gap:20px;padding:24px;display:flex}.approval-summary h1{margin:4px 0 0;font-size:34px;line-height:1.08}.approval-summary p{color:var(--ink-muted);margin:8px 0 0}.approval-price{align-content:center;justify-items:end;min-width:160px;display:grid}.approval-price span{color:var(--ink-muted);font-size:13px;font-weight:800}.approval-price strong{margin-top:4px;font-size:28px}.approval-document{padding:26px;line-height:1.62}.approval-document h1,.approval-document h2{line-height:1.15}.approval-document h1{margin-top:0}.approval-actions{gap:14px;padding:22px;display:grid}.approval-check{color:var(--ink-muted);grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;line-height:1.45;display:grid}.approval-check input{margin-top:3px}.approval-success{color:var(--green-strong);grid-template-columns:28px minmax(0,1fr);gap:10px;padding:18px;display:grid}.approval-success p{color:var(--ink-muted);margin:4px 0 0}.approval-success.muted{color:var(--ink-muted)}.app-shell{grid-template-columns:60px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:var(--surface);z-index:20;flex-direction:column;align-items:center;height:100vh;padding:12px 0;display:flex;position:sticky;top:0}.brand{border-radius:10px;justify-content:center;align-items:center;width:40px;min-height:40px;margin-bottom:10px;display:flex;position:relative}.brand-mark{border-radius:var(--radius);background:var(--primary);place-items:center;width:32px;height:32px;display:grid;position:relative}.brand-mark:after{content:"";background:#fff;position:absolute;inset:0;-webkit-mask:url(/cleanor-mark.svg) 50%/62% no-repeat;mask:url(/cleanor-mark.svg) 50%/62% no-repeat}.brand-title{margin:0;font-size:17px;font-weight:800;display:none}.brand-subtitle{min-width:0;color:var(--ink-muted);text-overflow:ellipsis;margin:2px 0 0;font-size:13px;overflow:hidden}.nav-group{flex-direction:column;align-items:center;gap:4px;width:100%;display:flex}.nav-link{width:40px;height:40px;color:var(--ink-muted);border-radius:10px;justify-content:center;align-items:center;font-weight:650;transition:background .16s,color .16s;display:flex;position:relative}.nav-link:hover,.nav-link.active{background:var(--surface-muted);color:var(--ink)}.nav-link.active{background:var(--mint);color:var(--primary)}.nav-link.active svg{color:var(--primary)}.nav-label{display:none}.nav-tip{z-index:40;pointer-events:none;white-space:nowrap;background:var(--ink);color:#fff;box-shadow:var(--shadow);opacity:0;border-radius:6px;padding:5px 9px;font-size:11.5px;font-weight:750;transition:opacity .12s,transform .12s;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%)translate(-4px)}.nav-link:hover .nav-tip,.brand:hover .nav-tip,.role-switch-button:hover .nav-tip,.role-panel:hover .nav-tip{opacity:1;transform:translateY(-50%)}.sidebar-footer{flex-direction:column;align-items:center;gap:8px;width:100%;margin-top:auto;display:flex}.role-panel{border:1px solid var(--line);background:var(--mint);width:34px;height:34px;color:var(--primary);border-radius:999px;place-items:center;font-size:11px;font-weight:850;display:grid;position:relative}.role-avatar{display:block}.role-panel .eyebrow,.role-panel .role-name,.role-panel .brand-subtitle{display:none}.demo-switcher{justify-content:center;width:100%;display:flex;position:relative}.role-switch-button{width:40px;height:40px;color:var(--ink-muted);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.role-switch-copy,.role-chevron{display:none}.role-dot{color:#fff;border-radius:8px;place-items:center;width:28px;height:28px;font-size:11px;font-weight:850;display:grid}.demo-role-grid{z-index:60;border:1px solid var(--line);background:var(--surface);width:216px;box-shadow:var(--shadow);border-radius:10px;flex-direction:column;gap:6px;padding:7px;display:flex;position:absolute;bottom:0;left:calc(100% + 10px)}.demo-role-button{border-radius:var(--radius);min-height:38px;color:var(--ink-muted);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:6px 8px;font-size:13px;font-weight:800;display:flex}.demo-role-button:disabled{cursor:not-allowed;opacity:.72}.logout-button{width:40px;height:40px;min-height:0;color:var(--ink-muted);background:0 0;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:0;margin-top:0;padding:0;font-weight:750;display:inline-flex}.logout-button:hover{background:var(--surface-muted);color:var(--ink);border-color:#0000}.logout-button span{display:none}.main{min-width:0}.topbar-title{min-width:220px}.topbar{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f6f7f3e0;justify-content:space-between;align-items:center;gap:16px;min-height:76px;padding:18px 32px;display:flex;position:sticky;top:0}.topbar h1{margin:0;font-size:18px}.topbar p{color:var(--ink-muted);margin:4px 0 0;font-size:13px}.global-search{flex:360px;width:min(520px,100%);position:relative}.global-search-field{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;min-height:42px;padding:0 10px;display:grid;box-shadow:0 1px 8px #18201b0d}.global-search-field svg{color:var(--ink-muted)}.global-search-field input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:14px}.global-search-field input::placeholder{color:#7b877d}.global-search-field button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-muted);width:28px;height:28px;color:var(--ink-muted);place-items:center;padding:0;display:grid}.global-search-popover{z-index:30;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);gap:8px;padding:10px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0}.global-search-popover-header{color:var(--ink-muted);justify-content:space-between;gap:10px;font-size:12px;display:flex}.global-search-popover-header strong{color:var(--ink)}.global-search-results{gap:6px;display:grid}.global-search-result{border-radius:var(--radius);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px;display:grid}.global-search-result:hover{background:var(--surface-muted)}.global-search-result strong{overflow-wrap:anywhere;min-width:0;font-size:14px;display:block}.global-search-result p,.global-search-message{color:var(--ink-muted);margin:3px 0 0;font-size:12px;line-height:1.35}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.page-header h2{margin:0;font-size:30px;line-height:1.1}.page-header p{max-width:760px;color:var(--ink-muted);margin:8px 0 0;line-height:1.55}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.button,.icon-button{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);min-height:40px;color:var(--ink);justify-content:center;align-items:center;gap:8px;padding:9px 13px;font-weight:750;display:inline-flex}.button.primary{border-color:var(--green-strong);background:var(--green-strong);color:#fff}.button:disabled{cursor:not-allowed;opacity:.68}.icon-button{width:40px;padding:0}.grid{gap:18px;display:grid}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.metric-card,.panel,.job-card,.calendar-slot,.work-order-card,.service-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.metric-card{padding:18px}.metric-card p{margin:0}.metric-label{color:var(--ink-muted);font-size:13px;font-weight:700}.metric-value{margin-top:10px;font-size:30px;font-weight:850}.metric-detail{color:var(--ink-muted);margin-top:8px;font-size:13px}.metric-trend{background:var(--surface-muted);color:var(--green-strong);border-radius:999px;margin-top:14px;padding:4px 9px;font-size:12px;font-weight:800;display:inline-flex}.command-center,.demo-flow{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:stretch;gap:18px;margin-bottom:20px;padding:20px;display:grid}.command-main,.demo-flow>div:first-child{align-content:center;gap:10px;display:grid}.command-main h3,.demo-flow h3{margin:0;font-size:22px}.command-main p,.demo-flow p{color:var(--ink-muted);margin:0;line-height:1.55}.command-snapshot{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.command-snapshot div{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcf8;gap:5px;min-height:76px;padding:12px;display:grid}.command-snapshot span,.demo-step small,.role-queue p,.role-queue small{color:var(--ink-muted);font-size:12px;font-weight:750}.command-snapshot strong{overflow-wrap:anywhere;min-width:0;line-height:1.35}.job-case-overview{grid-template-columns:minmax(0,1.15fr) minmax(280px,.65fr) minmax(340px,1fr);align-items:stretch;gap:16px;margin-bottom:20px;display:grid}.job-journey-panel,.job-owner-panel,.job-readiness-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:16px}.job-owner-panel{align-content:start;gap:12px;display:grid}.job-owner-panel h3{margin:0;font-size:20px;line-height:1.2}.job-owner-panel p{color:var(--ink-muted);margin:0;line-height:1.5}.job-owner-actions{flex-wrap:wrap;gap:8px;margin-top:2px;display:flex}.job-journey{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.job-journey li{border-radius:var(--radius);grid-template-columns:30px minmax(0,1fr);align-items:start;gap:9px;padding:8px;display:grid}.job-journey li.current{background:var(--blue-soft)}.job-journey li.done{background:var(--mint)}.job-journey li.upcoming{background:var(--surface-muted)}.job-journey li>span{background:var(--surface);width:30px;height:30px;color:var(--ink-muted);border-radius:999px;place-items:center;font-size:12px;font-weight:900;display:grid}.job-journey li.current>span{color:var(--blue)}.job-journey li.done>span{color:var(--green-strong)}.job-journey strong{font-size:13px;display:block}.job-journey small{color:var(--ink-muted);margin-top:2px;font-size:12px;line-height:1.35;display:block}.readiness-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.readiness-item{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcf8;gap:6px;padding:10px;display:grid}.readiness-item.done{background:#d8f3dc6b}.readiness-item strong{font-size:13px}.readiness-item small{color:var(--ink-muted);font-size:12px;line-height:1.35}.demo-step-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.demo-step{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcf8;grid-template-columns:22px 18px minmax(0,1fr);align-items:center;gap:8px;padding:10px;display:grid}.demo-step>span{background:var(--green-strong);color:#fff;border-radius:999px;place-items:center;width:22px;height:22px;font-size:12px;font-weight:850;display:grid}.demo-step strong,.demo-step small{overflow-wrap:anywhere;grid-column:3;min-width:0}.demo-step small{margin-top:-5px}.content-grid{grid-template-columns:minmax(0,1.4fr) minmax(360px,.6fr);align-items:start;gap:18px;display:grid}.panel{padding:20px}.panel-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.panel-header h3{margin:0;font-size:17px}.panel-header p{color:var(--ink-muted);margin:4px 0 0;font-size:13px}.panel-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.role-queue-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.role-queue{align-content:start;gap:12px;min-width:0;display:grid}.role-queue h4{margin:0;font-size:15px}.role-queue p{margin:5px 0 0;line-height:1.45}.role-queue ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.role-queue li a{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcf8;gap:6px;padding:11px;display:grid}.role-queue strong{overflow-wrap:anywhere;min-width:0;font-size:14px}.jobs-command{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);align-items:stretch;gap:18px;margin-bottom:18px;padding:20px;display:grid}.jobs-command-main h3{margin:7px 0;font-size:24px;line-height:1.15}.jobs-command-main p{max-width:760px;color:var(--ink-muted);margin:0 0 14px;line-height:1.55}.jobs-command-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.jobs-command-stats div{border-left:3px solid var(--line-strong);align-content:center;gap:4px;padding-left:12px;display:grid}.jobs-command-stats div:last-child{grid-column:1/-1}.jobs-command-stats span{color:var(--ink-muted);font-size:12px;font-weight:800}.jobs-command-stats strong{font-size:24px}.jobs-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px;display:grid}.job-lane{align-content:start;gap:10px;min-width:0;display:grid}.job-lane-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:10px;display:flex}.job-lane-header span{align-items:center;gap:7px;font-weight:850;display:inline-flex}.job-lane-header p{color:var(--ink-muted);margin:5px 0 0;font-size:12px;line-height:1.35}.job-lane-header strong{background:var(--surface-muted);min-width:30px;height:30px;color:var(--ink-muted);border-radius:999px;place-items:center;font-size:13px;display:grid}.job-lane-list{gap:9px;display:grid}.job-board-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:7px;padding:11px;display:grid}.job-board-card:hover{border-color:var(--line-strong);box-shadow:0 8px 20px #18201b12}.job-board-card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.job-board-card strong,.job-board-card span{overflow-wrap:anywhere;min-width:0}.job-board-card>span,.job-board-card small{color:var(--ink-muted);font-size:12px}.job-board-card small{align-items:center;gap:5px;display:inline-flex}.job-board-card em{color:var(--blue);font-size:12px;font-style:normal;font-weight:850}.jobs-list-panel{margin-bottom:14px}.job-list{gap:12px;display:grid}.job-card{grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:16px;display:grid}.job-card h3,.job-card h4{margin:0;font-size:16px}.job-meta{color:var(--ink-muted);flex-wrap:wrap;gap:8px 14px;margin-top:10px;font-size:13px;display:flex}.job-side{justify-items:end;gap:10px;display:grid}.status-badge{border-radius:999px;align-items:center;gap:6px;width:fit-content;padding:5px 9px;font-size:12px;font-weight:800;display:inline-flex}.progress-track{background:var(--surface-muted);border-radius:999px;height:9px;overflow:hidden}.progress-bar{border-radius:inherit;background:linear-gradient(90deg, var(--green), #6a994e);height:100%}.workflow-list{gap:10px;display:grid}.workflow-step{grid-template-columns:26px minmax(0,1fr);align-items:start;gap:10px;display:grid}.workflow-dot{border:1px solid var(--line-strong);background:var(--surface);width:26px;height:26px;color:var(--ink-muted);border-radius:999px;place-items:center;font-size:12px;font-weight:850;display:grid}.workflow-step.done .workflow-dot{border-color:var(--green);background:var(--green);color:#fff}.workflow-step.current .workflow-dot{border-color:var(--amber);background:var(--amber-soft);color:var(--amber)}.workflow-title{margin:0;font-weight:800}.workflow-description{color:var(--ink-muted);margin:3px 0 0;font-size:13px;line-height:1.45}.table-like{gap:8px;display:grid}.calendar-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.calendar-day{align-content:start;gap:10px;display:grid}.calendar-day h3{margin:0 0 4px;font-size:14px}.calendar-slot{gap:8px;padding:12px;display:grid}.calendar-slot small{color:var(--ink-muted);align-items:center;gap:5px;display:inline-flex}.calendar-slot p{color:var(--ink-muted);margin:0;font-size:12px;line-height:1.4}.calendar-time{color:var(--ink-muted);font-size:12px;font-weight:750}.work-order-command{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:stretch;gap:18px;margin-bottom:18px;padding:20px;display:grid}.work-order-command h3{margin:7px 0;font-size:22px}.work-order-command p{color:var(--ink-muted);margin:0 0 14px;line-height:1.55}.work-order-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.work-order-kpis div{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcf8;gap:5px;padding:12px;display:grid}.work-order-kpis span{color:var(--ink-muted);font-size:12px;font-weight:750}.work-order-kpis strong{font-size:24px}.work-order-list-panel{margin-bottom:16px}.work-order-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.work-order-card,.service-card{padding:18px}.work-order-card-top,.work-order-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.work-order-card-top{margin-bottom:12px}.work-order-heading{margin-top:12px}.work-order-card h3,.service-card h3{margin:0}.service-card p,.work-order-card p{color:var(--ink-muted);line-height:1.5}.work-order-facts,.proof-strip{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.work-order-facts span{background:var(--surface-muted);color:var(--ink-muted);border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:12px;font-weight:750;display:inline-flex}.work-order-detail{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.work-order-detail summary{border:1px solid var(--line-strong);border-radius:var(--radius);cursor:pointer;background:#fbfcf8;justify-content:space-between;align-items:center;gap:10px;min-height:40px;padding:9px 12px;font-weight:850;display:flex}.work-order-detail summary::-webkit-details-marker{display:none}.work-order-detail[open] summary svg{transform:rotate(180deg)}.customer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.customer-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);gap:14px;padding:16px;display:grid}.customer-card-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.customer-card h3{margin:8px 0 0;font-size:18px;line-height:1.2}.customer-card-header>strong{text-align:right;min-width:max-content;font-size:20px}.customer-health{flex-wrap:wrap;gap:8px;display:flex}.customer-section{border-top:1px solid var(--line);gap:8px;padding-top:12px;display:grid}.customer-section ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.customer-section li{color:var(--ink-muted);align-items:center;gap:7px;font-size:13px;line-height:1.4;display:flex}.customer-section p{color:var(--ink-muted);margin:0;font-size:13px}.work-order-actions{border-top:1px solid var(--line);gap:14px;margin-top:16px;padding-top:14px;display:grid}.work-order-toolbar{flex-wrap:wrap;gap:10px;display:flex}.work-order-checks{gap:10px;display:grid}.evidence-panel{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcf8;gap:12px;padding:12px;display:grid}.evidence-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.evidence-header strong{margin-bottom:3px;display:block}.evidence-header p{margin:0;font-size:13px}.media-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:10px;display:grid}.media-form .full{grid-column:1/-1}.media-form .button{align-self:end}.evidence-grid,.job-media-grid,.approval-document .report-media-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.evidence-thumb,.job-media-thumb,.approval-document .report-media-grid figure{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;margin:0;overflow:hidden}.evidence-thumb img,.job-media-thumb img,.approval-document .report-media-grid img{aspect-ratio:4/3;object-fit:cover;background:var(--surface-muted);width:100%;display:block}.evidence-thumb figcaption,.job-media-thumb figcaption,.approval-document .report-media-grid figcaption{gap:3px;padding:9px;display:grid}.evidence-thumb strong,.job-media-thumb strong{font-size:13px}.evidence-thumb span,.job-media-thumb span,.job-media-thumb small,.approval-document .report-media-grid figcaption{color:var(--ink-muted);font-size:12px;line-height:1.35}.job-media-thumb small{flex-wrap:wrap;align-items:center;gap:5px;display:inline-flex}.checklist{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.checklist li{color:var(--ink-muted);align-items:flex-start;gap:8px;font-size:13px;display:flex}.quote-actions{justify-items:end;gap:8px;display:grid}.manual-approval-form{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcf8;justify-self:stretch;gap:10px;width:min(420px,100%);padding:12px;display:grid}.manual-approval-form .button{justify-self:end}.approval-link{color:var(--blue);font-size:13px;font-weight:800}.quote-list{gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.quote-list li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.quote-list p{color:var(--ink-muted);margin:3px 0 0;font-size:13px}.quote-status{background:var(--surface-muted);color:var(--ink-muted);border-radius:999px;padding:4px 8px;font-size:12px;font-weight:800}.segment-control{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-muted);flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.segment-link{border-radius:calc(var(--radius) - 2px);min-height:32px;color:var(--ink-muted);align-items:center;padding:6px 10px;font-size:13px;font-weight:800;display:inline-flex}.invoice-list{gap:12px;display:grid}.invoice-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(180px,auto);align-items:start;gap:16px;padding:15px;display:grid}.invoice-main{min-width:0}.invoice-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.invoice-title h3{overflow-wrap:anywhere;min-width:0;margin:0;font-size:16px}.invoice-lines{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.invoice-line-pill{background:var(--surface-muted);max-width:100%;color:var(--ink-muted);border-radius:999px;align-items:center;gap:5px;padding:5px 8px;font-size:12px;font-weight:750;display:inline-flex}.invoice-side{text-align:right;justify-items:end;gap:6px;display:grid}.invoice-side strong{font-size:22px}.invoice-side small{color:var(--ink-muted);justify-content:flex-end;align-items:center;gap:5px;font-size:12px;font-weight:750;display:inline-flex}.complaint-form,.complaint-update{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.complaint-list{gap:12px;display:grid}.complaint-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:14px;padding:14px;display:grid}.complaint-card-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.complaint-card h3{margin:8px 0 0;font-size:17px}.complaint-card p{color:var(--ink-muted);margin:6px 0 0;line-height:1.45}.complaint-mini-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.complaint-mini-list li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:7px;padding:12px;display:grid}.complaint-mini-list p,.complaint-mini-list small{color:var(--ink-muted);margin:0;line-height:1.45}.danger-text{color:var(--red)!important}.lead-layout{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:start;gap:18px;display:grid}.lead-map-toolbar{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:10px;margin-bottom:12px;display:grid}.lead-google-map{border:1px solid var(--line);border-radius:var(--radius);background:#eef3ef;min-height:420px;overflow:hidden}.lead-google-map.hidden{display:none}.lead-map{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(90deg,#2d6a4f14 1px,#0000 1px) 0 0/54px 54px,linear-gradient(0deg,#2d6a4f14 1px,#0000 1px) 0 0/54px 54px,linear-gradient(135deg,#edf5ec,#f7faf4 55%,#e8f1ea);min-height:420px;position:relative;overflow:hidden}.lead-map-street{background:#fffc;border-radius:999px;position:absolute;box-shadow:inset 0 0 0 1px #c4cec2b3}.lead-map-street.horizontal{height:28px;left:-8%;right:-8%;transform:rotate(-8deg)}.lead-map-street.horizontal.top{top:22%}.lead-map-street.horizontal.bottom{bottom:25%}.lead-map-street.vertical{width:30px;top:-8%;bottom:-8%;transform:rotate(14deg)}.lead-map-street.vertical.left{left:28%}.lead-map-street.vertical.right{right:22%}.lead-pin{z-index:2;background:var(--green);color:#fff;border:2px solid #fff;border-radius:999px;place-items:center;width:34px;height:34px;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 10px 24px #18201b38}.lead-pin.status-neutral{background:var(--ink-muted)}.lead-map-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.lead-map-actions .form-hint,.lead-map-mode{color:var(--ink-muted);margin:0;font-size:12px;font-weight:750}.lead-map-mode{margin-top:8px}.lead-create{grid-area:1/2/span 2}.field-grid.compact{gap:12px}.lead-list{grid-column:1;gap:12px;display:grid}.lead-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);gap:14px;padding:16px;display:grid}.lead-card.active{border-color:var(--green)}.lead-card-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.lead-card h3{margin:8px 0 0;font-size:17px}.lead-card p{color:var(--ink-muted);margin:5px 0 0;line-height:1.45}.lead-badges{flex-wrap:wrap;gap:6px;display:flex}.lead-conversion{border-top:1px solid var(--line);padding-top:12px}.lead-conversion summary{color:var(--green-strong);cursor:pointer;align-items:center;gap:8px;font-weight:850;display:inline-flex}.lead-conversion .field-grid{margin-top:14px}.lead-created{color:var(--ink-muted);font-size:12px;font-weight:750}.schedule-form{gap:14px;display:grid}.schedule-toolbar{flex-wrap:wrap;gap:10px;display:flex}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.slot-button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:86px;color:var(--ink);text-align:left;gap:4px;padding:12px;display:grid}.slot-button:hover,.slot-button.selected{border-color:var(--green);background:var(--mint)}.slot-button:disabled{cursor:not-allowed;opacity:.55}.slot-button span,.slot-button small{color:var(--ink-muted);font-size:13px}.schedule-details{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcf8;gap:16px;padding:14px;display:grid}.field-grid.compact{grid-template-columns:minmax(160px,220px) minmax(180px,1fr);gap:12px}.weather-check{align-self:end}.weather-check span,.installer-choice span{align-items:center;gap:6px;display:inline-flex}.installer-picker{gap:10px;display:grid}.installer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.installer-choice{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px 10px;padding:10px;font-weight:800;display:grid}.installer-choice small{color:var(--ink-muted);grid-column:2;font-size:12px;font-weight:750}.installer-choice.disabled{opacity:.55}.message-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.message-list li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:12px}.message-list p{color:var(--ink-muted);margin:4px 0;font-size:13px;line-height:1.45}.message-list small{color:var(--ink-muted);font-size:12px;font-weight:750}.automation-timeline{gap:10px;margin:0;padding:0;list-style:none;display:grid}.automation-timeline li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:12px;display:grid}.automation-timeline p{color:var(--ink-muted);margin:4px 0;font-size:13px;line-height:1.45}.automation-timeline small{color:var(--ink-muted);align-items:center;gap:5px;font-size:12px;font-weight:750;display:inline-flex}.message-center-list{gap:12px;display:grid}.message-center-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:42px minmax(0,1fr);gap:12px;padding:14px;display:grid}.message-channel-mark{border-radius:var(--radius);background:var(--surface-muted);width:42px;height:42px;color:var(--green-strong);place-items:center;display:grid}.message-center-main{min-width:0}.message-center-main h3{overflow-wrap:anywhere;margin:9px 0 0;font-size:16px}.message-center-main p{color:var(--ink-muted);margin:6px 0 0;line-height:1.45}.template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.template-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);gap:14px;padding:16px;display:grid}.template-card-header{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:12px;display:grid}.template-card h3{margin:8px 0 0;font-size:17px}.template-card p,.template-trigger span,.template-preview p{color:var(--ink-muted);margin:0;line-height:1.45}.template-trigger,.template-preview{gap:5px;display:grid}.template-preview{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcf8;padding:12px}.template-label{align-items:center;gap:6px;margin-bottom:8px;display:inline-flex}.variable-list{flex-wrap:wrap;gap:6px;display:flex}.form-error{color:var(--red);margin:0;font-size:13px;font-weight:700}.form-hint{color:var(--ink-muted);align-items:center;gap:6px;margin:0;font-size:13px;font-weight:700;display:inline-flex}.form-shell{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:20px;display:grid}.step-list{gap:8px;display:grid;position:sticky;top:100px}.step-button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-align:left;width:100%;color:var(--ink-muted);align-items:center;gap:10px;padding:11px 12px;font-weight:750;display:flex}.step-button.active{border-color:var(--green);background:var(--mint);color:var(--green-strong)}.step-button.complete{color:var(--green-strong)}.step-button>svg,.step-button>span:first-child{flex:0 0 22px;width:22px}.wizard-section-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.wizard-section-header h4{margin:0;font-size:16px}.wizard-section-header p{color:var(--ink-muted);margin:6px 0 0;line-height:1.45}.wizard-section-header.compact{margin-bottom:10px}.wizard-command{border:1px solid var(--line);border-radius:var(--radius);background:#f7fbf5;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;padding:14px;display:grid}.wizard-command div{gap:4px;display:grid}.wizard-command span,.review-item span{color:var(--ink-muted);text-transform:uppercase;font-size:12px;font-weight:800}.wizard-command strong,.review-item strong{overflow-wrap:anywhere;min-width:0;line-height:1.35}.service-choice-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.service-choice{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-align:left;min-height:158px;color:var(--ink);align-content:start;gap:8px;padding:14px;display:grid}.service-choice.active{border-color:var(--green);background:var(--mint);box-shadow:inset 0 0 0 1px var(--green)}.service-choice strong{line-height:1.25}.service-choice p{color:var(--ink-muted);margin:0;font-size:13px;line-height:1.45}.service-meta{color:var(--green-strong);align-self:end;font-size:12px;font-weight:800}.service-addons{margin-top:18px}.addon-grid,.option-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.check-field{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:42px;color:var(--ink);grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;padding:10px 11px;font-weight:750;display:grid}.check-field.full{grid-column:1/-1}.check-field input{width:16px;height:16px}.photo-draft-form{grid-template-columns:minmax(160px,.8fr) minmax(180px,1fr) minmax(220px,1.1fr) auto;align-items:end;gap:12px;margin-top:18px;display:grid}.photo-draft-list{gap:10px;margin-top:16px;display:grid}.photo-draft-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.photo-draft-card svg{color:var(--green-strong)}.photo-draft-card p,.photo-draft-card small{color:var(--ink-muted);margin:3px 0 0}.photo-draft-card small{overflow-wrap:anywhere;display:block}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.review-item{border:1px solid var(--line);border-radius:var(--radius);background:#fff;gap:5px;padding:13px;display:grid}.validation-summary{gap:14px;margin-top:18px;display:grid}.validation-summary h4{margin:0}.empty-state.success{border-color:var(--green);color:var(--green-strong);align-items:center;gap:8px;display:flex}.empty-state p,.submit-message{margin:0}.submit-message{color:var(--ink-muted);margin-top:6px;font-size:13px;font-weight:750}.form-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:22px}.form-panel h3{margin:0;font-size:22px}.form-panel>p{color:var(--ink-muted);margin:8px 0 20px;line-height:1.5}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.field{gap:7px;display:grid}.field.full{grid-column:1/-1}.field label,.field span{font-size:13px;font-weight:800}.field input,.field select,.field textarea{border:1px solid var(--line-strong);border-radius:var(--radius);width:100%;min-height:42px;color:var(--ink);background:#fff;padding:10px 11px}.field textarea{resize:vertical;min-height:112px}.form-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding-top:18px;display:flex}.issues{gap:10px;margin-top:18px;display:grid}.issue{border:1px solid var(--line);border-left:4px solid var(--amber);border-radius:var(--radius);background:#fffaf0;padding:11px 12px}.issue.blocking{border-left-color:var(--red);background:#fff7f5}.issue.warning{border-left-color:var(--amber);background:#fffaf0}.issue p{color:var(--ink-muted);margin:0;font-size:13px}.issue strong{color:var(--ink);align-items:center;gap:6px;margin-bottom:3px;display:flex}.empty-state{border:1px dashed var(--line-strong);border-radius:var(--radius);color:var(--ink-muted);background:#fff9;padding:22px}h1,h2,h3,h4{color:var(--ink);letter-spacing:0}.app-shell{background:var(--surface-2)}.sidebar{border-right-color:var(--border);background:var(--surface);box-shadow:1px 0 #ffffffb8}.brand{border-radius:var(--r-md)}.brand>div:not(.brand-mark){display:none}.brand:hover{background:var(--surface-2)}.brand-mark{border-radius:var(--r-md);background:var(--primary);width:32px;height:32px;box-shadow:inset 0 0 0 1px #ffffff1f}.nav-group{gap:3px;padding-inline:8px}.nav-separator{background:var(--border);width:28px;height:1px;margin:5px 0}.nav-link{border-radius:var(--r-md);width:40px;height:38px;color:var(--text-mute)}.nav-link:hover{background:var(--surface-3);color:var(--ink)}.nav-link.active{background:var(--navy-50);color:var(--navy-700);box-shadow:inset 0 0 0 1px var(--navy-100), 0 1px 2px #14221f0a}.nav-link.active:before{content:"";border-radius:var(--r-pill);background:var(--navy-700);width:3px;height:18px;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.nav-signal{border:1.5px solid var(--surface);background:var(--blue);border-radius:50%;width:7px;height:7px;position:absolute;top:7px;right:7px}.nav-signal-warning{background:var(--amber)}.nav-signal-danger{background:var(--red)}.nav-tip{border-radius:var(--r-sm);box-shadow:var(--sh-lg);background:#17211f}.role-switch-button{border-radius:var(--r-md)}.role-switch-button:hover,.role-switch-button[aria-expanded=true]{background:var(--surface-3)}.role-dot{border-radius:var(--r-md);width:28px;height:28px;font-size:13px}.role-admin{background:var(--navy-700)}.role-sales{background:var(--blue)}.role-operations{background:var(--teal)}.role-installer{background:var(--green)}.role-finance{background:var(--amber)}.demo-role-grid{border-color:var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-pop)}.demo-role-button{border-radius:var(--r-md)}.demo-role-button:hover,.demo-role-button.active{background:var(--navy-50);color:var(--navy-700)}.role-panel{border-color:var(--border);background:var(--navy-50);color:var(--navy-700)}.logout-button{border-radius:var(--r-md)}.topbar{border-bottom-color:var(--border);background:#ffffffe0;min-height:70px;box-shadow:0 1px #ffffffd1}.topbar h1{font-size:17px;font-weight:850}.topbar p{color:var(--text-mute)}.global-search-field,.global-search-popover{border-color:var(--border);border-radius:var(--r-md);box-shadow:var(--sh-sm)}.global-search-field{background:var(--surface);min-height:38px}.global-search-field:focus-within{border-color:var(--navy-500);box-shadow:0 0 0 3px #004d401a}.page{padding:24px}.page-header{gap:18px;margin-bottom:20px}.page-header h2{font-size:25px;font-weight:850;line-height:1.12}.page-header p{max-width:820px;color:var(--text-soft);margin-top:6px;font-size:13.5px;line-height:1.5}.button,.icon-button{border-color:var(--border-strong);border-radius:var(--r-md);background:var(--surface);min-height:36px;color:var(--ink);box-shadow:var(--sh-sm);padding:8px 12px;font-size:13px;font-weight:800}.button:hover,.icon-button:hover{border-color:var(--navy-100);background:var(--surface-2)}.button.primary{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 6px 16px #004d4029}.button.primary:hover{background:var(--navy-600)}.button.warning{background:var(--amber-bg);color:var(--amber-ink);border-color:#efd28b}.metric-card,.panel,.job-card,.calendar-slot,.work-order-card,.service-card,.customer-card,.template-card,.form-panel,.invoice-card,.complaint-card,.lead-card{border-color:var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-sm)}.metric-card{min-height:126px;padding:15px 16px}.metric-label,.wizard-command span,.review-item span{color:var(--text-mute);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:700}.metric-value{color:var(--ink);letter-spacing:0;margin-top:8px;font-size:28px;font-weight:800}.metric-detail{color:var(--text-soft);margin-top:6px}.metric-trend{border-radius:var(--r-pill);background:var(--green-bg);color:var(--green-ink);margin-top:12px;padding:3px 8px;font-size:11.5px}.panel,.form-panel{padding:18px}.panel-header{border-bottom:1px solid var(--border);align-items:flex-start;margin-bottom:14px;padding-bottom:13px}.panel-header h3{font-size:16px;font-weight:850}.panel-header p{color:var(--text-soft);line-height:1.45}.command-center,.demo-flow,.jobs-command,.work-order-command{border-color:var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-sm);padding:18px}.command-snapshot div,.readiness-item,.work-order-kpis div,.evidence-panel,.schedule-details,.template-preview,.manual-approval-form,.review-item,.wizard-command,.role-queue li a,.demo-step{border-color:var(--border);border-radius:var(--r-md);background:var(--surface-2)}.demo-step>span{background:var(--navy-700)}.role-queue li a:hover,.job-board-card:hover,.lead-card:hover,.invoice-card:hover,.message-center-card:hover,.complaint-card:hover{border-color:var(--border-strong);box-shadow:var(--sh-md)}.status-badge,.quote-status{border-radius:var(--r-pill);min-height:22px;padding:3px 8px;font-size:11px;font-weight:850;line-height:1}.status-badge span[aria-hidden]{font-size:9px}.status-neutral{background:var(--surface-3);color:var(--text-soft)}.status-info{background:var(--sched-50);color:var(--sched-700)}.status-warning{background:var(--amber-bg);color:var(--amber-ink)}.status-success{background:var(--green-bg);color:var(--green-ink)}.status-danger{background:var(--red-bg);color:var(--red-ink)}.status-done{background:var(--violet-bg);color:var(--violet-ink)}.quote-status{background:var(--surface-3);width:fit-content;color:var(--text-soft);align-items:center;display:inline-flex}.segment-control{border-color:var(--border-strong);border-radius:var(--r-md);background:var(--surface-2);padding:3px}.segment-link{border-radius:var(--r-sm);min-height:30px;color:var(--text-soft);font-size:12px}.segment-link.active{background:var(--surface);color:var(--ink);box-shadow:var(--sh-sm)}.field{gap:6px}.field label,.field span{color:var(--text-soft);font-size:12px;font-weight:800}.field input,.field select,.field textarea{border-color:var(--border-strong);border-radius:var(--r-md);background:var(--surface);min-height:38px;color:var(--ink);padding:8px 10px;font-size:13.5px}.field textarea{min-height:104px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--navy-500);outline:0;box-shadow:0 0 0 3px #004d401a}.approval-check{border-radius:var(--r-md);color:var(--text-soft)}.approval-check input{accent-color:var(--primary)}.issue{border-color:#f0d69a;border-left-color:var(--amber);background:var(--amber-bg)}.issue.blocking{border-color:#f3b8b0;border-left-color:var(--red);background:var(--red-bg)}.issue p{color:var(--text-soft)}.empty-state{border-color:var(--border-strong);border-radius:var(--r-lg);color:var(--text-soft);background:#ffffffb8}.job-card,.work-order-card,.lead-card,.invoice-card,.complaint-card,.message-center-card,.template-card,.customer-card{background:var(--surface)}.job-meta,.work-order-facts,.proof-strip,.invoice-lines{gap:7px 10px}.job-meta span,.work-order-facts span,.invoice-line-pill,.message-list small,.automation-timeline small{color:var(--text-soft)}.invoice-card,.message-center-card{border-radius:var(--r-lg)}.invoice-card{padding:14px}.invoice-side strong{color:var(--ink);font-family:var(--font-mono);font-size:22px;font-weight:700}.message-channel-mark{border-radius:var(--r-md);background:var(--navy-50);color:var(--navy-700)}.message-center-card{padding:13px}.complaint-card{position:relative;overflow:hidden}.complaint-card:before{content:"";background:var(--red);width:3px;position:absolute;inset:0 auto 0 0}.lead-layout{grid-template-columns:minmax(0,1fr) minmax(340px,380px);gap:18px}.content-grid>*,.lead-layout>*,.form-shell>*,.job-case-overview>*,.work-order-grid>*,.jobs-board>*,.role-queue-grid>*{min-width:0}.lead-map-panel{min-height:560px}.lead-map-toolbar{grid-template-columns:repeat(3,minmax(0,1fr)) 104px}.lead-google-map,.lead-map{border-color:var(--border);border-radius:var(--r-lg);min-height:450px}.lead-map{isolation:isolate;background:radial-gradient(circle at 18% 18%,#ffffffbf 0 11%,#0000 12%),radial-gradient(circle at 72% 72%,#d5e7dfc7 0 15%,#0000 16%),linear-gradient(135deg,#e8f1ec,#f7faf6 48%,#dfeae4)}.lead-map:before,.lead-map:after{content:"";z-index:0;pointer-events:none;border-radius:50%;position:absolute}.lead-map:before{aspect-ratio:1;background:#97becb52;width:42%;bottom:-22%;right:-12%}.lead-map:after{aspect-ratio:1.5;background:#d3e2d3b3;width:30%;top:48%;left:-8%}.lead-map-street{z-index:1;background:#ffffffd6;box-shadow:inset 0 0 0 1px #beccc6b8,0 4px 10px #14221f0a}.lead-map-legend,.lead-map-callout{z-index:4;border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--sh-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe0;position:absolute}.lead-map-legend{flex-wrap:wrap;gap:8px;max-width:calc(100% - 24px);padding:8px 10px;display:flex;top:12px;left:12px}.lead-map-legend span{color:var(--text-soft);align-items:center;gap:5px;font-size:11px;font-weight:800;display:inline-flex}.legend-dot{border-radius:50%;width:8px;height:8px}.legend-dot.status-info{background:var(--sched-600)}.legend-dot.status-warning{background:var(--amber)}.legend-dot.status-success{background:var(--green)}.legend-dot.status-danger{background:var(--red)}.lead-map-callout{gap:6px;width:min(280px,100% - 28px);padding:12px;display:grid;top:56px;right:14px}.lead-map-callout strong{min-width:0;color:var(--ink);overflow-wrap:anywhere}.lead-map-callout p,.lead-map-callout small{color:var(--text-soft);margin:0;font-size:12px;line-height:1.35}.lead-pin{z-index:2;border-width:2px;border-radius:50% 50% 50% 0;width:34px;height:34px;transform:translate(-50%,-78%)rotate(-45deg);box-shadow:0 11px 22px #14221f3d}.lead-pin svg{transform:rotate(45deg)}.lead-pin.active{outline:5px solid #004d4024;width:42px;height:42px}.lead-pin.status-info{background:var(--sched-600)}.lead-pin.status-warning{background:var(--amber)}.lead-pin.status-success{background:var(--green)}.lead-pin.status-danger{background:var(--red)}.lead-create{align-self:start}.lead-card.active{border-color:var(--navy-500);background:var(--navy-50);box-shadow:inset 3px 0 0 var(--navy-600), var(--sh-sm)}.calendar-grid{gap:10px}.calendar-day{min-width:0}.calendar-day h3{color:var(--text-soft);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:700}.calendar-slot{border-left:3px solid var(--sched-600);padding:12px}.calendar-time{color:var(--text-mute);font-family:var(--font-mono)}.work-order-command{background:var(--surface)}.work-order-command h3,.jobs-command-main h3,.command-main h3,.demo-flow h3{font-size:20px;line-height:1.2}.work-order-kpis strong,.jobs-command-stats strong{color:var(--ink);font-family:var(--font-mono);font-size:23px}.work-order-facts span{border-radius:var(--r-pill);background:var(--surface-2)}.public-page{background:var(--surface-3);min-height:100vh;padding:0 24px 88px}.public-brandbar{background:var(--primary);color:#fff;align-items:center;gap:10px;height:58px;margin-inline:-24px;padding:0 max(24px,50vw - 406px);display:flex}.public-brandbar strong{font-size:15px;font-weight:850}.public-brandbar span:last-child{color:#ffffffc7;margin-left:auto;font-size:12px;font-weight:750}.public-logo{border-radius:var(--r-md);background:#fff;width:30px;height:30px;position:relative}.public-logo:after{content:"";background:var(--primary);position:absolute;inset:0;-webkit-mask:url(/cleanor-mark.svg) 50%/60% no-repeat;mask:url(/cleanor-mark.svg) 50%/60% no-repeat}.approval-shell{gap:18px;width:min(860px,100%);margin-top:28px}.approval-summary,.approval-document,.approval-actions,.approval-success{border-color:var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--sh-sm)}.approval-summary{padding:26px 28px}.approval-summary h1{letter-spacing:0;font-size:29px}.approval-price strong{color:var(--ink);font-size:32px;font-weight:700}.approval-document{padding:26px 28px}.approval-actions{padding:18px}.approval-success{color:var(--green-ink)}@media (max-width:1100px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;align-items:stretch;gap:10px;max-width:100vw;height:auto;padding:12px 16px;display:flex;position:static;overflow:hidden}.brand{flex:none;justify-content:flex-start;gap:10px;width:auto;margin-bottom:0}.brand>div:not(.brand-mark),.brand-title{display:block}.brand-mark{flex:none}.nav-group{flex-direction:row;flex:auto;align-items:center;gap:6px;min-width:0;padding-bottom:3px;display:flex;overflow-x:auto}.nav-separator{flex:none;width:1px;height:28px;margin:0 2px}.nav-link{white-space:nowrap;flex:none;justify-content:flex-start;gap:8px;width:auto;height:auto;min-height:38px;padding:8px 11px}.nav-label{display:inline}.nav-link.active:before{width:14px;height:3px;top:auto;bottom:5px;left:8px;transform:none}.nav-tip{display:none}.sidebar-footer{flex-direction:row;flex:none;justify-content:flex-end;align-items:center;gap:10px;margin-top:0;padding-top:0}.sidebar-footer .role-panel{display:none}.demo-switcher{align-items:center;width:auto;margin-bottom:0}.role-switch-button{border:1px solid var(--line);background:var(--surface);gap:8px;width:auto;min-height:38px;padding:4px 9px}.role-switch-copy,.role-chevron{display:grid}.role-switch-copy{justify-items:start;line-height:1.1}.role-switch-copy .eyebrow{color:var(--ink-muted);text-transform:uppercase;font-size:10px;font-weight:800}.role-switch-copy .role-name{color:var(--ink);align-items:center;gap:5px;font-size:12px;font-weight:850;display:inline-flex}.demo-role-grid{width:min(320px,80vw);display:flex;inset:calc(100% + 8px) 0 auto auto;overflow-x:auto}.demo-role-button{flex:none;min-width:92px}.logout-button{border-color:var(--line);width:auto;height:38px;margin-top:0;padding:8px 12px}.logout-button span{display:inline}.content-grid,.form-shell,.lead-layout,.command-center,.demo-flow,.job-case-overview,.work-order-command,.jobs-command{grid-template-columns:1fr}.lead-create,.lead-list{grid-area:auto}.lead-map-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.approval-summary{display:grid}.approval-price{justify-items:start}.metrics-grid,.calendar-grid,.work-order-grid,.service-grid,.customer-grid,.jobs-board,.role-queue-grid,.template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.step-list{position:static}.wizard-command,.photo-draft-form{grid-template-columns:1fr}}@media (max-width:720px){.page,.topbar{padding:20px}.sidebar{flex-wrap:wrap;padding:14px}.sidebar-footer{justify-content:space-between;width:100%}.demo-switcher{flex:auto}.role-switch-button{justify-content:flex-start;width:100%}.logout-button{height:38px}.page-header,.job-card,.invoice-card,.lead-card-header,.complaint-card-header{grid-template-columns:1fr}.page-header,.topbar,.job-card,.invoice-card,.lead-card-header,.complaint-card-header{flex-direction:column;align-items:stretch}.topbar-title,.global-search{width:100%;min-width:0}.global-search{flex:none}.topbar .actions{width:100%}.lead-map-toolbar,.lead-map-actions{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.lead-layout,.lead-layout>*,.lead-map-panel,.lead-create,.lead-list,.lead-card{width:100%;min-width:0;max-width:100%}.lead-map-street.horizontal{left:-4%;right:-4%}.lead-map-callout{width:auto;left:12px;right:12px}.global-search-popover{position:static}.metrics-grid,.calendar-grid,.work-order-grid,.service-grid,.customer-grid,.jobs-board,.role-queue-grid,.command-snapshot,.jobs-command-stats,.readiness-grid,.work-order-kpis,.demo-step-list,.template-grid,.slot-grid,.field-grid,.addon-grid,.complaint-form,.complaint-update,.option-stack,.review-grid,.service-choice-grid{grid-template-columns:1fr}.form-footer{flex-direction:column;align-items:stretch}.form-footer .actions{width:100%}.form-footer .button{flex:auto}.job-side{justify-items:start}.invoice-side{text-align:left;justify-items:start}.invoice-side small{justify-content:flex-start}}
