:root{--bg:#050505;--panel:#111214;--panel-2:#181a1d;--text:#fff;--muted:#c9c9c9;--soft:#8d8f94;--red:#e4141b;--red-bright:#ff2630;--line:#ffffff24;--shadow:0 28px 80px #0000008c}*{box-sizing:border-box}body{color:var(--text);background:radial-gradient(circle at 30% 0,#1a1a1a,#050505 38%),#050505;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}.topbar{color:#151515;background:#fffffff5;border-bottom:1px solid #00000014;justify-content:space-between;align-items:center;gap:18px;min-height:76px;padding:14px clamp(18px,4vw,52px);display:flex;box-shadow:0 8px 28px #00000026}.brand{align-items:center;gap:12px;font-weight:950;display:inline-flex}.brand-logo{object-fit:contain;width:auto;max-width:190px;height:42px}.brand-mark{color:#fff;border-bottom:3px solid var(--red);text-transform:uppercase;letter-spacing:.08em;background:linear-gradient(#151515,#050505);padding:8px 12px}.public-link,.button,button{min-height:44px;font:inherit;cursor:pointer;border:1px solid #0000001f;border-radius:8px;justify-content:center;align-items:center;padding:0 18px;font-weight:950;display:inline-flex}.button.primary,button.primary{color:#fff;background:linear-gradient(#ff2028,#b6080e);border:0;box-shadow:inset 0 1px #ffffff40,0 18px 38px #e4141b3d}.button.secondary,button.secondary{color:#fff;background:#ffffff12;border:1px solid #ffffff38}button:disabled{cursor:not-allowed;opacity:.45}.login-page{background:linear-gradient(90deg,#000000f0,#000000b8 54%,#00000073),radial-gradient(circle at 82% 18%,#e4141b38,#0000 34%);grid-template-columns:minmax(0,1fr) minmax(320px,440px);align-items:center;gap:clamp(28px,5vw,78px);min-height:100vh;padding:clamp(42px,8vw,96px) clamp(18px,5vw,76px);display:grid}.eyebrow{color:#ff3f45;text-transform:uppercase;letter-spacing:.14em;margin:0 0 14px;font-size:.95rem;font-weight:950}h1,h2,h3,p{margin-top:0}.login-copy h1{max-width:800px;margin-bottom:22px;font-size:clamp(3rem,6vw,6rem);line-height:.95}.login-copy p{color:#ededed;max-width:720px;font-size:1.15rem;line-height:1.7}.panel{border:1px solid var(--line);box-shadow:var(--shadow);background:radial-gradient(circle at 100% 0,#e4141b14,#0000 34%),#111214f5;border-radius:8px;padding:24px}.login-form,.form-grid{gap:14px;display:grid}label{color:#ededed;gap:7px;font-size:.88rem;font-weight:900;display:grid}input,select,textarea{color:#111827;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #ffffff9e;border-radius:8px;padding:10px 11px}textarea{resize:vertical}.field-note{color:var(--muted);margin-top:6px;font-size:.82rem;line-height:1.4;display:block}.error{color:#fecaca;background:#991b1b40;border:1px solid #f8717159;border-radius:8px;padding:10px 12px}.admin-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid;overflow-x:hidden}.sidebar{border-right:1px solid var(--line);background:radial-gradient(circle at 0 0,#e4141b29,#0000 35%),#08090b;flex-direction:column;gap:28px;width:260px;min-width:0;padding:28px 22px;display:flex}.sidebar-brand{background:url(/brand/revv-technology-logo-dark-bg.png) 0/contain no-repeat;width:190px;max-width:100%;height:62px;margin-bottom:18px}.sidebar-actions{justify-items:start;gap:10px;display:grid}.sidebar nav{gap:8px;display:grid}.sidebar a{color:#e9e9e9;border:1px solid #0000;border-radius:8px;align-items:center;min-height:46px;padding:0 14px;font-weight:900;display:flex}.sidebar a:hover{color:#fff;background:#e4141b29;border-color:#ffffff2e}.admin-main{background:radial-gradient(circle at 85% 0,#e4141b24,#0000 32%),linear-gradient(#111214,#050505);min-width:0;padding:clamp(20px,3vw,36px)}.page-header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.page-header h1{letter-spacing:-.03em;margin:0;font-size:clamp(2rem,3.2vw,3.2rem)}.section-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.section-header h2{margin-bottom:6px}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.grid.two-column,.grid.quote-editor-grid{grid-template-columns:minmax(0,1.75fr) minmax(280px,360px);align-items:start}.metric strong{color:#fff;font-size:2rem;display:block}.muted{color:var(--muted);line-height:1.6}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;vertical-align:top;border-bottom:1px solid #ffffff1c;padding:12px 10px}.table th{color:#c9c9c9;letter-spacing:.08em;text-transform:uppercase;font-size:.76rem}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.check-row{align-items:center;gap:10px;display:flex}.check-row input{width:auto;min-height:auto}.totals-panel dl{gap:10px;margin:0;display:grid}.totals-panel{align-self:start}.totals-panel div{border-bottom:1px solid #ffffff1a;justify-content:space-between;gap:16px;display:flex}.totals-panel dt{color:var(--muted)}.totals-panel dd{margin:0 0 10px;font-weight:950}.totals-panel .total{color:#fff;border-bottom:0;font-size:1.25rem}.line-item-list{gap:14px;display:grid}.line-item-worksheet{gap:8px;display:grid}.line-item-row{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:8px;min-width:0;padding:14px}.line-item-row-grid{grid-template-columns:74px 52px minmax(0,1fr) minmax(120px,auto) minmax(120px,auto) auto;align-items:center;gap:14px;min-width:0;display:grid}.line-position-form{justify-items:start;gap:6px;width:74px;display:grid}.line-position-form label{width:74px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;gap:4px;font-size:.68rem}.line-position-input{text-align:center;width:62px;max-width:62px;min-height:34px;padding:6px 8px;font-weight:900}.line-position-button{width:62px;max-width:62px;min-height:32px;padding:0 8px;font-size:.78rem}.line-item-qty{color:#fff;background:#00000047;border:1px solid #ffffff1f;border-radius:8px;place-items:center;width:42px;height:42px;font-weight:950;display:inline-grid}.line-item-main{min-width:0}.line-item-title{color:#fff;font-size:1.05rem;font-weight:950;display:inline-block}.line-item-title:hover{color:#ff7075}.line-item-option,.line-item-main p,.line-item-price span{color:var(--muted)}.line-item-option{margin-top:3px;font-size:.88rem;display:block}.line-item-main p{margin:5px 0 0;line-height:1.45}.line-item-location{font-style:italic;color:#ededed!important}.line-item-admin-note{font-size:.82rem;color:var(--soft)!important}.line-item-price{text-align:right}.line-item-price span{letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:.72rem;font-weight:900;display:block}.line-item-price strong{white-space:nowrap}.line-item-card{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:8px;gap:12px;padding:16px;display:grid}.line-total{align-self:end;margin:0;font-size:1.1rem;font-weight:950}.line-card-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;min-width:0;display:flex}.apply-default-form{justify-items:start;gap:6px;margin-top:16px;display:grid}.selected-pricing-panel{background:#ffffff0f;border:1px solid #ffffff26;border-radius:8px;gap:16px;padding:18px;display:grid}.selected-pricing-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;display:grid}.selected-pricing-header .eyebrow{margin-bottom:8px;font-size:.72rem}.selected-pricing-header h3{margin-bottom:6px}.selected-pricing-header p{color:var(--muted);line-height:1.45}.selected-price-total{text-align:right;background:#0000003d;border:1px solid #ffffff1f;border-radius:8px;min-width:190px;padding:12px 14px}.selected-price-total span,.selected-pricing-results span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:900;display:block}.selected-price-total strong{margin-top:4px;font-size:1.3rem;display:block}.selected-price-total small{color:var(--soft);margin-top:4px;display:block}.selected-pricing-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:0;display:grid}.selected-pricing-meta div{gap:3px;display:grid}.selected-pricing-meta dt{color:var(--soft);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:900}.selected-pricing-meta dd{color:#fff;margin:0;font-weight:800}.selected-pricing-meta a{color:#ff7075;text-underline-offset:3px;text-decoration:underline}.selected-pricing-results{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.selected-pricing-results div{background:#0000002e;border:1px solid #ffffff1a;border-radius:8px;padding:12px}.selected-pricing-results strong{margin-top:4px;font-size:1.05rem;display:block}.quote-preview-page{color:#171717;max-width:940px;box-shadow:var(--shadow);background:#fff;border-radius:8px;margin:0 auto;padding:38px 42px 34px}.quote-preview-header{border-bottom:2px solid #e4141b;grid-template-columns:minmax(0,1fr) minmax(220px,300px);align-items:start;gap:28px;padding-bottom:18px;display:grid}.quote-preview-logo{object-fit:contain;width:min(100%,238px);height:auto;margin-bottom:14px;display:block}.quote-preview-header h1{letter-spacing:-.02em;margin-bottom:8px;font-size:2.15rem;line-height:1}.quote-preview-header p,.quote-preview-customer p,.quote-preview-table p,.quote-preview-footer p{color:#3f3f46;line-height:1.55}.quote-preview-meta{background:#fafafa;border:1px solid #ececef;border-radius:8px;padding:12px 14px;font-size:.88rem}.quote-preview-meta p{margin-bottom:5px}.quote-preview-meta p:last-child{margin-bottom:0}.quote-preview-customer,.quote-preview-lines,.quote-preview-summary,.quote-payment-schedule,.quote-approval,.quote-preview-footer{margin-top:22px}.quote-preview-customer{background:#fafafa;border:1px solid #e4e4e7;border-radius:8px;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);align-items:start;gap:14px;padding:14px;display:grid;box-shadow:0 12px 26px #0f0f0f0f}.quote-preview-customer h2,.quote-section-heading p,.quote-section h2{color:#171717;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;font-size:.95rem}.quote-party-card{background:#fff;border:1px solid #ececef;border-radius:8px;min-height:100%;padding:14px 16px}.quote-party-card-accent{border-left:3px solid #e4141b}.quote-party-card strong{color:#18181b;font-size:1.05rem}.quote-contact-list,.quote-footer-contact{gap:6px;margin:12px 0 0;display:grid}.quote-contact-list div,.quote-footer-contact div{justify-content:space-between;gap:16px;display:flex}.quote-contact-list dt,.quote-footer-contact dt{color:#71717a;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:900}.quote-contact-list dd,.quote-footer-contact dd{color:#27272a;text-align:right;margin:0;font-weight:800}.quote-section{margin-top:18px}.quote-preview-table{border-collapse:collapse;width:100%}.quote-preview-table th,.quote-preview-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e4e4e7;padding:10px 8px}.quote-preview-table th{color:#52525b;letter-spacing:.08em;text-transform:uppercase;background:#fafafa;font-size:.72rem}.quote-preview-table td{color:#27272a}.quote-preview-table th:nth-child(n+2),.quote-preview-table td:nth-child(n+2){text-align:right;white-space:nowrap}.quote-option{color:#52525b;margin-top:3px;font-size:.92rem;display:block}.quote-location-notes{font-style:italic;color:#52525b!important}.quote-preview-summary{justify-content:flex-end;display:flex}.quote-preview-summary dl{gap:6px;width:min(100%,320px);margin:0;font-size:.95rem;display:grid}.quote-preview-summary div{border-bottom:1px solid #e4e4e7;justify-content:space-between;gap:20px;display:flex}.quote-preview-summary dd{margin:0 0 6px;font-weight:900}.quote-muted-total{color:#71717a;font-size:.88rem}.quote-grand-total{color:#111;border-top:2px solid #171717;margin-top:4px;padding-top:10px;font-size:1.35rem;border-bottom:0!important}.quote-section-heading{margin-bottom:12px}.quote-section-heading p{color:#e4141b;margin-bottom:4px;font-weight:900}.quote-section-heading h2{color:#171717;margin:0;font-size:1.25rem}.payment-stage-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.payment-stage{background:#fafafa;border:1px solid #e4e4e7;border-radius:8px;min-height:100%;padding:14px}.payment-stage p{color:#52525b;letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.72rem;font-weight:900}.payment-stage h3{color:#111;margin:0 0 8px;font-size:1.35rem}.payment-stage span,.payment-stage small{color:#3f3f46;line-height:1.4;display:block}.payment-stage small{color:#71717a;margin-top:7px}.quote-approval{border:1px solid #e4e4e7;border-radius:8px;padding:18px 20px}.quote-approval>p{color:#3f3f46;max-width:760px;line-height:1.55}.signature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 28px;margin-top:34px;display:grid}.signature-grid div{border-top:1px solid #18181b}.signature-grid span{color:#52525b;letter-spacing:.08em;text-transform:uppercase;margin-top:8px;font-size:.76rem;font-weight:900;display:block}.quote-empty{color:#52525b}.quote-preview-footer{border-top:1px solid #e4e4e7;grid-template-columns:minmax(0,1fr) minmax(280px,auto);align-items:start;gap:18px;padding-top:12px;font-size:.92rem;display:grid}.quote-preview-footer p{margin-bottom:0}.form-grid.two{grid-template-columns:repeat(2,minmax(180px,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(150px,1fr))}.span-2{grid-column:span 2}.span-4{grid-column:span 4}@media (max-width:980px){.login-page,.admin-shell,.form-grid.two,.form-grid.four,.grid,.grid.two-column,.grid.quote-editor-grid{grid-template-columns:1fr}.section-header{display:grid}.quote-preview-header,.quote-preview-customer,.selected-pricing-header,.selected-pricing-meta,.selected-pricing-results,.payment-stage-grid,.quote-preview-footer,.signature-grid{grid-template-columns:1fr}.selected-price-total{text-align:left;min-width:0}.line-item-price{text-align:left}.line-card-actions,.quote-contact-list div,.quote-footer-contact div{justify-content:flex-start}.quote-contact-list dd,.quote-footer-contact dd{text-align:left}.span-2,.span-4{grid-column:auto}}@media (max-width:760px){.line-item-row-grid{grid-template-columns:1fr}.line-item-price{text-align:left}.line-card-actions{justify-content:flex-start}}@media print{@page{margin:.5in}:root,body{color:#111!important;background:#fff!important}.topbar,.sidebar,.no-print,.print-actions{display:none!important}.admin-shell{min-height:auto;display:block}.admin-main{padding:0;background:#fff!important}.quote-preview-page{max-width:none;box-shadow:none;border-radius:0;margin:0;padding:0}.quote-preview-logo{width:2.35in;max-width:100%}.quote-preview-header{border-bottom:2px solid #e4141b;gap:.35in;padding-bottom:.18in}.quote-preview-meta{background:#fff;border-color:#ddd}.quote-preview-customer,.quote-preview-lines,.quote-preview-summary,.quote-payment-schedule,.quote-approval,.quote-preview-footer{margin-top:.2in}.quote-preview-header,.quote-preview-table tr,.quote-preview-summary,.quote-preview-customer,.quote-payment-schedule,.quote-approval,.payment-stage{break-inside:avoid}.quote-preview-customer{box-shadow:none}.payment-stage-grid{gap:.12in}a{color:inherit;text-decoration:none}}
