:root{color:#142033;font-synthesis:none;background:#f3f6f9;font-family:Inter,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{min-height:100vh;padding-bottom:90px}header{color:#fff;z-index:5;background:#10263f;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:20px;max-width:1120px;margin:auto;padding:16px 20px;display:flex}header small,.hero small,section>small,aside small,.login small{letter-spacing:.11em;opacity:.72;font-weight:800}header h1{margin:3px 0 0;font-size:1.3rem}.account{align-items:center;gap:12px;font-size:.8rem;display:flex}.account button,.ghost{color:#fff;background:0 0;border:1px solid #fff5;border-radius:9px;padding:9px 12px}.global-error{color:#9c3512;background:#fff0ea;border-radius:10px;max-width:1080px;margin:15px auto 0;padding:12px 16px}main{max-width:1120px;margin:auto;padding:30px 20px}h2{margin:.25rem 0 1.2rem;font-size:2rem}.hero{color:#fff;background:linear-gradient(135deg,#10263f,#1d466b);border-radius:22px;padding:38px;box-shadow:0 18px 45px #10263f2e}.hero h2{max-width:650px;margin:.5rem 0;font-size:clamp(2rem,5vw,3.5rem)}.hero p{color:#d8e6f3;max-width:720px;line-height:1.6}.hero-actions{align-items:center;gap:10px;margin-top:20px;display:flex}.primary{color:#fff;background:#eb6b35;border:0;border-radius:10px;padding:12px 18px;font-weight:800}.cards{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px;display:grid}.cards button,.stats div,.panel{text-align:left;color:inherit;background:#fff;border:1px solid #dce4eb;border-radius:16px;padding:20px;box-shadow:0 7px 22px #1420330d}.cards h3,.cards p{margin:.2rem 0}.cards p,.row span{color:#667486;line-height:1.45}.stats{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px;display:grid}.stats b{font-size:1.8rem;display:block}.stats span{color:#667486}nav{z-index:10;background:#10263ff5;border-radius:16px;padding:7px;display:flex;position:fixed;bottom:10px;left:50%;transform:translate(-50%);box-shadow:0 15px 40px #10263f4d}nav button{color:#c3d0dc;white-space:nowrap;background:0 0;border:0;border-radius:10px;padding:11px 14px}nav button.active{color:#10263f;background:#fff}.quotegrid{grid-template-columns:1.5fr .8fr;align-items:start;gap:20px;display:grid}.tabs{background:#edf2f6;border-radius:12px;grid-template-columns:repeat(3,1fr);margin-bottom:18px;padding:5px;display:grid}.tabs button{background:0 0;border:0;border-radius:8px;padding:10px;font-weight:700}.tabs button.active{background:#fff;box-shadow:0 2px 8px #10263f18}.panel label,.login label{color:#536174;flex-direction:column;gap:6px;margin-bottom:14px;font-size:.82rem;font-weight:700;display:flex}.panel input,.panel select,.panel textarea,.login input,.search input{color:#142033;background:#fff;border:1px solid #cfd9e2;border-radius:10px;width:100%;padding:11px}.panel textarea{resize:vertical;min-height:90px}.two{grid-template-columns:1fr 1fr;gap:14px;display:grid}.override{background:#fff7f0;border:1px solid #f6d3be;border-radius:10px;padding:12px}.override small{font-weight:400}aside{color:#fff;background:#10263f;border-radius:18px;padding:24px;position:sticky;top:100px}.price{margin-top:14px;font-size:2.7rem;font-weight:900}.price span{color:#bdccda;font-size:.9rem}.quotegrid aside p{border-bottom:1px solid #ffffff1f;justify-content:space-between;padding-bottom:10px;display:flex}.full{width:100%;margin-top:12px}.split{grid-template-columns:330px 1fr;gap:20px;display:grid}.row{border-bottom:1px solid #e5ebf0;align-items:center;gap:14px;padding:14px 0;display:flex}.row:last-child{border:0}.row>div:first-child{flex:1}.row b,.row span,.row small{display:block}.right{text-align:right;min-width:110px}.delete{color:#b84316;background:#fff0ea;border:0;border-radius:8px;padding:8px}.secondary{color:#33465a;background:#fff;border:1px solid #cfd9e2;border-radius:8px;padding:8px 11px}.note{background:#edf4fa;border-radius:10px;padding:12px}.error{color:#9c3512;background:#fff0ea;border-radius:10px;padding:12px}.status{color:#22633a;background:#e7f6ec;border-radius:10px;padding:12px}.actions,.title-row{align-items:center;gap:10px;display:flex}.title-row{justify-content:space-between}.title-row h2{margin-top:.25rem}.customer-layout{grid-template-columns:360px 1fr}.search{color:#536174;flex-direction:column;gap:6px;margin-bottom:12px;font-size:.82rem;font-weight:700;display:flex}.customer-row small{color:#667486;margin-top:4px}.quote-row{align-items:center}.quote-actions{flex-wrap:wrap;justify-content:flex-end;max-width:300px;flex:auto!important;display:flex!important}.settings{line-height:1.6}.settings h3:not(:first-child){margin-top:28px}hr{border:0;border-top:1px solid #ffffff2b}.login{place-items:center;min-height:100vh;padding:25px;display:grid}.login-card{width:min(440px,100%);padding:34px}.login-card h1{margin-bottom:4px}.login-card>p{color:#667486;margin-bottom:22px;line-height:1.5}.login-card .note{color:#33465a}.login-card .primary{width:100%;margin-top:5px}.brand-mark{color:#fff;background:#10263f;border-radius:14px;place-items:center;width:56px;height:56px;margin-bottom:18px;font-size:1.2rem;font-weight:900;display:grid}button:disabled{opacity:.6;cursor:not-allowed}@media (width<=900px){.quote-row{flex-wrap:wrap;align-items:flex-start}.quote-actions{justify-content:flex-start;width:100%;max-width:none}}@media (width<=800px){.cards,.quotegrid,.split{grid-template-columns:1fr}aside{position:static}.customer-layout{grid-template-columns:1fr}.account span{display:none}nav{justify-content:flex-start;max-width:calc(100% - 14px);overflow:auto}}@media (width<=600px){main{padding:20px 12px}.two{grid-template-columns:1fr}.hero{padding:26px 20px}.hero-actions{flex-direction:column;align-items:stretch}.row{flex-wrap:wrap}.stats,.cards{grid-template-columns:1fr}nav button{padding:10px 9px;font-size:.75rem}.header-inner{padding:13px}.price{font-size:2.25rem}}.version{color:#b9cad9;margin-left:5px;font-size:.65rem;font-weight:600}.inline-action{margin:-4px 0 16px}.inline-form{background:#f5f8fa;border:1px solid #dce4eb;border-radius:12px;margin-bottom:16px;padding:14px}.project-layout{grid-template-columns:380px 1fr}.filters{grid-template-columns:1.3fr 1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.filters label{color:#536174;font-size:.76rem;font-weight:700}.filters input,.filters select{background:#fff;border:1px solid #cfd9e2;border-radius:9px;width:100%;margin-top:5px;padding:9px}.link-button{color:#173f66;text-align:left;background:0 0;border:0;padding:0;font-weight:800}.badge{color:#244b6e;white-space:nowrap;background:#e8f0f7;border-radius:999px;padding:6px 10px;font-size:.76rem;font-weight:800;display:inline-block}.detail-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.detail-section{margin-top:20px}.back{margin-bottom:18px}.count{color:#536174;background:#edf2f6;border-radius:999px;padding:4px 8px;font-size:.72rem}dl{grid-template-columns:120px 1fr;gap:9px;margin:0;display:grid}dt{color:#667486;font-size:.78rem;font-weight:700}dd{margin:0}.prewrap{white-space:pre-wrap;line-height:1.55}.muted{color:#667486}.project-row small{color:#7a8794;margin-top:3px}@media (width<=800px){.project-layout,.detail-grid,.filters{grid-template-columns:1fr}}.customer-selector{margin-bottom:14px;position:relative}.customer-selector>label{margin-bottom:0}.customer-options{z-index:20;background:#fff;border:1px solid #cfd9e2;border-radius:10px;max-height:300px;padding:6px;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 12px 30px #14203328}.customer-options button{text-align:left;color:#142033;background:#fff;border:0;border-radius:7px;width:100%;padding:10px;display:block}.customer-options button.active,.customer-options button:hover{background:#edf4fa}.customer-options button span,.selected-customer span{color:#667486;margin-top:2px;font-size:.78rem;display:block}.customer-options p{color:#667486;padding:12px}.customer-options .add-customer-option{color:#b84d22;border-top:1px solid #e5ebf0;border-radius:0;font-weight:800}.selected-customer{background:#edf4fa;border-radius:9px;margin-top:7px;padding:9px 34px 9px 11px;position:relative}.selected-customer button{color:#536174;background:0 0;border:0;font-size:1.2rem;position:absolute;top:7px;right:7px}.field-error{color:#a93616;margin:-8px 0 12px;font-weight:700;display:block}.project-list{overflow-x:auto}.project-head,.project-list-row{grid-template-columns:1.25fr 1fr .8fr .75fr .85fr 1.45fr;align-items:center;gap:12px;min-width:850px;padding:12px 0;display:grid}.project-head{color:#536174;text-transform:uppercase;border-bottom:2px solid #e5ebf0;font-size:.72rem}.project-list-row{border-bottom:1px solid #e5ebf0;font-size:.85rem}.project-list-row:last-child{border:0}.project-list-row.archived{opacity:.7}.project-list-row small{color:#7a8794;margin-top:4px;display:block}.project-actions{flex-wrap:wrap;gap:5px;display:flex}.archive-filter{white-space:nowrap;align-self:end;align-items:center;gap:7px;padding-bottom:9px;flex-direction:row!important;display:flex!important}.archive-filter input{width:auto!important;margin:0!important}.filters{grid-template-columns:1.3fr 1fr 1fr auto}.quick-customer h4{margin-top:0}@media (width<=800px){.filters{grid-template-columns:1fr}.archive-filter{padding-bottom:0}}.quote-header{margin-bottom:20px}.header-fields{grid-template-columns:2fr 2fr 1fr 1fr 1fr 1fr;gap:12px;display:grid}.builder-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:20px;display:grid}.line-editor{margin-bottom:22px}.method-fields{background:#f5f8fa;border:1px solid #dce4eb;border-radius:12px;margin-bottom:14px;padding:14px}.line-preview{background:#edf4fa;border-radius:10px;justify-content:space-between;margin-bottom:12px;padding:12px;display:flex}.line-list h3{margin:0}.line-card{background:#fff;border:1px solid #dce4eb;border-radius:14px;grid-template-columns:35px 1fr auto;align-items:center;gap:12px;margin-top:12px;padding:16px;display:grid}.line-card span,.line-card small{color:#667486;margin-top:4px;display:block}.line-number{color:#fff;background:#10263f;border-radius:50%;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.line-actions{flex-wrap:wrap;grid-column:2/4;gap:6px;display:flex}.line-actions button{background:#fff;border:1px solid #cfd9e2;border-radius:7px;padding:6px 9px}.line-actions .delete{background:#fff0ea;border:0}.totals label{margin:12px 0;font-size:.78rem;display:block}.totals input{color:#142033;background:#fff;border:1px solid #fff5;border-radius:8px;width:100%;margin-top:4px;padding:8px}.totals h3{border-top:1px solid #fff3;justify-content:space-between;padding-top:15px;display:flex}.totals{position:sticky;top:100px}@media (width<=1000px){.header-fields{grid-template-columns:repeat(3,1fr)}}@media (width<=800px){.builder-layout{grid-template-columns:1fr}.totals{position:static}.header-fields{grid-template-columns:1fr 1fr}}@media (width<=520px){.header-fields{grid-template-columns:1fr}.line-card{grid-template-columns:30px 1fr}.line-card>strong{grid-column:2}.line-actions{grid-column:1/3}}.size-grid{background:#f7f9fb;border:1px solid #d8e2ea;border-radius:12px;margin:2px 0 14px;padding:13px}.size-grid-title{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.size-grid-title span{color:#68788a;font-size:.74rem}.size-grid fieldset{border:0;border-top:1px solid #dde5ec;margin:0;padding:9px 0 2px}.size-grid legend{color:#173f66;text-transform:uppercase;letter-spacing:.08em;padding-right:9px;font-size:.75rem;font-weight:900}.size-row{grid-template-columns:repeat(9,minmax(48px,1fr));gap:7px;display:grid}.size-row label{text-align:center;margin:0;font-size:.7rem}.size-row input{text-align:center;border-radius:7px;padding:8px 3px}.quantity-total{color:#fff;background:#10263f;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:14px;padding:10px 14px;font-size:.8rem;font-weight:800;display:flex}.quantity-total output{font-size:1.35rem}.quote-header{padding:16px 18px}.quote-header h3{margin-top:0}.line-editor{padding:17px}.line-editor>label:first-of-type{max-width:420px}.line-preview{position:sticky;bottom:72px;box-shadow:0 5px 20px #173f6620}.line-actions button[title]{min-width:38px}.header-fields .customer-selector{margin-bottom:0}@media (width<=700px){.size-row{grid-template-columns:repeat(5,1fr)}.size-grid-title{flex-direction:column;align-items:flex-start;gap:3px}}
