/* Grimwood V20.5 · Ritmo del Linde */
#objective{transition:border-color .22s ease,box-shadow .22s ease,background .22s ease}
#objective[data-beat="DESCUBRIMIENTO"]{border-color:#71867c66!important;box-shadow:0 10px 34px #0009,inset 3px 0 0 #8ca99a66}
#objective[data-beat="GIRO"]{border-color:#947a5e66!important;box-shadow:0 10px 34px #0009,inset 3px 0 0 #b18c6266}
#objective[data-beat="RESPIRO"]{border-color:#6a859066!important;box-shadow:0 10px 34px #0009,inset 3px 0 0 #80a8b466}
#objective[data-beat="PRUEBA"]{border-color:#9a704d77!important;box-shadow:0 10px 38px #000a,inset 3px 0 0 #c18b5b88}
#objective[data-beat="CLÍMAX"]{border-color:#9a5b5b88!important;box-shadow:0 10px 42px #000b,inset 3px 0 0 #c8717188}
#objective[data-beat] #objective-title:before{content:attr(data-beat);display:none}
.rhythm-card{margin:10px 0 16px;padding:13px 14px;border:1px solid #8c744b55;background:linear-gradient(105deg,#17130fdd,#080807e8);box-shadow:inset 3px 0 0 #a989535e,0 12px 30px #0008}
.rhythm-card small{display:block;font:800 9px/1.2 Arial,sans-serif;letter-spacing:.16em;color:#bda77c;text-transform:uppercase}
.rhythm-card strong{display:block;margin:4px 0 5px;font:700 18px/1.1 Georgia,serif;color:#f0dfbd}.rhythm-card p{margin:0;color:#cfc4ae;line-height:1.45}.rhythm-card em{display:block;margin-top:8px;color:#9f927c;font-size:11px}
.route-step.current{position:relative;box-shadow:inset 3px 0 0 #d2b37377!important}.route-step.current:after{content:'AHORA';float:right;font:800 8px Arial,sans-serif;letter-spacing:.12em;color:#d6b978}
.door-risk{font:800 8px Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
@media(pointer:coarse),(max-width:820px){.mobile-layout #objective[data-beat]{max-width:min(82vw,430px)!important}.mobile-layout #objective-title{font-size:11px!important;letter-spacing:.04em}.mobile-layout #objective-text{font-size:10px!important;line-height:1.3!important}.mobile-layout .rhythm-card{padding:11px 12px;margin:7px 0 12px}.mobile-layout .rhythm-card strong{font-size:16px}.mobile-layout .route-step{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:8px}}
@media(max-height:520px) and (orientation:landscape) and (pointer:coarse){.mobile-layout #objective{max-width:48vw!important;padding:6px 8px!important}.mobile-layout #objective-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-layout #objective-title{font-size:9px!important}}
@media(prefers-reduced-motion:reduce){#objective{transition:none}}
