/* Extras de PDI: acceso sencillo, cronómetro visual y pequeños ajustes de rutinas. */
html.rosa-login-pending body{overflow:hidden}
html.rosa-login-pending body>*:not(.rosa-login-overlay):not(noscript){visibility:hidden!important}
html.rosa-login-pending body>.rosa-login-overlay,html.rosa-login-pending body>noscript{visibility:visible!important}
.rosa-login-overlay{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 15%,#fff4b9 0 7%,transparent 8%),radial-gradient(circle at 82% 22%,#ffd8e6 0 8%,transparent 9%),linear-gradient(135deg,#fff8f1,#f9e8ef 55%,#eef7ed);transition:opacity .2s ease}.rosa-login-overlay.is-leaving{opacity:0;pointer-events:none}.rosa-login-card{position:relative;width:min(470px,94vw);padding:26px 34px 30px;border:1px solid #ead7df;border-radius:34px;background:#fffdfbf2;box-shadow:0 28px 80px #57334824;text-align:center;overflow:hidden}.rosa-login-sticker{width:178px;height:178px;margin:-4px auto 4px;object-fit:contain;filter:drop-shadow(0 10px 12px #70364a18)}.rosa-login-kicker{font:800 .72rem/1.2 'DM Sans',sans-serif;letter-spacing:.16em;color:#a6295d}.rosa-login-card h1{margin:7px 0 5px;font-size:clamp(2rem,7vw,3rem);color:#702040}.rosa-login-card>p{margin:0 auto 18px;color:#6b6270}.rosa-login-form{display:grid;gap:12px;text-align:left}.rosa-login-form label{display:grid;gap:6px;font-weight:800;color:#5b4652}.rosa-login-form input{width:100%;min-height:52px;border:2px solid #e3cad4;border-radius:14px;padding:11px 14px;background:white;font-size:1.05rem}.rosa-login-form input:focus{border-color:#a6295d;outline:3px solid #f6dce6}.rosa-login-form button{margin-top:5px;min-height:54px;border-radius:16px;font-size:1rem}.rosa-login-error{min-height:1.4em;margin:0!important;text-align:center;color:#aa2e45!important;font-weight:800}.rosa-login-sparkles i{position:absolute;font-style:normal;color:#d38b2a}.rosa-login-sparkles i:nth-child(1){left:28px;top:32px;font-size:30px}.rosa-login-sparkles i:nth-child(2){right:38px;top:64px;font-size:22px;color:#e16691}.rosa-login-sparkles i:nth-child(3){right:24px;bottom:28px;font-size:30px;color:#5f9a68}.login-shake{animation:rosa-login-shake .28s ease-in-out}@keyframes rosa-login-shake{25%{transform:translateX(-7px)}50%{transform:translateX(7px)}75%{transform:translateX(-4px)}}

/* Tiempo: «Sol y nubes» conserva la escena nubosa, pero ahora añade un sol claramente visible. */
.weather-scene.weather-partly-cloudy{isolation:isolate}.weather-sun-overlay{position:absolute;right:6%;top:8%;z-index:2;display:grid;place-items:center;width:clamp(58px,8vw,92px);height:clamp(58px,8vw,92px);font-size:clamp(2.8rem,5vw,4.8rem);filter:drop-shadow(0 5px 8px #a66f2435);animation:rosa-weather-sun 3.5s ease-in-out infinite}.weather-scene.weather-partly-cloudy:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(120deg,#fff2a43a,transparent 42%)}@keyframes rosa-weather-sun{50%{transform:rotate(7deg) scale(1.05)}}

/* Cronómetro de la clase. */
.pdi-timer-page-head{margin-bottom:16px}.pdi-timer-stage{position:relative;overflow:hidden;padding:clamp(20px,3vw,34px);background:linear-gradient(145deg,#fffaf3,#fff5f8 55%,#f1f8ef);border-color:#eadce1}.pdi-timer-stage:before,.pdi-timer-stage:after{content:'';position:absolute;border-radius:50%;pointer-events:none}.pdi-timer-stage:before{width:280px;height:280px;right:-120px;top:-150px;background:#fce2eb}.pdi-timer-stage:after{width:220px;height:220px;left:-100px;bottom:-130px;background:#e8f3e5}.pdi-timer-title{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.pdi-timer-title h2{margin:4px 0 0;font-size:clamp(1.7rem,3vw,2.5rem);color:#702040}.pdi-timer-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(360px,1.15fr) minmax(320px,.85fr);gap:clamp(22px,4vw,54px);align-items:center}.pdi-timer-visual{position:relative;display:grid;justify-items:center;align-content:center;min-height:500px}.pdi-timer-clock{--timer-angle:360deg;position:relative;width:min(390px,75vw);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:conic-gradient(from -90deg,#ff5b70 0 var(--timer-angle),#f2dce4 var(--timer-angle) 360deg);box-shadow:0 18px 50px #7020401a}.pdi-timer-clock:before{content:'';position:absolute;inset:17px;border-radius:50%;background:linear-gradient(145deg,#fffefa,#fff5e6);box-shadow:inset 0 0 0 3px #fff,0 4px 18px #70443012}.pdi-timer-clock.is-half{background:conic-gradient(from -90deg,#f1ae38 0 var(--timer-angle),#f5e6c9 var(--timer-angle) 360deg)}.pdi-timer-clock.is-final{background:conic-gradient(from -90deg,#e43d58 0 var(--timer-angle),#f8d5dc var(--timer-angle) 360deg);animation:rosa-timer-pulse .7s ease-in-out infinite}.pdi-timer-clock.is-done{background:#8bc795}.pdi-timer-face{position:relative;z-index:2;display:grid;place-items:center;text-align:center}.pdi-timer-mini{font:900 .8rem/1 Nunito,sans-serif;letter-spacing:.13em;color:#9a5270}.pdi-timer-time{font:900 clamp(4.4rem,9vw,7.5rem)/1 Nunito,sans-serif;letter-spacing:-.055em;color:#702040;font-variant-numeric:tabular-nums}.pdi-timer-face strong{margin-top:10px;padding:7px 13px;border-radius:999px;background:#fff;color:#2b7357;font:900 clamp(.82rem,1.4vw,1rem)/1 Nunito,sans-serif;letter-spacing:.05em}.pdi-timer-countdown{position:absolute;z-index:5;inset:10%;display:grid;place-items:center;border-radius:50%;background:#702040e8;color:white;font:900 clamp(9rem,22vw,15rem)/1 Nunito,sans-serif;text-shadow:0 6px 0 #4b152d;animation:rosa-count-pop .55s ease both}.pdi-timer-countdown[hidden]{display:none!important}.pdi-timer-petals{position:absolute;width:min(455px,86vw);aspect-ratio:1;pointer-events:none}.pdi-timer-petals i{--angle:calc(var(--i)*30deg);position:absolute;left:calc(50% - 11px);top:calc(50% - 11px);width:22px;height:22px;border-radius:50% 50% 45% 55%;background:#f6c84f;transform:rotate(var(--angle)) translateY(-220px);transform-origin:11px 220px;box-shadow:0 3px 7px #8a5a2414}.pdi-timer-petals i:nth-child(3n){background:#f29ab4}.pdi-timer-petals i:nth-child(3n + 1){background:#93c39a}.pdi-timer-message{position:relative;z-index:3;margin-top:25px;min-height:52px;display:flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:18px;background:white;border:2px solid #ebd8df;color:#7a3150;font:900 clamp(1rem,2vw,1.35rem)/1.2 Nunito,sans-serif;text-align:center}.pdi-timer-controls{display:grid;gap:18px}.pdi-timer-config,.pdi-timer-actions,.pdi-timer-note{padding:20px;border:1px solid #eadde1;border-radius:22px;background:#fffdfbdd}.pdi-timer-stepper{display:grid;grid-template-columns:58px 1fr 58px;gap:10px;align-items:center;margin:14px 0}.pdi-timer-stepper button{min-height:58px;font-size:2rem;padding:4px}.pdi-timer-stepper output{text-align:center;font:900 clamp(1.8rem,4vw,2.8rem)/1 Nunito,sans-serif;color:#702040}.pdi-timer-range{width:100%;height:34px;accent-color:#a6295d}.pdi-timer-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.pdi-timer-presets button{min-width:0;padding-inline:6px}.pdi-timer-presets button.is-selected{background:#a6295d;color:white;border-color:#a6295d}.pdi-timer-actions>div{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:13px}.pdi-timer-actions [data-timer-action="reset"]{grid-column:1/-1}.pdi-timer-note{display:flex;align-items:center;gap:14px;background:#fff2cf;border-color:#f0d896}.pdi-timer-note>span{font-size:2.3rem}.pdi-timer-note p{margin:0;font-size:.94rem}.pdi-timer-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;display:none}.timer-finished .pdi-timer-confetti{display:block}.pdi-timer-confetti i{position:absolute;left:calc((var(--i) + 1)*5%);top:-15px;width:10px;height:18px;background:#e45885;animation:rosa-timer-confetti 1.6s ease-out both;animation-delay:calc(var(--i)*.035s)}.pdi-timer-confetti i:nth-child(3n){background:#f5c542}.pdi-timer-confetti i:nth-child(3n + 1){background:#55a976}.pdi-timer-stage:fullscreen,.pdi-timer-stage.timer-expanded{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0;padding:clamp(18px,3dvh,34px) clamp(28px,4vw,70px);display:flex;flex-direction:column;justify-content:center}.pdi-timer-stage.timer-expanded{position:fixed;inset:0;z-index:99999}
.pdi-timer-stage:fullscreen .pdi-timer-title,.pdi-timer-stage.timer-expanded .pdi-timer-title{margin-bottom:8px}.pdi-timer-stage:fullscreen .pdi-timer-layout,.pdi-timer-stage.timer-expanded .pdi-timer-layout{width:min(1500px,100%);margin:auto;grid-template-columns:minmax(500px,1.15fr) minmax(390px,.85fr)}.pdi-timer-stage:fullscreen .pdi-timer-visual,.pdi-timer-stage.timer-expanded .pdi-timer-visual{min-height:0}.pdi-timer-stage:fullscreen .pdi-timer-clock,.pdi-timer-stage.timer-expanded .pdi-timer-clock{width:min(430px,47dvh)}.pdi-timer-stage:fullscreen .pdi-timer-petals,.pdi-timer-stage.timer-expanded .pdi-timer-petals{width:min(500px,54dvh)}
@keyframes rosa-timer-pulse{50%{transform:scale(1.025)}}@keyframes rosa-count-pop{0%{transform:scale(.55);opacity:0}55%{transform:scale(1.08);opacity:1}100%{transform:scale(1)}}@keyframes rosa-timer-confetti{to{transform:translateY(85dvh) rotate(450deg);opacity:.1}}
@media(max-width:900px){.pdi-timer-layout{grid-template-columns:1fr}.pdi-timer-visual{min-height:450px}.pdi-timer-controls{grid-template-columns:1fr 1fr}.pdi-timer-note{grid-column:1/-1}.pdi-timer-clock{width:min(340px,72vw)}.pdi-timer-petals{width:min(405px,84vw)}.pdi-timer-petals i{transform:rotate(var(--angle)) translateY(-195px);transform-origin:11px 195px}.pdi-timer-stage:fullscreen .pdi-timer-layout{grid-template-columns:1fr 1fr}.pdi-timer-stage:fullscreen .pdi-timer-clock{width:min(360px,45dvh)}}
@media(max-width:620px){.rosa-login-card{padding:20px 22px 24px}.rosa-login-sticker{width:150px;height:150px}.pdi-timer-title{align-items:flex-start;flex-direction:column}.pdi-timer-visual{min-height:390px}.pdi-timer-controls{grid-template-columns:1fr}.pdi-timer-note{grid-column:auto}.pdi-timer-presets{grid-template-columns:repeat(2,1fr)}.pdi-timer-clock{width:min(300px,78vw)}.pdi-timer-petals{display:none}.pdi-timer-time{font-size:4.5rem}}
@media(prefers-reduced-motion:reduce){.weather-sun-overlay,.pdi-timer-clock,.pdi-timer-countdown,.pdi-timer-confetti i,.login-shake{animation:none!important}}
