:root{color-scheme:light;--stp-green: #11b581;--stp-green-dark: #0e966d;--text-primary: #1f2933;--text-secondary: #52606d;--surface-page: #eef2f6;--surface-card: #ffffff;--border-subtle: #d9e2ec;--status-awaiting-bg: #f0f4f8;--status-awaiting-text: #334e68;--status-accepted-bg: #e3f9ef;--status-accepted-text: #0f5132;--status-declined-bg: #f0f4f8;--status-declined-text: #486581;--focus-ring: #11b581;--font-sans: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;--shadow-card: 0 10px 30px rgba(15, 23, 42, .08);--max-document-width: 720px}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font-sans);color:var(--text-primary);background:var(--surface-page);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}button,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}a{color:var(--stp-green-dark)}.page-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:1rem 1rem 2rem}.page-main{width:100%;max-width:var(--max-document-width);flex:1}.page-footer{margin-top:1.5rem;color:var(--text-secondary);font-size:.875rem;text-align:center}.document-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:16px;box-shadow:var(--shadow-card);padding:1.25rem}.message-panel{display:grid;gap:1rem;text-align:center;padding:2rem 1rem}.message-panel h1{font-size:1.5rem}.message-panel p,.loading-text{color:var(--text-secondary)}.document-header h1{font-size:1.5rem;margin-bottom:1rem}.summary-list{display:grid;gap:.75rem;margin:0 0 1.25rem}.summary-list div{display:grid;gap:.125rem}.summary-list dt{font-size:.875rem;color:var(--text-secondary)}.summary-list dd{margin:0;font-size:1.0625rem;font-weight:600}.document-actions{margin-bottom:1rem}.document-footnote{color:var(--text-secondary);font-size:.9375rem}.quote-header{display:grid;gap:.75rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border-subtle)}.quote-business-identity{display:grid;gap:.5rem}.quote-business-logo{display:block;max-width:200px;max-height:72px;width:auto;height:auto;object-fit:contain}.quote-business-name{font-size:1.125rem;font-weight:600}.quote-page-title{font-size:2rem;line-height:1.2}.quote-meta{display:grid;gap:.75rem;margin:0}.quote-meta div{display:grid;gap:.125rem}.quote-meta dt{font-size:.8125rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.quote-meta dd{margin:0;font-weight:500}.quote-status-pill{display:inline-flex;align-items:center;width:fit-content;max-width:100%;margin:0;padding:.3125rem .75rem;border-radius:999px;font-size:.8125rem;font-weight:600;line-height:1.4}.quote-status-pill--awaiting{background:var(--status-awaiting-bg);color:var(--status-awaiting-text)}.quote-section{padding:1.25rem 0;border-bottom:1px solid var(--border-subtle)}.quote-section:last-of-type{border-bottom:none}.quote-section h2{font-size:.9375rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:.75rem}.customer-name{font-size:1.0625rem;font-weight:600}.customer-address{margin-top:.25rem;color:var(--text-secondary)}.line-items{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.line-item{display:grid;gap:.5rem;padding:.875rem;border:1px solid var(--border-subtle);border-radius:12px}.line-item-main{display:grid;gap:.25rem}.line-item-description{font-weight:600}.line-item-qty{color:var(--text-secondary);font-size:.9375rem}.line-item-total{font-weight:700;font-size:1.0625rem}.totals-list{margin:0;display:grid;gap:.5rem}.totals-list div{display:flex;justify-content:space-between;gap:1rem}.totals-list dt,.totals-list dd{margin:0}.totals-total{margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--border-subtle);font-size:1.125rem;font-weight:700}.totals-deposit,.totals-balance{color:var(--text-secondary)}.deposit-terms{margin:.75rem 0 0;color:var(--text-secondary);font-size:.9375rem}.message-block+.message-block{margin-top:1rem}.message-block h3{font-size:.9375rem;margin-bottom:.375rem}.message-block p{white-space:pre-wrap}.status-banner{margin-top:1.25rem;padding:1rem;border-radius:12px;display:grid;gap:.75rem}.status-banner-label{font-weight:700}.status-banner--accepted{background:var(--status-accepted-bg);color:var(--status-accepted-text)}.status-banner--declined{background:var(--status-declined-bg);color:var(--status-declined-text)}.status-banner-notice{font-size:.9375rem}.status-banner-note h2{font-size:.875rem;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.375rem}.quote-actions{display:grid;gap:.75rem;padding-top:1.25rem}.button{min-height:48px;padding:.75rem 1rem;border-radius:10px;border:1px solid transparent;font-weight:600}.button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.button-block{width:100%}.button-primary{background:var(--stp-green);color:#fff;border-color:var(--stp-green)}.button-primary:hover:not(:disabled){background:var(--stp-green-dark);border-color:var(--stp-green-dark)}.button-secondary{background:#fff;color:var(--text-primary);border-color:var(--border-subtle)}.button-secondary:hover:not(:disabled){background:#f8fafc}.response-panel{width:min(92vw,28rem);border:none;border-radius:16px;padding:0;box-shadow:var(--shadow-card)}.response-panel::backdrop{background:#0f172a73}.response-panel-form{display:grid;gap:.75rem;padding:1.25rem}.response-panel-lead{color:var(--text-secondary)}.response-panel textarea{width:100%;resize:vertical;min-height:6rem;padding:.75rem;border-radius:10px;border:1px solid var(--border-subtle)}.response-panel textarea:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.response-panel-hint{color:var(--text-secondary);font-size:.8125rem;text-align:right}.response-panel-actions{display:flex;justify-content:flex-end;gap:.75rem;flex-wrap:wrap}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:640px){.page-shell{padding-top:2rem}.document-card{padding:2rem}.quote-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.line-item{grid-template-columns:1fr auto;align-items:center}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{body{background:#fff}.page-footer,.quote-actions,.response-panel{display:none!important}.document-card{box-shadow:none;border:none;padding:0}}
