*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #6C5CE7;--primary-dark: #5A4BD1;--primary-deeper: #4834B5;--primary-light: #A29BFE;--primary-pale: #EDE9FF;--accent: #00CEC9;--accent-dark: #00B5B0;--accent-light: #B2F5EA;--success: #00B894;--warning: #FDCB6E;--danger: #E17055;--bg: #F0F1F8;--bg-card: #FFFFFF;--bg-card-hover: #FAFBFF;--text: #1A1D3B;--text-secondary: #5A5F7D;--text-muted: #9CA3BF;--border: #E2E5F1;--border-light: #ECEEF7;--shadow-xs: 0 1px 2px rgba(26, 29, 59, .04);--shadow-sm: 0 2px 8px rgba(108, 92, 231, .06);--shadow-md: 0 4px 24px rgba(108, 92, 231, .08), 0 1px 4px rgba(0,0,0,.03);--shadow-lg: 0 8px 40px rgba(108, 92, 231, .1), 0 2px 8px rgba(0,0,0,.04);--shadow-xl: 0 16px 64px rgba(108, 92, 231, .14), 0 4px 12px rgba(0,0,0,.04);--shadow-glow: 0 0 0 3px rgba(108, 92, 231, .12), 0 4px 24px rgba(108, 92, 231, .12);--shadow-glow-accent: 0 0 0 3px rgba(0, 206, 201, .12), 0 4px 24px rgba(0, 206, 201, .12);--radius-xs: 8px;--radius-sm: 12px;--radius: 18px;--radius-lg: 24px;--radius-pill: 100px;--transition: .25s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .4s cubic-bezier(.34, 1.56, .64, 1)}body{font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-2;background:radial-gradient(circle 350px at 8% 12%,rgba(108,92,231,.2) 0%,transparent 70%),radial-gradient(circle 300px at 88% 8%,rgba(0,206,201,.17) 0%,transparent 70%),radial-gradient(circle 380px at 72% 78%,rgba(162,155,254,.17) 0%,transparent 70%),radial-gradient(circle 280px at 12% 82%,rgba(0,206,201,.14) 0%,transparent 70%),radial-gradient(circle 220px at 50% 38%,rgba(253,203,110,.1) 0%,transparent 70%);animation:blobFloat 25s ease-in-out infinite alternate}body:after{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(circle 260px at 90% 45%,rgba(108,92,231,.12) 0%,transparent 70%),radial-gradient(circle 220px at 30% 55%,rgba(0,184,148,.1) 0%,transparent 70%);animation:blobFloat2 20s ease-in-out infinite alternate}@keyframes blobFloat{0%{background:radial-gradient(circle 350px at 8% 12%,rgba(108,92,231,.2) 0%,transparent 70%),radial-gradient(circle 300px at 88% 8%,rgba(0,206,201,.17) 0%,transparent 70%),radial-gradient(circle 380px at 72% 78%,rgba(162,155,254,.17) 0%,transparent 70%),radial-gradient(circle 280px at 12% 82%,rgba(0,206,201,.14) 0%,transparent 70%),radial-gradient(circle 220px at 50% 38%,rgba(253,203,110,.1) 0%,transparent 70%)}to{background:radial-gradient(circle 320px at 22% 22%,rgba(108,92,231,.17) 0%,transparent 70%),radial-gradient(circle 340px at 78% 18%,rgba(0,206,201,.2) 0%,transparent 70%),radial-gradient(circle 360px at 58% 88%,rgba(162,155,254,.15) 0%,transparent 70%),radial-gradient(circle 300px at 5% 68%,rgba(0,206,201,.15) 0%,transparent 70%),radial-gradient(circle 240px at 62% 28%,rgba(253,203,110,.12) 0%,transparent 70%)}}@keyframes blobFloat2{0%{background:radial-gradient(circle 260px at 90% 45%,rgba(108,92,231,.12) 0%,transparent 70%),radial-gradient(circle 220px at 30% 55%,rgba(0,184,148,.1) 0%,transparent 70%)}to{background:radial-gradient(circle 280px at 80% 35%,rgba(108,92,231,.14) 0%,transparent 70%),radial-gradient(circle 240px at 40% 65%,rgba(0,184,148,.12) 0%,transparent 70%)}}#root{max-width:960px;margin:0 auto;padding:1rem 1.5rem 0;min-height:100vh;display:flex;flex-direction:column}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes strokeDash{to{stroke-dashoffset:0}}@keyframes gradientMove{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.home-page{flex:1}.navbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding:.65rem 1.25rem;background:#ffffffb3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius);border:1px solid rgba(255,255,255,.8);box-shadow:var(--shadow-sm),0 0 0 1px #e2e5f180;position:relative;z-index:200}.nav-brand{display:flex;align-items:center;gap:.75rem;text-decoration:none}.nav-brand h1{font-size:1.35rem;font-weight:800;letter-spacing:-.5px}.nav-brand h1 .brand-sign{background:linear-gradient(135deg,var(--primary),var(--primary-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-brand h1 .brand-doc{color:var(--text)}.nav-brand h1 .brand-fast{background:linear-gradient(135deg,var(--accent),var(--accent-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-right{display:flex;align-items:center;gap:.75rem}.lang-switcher{position:relative}.lang-toggle{display:flex;align-items:center;gap:.4rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-pill);padding:.35rem .7rem;font-size:.8rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--transition)}.lang-toggle:hover{border-color:var(--primary-light);color:var(--primary);background:var(--primary-pale)}.lang-chevron{transition:transform .2s ease}.lang-chevron.open{transform:rotate(180deg)}.lang-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:150px;padding:.35rem;z-index:100;animation:fadeInUp .15s ease}.lang-option{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .65rem;background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;color:var(--text-secondary);transition:all var(--transition)}.lang-option:hover{background:var(--primary-pale);color:var(--primary)}.lang-option.active{color:var(--primary);font-weight:600}.lang-code{font-weight:700;font-size:.75rem;min-width:1.6rem}.lang-label{flex:1;text-align:left}.lang-check{color:var(--primary)}.nav-badge{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;padding:.25rem .65rem;border-radius:var(--radius-pill);background:var(--primary-pale);color:var(--primary)}.hero{text-align:center;margin-bottom:1.25rem;animation:fadeInUp .6s ease}.hero h2{font-size:1.75rem;font-weight:800;letter-spacing:-.8px;line-height:1.2;margin-bottom:.4rem}.hero h2 .highlight{position:relative;display:inline-block}.hero h2 .highlight:after{content:"";position:absolute;bottom:2px;left:-2px;right:-2px;height:10px;background:linear-gradient(90deg,#6c5ce733,#00cec933);border-radius:4px;z-index:-1}.hero .hero-subtitle{color:var(--text-secondary);font-size:.95rem;max-width:480px;margin:0 auto}.steps-indicator{display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;padding:.6rem 1.25rem;background:#ffffffbf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-pill);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);display:inline-flex;margin-left:auto;margin-right:auto;width:fit-content}.steps-wrapper{display:flex;justify-content:center;margin-bottom:.35rem}.step-item{display:flex;align-items:center;gap:.45rem;transition:all var(--transition)}.step-item .step-number{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;border:2px solid var(--border);color:var(--text-muted);background:#fff;transition:all .4s cubic-bezier(.34,1.56,.64,1);flex-shrink:0}.step-item.active .step-number{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border-color:transparent;box-shadow:0 3px 12px #6c5ce759;transform:scale(1.1)}.step-item.completed .step-number{background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;border-color:transparent;box-shadow:0 3px 10px #00cec94d}.step-item .step-label{font-size:.82rem;font-weight:600;color:var(--text-muted);transition:color var(--transition);white-space:nowrap}.step-item.active .step-label{color:var(--primary-dark)}.step-item.completed .step-label{color:var(--accent-dark)}.step-connector{width:32px;height:2px;margin:0 .4rem;border-radius:1px;flex-shrink:0;background:var(--border);position:relative;overflow:hidden;transition:all .5s ease}.step-connector.active{background:linear-gradient(90deg,var(--accent),var(--primary-light))}.glass-card{background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow-md),inset 0 1px #fff9;padding:2.5rem;animation:fadeInUp .4s ease;position:relative;overflow:hidden}.glass-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--accent),var(--primary-light));background-size:200% 100%;animation:gradientMove 4s ease infinite}.upload-zone{border:2px dashed var(--border);border-radius:var(--radius);padding:2.5rem 2rem;text-align:center;cursor:pointer;transition:all .35s ease;background:#fffc;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);position:relative;overflow:hidden}.upload-zone:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#6c5ce70a,#00cec90a);opacity:0;transition:opacity .35s}.upload-zone:hover,.upload-zone.dragging{border-color:var(--primary);box-shadow:var(--shadow-glow);background:#fffffff2}.upload-zone:hover:before,.upload-zone.dragging:before{opacity:1}.upload-illustration{width:64px;height:64px;margin:0 auto 1rem;border-radius:50%;background:linear-gradient(135deg,var(--primary-pale),rgba(0,206,201,.08));display:flex;align-items:center;justify-content:center;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.upload-zone:hover .upload-illustration{transform:scale(1.08)}.upload-illustration svg{width:36px;height:36px}.upload-zone .upload-title{font-size:1.2rem;font-weight:700;color:var(--text);margin-bottom:.4rem}.upload-zone .upload-subtitle{color:var(--text-muted);font-size:.9rem;margin-bottom:1.5rem}.upload-zone .upload-subtitle .file-limit{display:inline-flex;align-items:center;gap:.25rem;background:var(--primary-pale);color:var(--primary);font-weight:600;font-size:.75rem;padding:.15rem .55rem;border-radius:var(--radius-pill);margin-left:.35rem}.upload-zone .file-input-wrapper{position:relative;display:inline-block}.upload-zone .file-input-wrapper input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.upload-zone .file-input-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.75rem;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border-radius:var(--radius-pill);font-weight:600;font-size:.9rem;transition:all var(--transition);box-shadow:0 4px 18px #6c5ce74d}.upload-zone:hover .file-input-btn{box-shadow:0 6px 24px #6c5ce766;transform:translateY(-2px)}.upload-spinner{display:inline-block;width:44px;height:44px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.error{color:var(--danger);margin-top:1rem;font-weight:600;font-size:.88rem;display:flex;align-items:center;justify-content:center;gap:.3rem}.signature-pad{text-align:center;animation:fadeInUp .4s ease}.signature-pad .section-icon{width:48px;height:48px;border-radius:50%;background:var(--primary-pale);display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin:0 auto .75rem}.signature-pad .card-title{font-size:1.3rem;font-weight:700;margin-bottom:.3rem}.signature-pad .card-subtitle{color:var(--text-secondary);font-size:.9rem;margin-bottom:1rem}.sig-options{display:inline-flex;align-items:center;gap:1rem;padding:.6rem 1.25rem;background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-pill);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);margin-bottom:1rem}.sig-option-group{display:flex;align-items:center;gap:.5rem}.sig-option-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.sig-option-divider{width:1px;height:24px;background:var(--border)}.color-picks{display:flex;gap:.35rem}.color-swatch{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all var(--transition);padding:0;outline:none}.color-swatch:hover{transform:scale(1.15)}.color-swatch.active{border-color:#fff;box-shadow:0 0 0 2px var(--primary),0 2px 8px #00000026;transform:scale(1.15)}.thickness-picks{display:flex;gap:.3rem}.thickness-btn{width:32px;height:28px;border-radius:6px;border:1.5px solid var(--border);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition);padding:0}.thickness-btn:hover{border-color:var(--primary-light)}.thickness-btn.active{border-color:var(--primary);background:var(--primary-pale);box-shadow:0 0 0 1px var(--primary)}.thickness-preview{width:18px;border-radius:2px;display:block}.canvas-container{background:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-light);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:1.25rem;display:inline-block;position:relative}.canvas-container:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:var(--radius) var(--radius) 0 0}.canvas-wrapper{display:inline-block;border:2px solid var(--border-light);border-radius:var(--radius-sm);overflow:hidden;background:#fff;position:relative}.canvas-wrapper:after{content:"";position:absolute;bottom:30%;left:8%;right:8%;height:1px;background:repeating-linear-gradient(90deg,var(--border) 0,var(--border) 6px,transparent 6px,transparent 12px);pointer-events:none}.sig-canvas{display:block;cursor:crosshair}.sig-actions{margin-top:1rem;display:flex;gap:.75rem;justify-content:center}.btn-sm{padding:.45rem 1rem;font-size:.82rem;border-radius:var(--radius-xs)}.pdf-viewer{text-align:center;animation:fadeInUp .4s ease}.toolbar-divider{width:1px;height:20px;background:var(--border);margin:0 .25rem}.placement-count{font-size:.82rem;font-weight:600;color:var(--primary);white-space:nowrap}.pdf-toolbar{display:inline-flex;align-items:center;gap:.6rem;margin-top:1rem;padding:.6rem 1rem;background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-pill);border:1px solid var(--border-light);box-shadow:var(--shadow-sm)}.pdf-toolbar .page-info{font-weight:700;font-size:.85rem;min-width:110px;color:var(--text-secondary)}.hint{color:var(--primary-dark);font-size:.9rem;margin-bottom:.35rem;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--primary-pale);padding:.5rem 1rem;border-radius:var(--radius-pill);font-weight:600}.hint-wrapper{text-align:center;margin-bottom:.15rem}.pdf-page-container{position:relative;display:inline-block;cursor:crosshair;border-radius:var(--radius-sm);box-shadow:var(--shadow-xl);border:1px solid var(--border)}.signature-overlay{position:absolute;border:2px solid var(--primary);border-radius:4px;cursor:move;z-index:10;background:#6c5ce70a;box-shadow:0 0 0 1px #6c5ce71a;transition:border-color .15s,box-shadow .15s;touch-action:none}.signature-overlay:hover{border-color:var(--accent);box-shadow:var(--shadow-glow-accent)}.signature-overlay img{width:100%;height:100%;object-fit:contain;pointer-events:none}.sig-remove-btn{position:absolute;top:-8px;right:-8px;width:20px;height:20px;border-radius:50%;background:var(--danger);border:2px solid white;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;box-shadow:0 2px 6px #e1705566;opacity:0;transition:opacity .15s;z-index:11}.signature-overlay:hover .sig-remove-btn{opacity:1}.sig-remove-btn:hover{background:#c0392b;transform:scale(1.1)}.resize-handle{position:absolute;right:-6px;bottom:-6px;width:14px;height:14px;background:linear-gradient(135deg,var(--primary),var(--primary-dark));border:2px solid white;border-radius:3px;cursor:se-resize;box-shadow:0 2px 6px #6c5ce74d}.place-popover{position:absolute;z-index:50;background:#fffffff7;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1.5px solid rgba(108,92,231,.3);border-radius:var(--radius);box-shadow:var(--shadow-lg),0 0 0 1px #6c5ce714;width:320px;animation:scaleIn .2s ease;transform:translate(-50%,12px)}.popover-tabs{display:flex;border-bottom:1px solid var(--border-light)}.popover-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.35rem;padding:.65rem 0;border:none;background:none;font-family:inherit;font-size:.82rem;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all var(--transition)}.popover-tab:first-child{border-radius:var(--radius) 0 0 0}.popover-tab:last-child{border-radius:0 var(--radius) 0 0}.popover-tab:hover{color:var(--text-secondary);background:#6c5ce708}.popover-tab.active{color:var(--primary);background:#6c5ce70f;box-shadow:inset 0 -2px 0 var(--primary)}.popover-body{padding:.85rem}.popover-options{display:flex;align-items:center;justify-content:space-between;margin-bottom:.65rem}.popover-canvas{border:1.5px solid var(--border-light);border-radius:var(--radius-xs);overflow:hidden;background:#fff;position:relative}.popover-canvas:after{content:"";position:absolute;bottom:30%;left:8%;right:8%;height:1px;background:repeating-linear-gradient(90deg,var(--border) 0,var(--border) 6px,transparent 6px,transparent 12px);pointer-events:none}.popover-text-input{width:100%;border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:.6rem .75rem;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:600;outline:none;transition:border-color var(--transition);margin-bottom:.65rem}.popover-text-input:focus{border-color:var(--primary);box-shadow:var(--shadow-glow)}.popover-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.65rem;flex-wrap:wrap}.popover-actions .btn-sm{padding:.45rem .6rem;white-space:nowrap;flex-shrink:1;min-width:0}.text-overlay{position:absolute;cursor:move;z-index:10;border:1.5px dashed rgba(108,92,231,.4);border-radius:4px;padding:2px 4px;transition:border-color .15s,box-shadow .15s;min-width:40px;white-space:nowrap;touch-action:none}.text-overlay:hover{border-color:var(--accent);box-shadow:var(--shadow-glow-accent)}.text-overlay-display{font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:600;pointer-events:none;-webkit-user-select:none;user-select:none}.text-overlay .sig-remove-btn{opacity:0}.text-overlay:hover .sig-remove-btn{opacity:1}.placement-actions{margin-top:1.5rem;display:flex;gap:.75rem;justify-content:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:none;border-radius:var(--radius-sm);padding:.7rem 1.5rem;font-size:.9rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all var(--transition);text-decoration:none;line-height:1.4;position:relative}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0) scale(.98)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;box-shadow:0 4px 16px #6c5ce74d}.btn-primary:hover{box-shadow:0 8px 24px #6c5ce766}.btn-secondary{background:#ffffffe6;color:var(--text-secondary);border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-secondary:hover{background:#fff;color:var(--text);border-color:var(--primary-light);box-shadow:var(--shadow-sm)}.btn-secondary:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.btn-icon{width:36px;height:36px;padding:0;border-radius:50%;font-size:1rem}.btn-ghost{background:transparent;color:var(--text-secondary);padding:.5rem 1rem;border-radius:var(--radius-xs)}.btn-ghost:hover{background:var(--primary-pale);color:var(--primary);transform:none}.checkout-section{text-align:center;animation:fadeInUp .4s ease}.checkout-card{background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.95);box-shadow:var(--shadow-lg);padding:3rem 2.5rem;max-width:480px;margin:0 auto;position:relative;overflow:hidden}.checkout-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--success),var(--accent))}.checkout-icon{width:76px;height:76px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;position:relative;animation:scaleIn .5s ease}.checkout-icon:before{content:"";position:absolute;inset:-4px;border-radius:50%;background:linear-gradient(135deg,var(--success),var(--accent));z-index:-1;opacity:.2;animation:float 3s ease-in-out infinite}.checkout-icon .icon-inner{width:76px;height:76px;border-radius:50%;background:linear-gradient(135deg,var(--success),var(--accent));display:flex;align-items:center;justify-content:center;box-shadow:0 8px 30px #00b8944d}.checkout-icon .icon-inner svg{width:36px;height:36px}.checkout-card h2{font-size:1.5rem;font-weight:800;color:var(--text);margin-bottom:.5rem}.checkout-card .checkout-desc{color:var(--text-secondary);margin-bottom:1.75rem;font-size:.95rem;line-height:1.7}.price-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1.25rem;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--primary-pale),rgba(0,206,201,.08));border:1px solid rgba(108,92,231,.12);margin-bottom:1.75rem}.price-badge .price-amount{font-size:1.3rem;font-weight:800;color:var(--primary-dark)}.price-badge .price-label{font-size:.78rem;font-weight:500;color:var(--text-muted)}.btn-checkout{background:linear-gradient(135deg,var(--primary),var(--primary-deeper));color:#fff;font-size:1.05rem;font-weight:700;padding:1rem 2.75rem;border-radius:var(--radius-pill);box-shadow:0 6px 28px #6c5ce759;letter-spacing:.3px;position:relative;overflow:hidden}.btn-checkout:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,.1),transparent);transform:translate(-100%);transition:transform .5s}.btn-checkout:hover:before{transform:translate(100%)}.btn-checkout:hover{box-shadow:0 10px 36px #6c5ce773;transform:translateY(-3px)}.btn-checkout:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-checkout:disabled:before{display:none}.secure-note{display:flex;align-items:center;justify-content:center;gap:.35rem;margin-top:1rem;font-size:.78rem;color:var(--text-muted);font-weight:500}.email-form{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border-light)}.email-or{font-size:.82rem;color:var(--text-muted);margin-bottom:.65rem;text-align:center}.email-input-row{display:flex;gap:.5rem}.email-input{flex:1;padding:.55rem .85rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.88rem;color:var(--text);background:var(--bg);outline:none;transition:border-color var(--transition)}.email-input:focus{border-color:var(--primary-light)}.email-input::placeholder{color:var(--text-muted)}.email-sent{display:flex;align-items:center;justify-content:center;gap:.4rem;color:var(--success);font-weight:600;font-size:.9rem}.result-page{text-align:center;padding:2rem 1rem;animation:fadeInUp .5s ease;flex:1}.result-card{background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.95);box-shadow:var(--shadow-lg);padding:3rem 2.5rem;max-width:500px;margin:0 auto;position:relative;overflow:hidden}.result-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px}.result-card.success-card:before{background:linear-gradient(90deg,var(--success),var(--accent))}.result-card.cancel-card:before{background:linear-gradient(90deg,var(--warning),var(--danger))}.result-icon{width:88px;height:88px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.75rem;animation:scaleIn .5s ease}.result-icon.success{background:linear-gradient(135deg,var(--success),var(--accent));box-shadow:0 10px 30px #00b8944d}.result-icon.cancel{background:linear-gradient(135deg,var(--warning),var(--danger));box-shadow:0 10px 30px #e1705540}.result-icon svg{width:40px;height:40px}.result-card h1{font-size:1.6rem;font-weight:800;margin-bottom:.5rem;letter-spacing:-.3px}.result-card p{color:var(--text-secondary);margin-bottom:2rem;font-size:.95rem;line-height:1.7}.result-actions{display:flex;flex-direction:column;gap:.75rem;align-items:center}.loading-overlay{position:fixed;inset:0;background:#f0f1f8cc;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;animation:fadeIn .3s ease}.loading-overlay .spinner{width:48px;height:48px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1.25rem}.loading-overlay p{font-weight:700;color:var(--text-secondary);font-size:1rem}.pdf-container-outer{width:100%;display:flex;justify-content:center}@media(max-width:768px){#root{padding:.5rem .5rem 2rem}.navbar{padding:.6rem .75rem;border-radius:var(--radius-sm)}.nav-brand h1{font-size:1.1rem}.hero h2{font-size:1.4rem}.hero .hero-subtitle{font-size:.85rem}.step-item .step-label{display:none}.step-connector{width:20px}.steps-indicator{padding:.5rem .75rem}.upload-zone{padding:2rem 1rem}.upload-zone .upload-title{font-size:1rem}.upload-zone .upload-subtitle{font-size:.82rem}.glass-card{padding:1.25rem}.checkout-card,.result-card{padding:1.5rem 1.25rem}.canvas-container{padding:.75rem}.btn-checkout{padding:.85rem 2rem;font-size:.95rem}.pdf-page-container{border-radius:var(--radius-xs)}.hint{font-size:.8rem;padding:.4rem .75rem}.pdf-toolbar{gap:.4rem;padding:.5rem .75rem;flex-wrap:wrap;justify-content:center}.pdf-toolbar .page-info{font-size:.78rem;min-width:auto}.placement-count{font-size:.75rem}.placement-actions{flex-wrap:wrap}.placement-actions .btn{font-size:.82rem;padding:.6rem 1.25rem}.place-popover{position:fixed!important;left:.5rem!important;right:.5rem!important;bottom:.5rem!important;top:auto!important;transform:none!important;width:auto!important;max-height:70vh;overflow-y:auto;z-index:60;animation:slideUp .25s ease}.popover-canvas .sig-canvas{width:100%!important}.sig-remove-btn{width:24px;height:24px;top:-10px;right:-10px;opacity:1}.resize-handle{width:18px;height:18px;right:-8px;bottom:-8px}.text-overlay .sig-remove-btn{opacity:1}.checkout-icon,.checkout-icon .icon-inner{width:60px;height:60px}.checkout-icon .icon-inner svg{width:28px;height:28px}.checkout-card h2{font-size:1.25rem}.result-icon{width:68px;height:68px}.result-icon svg{width:32px;height:32px}.result-card h1{font-size:1.3rem}}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:380px){.navbar{padding:.5rem .6rem}.nav-brand h1{font-size:.95rem}.nav-badge{font-size:.6rem;padding:.2rem .5rem}.hero h2{font-size:1.2rem}.btn{font-size:.82rem;padding:.6rem 1rem}}.site-footer{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2rem;margin-top:auto;border-top:1px solid var(--border-light);font-size:.8rem;color:var(--text-muted)}.footer-brand{font-weight:600}.footer-links{display:flex;gap:1.25rem}.footer-links a{color:var(--text-muted);text-decoration:none;transition:color var(--transition)}.footer-links a:hover{color:var(--primary)}.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--bg-card);border-top:1px solid var(--border);box-shadow:0 -2px 12px #0000000f;padding:.35rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;z-index:1000;animation:slideUp .3s ease}.cookie-banner p{font-size:.72rem;color:var(--text-muted);margin:0;flex:1;line-height:1.3}.cookie-banner a{color:var(--primary);text-decoration:underline}.cookie-actions{display:flex;gap:.35rem;flex-shrink:0}.cookie-actions .btn{padding:.25rem .7rem;font-size:.72rem;min-height:auto}.legal-page{max-width:720px;margin:0 auto;padding:2rem 1.5rem;flex:1}.legal-header{margin-bottom:2rem}.legal-header a{display:inline-block}.legal-content h1{font-size:1.8rem;font-weight:800;color:var(--text);margin-bottom:.25rem}.legal-updated{font-size:.82rem;color:var(--text-muted);margin-bottom:2rem}.legal-content h2{font-size:1.15rem;font-weight:700;color:var(--text);margin-top:1.75rem;margin-bottom:.5rem}.legal-content h3{font-size:.95rem;font-weight:600;color:var(--text-secondary);margin-top:1rem;margin-bottom:.35rem}.legal-content p{font-size:.9rem;color:var(--text-secondary);line-height:1.7;margin-bottom:.75rem}.legal-content ul{padding-left:1.5rem;margin-bottom:.75rem}.legal-content li{font-size:.9rem;color:var(--text-secondary);line-height:1.7;margin-bottom:.25rem}.legal-content a{color:var(--primary);text-decoration:underline}@media(max-width:768px){.cookie-banner{flex-direction:column;padding:.5rem 1rem;gap:.5rem;text-align:center}.site-footer{flex-direction:column;gap:.5rem;text-align:center;padding:1rem}}.start-over-wrapper{text-align:center;margin-top:.75rem}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:80vh;padding:2rem}.error-boundary-card{text-align:center;max-width:400px}.error-boundary-icon{margin-bottom:1.25rem}.error-boundary-card h1{font-size:1.4rem;font-weight:700;color:var(--text);margin-bottom:.5rem}.error-boundary-card p{color:var(--text-secondary);font-size:.9rem;margin-bottom:1.5rem;line-height:1.6}.landing-section{margin-top:3rem;animation:fadeInUp .5s ease}.landing-title{text-align:center;font-size:1.5rem;font-weight:800;color:var(--text);margin-bottom:1.75rem}.how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.how-step{text-align:center;padding:1.5rem 1rem;background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border-light);box-shadow:var(--shadow-xs)}.how-step-num{width:36px;height:36px;margin:0 auto .75rem;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;font-weight:700;font-size:.95rem;display:flex;align-items:center;justify-content:center}.how-step h3{font-size:.95rem;font-weight:700;color:var(--text);margin-bottom:.4rem}.how-step p{font-size:.82rem;color:var(--text-secondary);line-height:1.6}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.feature-card{padding:1.25rem;background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border-light);box-shadow:var(--shadow-xs);transition:all var(--transition)}.feature-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.feature-card h3{font-size:.9rem;font-weight:700;color:var(--primary);margin-bottom:.35rem}.feature-card p{font-size:.8rem;color:var(--text-secondary);line-height:1.6}.faq-list{max-width:680px;margin:0 auto;display:flex;flex-direction:column;gap:.5rem}.faq-item{background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid var(--border-light);overflow:hidden}.faq-item summary{padding:.85rem 1.15rem;font-weight:600;font-size:.9rem;color:var(--text);cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between}.faq-item summary:after{content:"+";font-size:1.2rem;color:var(--primary);font-weight:400;transition:transform .2s ease}.faq-item[open] summary:after{content:"−"}.faq-item summary::-webkit-details-marker{display:none}.faq-item p{padding:0 1.15rem .85rem;font-size:.85rem;color:var(--text-secondary);line-height:1.7}@media(max-width:768px){.how-steps,.features-grid{grid-template-columns:1fr;gap:.75rem}.landing-title{font-size:1.25rem}}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors:active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors:active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;inset:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;inset:100% 0 0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}
