*{box-sizing:border-box}:root{--ink:#18202b;--muted:#687385;--line:#e5e8ee;--panel:#fff;--bg:#f4f6f8;--nav:#111827;--accent:#4f46e5}html,body{background:var(--bg);min-height:100%;color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{grid-template-columns:250px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--nav);color:#fff;flex-direction:column;min-height:100vh;padding:25px 18px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;padding:0 7px 28px;display:flex}.brand strong{font-size:15px;display:block}.brand span{color:#9ca3af;font-size:11px}.logo{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:11px;place-items:center;width:38px;height:38px;font-weight:800;display:grid}nav{gap:6px;display:grid}.navItem{color:#aeb6c4;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;padding:11px 12px;display:flex}.navItem:hover,.navItem.active{color:#fff;background:#1f2937}.sidebarBottom{color:#98a2b3;gap:7px;margin-top:auto;padding:14px 8px 0;display:grid}.statusDot{align-items:center;gap:8px;font-size:12px;display:flex}.statusDot i{background:#22c55e;border-radius:999px;width:7px;height:7px;display:inline-block;box-shadow:0 0 0 4px #22c55e18}.signOut{color:#cbd5e1;background:0 0;border:1px solid #374151;border-radius:8px;padding:7px 10px;font-size:11px}.authShell{background:radial-gradient(circle at top,#eef2ff,#f4f6f8 55%);place-items:center;min-height:100vh;padding:22px;display:grid}.authCard{border:1px solid var(--line);background:#fff;border-radius:18px;width:min(430px,100%);padding:30px;box-shadow:0 22px 70px #18202b18}.authCard .logo{color:#fff;margin-bottom:22px}.authCard h1{margin:7px 0}.authIntro{color:var(--muted);font-size:13px;line-height:1.5}.authForm{gap:14px;margin-top:22px;display:grid}.authForm label{color:#596273;gap:6px;font-size:11px;font-weight:800;display:grid}.authForm input{border:1px solid #d8dde6;border-radius:9px;outline:0;padding:11px 12px}.authForm input:focus{border-color:#857bea;box-shadow:0 0 0 3px #857bea18}.authForm .primary{margin-top:3px;padding:12px}.authMessage{border:1px solid var(--line);background:#f8fafc;border-radius:8px;padding:10px;font-size:12px;line-height:1.4}.authSwitch{width:100%;color:var(--accent);background:0 0;border:0;margin-top:15px;font-size:12px;font-weight:700}.content{align-self:start;width:100%;max-width:1400px;margin:auto;padding:38px 46px 70px}header{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}h1{letter-spacing:-.03em;margin:2px 0 0;font-size:30px}h2{margin:0;font-size:17px}.eyebrow{letter-spacing:.14em;color:#8b95a5;margin:0;font-size:10px;font-weight:800}.primary{background:var(--accent);color:#fff;border:0;border-radius:9px;padding:10px 15px;font-weight:700}.aiPanel{background:linear-gradient(135deg,#eef2ff,#faf5ff);border:1px solid #ddd9ff;border-radius:15px;margin-bottom:20px;padding:20px}.aiHead{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.spark{color:#6d5ce7;margin-right:8px}.badge{color:#675bd8;background:#fff;border:1px solid #ddd9ff;border-radius:6px;padding:4px 7px;font-size:10px;font-weight:800}.commandRow{background:#fff;border:1px solid #d9dce5;border-radius:10px;grid-template-columns:1fr auto;display:grid;overflow:hidden}.commandRow input{border:0;outline:0;min-width:0;padding:14px 15px}.commandRow button{color:#fff;background:#111827;border:0;padding:0 20px;font-weight:700}.commandRow button:disabled{opacity:.6}.examples{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.examples button{color:#5f6674;background:#ffffff9c;border:1px solid #d9d7ef;border-radius:7px;padding:6px 9px;font-size:11px}.aiReply{white-space:pre-wrap;background:#fff;border:1px solid #e1e2ee;border-radius:9px;margin-top:13px;padding:13px;font-size:13px;line-height:1.5}.stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;display:grid}.stats article{border:1px solid var(--line);background:#fff;border-radius:12px;gap:5px;padding:17px;display:grid}.stats span,.stats small{color:var(--muted);font-size:11px}.stats strong{letter-spacing:-.04em;font-size:25px}.card{border:1px solid var(--line);background:#fff;border-radius:13px;overflow:hidden}.cardHead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:17px 19px;display:flex}.cardHead button{background:#f4f5f7;border:0;border-radius:7px;padding:7px 10px;font-size:11px;font-weight:700}.toolbar{border-bottom:1px solid var(--line);background:#fbfcff;gap:10px;padding:12px 19px;display:flex}.toolbar input{border:1px solid #d8dde6;border-radius:8px;flex:1;min-width:0;padding:9px 10px}.toolbar button{background:#fff;border:1px solid #d8dde6;border-radius:8px;padding:8px 10px;font-size:11px;font-weight:700}.errorText{color:#b42318;margin:12px 19px;font-size:12px}.tableEmpty{color:#687385;padding:22px 19px;font-size:13px}.table{width:100%}.tr{border-bottom:1px solid #eef0f3;grid-template-columns:1.35fr 1.6fr .8fr .7fr;align-items:center;padding:13px 19px;font-size:12px;display:grid}.tr:last-child{border-bottom:0}.tr.th{text-transform:uppercase;letter-spacing:.07em;color:#8892a2;background:#fbfbfc;font-size:10px;font-weight:800}.customerCols{grid-template-columns:1.4fr 1.05fr .95fr 1.25fr .8fr .95fr;gap:12px}.customerCols span,.jobCols span,.quoteCols span{gap:3px;display:grid}.customerCols small,.jobCols small,.quoteCols small{color:#7b8698;font-size:10px}.jobCols{grid-template-columns:1.1fr 1.5fr .8fr .7fr 1fr;gap:12px}.invoiceCols{grid-template-columns:1.3fr .7fr .85fr .7fr 1fr;gap:12px}.quoteCols{grid-template-columns:1.3fr 1fr .85fr 1fr .8fr .95fr 1fr;gap:12px}.rowActions{gap:7px;display:flex!important}.rowActions button{background:#fff;border:1px solid #d8dde6;border-radius:7px;padding:5px 8px;font-size:11px}.rowActions .danger{color:#b42318;border-color:#f5c2c7}.mutedNote{color:#98a2b3;font-size:11px}.status{color:#667085;background:#f2f4f7;border-radius:999px;padding:5px 8px;font-size:10px;font-style:normal;font-weight:800}.status.scheduled,.status.paid,.status.complete,.status.accepted{color:#027a48;background:#ecfdf3}.status.quoted,.status.sent{color:#175cd3;background:#eff8ff}.status.overdue,.status.rejected{color:#c01048;background:#fff1f3}.status.lead,.status.draft{color:#b54708;background:#fff8e8}.modalBackdrop{width:100%;max-width:none;height:100%;max-height:none;color:inherit;background:0 0;border:0;margin:0;padding:20px;position:fixed;inset:0}.modalBackdrop[open]{place-items:center;display:grid}.modalBackdrop::backdrop{background:#0b1020aa}.modal{background:#fff;border-radius:14px;gap:14px;width:min(470px,100%);max-height:calc(100dvh - 40px);padding:22px;display:grid;overflow-y:auto;box-shadow:0 25px 80px #0004}.modal label{color:#596273;gap:6px;font-size:11px;font-weight:800;display:grid}.modal input,.modal select,.modal textarea{color:#17202b;background:#fff;border:1px solid #d8dde6;border-radius:8px;outline:0;width:100%;padding:10px 11px}.modal textarea{resize:vertical;min-height:84px}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:#857bea;box-shadow:0 0 0 3px #857bea18}.modalActions{justify-content:flex-end;gap:8px;padding-top:5px;display:flex}.modalActions button{background:#fff;border:1px solid #d8dde6;border-radius:8px;padding:9px 12px}.modalActions .primary{border-color:var(--accent);background:var(--accent)}.lineItems{gap:8px;display:grid}.lineItemsHead{text-transform:uppercase;letter-spacing:.05em;color:#8892a2;grid-template-columns:2fr .7fr 1fr auto auto;gap:7px;padding:0 2px;font-size:10px;font-weight:800;display:grid}.lineItemsHead span:last-child{visibility:hidden}.lineItem{grid-template-columns:2fr .7fr 1fr auto auto;align-items:center;gap:7px;display:grid}.lineItem input[type=text],.lineItem input[type=number]{width:100%;margin:0}.modal .taxableToggle{color:#596273;white-space:nowrap;align-items:center;gap:5px;font-size:10px;font-weight:700;display:flex}.modal .taxableToggle input{width:auto}.removeLine{color:#b42318;white-space:nowrap;background:#fff;border:1px solid #f5c2c7;border-radius:7px;padding:8px 9px;font-size:11px}.removeLine:disabled{opacity:.4;cursor:not-allowed}.addLineItem{color:var(--accent);background:#fbfcff;border:1px dashed #c7cbd6;border-radius:8px;padding:9px;font-size:12px;font-weight:700}.quotePreview{border:1px solid var(--line);background:#fbfcff;border-radius:10px;gap:5px;padding:12px 14px;font-size:12px;display:grid}.previewRow{justify-content:space-between;display:flex}.previewTotal{color:var(--ink);border-top:1px solid var(--line);margin-top:2px;padding-top:7px;font-size:15px;font-weight:800}.previewNote{color:var(--muted);margin:2px 0 0;font-size:10px}@media (max-width:900px){.shell{grid-template-columns:1fr}.sidebar{min-height:auto;position:static}.sidebar nav{grid-template-columns:repeat(4,1fr)}.sidebarBottom{display:none}.content{padding:24px 18px 50px}.stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.sidebar{padding:15px 10px}.brand{padding-bottom:15px}.sidebar nav{display:flex;overflow:auto}.navItem{white-space:nowrap}header{align-items:flex-end}h1{font-size:24px}.stats{grid-template-columns:1fr 1fr}.tr{grid-template-columns:1.2fr 1fr .8fr}.tr span:last-child{display:none}.customerCols{grid-template-columns:1fr 1fr}.customerCols span:nth-child(4),.customerCols span:nth-child(5){display:none}.customerCols span:last-child{display:flex}.jobCols,.invoiceCols{grid-template-columns:1.2fr .9fr 1fr}.jobCols span:nth-child(4),.invoiceCols span:nth-child(3){display:none}.jobCols span:last-child,.invoiceCols span:last-child{display:flex}.quoteCols{grid-template-columns:1.3fr .9fr 1fr}.quoteCols span:nth-child(2),.quoteCols span:nth-child(4),.quoteCols span:nth-child(5){display:none}.quoteCols span:last-child{display:flex}.lineItemsHead{display:none}.lineItem{grid-template-columns:1fr}.lineItem .removeLine{justify-self:start}.commandRow{grid-template-columns:1fr}.commandRow button{padding:11px}}
