:root{--rosa:#d4457f;--rosa-esc:#a8285d;--rosa-claro:#fbe3ec;--rosa-bg:#fff6f9;--creme:#fffaf6;--texto:#3b2530;--suave:#7d6470;--linha:#f1d3df;--superficie:#fff;--shadow:0 8px 24px -14px color-mix(in srgb,var(--rosa) 42%,transparent)}
*{box-sizing:border-box}body{margin:0;min-height:100svh;background:var(--creme);color:var(--texto);font:16px/1.5 Nunito,system-ui,sans-serif;-webkit-font-smoothing:antialiased;display:flex;flex-direction:column}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:var(--rosa-esc)}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button:focus-visible,a:focus-visible{outline:3px solid var(--rosa);outline-offset:3px}.heading:focus{outline:none}header{border-bottom:1px solid var(--linha);background:var(--rosa-bg);flex-shrink:0}.brand{max-width:600px;margin:auto;padding:16px 20px;display:flex;align-items:center;justify-content:center;gap:12px}.brand img{width:32px;height:44px;object-fit:cover;border-radius:3px;box-shadow:var(--shadow)}.brand b{display:block;font:600 23px/1.1 'Cormorant Garamond',Georgia,serif}main{width:100%;max-width:540px;margin:auto;padding:24px 20px 16px}.progress-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:800;color:var(--suave);margin-bottom:9px}.progress-top span:last-child{display:flex;align-items:center;gap:5px}.progress-top svg{width:14px;height:14px}.track{height:4px;border-radius:4px;background:var(--rosa-claro);overflow:hidden;margin-bottom:24px}.fill{height:100%;background:var(--rosa);transition:width .4s ease;width:25%}.overline{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:var(--rosa);margin:0 0 8px}.heading{font-family:'Cormorant Garamond',Georgia,serif;font-size:36px;font-weight:600;line-height:1.12;letter-spacing:0;margin:0 0 22px;text-wrap:balance}.options{display:grid;gap:10px}.option{display:flex;align-items:center;text-align:left;gap:12px;min-height:64px;width:100%;padding:12px 14px;border:1px solid var(--linha);border-radius:8px;background:var(--superficie);color:var(--texto);cursor:pointer;transition:background .18s,border-color .18s,transform .18s;box-shadow:var(--shadow)}.option:hover{border-color:var(--rosa);background:var(--rosa-bg);transform:translateY(-2px)}.option.selected{border-color:var(--rosa);background:var(--rosa-claro)}.option-icon{color:var(--rosa);width:28px;height:28px;display:grid;place-items:center;flex-shrink:0}.option-label{flex:1;font-size:15px;font-weight:700;line-height:1.35}.radio{width:17px;height:17px;border:1px solid var(--linha);border-radius:50%;flex-shrink:0}.selected .radio{border:5px solid var(--rosa);background:var(--superficie)}.navigation{margin-top:14px;min-height:26px}.back{display:inline-flex;align-items:center;gap:6px;color:var(--suave);background:none;border:0;padding:4px 0;font-size:12px;cursor:pointer;min-height:28px}.back svg{width:16px;height:16px}.back:hover{color:var(--rosa)}.view.enter{animation:enter .3s both}footer{flex-shrink:0;padding:12px 20px 16px;text-align:center;font-size:11px;color:var(--suave)}footer a{text-decoration:none}footer a:hover{text-decoration:underline}.preparing{text-align:center;padding:40px 0}.seal{width:56px;height:56px;border-radius:50%;margin:0 auto 16px;background:var(--rosa-claro);color:var(--rosa);display:grid;place-items:center}.seal svg{width:28px;height:28px}.preparing .seal{animation:breathe 1.5s ease-in-out infinite}.loading-track{height:7px;overflow:hidden;background:var(--rosa-claro);border-radius:8px;margin:28px auto 12px;max-width:300px}.loading-fill{height:100%;width:0;background:var(--rosa);border-radius:8px;transition:width .08s linear}.loading-status{font-size:13px;color:var(--suave);margin:0}.result{text-align:center}.result .heading{margin-bottom:14px;font-size:36px}.result-text{font-size:15px;color:var(--suave);margin:0 0 12px}.commitment{font-size:13px;color:var(--suave);margin:0}.journey{display:flex;align-items:center;text-align:left;gap:14px;margin:20px 0;padding:16px 0;border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}.journey img{width:42px;height:60px;object-fit:cover;border-radius:3px;box-shadow:var(--shadow);animation:float 4s ease-in-out infinite}.journey b{display:block;font:600 25px/1.1 'Cormorant Garamond',Georgia,serif}.journey p{font-size:12px;color:var(--suave);margin:5px 0 0}.btn{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:8px;min-height:54px;padding:14px 16px;border:0;border-radius:999px;background:var(--rosa);color:var(--superficie);font-size:15px;font-weight:800;text-decoration:none;box-shadow:var(--shadow);cursor:pointer;transition:background .2s,transform .2s}.btn:hover{background:var(--rosa-esc);transform:translateY(-2px)}.btn:active{transform:scale(.985)}.btn:before{content:'';position:absolute;inset:0 auto 0 0;width:36%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--superficie) 25%,transparent),transparent);animation:shine 4s ease-in-out infinite;pointer-events:none}.btn svg{width:20px;height:20px}.restart{display:flex;justify-content:center;margin-top:8px}@keyframes enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes breathe{50%{transform:scale(1.08)}}@keyframes float{50%{transform:translateY(-3px)}}@keyframes shine{0%,65%{transform:translateX(-120%) skewX(-20deg)}100%{transform:translateX(350%) skewX(-20deg)}}
@media(max-width:480px){.heading,.result .heading{font-size:32px}.brand b{font-size:22px}.result .heading{max-width:320px;margin-left:auto;margin-right:auto}}@media(max-height:740px){.brand{padding:10px 20px}.brand img{height:36px;width:26px}main{padding-top:14px;padding-bottom:8px}.heading,.result .heading{font-size:30px;margin-bottom:16px}.track{margin-bottom:18px}.seal{width:44px;height:44px;margin-bottom:10px}.seal svg{width:25px;height:25px}.result-text{font-size:14px;margin-bottom:8px}.journey{margin:12px 0;padding:10px 0}.journey img{width:34px;height:48px}.journey b{font-size:23px}.option{min-height:58px;padding:10px 12px}.option-label{font-size:14px}.options{gap:8px}footer{padding:8px 20px 10px}.navigation{margin-top:10px}}@media(max-height:600px){footer{padding:4px 20px 6px}.navigation{margin-top:6px;min-height:22px}.brand{padding:8px 18px}.brand b{font-size:20px}main{padding-top:10px}.heading,.result .heading{font-size:27px;margin-bottom:12px}.overline{margin-bottom:5px}.option{min-height:50px;padding:8px 12px}.result .seal{display:none}.result-text{font-size:13px}.commitment{font-size:12px}.journey{margin:10px 0;padding:8px 0}.btn{min-height:48px;padding:12px}.track{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){*,*:before{animation:none!important;transition:none!important}}
