:root{--amiloo:#863bff;--amiloo-deep:#7e14ff;--amiloo-soft:#ede6ff;--amiloo-soft-border:#d6c8ff;--accent-blue:#47bfff;--bg:#f5f4fb;--surface:#fff;--border:#e6e4ef;--text:#1c1b22;--text-secondary:#5c5b68;--text-tertiary:#8b8a98;--green:#22c55e;--amber:#f59e0b;--red:#ef4444;--radius:14px;--shadow:0 1px 2px #100f220a, 0 10px 30px #100f2212}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:16px}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.app{flex-direction:column;align-items:center;min-height:100dvh;padding:1rem;display:flex}.app-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:600px;box-shadow:var(--shadow);border-radius:20px;overflow:hidden}.app-footer{color:var(--text-tertiary);padding:1rem;font-size:.8rem}.app-footer strong{color:var(--amiloo-deep)}@media (width>=640px){.app{padding:2rem 1rem}}.header{text-align:center;border-bottom:1px solid var(--border);background:radial-gradient(120% 80% at 50% 0%, var(--amiloo-soft) 0%, transparent 70%);padding:1.75rem 1.25rem 1.25rem}.header-logo{margin:0 auto .75rem;display:block}.header-resto{color:var(--amiloo-deep);margin:0 0 .5rem;font-size:.9rem}.header-resto strong{font-weight:700}.header-title{color:var(--text);margin:0 0 .6rem;font-size:1.4rem;line-height:1.25}.header-desc{color:var(--text-secondary);margin:0;font-size:.92rem;line-height:1.45}.radio-group{flex-direction:column;gap:.5rem;display:flex}.radio-option{border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;align-items:center;gap:.7rem;padding:.85rem 1rem;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.radio-option:hover{border-color:var(--amiloo-soft-border)}.radio-option.is-checked{border-color:var(--amiloo);background:var(--amiloo-soft);box-shadow:0 0 0 3px #863bff1f}.radio-option input{opacity:0;width:1px;height:1px;position:absolute}.radio-emoji{font-size:1.25rem;line-height:1}.radio-label{color:var(--text);font-size:.98rem}.radio-option.is-checked .radio-label{font-weight:600}.radio-option:focus-within{border-color:var(--amiloo);box-shadow:0 0 0 3px #863bff40}.checkbox-group{flex-direction:column;gap:.5rem;display:flex}.checkbox-option{border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;align-items:center;gap:.7rem;padding:.8rem 1rem;transition:border-color .15s,background .15s;display:flex}.checkbox-option.is-checked{border-color:var(--amiloo);background:var(--amiloo-soft)}.checkbox-option input{opacity:0;width:1px;height:1px;position:absolute}.checkbox-box{border:1.5px solid var(--border);background:#fff;border-radius:6px;flex:none;width:1.25rem;height:1.25rem;transition:border-color .15s,background .15s;position:relative}.checkbox-option.is-checked .checkbox-box{border-color:var(--amiloo);background:var(--amiloo)}.checkbox-option.is-checked .checkbox-box:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:10px;position:absolute;top:2px;left:6px;transform:rotate(45deg)}.checkbox-emoji{font-size:1.2rem;line-height:1}.checkbox-label{color:var(--text);font-size:.96rem}.checkbox-option:focus-within{border-color:var(--amiloo);box-shadow:0 0 0 3px #863bff40}.scale{flex-direction:column;gap:.45rem;display:flex}.scale-steps{gap:.5rem;display:flex}.scale-step{aspect-ratio:1;min-width:0;color:var(--text-secondary);border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;flex:1 1 0;font-size:1.05rem;font-weight:600;transition:border-color .15s,background .15s,color .15s,transform .1s}.scale-step:hover{border-color:var(--amiloo)}.scale-step:active{transform:scale(.96)}.scale-step.is-selected{border-color:var(--amiloo);background:var(--amiloo);color:#fff}.scale-step:focus-visible{outline:none;box-shadow:0 0 0 3px #863bff4d}.scale-labels{color:var(--text-tertiary);justify-content:space-between;font-size:.8rem;display:flex}.email-field{width:100%;color:var(--text);border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:.85rem 1rem;font-size:1rem;transition:border-color .15s,box-shadow .15s}.email-field::placeholder{color:var(--text-tertiary)}.email-field:focus{border-color:var(--amiloo);outline:none;box-shadow:0 0 0 3px #863bff2e}.turnstile{justify-content:center;min-height:1px;display:flex}.turnstile:empty{display:none}.survey{flex-direction:column;gap:1.75rem;padding:1.5rem 1.25rem 1.75rem;display:flex}.survey-section{flex-direction:column;gap:1.25rem;display:flex}.survey-section-title{color:var(--amiloo-deep);margin:0;font-size:1.1rem}.survey-section-intro{color:var(--text-tertiary);margin:-.5rem 0 0;font-size:.88rem;font-style:italic}.survey-question{flex-direction:column;gap:.7rem;display:flex}.survey-question-label{color:var(--text);gap:.4rem;font-size:1rem;font-weight:600;line-height:1.35;display:flex}.survey-question-num{color:var(--amiloo);flex:none}.survey-required{color:var(--red)}.survey-question-help{color:var(--text-tertiary);margin:-.35rem 0 0;font-size:.85rem}.survey-question.is-missing .survey-question-label{color:var(--red)}.survey-question-error{color:var(--red);margin:0;font-size:.83rem}.survey-error{color:#92260f;border-radius:var(--radius);background:#fdecea;border:1px solid #f6c8c0;margin:0;padding:.8rem 1rem;font-size:.9rem}.survey-config-warning{color:var(--amber);text-align:center;margin:0;font-size:.8rem}.survey-submit{color:#fff;background:var(--amiloo);border-radius:var(--radius);cursor:pointer;border:none;width:100%;padding:1rem;font-size:1.05rem;font-weight:700;transition:background .15s,transform .1s,box-shadow .15s;box-shadow:0 8px 20px #863bff47}.survey-submit:hover:not(:disabled){background:var(--amiloo-deep)}.survey-submit:active:not(:disabled){transform:translateY(1px)}.survey-submit:disabled{opacity:.65;cursor:progress}.survey-submit:focus-visible{outline:none;box-shadow:0 0 0 4px #863bff59}.survey-legal{color:var(--text-tertiary);text-align:center;margin:0;font-size:.78rem;line-height:1.4}.thankyou{text-align:center;padding:3rem 1.5rem}.thankyou-check{color:#fff;background:var(--green);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1.25rem;font-size:2rem;display:flex;box-shadow:0 8px 24px #22c55e4d}.thankyou-title{color:var(--text);margin:0 0 .6rem;font-size:1.35rem}.thankyou-text{max-width:26rem;color:var(--text-secondary);margin:0 auto;font-size:.95rem;line-height:1.5}
