:root{--ink:#241a20;--muted:#74666d;--paper:#f7efed;--accent:#d92f65;--accent2:#ff6d86;--line:rgba(36,26,32,.13);--glass:rgba(255,255,255,.58);--shadow:0 24px 70px rgba(70,30,45,.13);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{min-height:100vh;margin:0;background:radial-gradient(circle at 90% 10%,rgba(255,255,255,.9),transparent 35%),linear-gradient(145deg,#faeeee,#f4e7df);display:flex;flex-direction:column;transition:background-color .16s linear,color .16s linear;overflow-x:hidden}a{color:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;background:#fff;padding:.75rem;z-index:99}.skip-link:focus{top:1rem}.brand{padding:1.35rem clamp(1.25rem,5vw,4.5rem);position:relative;z-index:3}.brand a{text-decoration:none;font-size:1.25rem;font-weight:850;letter-spacing:-.06em}.brand span{color:var(--accent)}.shell{width:min(1120px,100%);margin:auto;padding:2rem 1.25rem 5rem;position:relative;z-index:2}.home-shell{display:grid;gap:2.25rem;align-items:center}.intro h1,.question h1,.success-card h1,.state-card h1,.result-card h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.055em;line-height:.93;margin:.65rem 0 1.25rem;font-size:clamp(3.25rem,14vw,6.9rem)}h1 em{color:var(--accent);font-weight:400}.lede{font-size:1.1rem;line-height:1.65;max-width:36rem;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:.68rem}.card,.emotion-card,.result-card{background:var(--glass);border:1px solid rgba(255,255,255,.7);box-shadow:var(--shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:1.75rem}.form-card{padding:1.45rem}.form-card h2{font-size:1.55rem;margin:.4rem 0}.form-card>div>p{color:var(--muted);line-height:1.5}.step{float:right;border:1px solid var(--line);border-radius:99px;padding:.4rem .65rem;font-size:.7rem}form label{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:750;display:block;margin:1.2rem 0 .5rem}input[type=text],input[type=email]{width:100%;border:1px solid var(--line);border-radius:.9rem;padding:1rem;background:rgba(255,255,255,.6);font:inherit;color:inherit;outline:none;transition:.2s}input:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(217,47,101,.13)}.button{border:0;border-radius:99px;min-height:3.3rem;padding:.9rem 1.25rem;font:inherit;font-weight:800;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.7rem;cursor:pointer;transition:transform .18s,box-shadow .18s,background .18s}.button:hover{transform:translateY(-2px)}.button:focus-visible,.icon-button:focus-visible,input[type=range]:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px var(--accent)}.primary{width:100%;background:var(--ink);color:#fff;box-shadow:0 10px 24px rgba(36,26,32,.18);margin-top:1.35rem}.whatsapp{background:#1e9f59;color:#fff}.alert{background:#fff0f1;border:1px solid #e8a6ae;border-radius:.8rem;padding:.85rem;color:#851d30}.centred{display:grid;place-items:center;text-align:center}.success-card,.state-card{padding:2rem 1.3rem;width:min(620px,100%)}.success-card h1,.state-card h1{font-size:clamp(2.7rem,11vw,5rem)}.success-card>p,.state-card>p{color:var(--muted);line-height:1.6}.seal,.broken,.hourglass{width:4.5rem;height:4.5rem;margin:0 auto 1.5rem;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--accent);font-size:1.8rem;box-shadow:0 10px 30px rgba(217,47,101,.15)}.link-box{margin-top:1.5rem;padding:.7rem .7rem .7rem 1rem;background:rgba(255,255,255,.7);border:1px solid var(--line);border-radius:1rem;display:flex;align-items:center;gap:.5rem;text-align:left}.link-box span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.82rem;flex:1}.icon-button{border:0;border-radius:.7rem;background:var(--ink);color:#fff;padding:.7rem;cursor:pointer}.button-row{display:grid;gap:.65rem}.button-row .button{margin-top:0}.button-row .primary{margin-top:1rem}.copy-status{min-height:1.5rem;font-weight:750;color:var(--accent)}.text-link{font-weight:750}.emotion-page{--emotion-bg:#c7b9ae;--emotion-ink:#241a20;--emotion-accent:#9f3451;background:var(--emotion-bg);color:var(--emotion-ink)}.emotion-page .brand span,.emotion-page h1 em{color:var(--emotion-accent)}.slider-shell{max-width:780px;text-align:center;padding-top:1rem}.question h1{font-size:clamp(2.8rem,12vw,5.6rem)}.question>p:last-child{opacity:.72}.love-form{margin-top:2rem}.emotion-card{display:flex;align-items:center;text-align:left;padding:1.1rem;gap:1rem;background:rgba(255,255,255,.3);min-height:8.5rem}.score{display:flex;align-items:flex-start;min-width:6.5rem}.score output{font-size:3.7rem;font-weight:900;line-height:1;letter-spacing:-.09em}.score span{font-weight:800}.stage-copy{border-left:1px solid currentColor;padding-left:1rem}.stage-copy h2{margin:0 0 .3rem;font-size:1.15rem}.stage-copy p{margin:0;opacity:.75;font-size:.88rem;line-height:1.45}.stage-pop{animation:stage-pop .28s ease}.range-wrap{margin:2.2rem 0 0}.range-labels,.extremes{display:flex;justify-content:space-between;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;opacity:.72}.extremes{font-size:1.35rem;margin-top:.35rem}input[type=range]{--value:50%;appearance:none;-webkit-appearance:none;width:100%;height:3rem;background:transparent;cursor:grab;margin:.55rem 0 0;touch-action:pan-y}input[type=range]:active{cursor:grabbing}input[type=range]::-webkit-slider-runnable-track{height:.7rem;border-radius:2rem;background:linear-gradient(90deg,currentColor var(--value),rgba(255,255,255,.35) var(--value));box-shadow:inset 0 1px 3px rgba(0,0,0,.14)}input[type=range]::-moz-range-track{height:.7rem;border-radius:2rem;background:rgba(255,255,255,.35)}input[type=range]::-moz-range-progress{height:.7rem;border-radius:2rem;background:currentColor}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:2.8rem;height:2.8rem;margin-top:-1.05rem;border-radius:50%;background:#fff;border:.4rem solid currentColor;box-shadow:0 5px 18px rgba(0,0,0,.25);transition:transform .12s}input[type=range]::-moz-range-thumb;width:2rem}input[type=range]::-moz-range-thumb{width:2rem;height:2rem;border-radius:50%;background:#fff;border:.4rem solid currentColor}.unsubmitted{font-size:.75rem;opacity:.72}.submit-love{max-width:28rem}.effects{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}.heart{position:absolute;bottom:-3rem;color:rgba(255,255,255,.45);animation:float-heart 6s ease-in infinite;font-size:1.4rem}.result-card{width:min(660px,100%);padding:2rem 1.25rem;background:rgba(255,255,255,.28)}.result-card h1{font-size:clamp(2.4rem,10vw,4.7rem)}.result-card>p{opacity:.78}.result-score{font-size:clamp(6rem,30vw,11rem);font-weight:950;letter-spacing:-.1em;line-height:.9;margin:1rem 0}.result-score small{font-size:.25em}.result-card h2{font-size:1.5rem}.result-meter{height:.8rem;background:rgba(255,255,255,.35);border-radius:1rem;overflow:hidden;margin:2rem 0}.result-meter i{display:block;width:var(--result);height:100%;background:currentColor;border-radius:inherit;animation:reveal-meter 1.3s cubic-bezier(.2,.8,.2,1)}blockquote{font-family:Georgia,serif;font-size:1.35rem;font-style:italic;margin:2rem auto;max-width:30rem}footer{text-align:center;padding:1.2rem;font-size:.7rem;line-height:1.5;opacity:.68}footer span{font-weight:800}.error-page{background:#211619;color:#f8e9e7}.error-page .card{background:rgba(255,255,255,.08)}.error-page .state-card>p{color:#d9c5c5}@keyframes stage-pop{50%{transform:translateY(-3px);opacity:.7}}@keyframes float-heart{to{transform:translateY(-110vh) rotate(25deg);opacity:0}}@keyframes reveal-meter{from{width:0}}@media(min-width:760px){.home-shell{grid-template-columns:1.25fr .75fr;padding-inline:2.5rem}.form-card{padding:2rem}.button-row{grid-template-columns:1fr 1fr}.emotion-card{padding:1.5rem 2rem}.score{min-width:9rem}.score output{font-size:5.2rem}.stage-copy h2{font-size:1.4rem}.stage-copy p{font-size:1rem}.result-card{padding:3rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.effects{display:none}}
