:root{--text:#1a1a2e;--text-muted:#8a8a9e;--bg:#f7f7fc;--surface:#fff;--border:#e7e7f3;--accent:#4338ca;--accent-light:#edebfc;--accent-contrast:#fff;--star:#ffb020;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--shadow:0 6px 16px #3a3a6a14;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font:16px/1.5 system-ui,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#f3f4f6;--text-muted:#9ca3af;--bg:#14141f;--surface:#1e1e2e;--border:#2e2e42;--accent:#7c6fea;--accent-light:#26264a;--accent-contrast:#14141f;--shadow:0 6px 16px #00000059}}*{box-sizing:border-box}body{margin:0}#root{width:100%;min-height:100svh}.page-centered{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:100svh;padding:24px;display:flex}.brand-highlight{color:var(--accent)}.success-badge{background:var(--accent-light);width:64px;height:64px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;margin-bottom:8px;font-size:32px;display:flex}.invite-message{max-width:360px;color:var(--text-muted);margin-top:16px;font-size:14px}.share-heading{max-width:360px;margin:20px 0 0;font-size:17px;font-weight:700}.thank-you-card{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:360px;box-shadow:var(--shadow);margin-top:12px;padding:20px;position:relative;overflow:hidden}.thank-you-card-content{z-index:1;flex-direction:column;align-items:center;gap:12px;width:100%;display:flex;position:relative}.thank-you-blob{z-index:0;background:var(--accent-light);border-radius:50%;position:absolute}.thank-you-blob-top-right{width:140px;height:140px;top:-50px;right:-50px}.thank-you-blob-bottom-left{width:160px;height:160px;bottom:-60px;left:-60px}.thank-you-title-row{justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.thank-you-title{text-align:center;margin:0;font-size:17px;font-weight:800}.thank-you-photo{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-md);width:100%;display:block}.thank-you-info-row{align-self:flex-start;align-items:flex-start;gap:12px;width:100%;display:flex}.thank-you-qr{border-radius:var(--radius-sm);border:1px solid var(--border);flex-shrink:0;width:64px;height:64px;margin-top:22px}.thank-you-info-text{text-align:left}.thank-you-product-name{margin:0;font-size:16px;font-weight:700}.thank-you-product-description{color:var(--text-muted);margin:4px 0 0;font-size:13px}.thank-you-footer{width:100%;color:var(--text-muted);text-align:right;margin:0;font-size:10px}.share-feedback{color:var(--text-muted);margin:0;font-size:13px}.material-section{border-top:1px solid var(--border);width:100%;max-width:360px;margin-top:20px;padding-top:20px}.progress-steps{align-items:center;gap:8px;margin-bottom:8px;display:flex}.progress-step{color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;gap:6px;max-width:90px;font-size:11px;font-weight:700;display:flex}.progress-step-icon{background:var(--border);width:36px;height:36px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex}.progress-step.done .progress-step-icon{background:var(--accent);color:var(--accent-contrast)}.progress-step.pending{color:var(--accent)}.progress-step.pending .progress-step-icon{background:var(--accent-light);color:var(--accent);border:2px solid var(--accent)}.progress-step-connector{background:var(--border);flex:0 0 32px;height:2px;margin-bottom:20px}.material-link{color:var(--text-muted);text-align:center;margin:0;font-size:13px}.material-link a{color:var(--accent);font-weight:700;text-decoration:underline}.form-page{max-width:480px;margin:0 auto;padding:32px 20px 48px}.terms-page{max-width:720px;color:var(--text);margin:0 auto;padding:32px 20px 64px;line-height:1.6}.terms-page h1{margin-bottom:4px;font-size:22px}.terms-meta{color:var(--text-muted);margin:0 0 32px;font-size:13px}.terms-section{margin-bottom:32px}.terms-section h2{border-bottom:1px solid var(--border);margin-bottom:16px;padding-bottom:8px;font-size:18px}.terms-section h3{margin:20px 0 6px;font-size:15px}.terms-section p,.terms-section li{color:var(--text);font-size:14px}.terms-section ul{margin:8px 0;padding-left:20px}.product-header{text-align:center;margin-bottom:24px}.product-photo{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-md);width:100%;margin-bottom:12px}.product-description{color:var(--text-muted);margin-top:8px}.instructions{color:var(--text-muted);margin-top:16px}.recommendation-form{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-direction:column;gap:20px;padding:24px;display:flex}.field{text-align:left;flex-direction:column;gap:8px;display:flex}.field span{font-size:14px;font-weight:700}.field input,.field textarea{font:inherit;border-radius:var(--radius-md);background:var(--accent-light);color:var(--text);border:none;padding:12px 14px}.field input::placeholder,.field textarea::placeholder{color:var(--text-muted)}.consent-field{text-align:left;cursor:pointer;border-radius:var(--radius-md);border:2px solid #0000;align-items:flex-start;gap:10px;padding:8px;display:flex}.consent-field-warning{background:#e14b4b0f;border-color:#e14b4b}.consent-checkbox-warning{outline-offset:2px;accent-color:#e14b4b;outline:2px solid #e14b4b}.consent-field input{flex-shrink:0;margin-top:3px}.consent-field span{color:var(--text-muted);font-size:13px;line-height:1.5}.star-rating{gap:4px;display:flex}.star-button{color:var(--border);cursor:pointer;background:0 0;border:none;padding:4px;font-size:36px;line-height:1}.star-button.filled{color:var(--star)}.recommend-toggle{gap:8px;display:flex}.recommend-button{font:inherit;border-radius:var(--radius-md);background:var(--accent-light);color:var(--text);cursor:pointer;border:2px solid #0000;flex:1;padding:12px 14px;font-size:14px;font-weight:700}.recommend-button.selected{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.photo-upload{border-radius:var(--radius-md);background:var(--accent-light);flex-direction:column;align-items:center;gap:12px;padding:16px 12px;display:flex}.photo-upload-placeholder{color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;gap:8px;font-size:13px;display:flex}.photo-upload-choices{gap:8px;width:100%;display:flex}.photo-upload-choice-button{text-align:center;border-radius:var(--radius-md);background:var(--accent);color:var(--accent-contrast);cursor:pointer;flex:1;justify-content:center;align-items:center;padding:10px 8px;font-size:13px;font-weight:700;display:flex}.photo-upload-input-hidden{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.photo-upload-preview-wrap{width:140px;height:140px;margin:0 auto;position:relative}.photo-upload-preview{object-fit:cover;border-radius:50%;width:140px;height:140px;display:block}.photo-remove-button{border:2px solid var(--surface);color:#fff;cursor:pointer;background:#000000b3;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:flex;position:absolute;top:-4px;right:-4px}.cropper-backdrop{z-index:100;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.cropper-card{background:var(--surface,#fff);border-radius:var(--radius-lg,16px);flex-direction:column;align-items:center;gap:16px;width:100%;max-width:320px;padding:20px;display:flex}.cropper-title{text-align:center;margin:0;font-size:14px;font-weight:700}.cropper-viewport{background:var(--accent-light);touch-action:none;border-radius:50%;width:240px;height:240px;position:relative;overflow:hidden}.cropper-image{-webkit-user-select:none;user-select:none;pointer-events:none;max-width:none;position:absolute;top:50%;left:50%}.cropper-ring{pointer-events:none;border:2px solid #ffffffd9;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #00000026}.cropper-zoom{width:100%}.cropper-actions{gap:10px;width:100%;display:flex}.cropper-cancel,.cropper-confirm{font:inherit;border-radius:var(--radius-md);cursor:pointer;border:none;flex:1;padding:10px 8px;font-size:13px;font-weight:700}.cropper-cancel{background:var(--accent-light);color:var(--text)}.cropper-confirm{background:var(--accent);color:var(--accent-contrast)}.cropper-confirm:disabled{opacity:.6;cursor:not-allowed}.submit-button{font:inherit;border-radius:var(--radius-md);background:var(--accent);color:var(--accent-contrast);cursor:pointer;border:none;padding:14px 16px;font-weight:700}.submit-button:disabled{opacity:.6;cursor:not-allowed}.error-message{color:#e14b4b}.email-warning{color:#c9962b;font-size:12px}.site-page{max-width:560px;margin:0 auto;padding:32px 20px 48px}.site-header{text-align:center;margin-bottom:32px}.site-header-photo{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-lg);width:100%;margin-bottom:16px}.site-header h1{margin:0 0 8px}.site-header-description{color:var(--text-muted);margin:0 0 12px}.site-header-link{color:var(--accent);font-weight:700;text-decoration:underline;display:inline-block}.site-testimonials-title{text-align:center;margin:0 0 20px;font-size:17px}.site-testimonials-list{flex-direction:column;gap:16px;display:flex}.site-testimonial-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:20px}.site-testimonial-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.site-testimonial-name{font-weight:700}.site-testimonial-stars{color:#ffb020;flex-shrink:0}.site-testimonial-text{color:var(--text);margin:0 0 8px}.site-testimonial-date{color:var(--text-muted);font-size:12px}.site-disclaimer{text-align:center;color:var(--text-muted);margin-top:32px;padding:0 16px;font-size:11px}.site-footer{text-align:center;color:var(--text-muted);margin-top:8px;font-size:12px}
