/* Diseño de valorame-alfarivas-ok2.zip: dos pasos y presentación original. */
:root{--b:#1565b8;--r:#e3001b;--y:#b07800;--o:#e2702e;--g:#333a42;--bg:#f3f6fa}
*{box-sizing:border-box}html,body{margin:0}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--g);font-size:15px;line-height:1.35;-webkit-text-size-adjust:100%}
.page{max-width:460px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;padding:max(10px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}
header{text-align:center;padding:6px 0 4px}
header img{height:min(19dvh,140px);width:auto;max-width:100%;display:block;margin:0 auto;transition:height .3s}
body.rated header img{height:min(10dvh,76px)}
.bar{height:4px;border-radius:2px;margin:8px auto 0;width:120px;background:linear-gradient(90deg,var(--r) 0 25%,#f8b500 25% 50%,var(--b) 50% 75%,var(--o) 75%)}
.card{background:#fff;border-radius:16px;padding:14px 16px;box-shadow:0 4px 16px rgba(21,101,184,.1);text-align:center;margin-top:8px;min-width:0}
h1{font-size:1.25rem;margin:0 0 6px;color:var(--b)}
.intro{margin:0;font-size:.92rem}
h2{font-size:1rem;margin:12px 0 2px}body.rated h2{margin-top:4px}
.stars{display:flex;justify-content:center;gap:4px;margin:4px 0}
.stars button{font-size:clamp(2.1rem,11vw,2.6rem);line-height:1;background:none;border:0;cursor:pointer;color:#6e7e90;padding:2px;min-width:44px;min-height:44px;border-radius:5px}
.stars button.on{color:var(--y)}
body.rated .stars button{font-size:2rem}
.badge{font-size:.8rem;color:#546170}
.hide{display:none!important}
.joy{animation:pop .5s ease;margin-top:4px}.joy .big{font-size:1.6rem;display:inline-block;animation:bounce 1s ease 2}
.joy p{margin:2px 0 0;font-weight:600;color:var(--b)}
.btn{display:block;width:100%;min-height:44px;padding:13px;border-radius:11px;border:0;font-size:1.02rem;font-weight:700;text-decoration:none;margin-top:8px;cursor:pointer;text-align:center;font-family:inherit;line-height:1.3}
.btn:disabled{opacity:.65;cursor:wait}
.main{background:var(--b);color:#fff}.pub{background:var(--b);color:#fff;font-size:1.12rem;padding:15px}
.wa{background:#0f7a3d;color:#fff}.mail{background:#a64b19;color:#fff}
.form{text-align:left;margin-top:6px}
.ideas{text-align:left;background:#fff8e1;border-left:4px solid #d39700;border-radius:8px;padding:6px 10px;margin-top:6px;font-size:.82rem}
.ideas ul{margin:2px 0;padding-left:18px}
input,textarea{width:100%;padding:9px 10px;border:1px solid #9aa5b1;border-radius:9px;font:inherit;font-size:16px;margin-top:6px;background:#fff;color:var(--g)}
input::placeholder,textarea::placeholder{color:#546170;opacity:1}
textarea{resize:vertical;min-height:80px;max-height:400px}
.err{color:#b00015;font-size:.82rem;margin-top:4px;min-height:1em}
.ok{background:#eaf7ee;border:2px solid #0f7a3d;border-radius:12px;padding:10px;animation:pop .5s ease}
.ok .big{font-size:1.8rem}.ok p{margin:4px 0 0}.ok b{color:#0f7a3d}
.how{font-size:.85rem;color:#4b5561;margin:8px 0 0}
.how a{color:var(--b);display:inline-block;min-height:32px;align-content:center}
.preview{text-align:left;font-size:.85rem;background:#f3f6fa;border-radius:8px;padding:8px;margin-top:8px;white-space:pre-wrap;max-height:5.5em;overflow:auto;overflow-wrap:anywhere;user-select:text;-webkit-user-select:text}
.priv{text-align:left;margin-top:10px;border-top:1px dashed #c9d1da;padding-top:8px;font-size:.86rem}
.row{display:flex;gap:8px}.row .btn{flex:1;padding:10px 6px;font-size:.9rem}
.links{display:flex;gap:8px;margin-top:10px}
.links a{flex:1;padding:9px;font-size:.9rem;background:#fff;border:2px solid var(--b);color:var(--b)}
.links a.ig{border-color:var(--r);color:var(--r)}
footer{text-align:center;font-size:.75rem;color:#546170;margin-top:auto;padding-top:8px;overflow-wrap:anywhere}footer a{color:var(--b)}
.note{font-size:.75rem;color:#546170;line-height:1.45;margin:7px 0 0}
button:focus-visible,.btn:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible,.preview:focus-visible{outline:3px solid var(--b);outline-offset:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@keyframes pop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.06)}100%{transform:scale(1);opacity:1}}
@keyframes bounce{50%{transform:translateY(-8px)}}
.drop{position:fixed;top:-40px;pointer-events:none;animation:fall 2.6s linear forwards;z-index:9}
@keyframes fall{to{transform:translateY(110dvh) rotate(360deg)}}
@media(max-width:340px){.page{padding-inline:10px}.card{padding-inline:12px}.stars{gap:2px}.stars button{min-width:42px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
