/* Additive motion layer. Scheduler positions stay fixed. */
.hm-header{position:relative;isolation:isolate;overflow:hidden}
.hm-header>:not(.hm-wisps):not(.hm-header-sweep){position:relative;z-index:1}
.hm-wisps{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.hm-wisp-a{animation:hm-drift-a 28s ease-in-out infinite}
.hm-wisp-b{animation:hm-drift-b 36s ease-in-out infinite}
.hm-wisp-c{animation:hm-drift-a 32s ease-in-out infinite reverse;transform-origin:35% 70%}
.hm-header-sweep{position:absolute;z-index:0;width:24%;height:1px;left:-30%;bottom:0;background:linear-gradient(90deg,transparent,#ff9ccd,transparent);opacity:0;pointer-events:none;animation:hm-sweep 28s ease-in-out infinite}
.hm-logo-wrap{display:block;flex:0 0 auto;width:252px;max-width:30%;isolation:isolate;overflow:hidden}
.hm-root .hm-logo-wrap img{width:100%;max-width:100%;display:block}
.hm-logo-glint{position:absolute;top:60%;left:-25%;height:2px;width:22%;background:linear-gradient(90deg,transparent,#ffe0f2,transparent);box-shadow:0 0 7px #ff6cb9;opacity:0;pointer-events:none;animation:hm-logo-glint 28s ease-in-out infinite}
.hm-root .hd-nav.hm-nav{position:relative;isolation:isolate}
.hm-nav-light{position:absolute;left:0;top:0;z-index:0;border-radius:10px;background:linear-gradient(120deg,#ff268e,#de126d);border:1px solid #ff68af;box-shadow:0 0 20px #ee238044;pointer-events:none}
.hm-root .hd-nav.hm-nav button{position:relative;z-index:1}
.hm-root .hd-nav.hm-nav button[aria-selected=true]{background:transparent;border-color:transparent;box-shadow:none}
.hm-root .nav-icon{display:inline-block}
.hm-root button{transition:background-color 180ms,border-color 180ms,box-shadow 180ms,color 180ms}
.hm-root button:enabled:hover{box-shadow:0 0 16px #f82b891a}
.hm-root button:enabled:active{filter:brightness(1.1)}
.hm-root button.hm-saved{background:#113b2e;border-color:#4cc091;color:#cbffe1;box-shadow:0 0 18px #43c78114}
.hm-saved-label{display:inline-block}
.location-preview{position:relative;height:172px;overflow:hidden;border-radius:10px;background:radial-gradient(ellipse at 25% 60%,#28544355,transparent 55%),radial-gradient(ellipse at 80% 20%,#28443b66,transparent 50%),#152b30;margin-top:22px}
.location-preview>svg{position:absolute;width:100%;height:100%;inset:0}
.hm-root button.map-point{position:absolute;padding:0;width:28px;height:28px;min-width:0;border:1px solid #b7cde4;background:#293c56;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 3px 8px #0006}
.hm-root button.map-point::after{content:'';position:absolute;inset:8px;background:#c7d6ed;border-radius:50%;pointer-events:none}
.hm-root button.map-point[aria-pressed=true]{border-color:#ff8abc;background:#b81764;box-shadow:0 0 0 3px #ff3c9424,0 0 18px #ff3c9433}
.hm-root button.map-point[aria-pressed=true]::after{background:#fff0f7}
.map-caption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:10px;font-size:12px;color:#8c9fb9}
.map-caption span:first-child{color:#f287bb}
.hm-toast{position:fixed;bottom:24px;right:24px;z-index:10;max-width:calc(100vw - 48px);padding:14px 20px;background:#103829;color:#d0ffdf;border:1px solid #3ad98166;border-radius:12px;box-shadow:0 12px 32px #0006}
.hm-toast[hidden]{display:none}
@keyframes hm-drift-a{0%,42%,100%{transform:translate(0,0);opacity:.6}65%{transform:translate(16px,-5px);opacity:.9}82%{transform:translate(-8px,3px);opacity:.7}}
@keyframes hm-drift-b{0%,45%,100%{transform:translate(0,0);opacity:.65}70%{transform:translate(-22px,8px);opacity:.9}}
@keyframes hm-sweep{0%,80%{transform:translateX(0);opacity:0}82%{opacity:.5}94%{transform:translateX(560%);opacity:.5}95%,100%{transform:translateX(560%);opacity:0}}
@keyframes hm-logo-glint{0%,26%{transform:translateX(0);opacity:0}28%{opacity:.7}38%{transform:translateX(580%);opacity:.7}39%,100%{transform:translateX(580%);opacity:0}}
@media(max-width:1200px){.hm-logo-wrap{width:225px}}
@media(max-width:850px){.hm-logo-wrap{width:245px;max-width:65%}}
@media(prefers-reduced-motion:reduce){.hm-root *,.hm-root *::after{animation:none!important;transition:none!important}}
