.funnel{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow);max-width:560px;color:var(--color-dark)}.funnel-progress{margin-bottom:1.5rem}.funnel-progress__bar{height:6px;background:var(--color-border);border-radius:999px;overflow:hidden;margin-bottom:.4rem}.funnel-progress__fill{height:100%;background:var(--color-accent);border-radius:999px;transition:width .3s ease}.funnel-progress__fill.no-anim{transition:none}@media(prefers-reduced-motion:reduce){.funnel-progress__fill{transition:none}}.funnel-progress__label{font-size:.8rem;color:var(--color-muted)}.funnel-step__heading{font-size:1.2rem;color:var(--color-dark);margin-bottom:.25rem;outline:none}.funnel-step__sub{font-size:.9rem;color:var(--color-muted);margin-bottom:1.25rem}.funnel-fields{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.funnel-trust{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;background:var(--color-light);border-radius:var(--radius-md);padding:.75rem 1rem;margin-bottom:1.25rem}.funnel-trust__item{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--color-primary);font-weight:600}.funnel-trust__item svg{flex-shrink:0;stroke:var(--color-accent)}.funnel-fieldset{border:none;padding:0;margin:0}.funnel-label{font-size:.875rem;font-weight:600;color:var(--color-dark);display:block;margin-bottom:.5rem}.funnel-options{display:flex;flex-direction:column;gap:.5rem}.funnel-options--tile{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}@media(max-width:360px){.funnel-options--tile{grid-template-columns:1fr}}.funnel-options--tile .funnel-option--wide{grid-column:1 / -1}.funnel-option{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border:2px solid var(--color-border);border-radius:var(--radius);cursor:pointer;font-size:.9rem;background:#fff;transition:border-color .15s,background .15s;line-height:1.3}@media(prefers-reduced-motion:reduce){.funnel-option{transition:none}}.funnel-option:hover{border-color:var(--color-primary);background:var(--color-light)}.funnel-option--selected{border-color:var(--color-primary);background:#1a3b6e12;font-weight:600}.funnel-option input[type=radio],.funnel-option input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.funnel-field{display:flex;flex-direction:column;gap:.35rem}.funnel-input{padding:.65rem .9rem;border:1.5px solid var(--color-border);border-radius:var(--radius);font-size:1rem;font-family:Plus Jakarta Sans,system-ui,sans-serif;background:#fff;transition:border-color .15s,box-shadow .15s;width:100%;box-sizing:border-box}@media(prefers-reduced-motion:reduce){.funnel-input{transition:none}}.funnel-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1a3b6e26}textarea.funnel-input{resize:vertical;min-height:80px}.funnel-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.5rem;cursor:pointer}.funnel-file-drop{position:relative;border:2px dashed var(--color-border);border-radius:var(--radius);padding:1.25rem 1rem;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.funnel-file-drop:hover,.funnel-file-drop.drag-over{border-color:var(--color-primary);background:#1a3b6e0a}.funnel-file-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.funnel-file-label{display:flex;flex-direction:column;align-items:center;gap:.4rem;color:var(--color-muted);font-size:.875rem;pointer-events:none}.funnel-file-label svg{stroke:var(--color-primary)}.funnel-file-hint{font-size:.75rem;opacity:.7}.funnel-file-info{margin:.4rem 0 0}.funnel-file-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.3rem}.funnel-file-list__item{display:flex;align-items:center;gap:.5rem;background:#1a3b6e0d;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.3rem .6rem;font-size:.82rem}.funnel-file-list__name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-dark);font-weight:600;min-width:0}.funnel-file-list__size{color:var(--color-muted);white-space:nowrap;flex-shrink:0}.funnel-file-list__remove{background:none;border:none;cursor:pointer;color:#b91c1c;font-size:1rem;font-weight:700;line-height:1;padding:0 .2rem;flex-shrink:0;border-radius:3px;transition:background .15s}.funnel-file-list__remove:hover{background:#b91c1c1a}.funnel-upload-wrapper{margin-bottom:1rem}.funnel-upload-label{font-size:.82rem;color:var(--color-primary);font-weight:600;margin-bottom:.4rem}.funnel-upload-track{height:8px;background:var(--color-border);border-radius:999px;overflow:hidden}.funnel-upload-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:999px;transition:width .2s ease}.funnel-nav{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem}.funnel-status{margin-top:.75rem;font-size:.875rem;color:#b91c1c;min-height:1.2em}.funnel-success{text-align:center;padding:2rem 1rem}.funnel-success__icon{width:3rem;height:3rem;stroke:#16a34a;margin:0 auto .75rem;display:block}.funnel-success h3{color:var(--color-primary);margin-bottom:.5rem}.funnel-success p{color:var(--color-muted)}.funnel-consent{background:#fff;border:2px solid var(--color-border);border-radius:var(--radius);padding:.85rem 1rem;transition:border-color .15s,background .15s}@media(prefers-reduced-motion:reduce){.funnel-consent{transition:none}}.funnel-consent:hover{border-color:var(--color-primary);background:var(--color-light)}.funnel-consent--checked{border-color:var(--color-primary);background:#1a3b6e0f}.funnel-consent__label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;font-size:.875rem;line-height:1.45}.funnel-consent__input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.funnel-consent__box{width:20px;height:20px;flex-shrink:0;margin-top:.1rem;border:2px solid var(--color-border);border-radius:4px;background:#fff;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}@media(prefers-reduced-motion:reduce){.funnel-consent__box{transition:none}}.funnel-consent--checked .funnel-consent__box{border-color:var(--color-primary);background:var(--color-primary)}.funnel-consent__check{width:12px;height:10px;stroke:#fff;opacity:0;transition:opacity .1s}.funnel-consent--checked .funnel-consent__check{opacity:1}.funnel-consent__text{color:var(--color-dark)}.funnel-consent__text a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.funnel-consent__required{color:#b91c1c;font-weight:700;margin-left:.1rem}.exit-overlay{position:fixed;inset:0;background:#0000008c;z-index:9000;display:flex;align-items:center;justify-content:center;padding:1rem}.exit-overlay[hidden]{display:none}.exit-overlay__box{background:#fff;border-radius:var(--radius-lg);padding:2rem;max-width:400px;width:100%;text-align:center;position:relative;box-shadow:0 20px 60px #0003}.exit-overlay__close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;font-size:1.1rem;cursor:pointer;color:var(--color-muted);padding:.25rem .5rem;border-radius:var(--radius-sm)}.exit-overlay__close:hover{background:var(--color-light)}.exit-overlay__icon{font-size:2.5rem;margin-bottom:.75rem}.exit-overlay__box h3{color:var(--color-primary);margin-bottom:.5rem}.exit-overlay__box p{color:var(--color-muted);margin-bottom:1.25rem;font-size:.95rem}.exit-overlay__box .btn{width:100%;justify-content:center;display:flex}
