:root{--ev-c-white: #ffffff;--ev-c-white-soft: #f8f8f8;--ev-c-white-mute: #f2f2f2;--ev-c-black: #1b1b1f;--ev-c-black-soft: #222222;--ev-c-black-mute: #282828;--ev-c-gray-1: #515c67;--ev-c-gray-2: #414853;--ev-c-gray-3: #32363f;--ev-c-text-1: rgba(255, 255, 245, .86);--ev-c-text-2: rgba(235, 235, 245, .6);--ev-c-text-3: rgba(235, 235, 245, .38);--ev-button-alt-border: transparent;--ev-button-alt-text: var(--ev-c-text-1);--ev-button-alt-bg: var(--ev-c-gray-3);--ev-button-alt-hover-border: transparent;--ev-button-alt-hover-text: var(--ev-c-text-1);--ev-button-alt-hover-bg: var(--ev-c-gray-2)}:root{--color-background: var(--ev-c-black);--color-background-soft: var(--ev-c-black-soft);--color-background-mute: var(--ev-c-black-mute);--color-text: var(--ev-c-text-1)}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}ul{list-style:none}body{min-height:100vh;color:var(--color-text);background:var(--color-background);line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{display:flex;align-items:center;justify-content:center;overflow:hidden;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201422%20800'%20opacity='0.3'%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='100%25'%20id='oooscillate-grad'%3e%3cstop%20stop-color='hsl(206,%2075%25,%2049%25)'%20stop-opacity='1'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='hsl(331,%2090%25,%2056%25)'%20stop-opacity='1'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20stroke-width='1'%20stroke='url(%23oooscillate-grad)'%20fill='none'%20stroke-linecap='round'%3e%3cpath%20d='M%200%20448%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20448'%20opacity='0.05'%3e%3c/path%3e%3cpath%20d='M%200%20420%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20420'%20opacity='0.11'%3e%3c/path%3e%3cpath%20d='M%200%20392%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20392'%20opacity='0.18'%3e%3c/path%3e%3cpath%20d='M%200%20364%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20364'%20opacity='0.24'%3e%3c/path%3e%3cpath%20d='M%200%20336%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20336'%20opacity='0.30'%3e%3c/path%3e%3cpath%20d='M%200%20308%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20308'%20opacity='0.37'%3e%3c/path%3e%3cpath%20d='M%200%20280%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20280'%20opacity='0.43'%3e%3c/path%3e%3cpath%20d='M%200%20252%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20252'%20opacity='0.49'%3e%3c/path%3e%3cpath%20d='M%200%20224%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20224'%20opacity='0.56'%3e%3c/path%3e%3cpath%20d='M%200%20196%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20196'%20opacity='0.62'%3e%3c/path%3e%3cpath%20d='M%200%20168%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20168'%20opacity='0.68'%3e%3c/path%3e%3cpath%20d='M%200%20140%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20140'%20opacity='0.75'%3e%3c/path%3e%3cpath%20d='M%200%20112%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%20112'%20opacity='0.81'%3e%3c/path%3e%3cpath%20d='M%200%2084%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%2084'%20opacity='0.87'%3e%3c/path%3e%3cpath%20d='M%200%2056%20Q%20355.5%20-100%20711%20400%20Q%201066.5%20900%201422%2056'%20opacity='0.94'%3e%3c/path%3e%3c/g%3e%3c/svg%3e");background-size:cover;-webkit-user-select:none;user-select:none}code{font-weight:600;padding:3px 5px;border-radius:2px;background-color:var(--color-background-mute);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:85%}#root{display:flex;align-items:center;justify-content:center;flex-direction:column;margin-bottom:80px}.logo{margin-bottom:20px;-webkit-user-drag:none;height:128px;width:128px;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 1.2em #6988e6aa)}.creator{font-size:14px;line-height:16px;color:var(--ev-c-text-2);font-weight:600;margin-bottom:10px}.text{font-size:28px;color:var(--ev-c-text-1);font-weight:700;line-height:32px;text-align:center;margin:0 10px;padding:16px 0}.tip{font-size:16px;line-height:24px;color:var(--ev-c-text-2);font-weight:600}.react{background:-webkit-linear-gradient(315deg,#087ea4 55%,#7c93ee);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}.ts{background:-webkit-linear-gradient(315deg,#3178c6 45%,#f0dc4e);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}.actions{display:flex;padding-top:32px;margin:-6px;flex-wrap:wrap;justify-content:flex-start}.action{flex-shrink:0;padding:6px}.action a{cursor:pointer;text-decoration:none;display:inline-block;border:1px solid transparent;text-align:center;font-weight:600;white-space:nowrap;border-radius:20px;padding:0 20px;line-height:38px;font-size:14px;border-color:var(--ev-button-alt-border);color:var(--ev-button-alt-text);background-color:var(--ev-button-alt-bg)}.action a:hover{border-color:var(--ev-button-alt-hover-border);color:var(--ev-button-alt-hover-text);background-color:var(--ev-button-alt-hover-bg)}.versions{position:absolute;bottom:30px;margin:0 auto;padding:15px 0;font-family:Menlo,Lucida Console,monospace;display:inline-flex;overflow:hidden;align-items:center;border-radius:22px;background-color:#202127;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.versions li{display:block;float:left;border-right:1px solid var(--ev-c-gray-1);padding:0 20px;font-size:14px;line-height:14px;opacity:.8}.versions li:last-child{border:none}@media(max-width:720px){.text{font-size:20px}}@media(max-width:620px){.versions{display:none}}@media(max-width:350px){.tip,.actions{display:none}}body.public-tools-page{display:block;overflow-y:auto;overflow-x:hidden;min-height:100vh;align-items:initial;justify-content:initial}body.public-tools-page #root{display:block;width:100%;margin-bottom:0}body.public-review-page{display:block;overflow-y:auto;overflow-x:hidden;min-height:100vh;align-items:initial;justify-content:initial;background:#e8edf2;color:#1b232c;-webkit-user-select:text;user-select:text}body.public-review-page #root{display:block;width:100%;min-height:100vh;margin-bottom:0}body.public-review-page{background:#e8edf2;color:#1b232c}.public-review{min-height:100vh;background:#e8edf2;color:#1b232c;padding:clamp(16px,3vw,40px);box-sizing:border-box;font-family:Inter,Segoe UI,sans-serif}.review-brand{max-width:980px;margin:0 auto 14px;color:#3d4a57;font-weight:800;letter-spacing:.04em;font-size:.82rem;text-transform:uppercase}.review-card{max-width:980px;margin:auto;background:#fff;border:1px solid #d9dee6;border-radius:12px;padding:clamp(18px,3vw,36px);box-sizing:border-box;box-shadow:0 18px 50px #1018201f}.public-review h1,.public-review h2,.public-review h3,.public-review strong,.public-review th,.public-review .review-brand{font-weight:800}.review-hero,.review-meta,.review-identity,.review-totals-wrap,.review-actions{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.review-hero{align-items:flex-start;padding-bottom:8px}.review-kicker{display:block;color:#6c7682;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.review-hero h1{margin:.35rem 0 .4rem;color:#12171d;font-size:clamp(1.5rem,3vw,2rem);line-height:1.2}.review-hero-project{margin:0;color:#4b5560;font-size:1rem}.review-status{display:inline-flex;align-items:center;min-height:2.2rem;padding:8px 14px;border-radius:999px;border:1px solid #d5dbe3;background:#f4f7fa;color:#27313a;font-weight:800;letter-spacing:.02em;white-space:nowrap}.review-status-approved{background:#122016;border-color:#2f8a28;color:#39ff14}.review-status-changes,.review-status-checking{background:#3a2a12;border-color:#c48a2a;color:#ffd089}.review-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.review-info-card{padding:14px 16px;background:#f7f9fb;border:1px solid #e0e5eb;border-radius:8px}.review-info-card span{display:block;color:#6c7682;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.review-info-card strong{display:block;margin-top:6px;color:#27313a;font-size:.98rem;overflow-wrap:anywhere}.review-org{display:flex;gap:14px;align-items:flex-start;margin-top:18px}.review-org img{width:72px;height:72px;object-fit:contain;background:#fff;border:1px solid #e0e5eb;border-radius:8px}.review-org p{margin:0;color:#6c7682;font-size:.9rem;line-height:1.5}.review-meta{margin-top:16px;color:#6c7682;font-size:.92rem}.public-review section{margin-top:28px;padding-top:22px;border-top:1px solid #e4e8ed}.public-review section h2{margin:0 0 14px;color:#12171d;font-size:1.05rem}.review-table-wrap{overflow-x:auto}.public-review table{width:100%;border-collapse:collapse;min-width:640px}.review-quote-table th,.review-quote-table td{padding:12px 10px;border-bottom:1px solid #e4e8ed;vertical-align:top}.review-quote-table th{color:#6c7682;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.review-desc{text-align:left;color:#1b232c;overflow-wrap:anywhere}.review-sku{display:block;margin-top:4px;color:#8a949e;font-size:.82rem;font-weight:600}.review-qty,.review-amount{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.review-quote-table tfoot th,.review-quote-table tfoot td{border-bottom:0}.review-totals-wrap{align-items:start;margin-top:22px}.review-notes{flex:1 1 280px;display:grid;gap:12px}.review-note,.review-terms{padding:16px;background:#f7f9fb;border:1px solid #e0e5eb;border-radius:8px}.review-note p,.review-terms p,.review-terms dl{margin:8px 0 0;color:#6c7682;font-size:.9rem;line-height:1.55}.review-terms dl{display:grid;grid-template-columns:120px 1fr;gap:6px 12px}.review-terms dt{color:#4b5560;font-weight:800}.review-terms dd{margin:0}.review-totals{flex:0 1 320px;padding:18px;background:#101418;border-radius:10px;color:#fff}.review-totals h2{margin:0 0 14px;color:#b9c3cd;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.review-total-row{display:flex;justify-content:space-between;gap:12px;margin-top:8px;color:#c5ced6;font-variant-numeric:tabular-nums}.review-grand-total{margin-top:14px;padding-top:12px;border-top:1px solid #323940}.review-grand-total span{display:block;color:#8d97a2;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.review-grand-total strong{display:block;margin-top:6px;color:#39ff14;font-size:1.45rem;font-variant-numeric:tabular-nums}.review-total-note{margin:10px 0 0;color:#b9c3cd;font-size:.78rem;line-height:1.45}.review-rental{margin-top:16px;padding-top:12px;border-top:1px solid #323940}.review-rental h3{margin:0 0 8px;color:#b9c3cd;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.review-pdf{margin-top:16px;width:100%}.public-review button{background:#39ff14;color:#071007;border:1px solid #6dff55;border-radius:7px;padding:10px 14px;font-weight:800;cursor:pointer}.public-review button:disabled{opacity:.45;cursor:not-allowed}.review-form{display:grid;gap:24px;max-width:720px;margin-top:18px}.review-field{display:grid;gap:8px}.review-field-hint{margin:0;color:#6c7682;font-size:.95rem;line-height:1.45}.review-form input,.review-form textarea{box-sizing:border-box;width:100%;background:#fff;color:#12171d;border:1px solid #c5ced6;border-radius:7px;padding:12px;font:inherit}.review-form input:focus,.review-form textarea:focus,.public-review button:focus,.receipt:focus{outline:3px solid #9cff8b;outline-offset:2px}.review-comments{display:grid;gap:12px}.review-comment{padding:12px 14px;background:#f7f9fb;border:1px solid #e0e5eb;border-radius:8px}.review-comment strong{color:#27313a}.review-comment time,.review-comment small,.review-field small{color:#6c7682}.review-comment p{margin:8px 0 0;overflow-wrap:anywhere}.review-panel{display:grid;gap:16px}.acceptance{display:grid;gap:16px;padding:20px;background:#f7f9fb;border:1px solid #d9dee6;border-radius:8px}.acceptance h3{margin:0;color:#12171d}.acceptance p,.acceptance blockquote{margin:0;line-height:1.5;color:#3d4a57}.review-check{display:flex;gap:12px;align-items:flex-start;line-height:1.45}.review-check input{width:auto;margin-top:3px;flex:0 0 auto}.review-actions{margin-top:4px;gap:12px}.review-notice{min-height:1.5em;margin-top:18px;color:#3d4a57}.review-decision-banner{margin-top:24px;padding:20px 22px;background:#122016;border:1px solid #39ff14;border-radius:10px;color:#e8ffea}.public-review section.review-decision-banner h2,.review-decision-banner h2{margin:0 0 8px;color:#39ff14}.review-decision-banner p{margin:0 0 16px;line-height:1.5}.review-decision-banner-checking{background:#3a2a12;border-color:#c48a2a;color:#fff6e8}.public-review section.review-decision-banner-checking h2,.review-decision-banner-checking h2{color:#ffd089}.review-secondary{background:transparent!important;color:#39ff14!important;border-color:#397644!important}.review-decision-banner-checking .review-secondary{color:#ffd089!important;border-color:#c48a2a!important}.receipt{background:#122016!important;color:#e8ffea;padding:22px!important;border:1px solid #397644!important;border-radius:8px}.public-review section.receipt h2,.receipt h2,.receipt strong{color:#39ff14}.receipt p,.receipt blockquote{line-height:1.5}@media(max-width:720px){.public-review{padding:10px}.review-card{padding:14px}.review-hero,.review-totals-wrap,.review-identity,.review-org{display:block}.review-status{margin-top:12px}.review-totals,.review-actions button,.review-pdf{width:100%}.public-review table{min-width:0}.review-quote-table thead{display:none}.review-quote-table,.review-quote-table tbody,.review-quote-table tr,.review-quote-table th,.review-quote-table td{display:block;width:100%;min-width:0}.review-quote-table tr{padding:12px 0;border-bottom:1px solid #e4e8ed}.review-quote-table td{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:6px 0;border-bottom:0}.review-quote-table td:before{content:attr(data-label);color:#6c7682;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;flex:0 0 7.5rem}.review-line-copy,.review-qty,.review-amount{flex:1 1 auto;text-align:right}}} @media (prefers-reduced-motion: reduce){.public-review *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
