@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/poppins-latin-400-normal-cpxAROuN.woff2) format("woff2"),url(/assets/poppins-latin-400-normal-BOb3E3N0.woff) format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/poppins-latin-600-normal-zEkxB9Mr.woff2) format("woff2"),url(/assets/poppins-latin-600-normal-BJdTmd5m.woff) format("woff")}:root{--color-brand-primary: #004dff;--color-brand-primary-soft: #e6f0ff;--color-brand-primary-strong: #003399;--color-brand-secondary: #00a67d;--color-primary-action-gradient: linear-gradient(100deg, #0040cc, #0a63ff);--color-bg: #f7f9fc;--color-bg-elevated: #ffffff;--color-bg-muted: #eef2f7;--color-header-bg: rgba(247, 249, 252, .88);--color-text: #1a1b1e;--color-text-secondary: #495057;--color-text-muted: #545b66;--color-text-inverse: #ffffff;--color-border: #ced4da;--color-border-subtle: #dee2e6;--color-focus-ring: #0a63ff;--color-danger: #c53030;--font-sans: Poppins, "Segoe UI", sans-serif;--font-display: var(--font-sans);--font-size-xs: .8125rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.375rem;--font-size-2xl: 1.75rem;--line-height-tight: 1.2;--line-height-body: 1.65;--letter-spacing-display: -.02em;--font-weight-regular: 400;--font-weight-semibold: 600;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--radius-sm: .375rem;--radius-md: .5625rem;--radius-lg: .75rem;--shadow-sm: 0 1px 2px rgba(26, 27, 30, .06);--shadow-md: 0 8px 24px rgba(26, 27, 30, .08);--shadow-action: 0 8px 22px rgba(0, 77, 255, .24);--motion-fast: .15s;--motion-base: .22s;--ease-standard: cubic-bezier(.22, 1, .36, 1);--panel-width: 24rem;--panel-collapsed: 3rem}@page{size:Letter portrait;margin:0}.pdf-render-root,.pdf-render-body{margin:0;min-height:0;background:#fff}.pdf-render-root *,.pdf-render-root *:before,.pdf-render-root *:after{animation:none!important;transition:none!important}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--font-sans);font-size:var(--font-size-md);line-height:var(--line-height-body);color:var(--color-text);background:radial-gradient(1200px 500px at 10% -10%,color-mix(in srgb,var(--color-brand-primary) 8%,transparent),transparent 60%),radial-gradient(900px 420px at 90% 0%,color-mix(in srgb,var(--color-brand-secondary) 8%,transparent),transparent 55%),var(--color-bg)}:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:4.25rem;padding:var(--space-3) var(--space-5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--color-header-bg);border-bottom:1px solid var(--color-border-subtle)}.brand-block{display:flex;flex-direction:column;gap:.1rem}.brand{margin:0;font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-display);line-height:var(--line-height-tight)}.eyebrow{margin:0;font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);font-weight:var(--font-weight-semibold)}.header-actions{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;justify-content:flex-end}.meta{display:flex;align-items:center;gap:.4rem;color:var(--color-text-muted);font-size:var(--font-size-sm)}.dot{opacity:.6}.download-btn,.pdf-preview-btn,.approval-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:.7rem 1.15rem;cursor:pointer;transition:transform var(--motion-fast) var(--ease-standard),filter var(--motion-fast) var(--ease-standard)}.download-btn,.approval-btn{background:var(--color-primary-action-gradient);color:var(--color-text-inverse);box-shadow:var(--shadow-action)}.pdf-preview-btn{border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text);box-shadow:var(--shadow-sm)}.download-btn:hover:not(:disabled),.pdf-preview-btn:hover:not(:disabled),.approval-btn:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.download-btn:disabled,.pdf-preview-btn:disabled,.approval-btn:disabled{opacity:.7;cursor:wait}.error-banner{margin:0;padding:var(--space-3) var(--space-5);background:#fde8e8;color:var(--color-danger);border-bottom:1px solid #f0c4c4;font-size:var(--font-size-sm)}.status-banner{margin:0;padding:var(--space-3) var(--space-5);background:var(--color-bg-muted);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-subtle);font-size:var(--font-size-sm)}.success-banner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin:0;padding:var(--space-3) var(--space-5);background:#e8f7f1;color:#0f5c45;border-bottom:1px solid #b9e4d2;font-size:var(--font-size-sm)}.success-banner__label{margin:0;font-weight:var(--font-weight-semibold)}.success-banner__link{flex:1 1 16rem;min-width:0;color:inherit;word-break:break-all}.success-banner__copy{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #8dcfb4;border-radius:var(--radius-sm);background:#fff;color:#0f5c45;font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:.4rem .75rem;cursor:pointer}.workspace{flex:1;display:flex;min-height:0;align-items:stretch}.fields-panel{flex:0 0 var(--panel-collapsed);width:var(--panel-collapsed);border-right:1px solid var(--color-border-subtle);background:var(--color-bg-elevated);display:flex;flex-direction:column;transition:flex-basis var(--motion-base) var(--ease-standard),width var(--motion-base) var(--ease-standard);z-index:5}.fields-panel--expanded{flex-basis:var(--panel-width);width:var(--panel-width)}.fields-panel__toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-4) var(--space-3);cursor:pointer;color:var(--color-text);font-family:var(--font-sans);text-align:left;border-bottom:1px solid var(--color-border-subtle)}.fields-panel:not(.fields-panel--expanded) .fields-panel__toggle{flex-direction:column;justify-content:flex-start;gap:var(--space-3);min-height:10rem;writing-mode:vertical-rl;transform:rotate(180deg);padding:var(--space-3)}.fields-panel:not(.fields-panel--expanded) .fields-panel__toggle-label{display:flex;flex-direction:column;gap:.35rem}.fields-panel__kicker{display:block;font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);font-weight:var(--font-weight-semibold)}.fields-panel__title{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.fields-panel__chevron{font-size:1.25rem;color:var(--color-brand-primary);line-height:1}.fields-panel__form{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);overflow:auto}.fields-panel__help{margin:0;font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.45}.field{display:flex;flex-direction:column;gap:.35rem}.field__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.field__input{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-elevated);color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-sm);padding:.55rem .7rem}.field__input:focus{outline:none;border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-brand-primary-soft)}.field__money{display:flex;align-items:center;gap:.35rem;color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.field__money .field__input{flex:1}.field-group{margin:0;padding:0;border:none;display:flex;flex-direction:column;gap:0}.field-group__legend{padding:0;margin-bottom:var(--space-2);font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);font-weight:var(--font-weight-semibold)}.terms-pack-desc{margin:0;font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.45}.terms-section-list{display:flex;flex-direction:column;gap:.4rem;max-height:16rem;overflow:auto;padding:var(--space-2);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-muted)}.terms-section-row{display:flex;align-items:flex-start;gap:.55rem;padding:.35rem .25rem;cursor:pointer}.terms-section-row input{margin-top:.2rem;accent-color:var(--color-brand-primary)}.terms-section-row__text{display:flex;flex-direction:column;gap:.1rem;min-width:0}.terms-section-row__title{font-size:var(--font-size-sm);color:var(--color-text);font-weight:var(--font-weight-semibold);line-height:1.3}.terms-section-row__id{font-size:.7rem;color:var(--color-text-muted);font-family:ui-monospace,Consolas,monospace}.terms-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.terms-action-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-elevated);color:var(--color-text-secondary);font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:.45rem .7rem;cursor:pointer}.terms-action-btn:hover:not(:disabled){border-color:var(--color-brand-primary);color:var(--color-brand-primary-strong)}.terms-action-btn:disabled{opacity:.5;cursor:not-allowed}.terms-action-btn--primary{border-color:transparent;background:var(--color-primary-action-gradient);color:var(--color-text-inverse)}.terms-action-btn--primary:hover:not(:disabled){color:var(--color-text-inverse);filter:brightness(1.04)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.location-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-muted)}.location-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.location-card__index{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-muted)}.location-card__remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--color-danger);font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer;padding:0}.location-card__remove:disabled{opacity:.4;cursor:not-allowed}.location-card__total{margin:0;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.add-location-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated);color:var(--color-brand-primary-strong);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:.65rem .75rem;cursor:pointer}.add-location-btn:hover{border-color:var(--color-brand-primary);background:var(--color-brand-primary-soft)}.pricing-schedule{margin-top:var(--space-5);padding:0;border:none;background:transparent}.pricing-schedule__title{margin:0 0 .35rem;font-family:var(--font-display);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text)}.pricing-legend{margin:0 0 var(--space-4);font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.5}.pricing-schedule__empty{margin:0 0 var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-muted)}.pricing-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm);color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.pricing-table th,.pricing-table td{padding:.5rem 0 .5rem .75rem;text-align:left;vertical-align:baseline}.pricing-table th:first-child,.pricing-table td:first-child{padding-left:0}.pricing-table .num{text-align:right;white-space:nowrap}.pricing-table .muted{color:var(--color-text-muted)}.pricing-table thead th{padding-bottom:.4rem;border-bottom:1px solid var(--color-border);font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;font-weight:var(--font-weight-semibold);color:var(--color-text-muted)}.pricing-table tbody td{border-bottom:1px solid #eceff3}.pricing-table tbody td:first-child{color:var(--color-text)}.pricing-table tfoot th,.pricing-table tfoot td{padding-top:.6rem;border-top:1px solid var(--color-text);color:var(--color-text);font-weight:var(--font-weight-semibold)}.pricing-summary{margin-top:var(--space-4)}.pricing-summary__primary{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text)}.pricing-summary__primary strong{font-size:1.25rem;white-space:nowrap}.pricing-summary__note{margin:var(--space-3) 0 0;font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.55}.app-main{flex:1;min-width:0;padding:var(--space-5);display:flex;justify-content:center;align-items:flex-start;overflow:auto}.contract-stack{width:min(8.5in,100%);display:flex;flex-direction:column;gap:var(--space-5)}.proposal-cover{position:relative;overflow:hidden;min-height:0;aspect-ratio:8.5 / 11;display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-5);padding:2.25rem 2.5rem 2rem;background:linear-gradient(160deg,#eef4ff,#f7f9fc 42%,#eef8f4);color:var(--color-text);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);animation:rise-in var(--motion-base) var(--ease-standard) both}.proposal-cover__atmosphere{pointer-events:none;position:absolute;inset:-20% -10% auto;height:55%;background:radial-gradient(60% 80% at 15% 20%,color-mix(in srgb,var(--color-brand-primary) 18%,transparent),transparent 70%),radial-gradient(50% 70% at 85% 10%,color-mix(in srgb,var(--color-brand-secondary) 14%,transparent),transparent 72%)}.proposal-cover__brand,.proposal-cover__center,.proposal-cover__dates{position:relative;z-index:1}.proposal-cover__brand{display:flex;align-items:center;justify-content:center;gap:.85rem}.proposal-cover__provider-logo{width:min(11.5rem,38%);height:auto;display:block}.proposal-cover__center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-4);padding:var(--space-2) 0}.proposal-cover__customer{display:flex;flex-direction:column;align-items:center;gap:.35rem}.proposal-cover__prepared{margin:0;font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;font-weight:var(--font-weight-semibold);color:var(--color-text-muted)}.proposal-cover__customer-name{margin:0;font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-display);max-width:28rem}.proposal-cover__hero{position:relative;width:min(100%,34rem);aspect-ratio:16 / 9;border-radius:var(--radius-md);overflow:hidden;background:#101827;box-shadow:var(--shadow-md)}.proposal-cover__hero-image{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02);animation:cover-hero-in .7s var(--ease-standard) both}.proposal-cover__hero-wash{position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(to top,rgba(16,24,39,.55),transparent)}@keyframes cover-hero-in{0%{opacity:.55;transform:scale(1.06)}to{opacity:1;transform:scale(1.02)}}.proposal-cover__title{margin:0;max-width:28rem;font-family:var(--font-display);font-size:clamp(1.35rem,2.4vw,1.75rem);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-display);line-height:var(--line-height-tight)}.proposal-cover__parties{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.proposal-cover__parties-sep{margin:0 .4rem}.proposal-cover__dates{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border-subtle)}.proposal-cover__date{display:flex;flex-direction:column;gap:.25rem}.proposal-cover__date:last-child{text-align:right;align-items:flex-end}.proposal-cover__date dt{margin:0;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-weight:var(--font-weight-semibold);color:var(--color-text-muted)}.proposal-cover__date dd{margin:0;font-family:var(--font-display);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.field__text-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:0;margin-top:.25rem;align-self:flex-start;color:var(--color-brand-primary);font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.proposal-products{position:relative;overflow:hidden;min-height:0;aspect-ratio:8.5 / 11;display:flex;flex-direction:column;gap:var(--space-3);padding:2.25rem 2.5rem 2rem;background:linear-gradient(165deg,#eef4ff,#f7f9fc 48%,#fff);color:var(--color-text);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);animation:rise-in var(--motion-base) var(--ease-standard) both;animation-delay:40ms}.proposal-products__atmosphere{pointer-events:none;position:absolute;inset:-15% auto auto -8%;width:70%;height:45%;background:radial-gradient(closest-side,color-mix(in srgb,var(--color-brand-primary) 16%,transparent),transparent 72%)}.proposal-products__header,.product-connection,.proposal-products__stack{position:relative;z-index:1}.proposal-products__kicker{margin:0 0 var(--space-2);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:var(--font-weight-semibold);color:var(--color-brand-primary)}.proposal-products__title{margin:0 0 var(--space-3);font-family:var(--font-display);font-size:clamp(1.5rem,2.6vw,1.9rem);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-display);line-height:var(--line-height-tight)}.proposal-products__summary{margin:0;max-width:36rem;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.55}.product-connection{width:min(100%,25rem);margin:2rem auto 2.75rem;display:flex;flex-direction:column;align-items:center}.product-connection__cameras{width:100%;display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.product-connection__camera{display:flex;flex-direction:column;align-items:center;gap:.25rem}.product-connection__camera svg{display:block;width:2.4rem;height:auto}.product-connection__camera rect,.product-connection__camera path{fill:#1c222c;stroke:#3a4556;stroke-width:1.25}.product-connection__camera circle:first-of-type{fill:#10151d;stroke:#5a6a80}.product-connection__camera circle:last-of-type{fill:#4d9bff}.product-connection__camera--assistant circle:last-of-type{fill:#00a67d}.product-connection__camera-tag{padding:.12rem .32rem;border-radius:.2rem;background:var(--color-brand-primary-soft);color:var(--color-brand-primary-strong);font-size:.5rem;font-weight:var(--font-weight-semibold);letter-spacing:.06em;line-height:1.2;text-transform:uppercase}.product-connection__camera--assistant .product-connection__camera-tag{background:color-mix(in srgb,var(--color-brand-secondary) 13%,#ffffff);color:#17614f}.product-connection__links{display:block;width:100%;height:2.5rem;margin-top:-.1rem;overflow:visible}.product-connection__nvr{width:10.5rem;min-height:2.6rem;margin-top:-.1rem;padding:.5rem .65rem;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.45rem;border:1px solid #3a4556;border-radius:var(--radius-sm);background:linear-gradient(180deg,#222833,#141820);box-shadow:inset 0 1px #ffffff0f,0 .45rem .9rem #00000038}.product-connection__nvr-label{color:#c4cddb;font-size:.55rem;font-weight:var(--font-weight-semibold);letter-spacing:.14em}.product-connection__bays{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.18rem}.product-connection__bays span{height:1.1rem;border:1px solid #2f3848;border-radius:.14rem;background:repeating-linear-gradient(90deg,#10141c 0,#10141c 2px,#1a2030 2px,#1a2030 4px)}.product-connection__leds{display:flex;flex-direction:column;gap:.18rem}.product-connection__leds i{width:.28rem;height:.28rem;border-radius:50%;background:#2a3344}.product-connection__leds i:first-child{background:#00ffbf;box-shadow:0 0 .35rem #00ffbf8c}.product-connection__leds i:nth-child(2){background:#4d9bff}.product-connection__trunk{width:.12rem;height:1.25rem;background:linear-gradient(180deg,#4d9bff,#00a67d)}.product-connection__brand{min-width:10.75rem;min-height:2.8rem;padding:.55rem .8rem;display:flex;align-items:center;justify-content:center;gap:.55rem;border:1.5px solid var(--color-brand-primary);border-radius:var(--radius-md);background:#000;box-shadow:0 0 0 .2rem #007aef1a,0 .5rem 1rem #00000040;color:#f4f4f5}.product-connection__brand img{width:8rem;height:auto}.proposal-products__stack{flex:none;display:flex;flex-direction:row;align-items:stretch;gap:var(--space-4)}.product-panel{flex:1;min-width:0;background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:1rem 1.25rem}.product-panel--agent{flex:1;min-height:0;padding:1.1rem 1.25rem;border-color:color-mix(in srgb,var(--color-brand-primary) 28%,var(--color-border));background:linear-gradient(145deg,color-mix(in srgb,var(--color-brand-primary) 7%,#ffffff),#fff 55%);box-shadow:var(--shadow-sm)}.product-panel--index{border-color:color-mix(in srgb,var(--color-brand-secondary) 24%,var(--color-border-subtle));background:linear-gradient(145deg,color-mix(in srgb,var(--color-brand-secondary) 6%,#ffffff),#fff 60%)}.product-panel__eyebrow{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-weight:var(--font-weight-semibold);color:var(--color-text-muted)}.product-panel__price{color:var(--color-brand-primary);background:var(--color-brand-primary-soft);border-radius:var(--radius-sm);padding:.25rem .55rem;letter-spacing:0;text-transform:none;white-space:nowrap}.product-panel__price strong{font-size:var(--font-size-sm)}.product-panel__price--index{color:#17614f;background:color-mix(in srgb,var(--color-brand-secondary) 12%,#ffffff)}.product-panel__name{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-display);line-height:var(--line-height-tight)}.product-panel__description{margin:0 0 var(--space-2);max-width:38rem;font-size:var(--font-size-sm);line-height:1.55;color:var(--color-text-secondary)}.product-panel__track-label{margin:0 0 var(--space-2);font-size:.68rem;font-weight:var(--font-weight-semibold);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.product-panel__capabilities{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.45rem}.product-panel__capabilities li{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-brand-primary-strong);background:color-mix(in srgb,var(--color-brand-primary) 8%,#ffffff);border:1px solid color-mix(in srgb,var(--color-brand-primary) 18%,#ffffff);border-radius:var(--radius-sm);padding:.35rem .55rem}.product-panel__capabilities--compact li{color:#173d35;background:color-mix(in srgb,var(--color-brand-secondary) 10%,#ffffff);border-color:color-mix(in srgb,var(--color-brand-secondary) 20%,#ffffff)}.proposal-pricing{position:relative;overflow:hidden;min-height:0;aspect-ratio:8.5 / 11;display:flex;flex-direction:column;padding:2.25rem 2.5rem 2rem;background:linear-gradient(165deg,#eef4ff,#f7f9fc 40%,#fff);color:var(--color-text);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);animation:rise-in var(--motion-base) var(--ease-standard) both;animation-delay:80ms}.proposal-pricing__atmosphere{pointer-events:none;position:absolute;inset:-20% -10% auto auto;width:65%;height:45%;background:radial-gradient(closest-side,color-mix(in srgb,var(--color-brand-primary) 14%,transparent),transparent 72%)}.proposal-pricing__header,.proposal-pricing__table-wrap,.proposal-pricing__empty,.proposal-pricing__totals,.proposal-pricing__payment,.proposal-pricing__note{position:relative;z-index:1}.proposal-pricing__header{margin-bottom:var(--space-5)}.proposal-pricing__kicker{margin:0 0 var(--space-2);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:var(--font-weight-semibold);color:var(--color-brand-primary)}.proposal-pricing__title{margin:0 0 var(--space-3);font-family:var(--font-display);font-size:clamp(1.5rem,2.6vw,1.9rem);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-display);line-height:var(--line-height-tight)}.proposal-pricing__summary,.proposal-pricing__empty{margin:0;max-width:38rem;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.55}.proposal-pricing__table-wrap{overflow-x:auto;border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-elevated)}.proposal-pricing__table{width:100%;min-width:34rem;border-collapse:collapse;font-size:var(--font-size-sm);font-variant-numeric:tabular-nums}.proposal-pricing__table th,.proposal-pricing__table td{padding:.65rem .8rem;text-align:left;border-bottom:1px solid #eceff3}.proposal-pricing__table thead th{background:#f4f6f9;color:var(--color-text-muted);font-size:.68rem;font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase}.proposal-pricing__table .num{text-align:right;white-space:nowrap}.proposal-pricing__group th{padding-block:.5rem;color:var(--color-brand-primary-strong);background:var(--color-brand-primary-soft);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.proposal-pricing__table tbody td:first-child{width:49%}.proposal-pricing__table td strong,.proposal-pricing__table td span{display:block}.proposal-pricing__table td strong{font-size:var(--font-size-xs);color:var(--color-text)}.proposal-pricing__table td span{margin-top:.15rem;color:var(--color-text-muted);font-size:.68rem;line-height:1.35}.proposal-pricing__totals{margin:auto 0 0;padding-top:var(--space-5)}.proposal-pricing__totals div{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding:.55rem 0;border-bottom:1px solid var(--color-border-subtle)}.proposal-pricing__totals dt,.proposal-pricing__totals dd{margin:0}.proposal-pricing__totals dt{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.proposal-pricing__totals dd{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);white-space:nowrap}.proposal-pricing__totals .proposal-pricing__total-primary{margin-top:var(--space-2);padding:.85rem 1rem;border:none;border-radius:var(--radius-md);background:var(--color-brand-primary);color:var(--color-text-inverse)}.proposal-pricing__total-primary dt{color:var(--color-text-inverse);font-weight:var(--font-weight-semibold)}.proposal-pricing__total-primary dd{font-size:var(--font-size-lg)}.proposal-pricing__note{margin:var(--space-3) 0 0;font-size:var(--font-size-xs);line-height:1.5;color:var(--color-text-muted)}.proposal-pricing__payment{margin-top:var(--space-3);padding:.75rem .9rem;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);border:1px solid color-mix(in srgb,var(--color-brand-secondary) 22%,var(--color-border-subtle));border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-brand-secondary) 6%,#ffffff)}.proposal-pricing__payment div{display:flex;flex-direction:column;gap:.2rem}.proposal-pricing__payment span{color:var(--color-text-muted);font-size:.68rem;font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.proposal-pricing__payment strong{font-size:var(--font-size-sm)}.proposal-pricing__payment p{margin:0;color:#17614f;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-align:right}.proposal-timeline{position:relative;overflow:hidden;min-height:0;aspect-ratio:8.5 / 11;display:flex;flex-direction:column;padding:2.25rem 2.5rem 2rem;background:linear-gradient(165deg,#eef4ff,#f7f9fc 44%,#fff);color:var(--color-text);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);animation:rise-in var(--motion-base) var(--ease-standard) both;animation-delay:.1s}.proposal-timeline__atmosphere{pointer-events:none;position:absolute;inset:-18% -8% auto auto;width:68%;height:44%;background:radial-gradient(closest-side,color-mix(in srgb,var(--color-brand-secondary) 13%,transparent),transparent 72%)}.proposal-timeline__header,.proposal-timeline__flow,.proposal-timeline__footer{position:relative;z-index:1}.proposal-timeline__kicker{margin:0 0 var(--space-2);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:var(--font-weight-semibold);color:var(--color-brand-primary)}.proposal-timeline__title{margin:0 0 var(--space-3);font-family:var(--font-display);font-size:clamp(1.5rem,2.6vw,1.9rem);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-display);line-height:var(--line-height-tight)}.proposal-timeline__summary{margin:0;max-width:38rem;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.55}.proposal-timeline__flow{margin-top:4.75rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:var(--space-4)}.proposal-timeline__track{position:absolute;z-index:-1;top:1.05rem;left:10%;right:10%;height:.2rem;border-radius:999px;background:linear-gradient(90deg,var(--color-brand-primary),var(--color-brand-primary-strong),var(--color-brand-secondary));opacity:.42}.timeline-phase{position:relative;min-width:0;min-height:19.5rem;padding:2.65rem 1.1rem 1.2rem;border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-bg-elevated)}.timeline-phase--1{border-color:color-mix(in srgb,var(--color-brand-primary) 34%,var(--color-border));background:color-mix(in srgb,var(--color-brand-primary) 5%,#ffffff)}.timeline-phase--2{border-color:color-mix(in srgb,var(--color-brand-primary-strong) 30%,var(--color-border));background:color-mix(in srgb,var(--color-brand-primary-strong) 5%,#ffffff)}.timeline-phase--3{border-color:color-mix(in srgb,var(--color-brand-secondary) 30%,var(--color-border));background:color-mix(in srgb,var(--color-brand-secondary) 6%,#ffffff)}.timeline-phase__marker{position:absolute;top:-.05rem;left:1.1rem;width:2.2rem;height:2.2rem;display:grid;place-items:center;border-radius:50%;background:var(--color-brand-primary);color:var(--color-text-inverse);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);box-shadow:0 0 0 .3rem #eef4ff}.timeline-phase--2 .timeline-phase__marker{background:var(--color-brand-primary-strong)}.timeline-phase--3 .timeline-phase__marker{background:var(--color-brand-secondary)}.timeline-phase__period{margin:0 0 var(--space-2);color:var(--color-brand-primary);font-size:.68rem;font-weight:var(--font-weight-semibold);letter-spacing:.1em;text-transform:uppercase}.timeline-phase--3 .timeline-phase__period{color:#17614f}.timeline-phase__title{margin:0 0 var(--space-3);font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-display);line-height:var(--line-height-tight)}.timeline-phase__description{margin:0 0 var(--space-4);color:var(--color-text-secondary);font-size:var(--font-size-xs);line-height:1.55}.timeline-phase__outcomes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.timeline-phase__outcomes li{position:relative;padding-left:1rem;color:var(--color-text);font-size:var(--font-size-xs);line-height:1.45}.timeline-phase__outcomes li:before{content:"";position:absolute;top:.45rem;left:0;width:.38rem;height:.38rem;border-radius:50%;background:var(--color-brand-primary)}.timeline-phase--3 .timeline-phase__outcomes li:before{background:var(--color-brand-secondary)}.proposal-timeline__footer{margin-top:auto;padding-top:var(--space-6);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:.68rem;font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.proposal-timeline__footer div{width:3.5rem;height:1px;margin:0 .65rem;background:var(--color-border)}.contract-preview{width:100%;background:#fff;color:var(--color-text);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:2.5rem 2.75rem 3rem;animation:rise-in var(--motion-base) var(--ease-standard) both;animation-delay:60ms}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.contract-preview h1{margin:0 0 var(--space-5);font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-display);text-align:center;line-height:var(--line-height-tight);color:var(--color-text)}.contract-preview .intro,.contract-section p,.contract-subsection p{margin:0 0 .75rem;font-size:var(--font-size-sm);line-height:var(--line-height-body);color:var(--color-text-secondary);text-align:justify}.contract-section{margin-top:var(--space-5)}.contract-section h2,.contract-subsection h3,.signature-block h3{margin:0 0 .55rem;font-family:var(--font-display);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text)}.contract-subsection{margin-top:.85rem}.contract-preview ul{margin:0 0 .85rem;padding-left:1.25rem;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.contract-preview li{margin-bottom:.35rem;line-height:var(--line-height-body)}.signature-grid{display:grid;grid-template-columns:1fr;gap:var(--space-5);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-border-subtle)}.signature-field{display:flex;align-items:baseline;gap:.5rem;margin:0 0 1rem;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.signature-line{flex:1;border-bottom:1px solid var(--color-text);min-width:12rem;height:1.1rem}.contract-acceptance-page{position:relative;min-height:0;aspect-ratio:8.5 / 11;display:flex;flex-direction:column;overflow:hidden}.contract-acceptance-page .contract-section--acceptance{margin-top:0}.contract-acceptance-page__kicker{margin-bottom:var(--space-3)!important;font-size:var(--font-size-xs)!important;font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-align:center!important;text-transform:uppercase}.contract-acceptance-page__intro{max-width:42rem;margin:var(--space-6) auto 0!important;text-align:center!important}.contract-acceptance-page .signature-grid{margin-top:3rem;padding-top:var(--space-6)}.contract-acceptance-page__parties{margin:auto 0 0;color:var(--color-text-muted);font-size:var(--font-size-xs);text-align:center}@media(min-width:720px){.signature-grid{grid-template-columns:1fr 1fr}}@media(max-width:900px){.workspace{flex-direction:column}.fields-panel,.fields-panel--expanded{flex:none;width:100%}.fields-panel:not(.fields-panel--expanded) .fields-panel__toggle{writing-mode:horizontal-tb;transform:none;flex-direction:row;min-height:0}}@media(max-width:640px){.app-header{align-items:flex-start;flex-direction:column}.proposal-cover,.proposal-products,.proposal-pricing,.proposal-timeline{min-height:0;padding:1.5rem 1.15rem 1.35rem}.proposal-cover__dates{grid-template-columns:1fr}.proposal-cover__date:last-child{text-align:left;align-items:flex-start}.product-panel--agent{min-height:0;padding:1rem}.proposal-products__stack{flex-direction:column}.proposal-pricing__totals div{align-items:flex-start;flex-direction:column;gap:.2rem}.proposal-pricing__payment{align-items:flex-start;flex-direction:column}.proposal-pricing__payment p{text-align:left}.proposal-timeline__flow{margin-top:var(--space-6);grid-template-columns:1fr}.proposal-timeline__track{display:none}.timeline-phase{min-height:0}.proposal-timeline__footer{display:none}.contract-preview{padding:1.5rem 1.15rem 2rem}.contract-preview h1{font-size:var(--font-size-xl)}}@media print{.app-header,.fields-panel,.error-banner{display:none!important}.workspace,.app-main{display:block;padding:0;overflow:visible}.contract-stack,.proposal-cover,.proposal-products,.proposal-pricing,.proposal-timeline,.contract-preview{width:100%;border:none;border-radius:0;box-shadow:none;print-color-adjust:exact;-webkit-print-color-adjust:exact}.contract-stack{gap:0}.proposal-cover,.proposal-products,.proposal-pricing,.proposal-timeline,.contract-preview{break-after:page}.proposal-cover,.proposal-products,.proposal-pricing,.proposal-timeline{break-inside:avoid}.contract-body .contract-section,.contract-subsection,.pricing-schedule,.signature-grid,.signature-block,.contract-preview p,.contract-preview li,.contract-preview tr{break-inside:avoid-page;page-break-inside:avoid}.contract-preview h1,.contract-preview h2,.contract-preview h3{break-after:avoid-page;page-break-after:avoid}.contract-acceptance-page{break-before:page;break-inside:avoid-page;page-break-before:always;page-break-inside:avoid}}
