@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes slideInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes progress-indeterminate{0%{transform:translate(-100%);width:30%}50%{transform:translate(100%);width:60%}to{transform:translate(300%);width:30%}}@keyframes field-delay-pulse{0%{box-shadow:0 0 #ef444466;border-color:#ef444499}70%{box-shadow:0 0 0 8px #ef444400;border-color:#ef4444}to{box-shadow:0 0 #ef444400;border-color:#ef444499}}@font-face{font-family:Poppins;src:url(/fonts/poppins-v20-latin-regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins-v20-latin-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins-v20-latin-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins-v20-latin-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Material Symbols Outlined;src:url(/fonts/material-symbols-outlined-static.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}:root{color-scheme:light;--bg-gradient: linear-gradient(180deg, #ffffff 0%, #fcfcfa 46%, #f7f6f1 100%);--bg-solid: #f8f7f2;--bar-bg: rgba(255, 255, 255, .86);--bar-bg-strong: rgba(255, 255, 255, .96);--input-bg: rgba(255, 255, 255, .92);--modal-overlay: rgba(32, 36, 40, .16);--modal-bg: rgba(255, 255, 255, .98);--glass-bg: rgba(255, 255, 255, .88);--glass-bg-hover: rgba(255, 255, 255, .98);--glass-border: rgba(31, 35, 40, .09);--glass-border-strong: rgba(31, 35, 40, .16);--blur: blur(22px) saturate(1.12);--card-shadow: 0 18px 44px rgba(31, 35, 40, .09);--soft-shadow: 0 8px 22px rgba(31, 35, 40, .06);--button-shadow: 0 12px 24px rgba(31, 35, 40, .1);--text-primary: rgba(25, 28, 31, .94);--text-secondary: rgba(25, 28, 31, .62);--text-muted: rgba(25, 28, 31, .42);--purple: #8b5cf6;--blue: #3b82f6;--green: #10b981;--amber: #f59e0b;--rose: #f43f5e;--cyan: #06b6d4;--sage: #14b8a6;--clay: #64748b;--ivory: #fbfaf6;--offwhite: #f6f5ef;--brand-gradient: linear-gradient(145deg, #ffffff 0%, #f3f2ec 100%);--purple-soft: rgba(31, 35, 40, .065);--purple-glow: 0 0 0 6px rgba(31, 35, 40, .08);--skeleton-base: rgba(31, 35, 40, .055);--skeleton-shine: rgba(255, 255, 255, .9);--sig-bg: rgba(255, 255, 255, .92);--sig-stroke: rgba(17, 24, 39, .84);--sig-border: rgba(17, 24, 39, .1);--sidebar-width: 238px;--sidebar-collapsed-width: 64px;--topbar-height: 68px;--bottomnav-height: 76px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px}:root[data-theme=dark]{color-scheme:light;--bg-gradient: linear-gradient(180deg, #ffffff 0%, #fcfcfa 46%, #f7f6f1 100%);--bg-solid: #f8f7f2;--bar-bg: rgba(255, 255, 255, .86);--bar-bg-strong: rgba(255, 255, 255, .96);--input-bg: rgba(255, 255, 255, .92);--modal-overlay: rgba(32, 36, 40, .16);--modal-bg: rgba(255, 255, 255, .98);--glass-bg: rgba(255, 255, 255, .88);--glass-bg-hover: rgba(255, 255, 255, .98);--glass-border: rgba(31, 35, 40, .09);--glass-border-strong: rgba(31, 35, 40, .16);--card-shadow: 0 18px 44px rgba(31, 35, 40, .09);--soft-shadow: 0 8px 22px rgba(31, 35, 40, .06);--button-shadow: 0 12px 24px rgba(31, 35, 40, .1);--text-primary: rgba(25, 28, 31, .94);--text-secondary: rgba(25, 28, 31, .62);--text-muted: rgba(25, 28, 31, .42);--purple: #8b5cf6;--blue: #3b82f6;--green: #10b981;--amber: #f59e0b;--rose: #f43f5e;--cyan: #06b6d4;--sage: #14b8a6;--clay: #64748b;--ivory: #fbfaf6;--purple-soft: rgba(31, 35, 40, .065);--skeleton-base: rgba(31, 35, 40, .055);--skeleton-shine: rgba(255, 255, 255, .9);--sig-bg: rgba(255, 255, 255, .92);--sig-stroke: rgba(17, 24, 39, .84);--sig-border: rgba(17, 24, 39, .1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;overflow-y:scroll;scrollbar-gutter:stable}body{min-height:100vh;background:var(--bg-gradient);background-attachment:fixed;color:var(--text-primary);font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1.5;letter-spacing:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body :not(.material-symbols-outlined){font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif!important}#root{width:100%;min-height:100vh}.material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400!important;font-style:normal;font-size:20px;line-height:1;letter-spacing:0;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0,"GRAD" 0,"opsz" 24;width:1em;height:1em;overflow:hidden}.glass-card{background:var(--glass-bg);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow)}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:700;line-height:1.15;letter-spacing:0}a{color:var(--purple);text-decoration:none}a:hover{text-decoration:none}input,select,textarea{min-width:0;font-family:inherit;font-size:.875rem;color:var(--text-primary);background:var(--input-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgba(25, 28, 31, 0.8)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e")!important;background-repeat:no-repeat!important;background-position:right 6px center!important;background-size:16px!important;padding-right:36px!important}textarea{border-radius:var(--radius-md)}input:focus,select:focus,textarea:focus{border-color:#1f232847;box-shadow:var(--purple-glow);background:var(--glass-bg-hover)}input[type=radio],input[type=checkbox]{background:transparent!important;border:none!important;box-shadow:none!important;border-radius:50%!important}input[type=checkbox]{border-radius:4px!important}input[type=radio]:focus,input[type=checkbox]:focus,input[type=radio]:focus-visible,input[type=checkbox]:focus-visible{box-shadow:none!important;background:transparent!important;outline:none!important}input::placeholder,textarea::placeholder{color:var(--text-muted)}select option{background:var(--modal-bg);color:var(--text-primary)}button{font:inherit;cursor:pointer;border:none;outline:none;letter-spacing:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(31,35,40,.14);outline-offset:2px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#78829638;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#78829657}.tabular-nums{font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (max-width: 640px){html{font-size:15px}}.forge-editor-page{background:transparent!important}.forge-customer-empty,.forge-customer-card-v2,.forge-table-wrap,.forge-toolbar-btn,.forge-summary-card,.forge-action-bar,.bench-task,.bench-flag-form{background:var(--glass-bg-hover)!important;border-color:var(--glass-border)!important;box-shadow:var(--soft-shadow)!important}.forge-table th,.forge-room-header td,.forge-room-subtotal td,.forge-coupon-input,.bench-segmented,.bench-task__ref,.bench-notes,.bench-product-title strong{background:var(--offwhite)!important;border-color:var(--glass-border)!important}.forge-customer-label,.forge-total-final span:last-child,.forge-addon-pill,.addon-purple,.bench-card-title,.bench-card-title h3,.bench-width-pill,.floor-tone-purple,.vault-tabs button.active{color:var(--text-primary)!important}.app-addon-pills{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.app-addon-pill{min-width:0;min-height:24px;display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border:1px solid rgba(156,163,175,.26);border-radius:8px;color:var(--text-primary);background:var(--purple-soft);font-size:.68rem;line-height:1;font-weight:700}.app-addon-pill__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-addon-pill--motor{color:#5e6f32;background:#b7c46b38;border-color:#78956e47}.app-addon-pill--pelmet{color:#6f6a2f;background:#d2b85c38;border-color:#bea04647}.app-addon-pill--lining{color:#4f7390;background:#6d91a32e;border-color:#6d91a347}.app-addon-pill--cassette{color:#7a6a43;background:#c486622e;border-color:#c4866247}.app-addon-pill--tieback{color:#7d5c4b;background:#bc5f5524;border-color:#bc5f553d}.forge-apply-btn,.bench-refresh,.bench-sheet-btn--start{background:var(--text-primary)!important;color:#fff!important;box-shadow:var(--button-shadow)!important}.pipeline-card--option2,.pipeline-step,.pulse-quote-tab,.pulse-quote-row,.pulse-quotes-page-btn,.forge-customer-results,.forge-summary-box,.forge-discount-coupon,.forge-add-strip,.till-payable-bar{background:var(--glass-bg)!important;border-color:var(--glass-border)!important;box-shadow:var(--soft-shadow)!important}.grecaptcha-badge{visibility:hidden!important}.canopy-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--modal-overlay, rgba(0, 0, 0, .4));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:fadeIn .15s ease;overflow:auto;overscroll-behavior:contain;max-height:100vh}.canopy-modal{width:min(620px,100%);max-height:min(680px,calc(100vh - 48px));display:flex;flex-direction:column;overflow:hidden;background:var(--modal-bg, #ffffff);border:1px solid var(--glass-border, rgba(0, 0, 0, .08));border-radius:var(--radius-lg, 16px);box-shadow:var(--card-shadow, 0 8px 30px rgba(0, 0, 0, .12));backdrop-filter:var(--blur, blur(20px));-webkit-backdrop-filter:var(--blur, blur(20px));animation:slideInUp .2s ease}:root[data-theme=dark] .canopy-modal{box-shadow:0 26px 70px #00000070}.canopy-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px 16px;border-bottom:1px solid var(--glass-border, rgba(0, 0, 0, .08))}.canopy-modal-header span{display:block;margin-bottom:4px;color:var(--text-muted, #94a3b8);font-size:.73rem;font-weight:800;text-transform:uppercase}.canopy-modal-header h3{font-size:1rem;font-weight:850;margin:0}.canopy-modal-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px 16px;border-bottom:1px solid var(--glass-border, rgba(0, 0, 0, .08))}.canopy-modal-tabs button{min-height:42px;border-radius:11px;color:var(--text-secondary, #64748b);background:transparent;font-size:.82rem;font-weight:800;border:none;cursor:pointer;transition:all .15s ease}.canopy-modal-tabs button.active{color:var(--text-primary, #0f172a);background:var(--purple-soft, rgba(168, 85, 247, .1))}.canopy-modal-body{min-height:0;overflow:auto;padding:18px 20px 20px}.canopy-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid var(--glass-border, rgba(0, 0, 0, .08))}@media (max-width: 640px){.canopy-modal-backdrop{align-items:flex-end;padding:10px}.canopy-modal{width:100%;max-height:calc(100vh - 20px);border-radius:var(--radius-lg, 16px)}.canopy-modal-header{padding:16px 18px 14px}.canopy-modal-body{padding:16px 18px 18px}.canopy-modal-footer{padding:16px 18px 18px;flex-wrap:wrap}.canopy-modal-footer>button{flex:1 1 auto}}.canopy-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 640px){.canopy-form-grid{grid-template-columns:1fr}}.canopy-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 18px;border-radius:10px;font-size:.83rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s;white-space:nowrap;border:none;background:transparent}.canopy-btn:disabled{opacity:.5;cursor:not-allowed}.canopy-btn-outline{background:transparent;border:1px solid var(--glass-border, #e2e8f0);color:var(--text-secondary, #475569)}.canopy-btn-outline:hover:not(:disabled){background:var(--offwhite, #f8fafc);border-color:#cbd5e1;color:var(--text-primary, #0f172a)}.canopy-btn-ghost{background:transparent;color:var(--text-secondary, #475569)}.canopy-btn-ghost:hover:not(:disabled){background:var(--glass-bg-hover, rgba(0,0,0,.05));color:var(--text-primary, #0f172a)}.canopy-btn-primary{background:var(--purple, #a855f7);color:#fff}.canopy-btn-primary:hover:not(:disabled){opacity:.9}.canopy-btn-pay{background:var(--brand-gradient, linear-gradient(135deg, #0ea5e9, #6366f1));border:1px solid var(--glass-border, rgba(0,0,0,.1));color:var(--text-primary, #ffffff);box-shadow:var(--button-shadow, 0 4px 12px rgba(99, 102, 241, .2))}.canopy-btn-pay:hover:not(:disabled){opacity:.9;box-shadow:var(--button-shadow, 0 4px 12px rgba(99, 102, 241, .2))}.canopy-btn-pay.paid{background:#10b9811f;color:#059669;box-shadow:none;border:1px solid transparent}@media (max-width: 640px){.canopy-btn{min-height:44px;padding:10px 18px;border-radius:12px;font-size:.84rem;font-weight:800}}.canopy-icon-btn{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;color:var(--text-secondary, #64748b);background:transparent;border:none;cursor:pointer;transition:all .15s ease}.canopy-icon-btn:hover{color:var(--text-primary, #0f172a);background:var(--glass-bg-hover, rgba(0,0,0,.05))}.toast-stack{position:fixed;right:24px;bottom:24px;z-index:2000;display:flex;width:min(390px,calc(100vw - 32px));flex-direction:column;gap:10px;pointer-events:none}.toast{--toast-accent: var(--blue);--toast-duration: 3.5s;position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) 30px;gap:12px;align-items:center;overflow:hidden;min-height:68px;padding:13px 12px 15px 14px;color:var(--text-primary);background:linear-gradient(135deg,color-mix(in srgb,var(--toast-accent) 10%,transparent),transparent 42%),var(--modal-bg);border:1px solid color-mix(in srgb,var(--toast-accent) 28%,var(--glass-border));border-radius:var(--radius-md);box-shadow:0 18px 42px #1f232829,0 2px 8px #1f232814;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);pointer-events:auto;animation:toast-enter .22s cubic-bezier(.21,.95,.29,1)}.toast__stripe{position:absolute;inset:0 auto 0 0;width:4px;background:var(--toast-accent)}.toast__icon{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--toast-accent) 13%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--toast-accent) 18%,transparent)}.toast__copy{display:grid;gap:2px;min-width:0}.toast__copy strong{overflow:hidden;color:var(--text-primary);font-size:.76rem;font-weight:700;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.toast__copy span{color:var(--text-secondary);font-size:.84rem;font-weight:500;line-height:1.35;overflow-wrap:anywhere}.toast__dismiss{display:grid;width:30px;height:30px;place-items:center;align-self:start;color:var(--text-muted);background:transparent;border-radius:8px;transition:background .16s ease,color .16s ease,transform .16s ease}.toast__dismiss:hover{color:var(--text-primary);background:#1f23280f}.toast__dismiss:active{transform:scale(.94)}.toast__timer{position:absolute;right:0;bottom:0;left:4px;height:3px;background:color-mix(in srgb,var(--toast-accent) 55%,transparent);transform-origin:left;animation:toast-timer var(--toast-duration) linear forwards}.toast--success{--toast-accent: var(--green)}.toast--error{--toast-accent: var(--rose)}.toast--warning{--toast-accent: var(--amber)}.toast--info{--toast-accent: var(--blue)}@keyframes toast-enter{0%{opacity:0;transform:translate3d(18px,6px,0) scale(.98)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes toast-timer{to{transform:scaleX(0)}}@media (max-width: 720px){.toast-stack{right:12px;bottom:calc(var(--bottomnav-height) + 12px);left:12px;width:auto}.toast{grid-template-columns:34px minmax(0,1fr) 28px;min-height:64px;padding:12px 10px 14px 12px}.toast__icon{width:34px;height:34px}}@media (prefers-reduced-motion: reduce){.toast,.toast__timer{animation:none}}.reactEasyCrop_Container{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;-webkit-user-select:none;user-select:none;touch-action:none;cursor:move;display:flex;justify-content:center;align-items:center}.reactEasyCrop_Image,.reactEasyCrop_Video{will-change:transform}.reactEasyCrop_Contain{max-width:100%;max-height:100%;margin:auto;position:absolute;top:0;bottom:0;left:0;right:0}.reactEasyCrop_Cover_Horizontal{width:100%;height:auto}.reactEasyCrop_Cover_Vertical{width:auto;height:100%}.reactEasyCrop_CropArea{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.5);box-sizing:border-box;box-shadow:0 0 0 9999em;color:#00000080;overflow:hidden}.reactEasyCrop_CropAreaRound{border-radius:50%}.reactEasyCrop_CropAreaGrid:before{content:" ";box-sizing:border-box;position:absolute;border:1px solid rgba(255,255,255,.5);top:0;bottom:0;left:33.33%;right:33.33%;border-top:0;border-bottom:0}.reactEasyCrop_CropAreaGrid:after{content:" ";box-sizing:border-box;position:absolute;border:1px solid rgba(255,255,255,.5);top:33.33%;bottom:33.33%;left:0;right:0;border-left:0;border-right:0}
