:root{--navy:#17364a;--teal:#0b8b85;--ink:#1b2830;--muted:#61717c;--line:#d9e1e4;--bg:#f3f6f6}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,sans-serif}.topbar{height:64px;padding:0 5vw;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:10px;align-items:center;font-weight:700;color:var(--navy)}.brand-mark{display:grid;place-items:center;width:30px;height:30px;background:var(--teal);color:#fff;border-radius:8px}.topbar-actions{display:flex;gap:8px}.button{border:0;border-radius:7px;padding:10px 14px;font-weight:bold;cursor:pointer}.primary{background:var(--teal);color:#fff}.secondary{background:#e8eeee;color:var(--navy)}.layout{max-width:1440px;margin:auto;display:grid;grid-template-columns:minmax(330px,430px) minmax(600px,1fr);gap:30px;padding:32px}.editor{background:#fff;border-radius:12px;padding:26px;box-shadow:0 3px 15px #18364a12}.eyebrow{font-size:11px;letter-spacing:1.4px;color:var(--teal);font-weight:bold;margin:0}.section-title h1{font-size:25px;margin:5px 0 24px}fieldset{border:0;border-top:1px solid var(--line);padding:18px 0;margin:0}legend{color:var(--navy);font-weight:bold;padding:0 8px 0 0}label{display:block;font-size:12px;font-weight:bold;color:#45545c;margin:10px 0}input,select,textarea{display:block;width:100%;border:1px solid #cbd6da;border-radius:6px;padding:9px 10px;margin-top:5px;font:14px Arial;color:var(--ink);background:#fff}.grid{display:grid;gap:12px}.two{grid-template-columns:1fr 1fr}.three{grid-template-columns:repeat(3,1fr)}.preview-shell{overflow:auto;padding:4px}.quote-paper{max-width:790px;min-height:1050px;margin:auto;background:#fff;padding:52px 56px;box-shadow:0 3px 20px #18364a18}.quote-header{display:flex;justify-content:space-between;border-bottom:3px solid var(--teal);padding-bottom:20px}.logo-box{background:var(--navy);color:#fff;width:84px;padding:12px;text-align:center;font-weight:bold;line-height:1.1}.company-caption{font-size:9px;letter-spacing:1px;color:var(--muted)}.quote-meta{text-align:right;color:var(--navy)}.quote-meta p{font-size:11px;margin:0;letter-spacing:1px}.quote-meta strong,.quote-meta span{display:block;margin-top:5px}.quote-meta span{font-size:12px;color:var(--muted)}.recipient{margin:30px 0;display:flex;gap:12px;align-items:end}.recipient span,.terms h2,section h2{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--teal)}.recipient>div{margin-left:auto;text-align:right}.recipient strong{font-size:15px}.recipient>div strong{display:block;margin-top:5px;font-size:12px}table{border-collapse:collapse;width:100%;font-size:12px}th{background:#eff5f4;text-align:left;padding:10px;color:var(--navy);font-size:10px;text-transform:uppercase}td{padding:14px 10px;border-bottom:1px solid var(--line);vertical-align:top}th:not(:first-child),td:not(:first-child){text-align:right}small{display:block;line-height:1.6;color:var(--muted);margin-top:7px}.financial{margin:20px 0 30px;display:flex;justify-content:flex-end;gap:36px}.taxes{width:245px;font-size:12px}.taxes div{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--line)}.total{align-self:end;background:var(--navy);color:#fff;padding:14px 18px;min-width:190px}.total span{display:block;font-size:10px;letter-spacing:.5px}.total strong{display:block;font-size:19px;margin-top:5px}.terms{background:#f4f8f7;padding:16px 20px}.terms h2{margin:0 0 10px}.terms ul{margin:0;padding-left:17px;font-size:12px;line-height:1.75}footer{margin-top:35px;font-size:12px;line-height:1.6}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--navy);color:#fff;padding:10px 16px;border-radius:6px;opacity:0;transition:.2s}.toast.show{opacity:1}@media(max-width:1000px){.layout{grid-template-columns:1fr}.quote-paper{min-width:650px}}@media(max-width:600px){.layout{padding:15px}.topbar{padding:0 15px}.quote-paper{padding:32px;min-width:610px}.three{grid-template-columns:1fr}.financial{gap:15px}}@media print{body{background:#fff}.no-print,.editor{display:none!important}.layout{display:block;padding:0}.preview-shell{padding:0;overflow:visible}.quote-paper{box-shadow:none;margin:0;max-width:none;width:100%;min-height:0;padding:35px 45px}.quote-header{padding-bottom:14px}}
