:root{--bg:#171c22;--panel:#222831;--border:#36404b;--muted:#aab4c0;--orange:#ff8a35;--text:#f5f6f8}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:8px;padding:12px 17px;font-weight:650}button:disabled{cursor:not-allowed;opacity:.45}button:hover:enabled{filter:brightness(1.12)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--orange);outline-offset:2px}input,select,textarea{width:100%;background:#181e25;border:1px solid var(--border);border-radius:8px;color:var(--text);padding:12px;min-width:0}input[type=checkbox]{width:17px;height:17px;accent-color:var(--orange)}label{display:block;font-size:12px;color:var(--muted)}label>input,label>textarea{margin:7px 0 12px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(25px,3vw,38px);letter-spacing:-1.1px;margin-bottom:12px}h2{font-size:19px;letter-spacing:-.4px}h3{font-size:14px;margin-bottom:7px}p{line-height:1.65}.muted{color:var(--muted)}.small{font-size:12px}.orange{color:var(--orange)}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:750;color:var(--orange);margin-bottom:12px}.brand{display:flex;gap:10px;align-items:center;font-size:23px;font-weight:800;letter-spacing:-.7px}.brand-icon{background:var(--orange);color:var(--bg);font-size:21px;line-height:35px;text-align:center;width:35px;height:35px;border-radius:10px}.brand small{font-size:9px;letter-spacing:2px;color:var(--muted);margin-left:10px}.top{display:flex;align-items:center;justify-content:space-between;padding:18px 4%;border-bottom:1px solid var(--border);gap:20px;background:#1c2229}.top nav{display:flex;gap:4px}.nav,.subtle{background:#2d3540;color:var(--text)}.nav{background:transparent;color:var(--muted)}.nav.active{background:#3a2d23;color:var(--orange)}.primary{background:var(--orange);color:#201c19}.top form{margin:0}.workspace{max-width:1450px;margin:auto;padding:38px 4% 70px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 345px;gap:24px;align-items:start}.panel{border:1px solid var(--border);background:var(--panel);padding:25px;border-radius:15px;margin-bottom:23px}.section-title{display:flex;align-items:center;gap:11px;margin-bottom:20px}.section-title h2{margin:0}.step{border:1px solid var(--border);color:var(--orange);font-size:11px;border-radius:7px;line-height:28px;text-align:center;width:30px}.badge{margin-left:auto;background:#343d49;color:var(--muted);padding:5px 10px;font-size:11px;border-radius:30px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.wide{grid-column:1/-1}.user-control{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding-top:18px;margin-top:7px;gap:20px}.user-control p{margin:0;font-size:12px}.stepper{display:flex;gap:5px;align-items:center}.stepper button{background:#343e49;color:var(--text);padding:10px 15px}.stepper input{width:70px;text-align:center}.module-tools{display:flex;gap:10px;align-items:center;margin-bottom:10px}.module-tools input[type=search]{flex:1}.module-tools select{width:180px}.check{display:flex;align-items:center;gap:8px;white-space:nowrap}.check input{margin:0}.module{display:grid;grid-template-columns:24px 1fr auto;gap:9px;padding:16px 0;border-top:1px solid var(--border);align-items:center}.module-name{font-weight:600;font-size:13px;color:var(--text)}.module-name label{font-size:13px;color:inherit;cursor:pointer}.module small{color:var(--muted);display:block;margin-top:5px;font-size:11px;line-height:1.5}.module.selected{background:#2e302e;margin:0 -12px;padding:16px 12px;border-radius:9px}.module-price{text-align:right;font-size:12px;white-space:nowrap}.module-price strong{display:block;margin-bottom:4px}.module-price span{color:var(--orange)}.qty{width:65px;margin-top:6px;padding:7px}.summary{position:sticky;top:24px}.summary h2{margin-bottom:25px}.summary-item{font-size:12px;color:var(--muted);padding:9px 0;border-bottom:1px solid var(--border);display:flex;gap:10px;justify-content:space-between}.summary-item strong{color:var(--text)}.totals{margin-top:22px}.totals>div{display:flex;justify-content:space-between;align-items:center;margin:16px 0}.totals strong{font-size:20px}.totals .monthly-total{padding:18px 13px;background:#3a2c22;border:1px solid #65442b;border-radius:9px;margin:16px -6px}.monthly-total strong{color:var(--orange);font-size:28px}.first-year{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--border);padding-top:18px;margin:20px 0;color:var(--muted);font-size:12px}.first-year strong{font-size:19px;color:var(--text)}.first-year small{font-size:10px}.full{width:100%;margin-bottom:12px}.custom-line{padding:14px;background:#1b2129;border-radius:9px;margin-bottom:12px}.custom-line .fields{grid-template-columns:repeat(4,1fr)}.custom-heading{display:flex;gap:10px}.custom-heading input{flex:1;margin-bottom:10px}.remove{padding:8px 12px;align-self:start;background:#3b2b2b;color:#ffb0a2}.discounts{grid-template-columns:repeat(3,1fr);margin-top:24px}.alert{color:#ffd2aa;background:#3a2d22;border:1px solid #6d492b;border-radius:9px;padding:12px;font-size:12px;line-height:1.6}.success{background:#213b31;color:#b2f1d1;border-color:#396c53}#status:not(:empty){margin-bottom:20px}#history-search,#manage-search{margin-bottom:20px;max-width:450px}.history-row,.manage-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 0;border-bottom:1px solid var(--border)}.history-row p,.manage-row p{margin:4px 0;color:var(--muted);font-size:12px}.actions{display:flex;gap:10px}.status-badge{font-size:10px;padding:4px 7px;margin-left:8px;background:#3b3024;color:#fdbd7f;border-radius:6px}dialog{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:15px;padding:25px;width:min(720px,94vw);max-height:90vh}dialog::backdrop{background:#000b}dialog .section-title{justify-content:space-between}#rate-inputs{display:grid;grid-template-columns:repeat(5,1fr);gap:0 10px}.login{max-width:450px;margin:10vh auto;padding:30px}.login .brand{margin-bottom:45px}.login h1{font-size:42px}.login form{margin-top:30px}.login .primary{width:100%}.quote{background:white;color:#24313b;max-width:950px;padding:52px;margin:auto;border-radius:7px}.quote h1{font-size:35px}.quote .q-top{display:flex;justify-content:space-between;gap:20px;border-bottom:3px solid #ff8a35;padding-bottom:22px;margin-bottom:25px}.quote .brand{font-size:30px}.quote .q-meta{text-align:right;font-size:12px;line-height:1.7}.quote .q-customer{line-height:1.8;margin-bottom:30px}.quote .q-customer strong{font-size:19px}.quote table{width:100%;border-collapse:collapse;font-size:12px}.quote th{background:#25303a;color:white;padding:11px;text-align:left}.quote td{padding:10px;border-bottom:1px solid #e1e5e8}.quote .num{text-align:right;white-space:nowrap}.quote .q-totals{margin-top:25px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.quote .q-total{padding:18px;background:#f1f3f5;border-top:3px solid #ff8a35;font-size:12px}.quote .q-total strong{display:block;font-size:22px;margin:8px 0}.quote .q-total small{display:block;line-height:1.8}.quote .q-notes{margin-top:28px;line-height:1.7;white-space:pre-wrap;font-size:12px}.quote .q-footer{border-top:1px solid #d8dfe5;padding-top:15px;margin-top:30px;font-size:11px;line-height:1.6}.quote .q-ref{font-size:12px;margin:15px 0}.quote .discount-row{color:#677583}.quote .q-first{font-size:12px;margin:20px 0}.quote .q-title{font-size:11px;text-transform:uppercase;letter-spacing:1px}.quote .q-draft{font-size:12px;color:#a05013;font-weight:bold}@media(max-width:1050px){.layout{grid-template-columns:minmax(0,1fr) 300px}.module-tools{flex-wrap:wrap}.module-tools input[type=search]{flex-basis:100%}.top{flex-wrap:wrap}.top nav{order:3;width:100%}.summary{padding:20px}}@media(max-width:760px){.workspace{padding:25px 18px}.layout{display:block}.summary{position:static}.panel{padding:20px}.page-heading{align-items:flex-start}.fields{grid-template-columns:1fr}.wide{grid-column:auto}.custom-line .fields,.discounts{grid-template-columns:1fr 1fr}.brand small{display:none}.nav{padding:11px;font-size:12px}.module-tools select{width:100%}.user-control{align-items:flex-start}.module{grid-template-columns:22px 1fr}.module-price{grid-column:2;text-align:left;display:flex;gap:12px}.history-row,.manage-row{align-items:flex-start}.history-row .actions{flex-direction:column}.quote{padding:23px;overflow-x:auto}.quote .q-totals{grid-template-columns:1fr}.quote .q-top{flex-wrap:wrap}.quote .q-meta{text-align:left}#rate-inputs{grid-template-columns:repeat(3,1fr)}}@page{size:A4;margin:14mm}@media print{body{background:white;color:black}.top,.page-heading,#status,dialog{display:none!important}.workspace{padding:0;margin:0;max-width:none}.page{display:none!important}#quote-page{display:block!important}.quote{border:0;padding:0;max-width:none;font-size:11px}.quote table{font-size:10px}.quote th{background:#eee;color:black}.quote .q-totals{grid-template-columns:repeat(3,1fr)}.quote tr,.quote .q-total,.quote .q-top{break-inside:avoid}.quote .q-total{background:#f3f3f3}.quote thead{display:table-header-group}.quote .q-footer{break-inside:avoid}.quote .q-notes{font-size:11px}}
