/* Aqua materials, using the desktop's existing plum, chrome and rose palette. */
#hyd-boot.hyd-boot{position:fixed;inset:0;width:100%;max-width:none;height:100%;height:100dvh;max-height:none;margin:0;padding:0;border:0;overflow:auto;box-sizing:border-box;color:#f6eafb;background:#100b1b;font-family:'Lucida Grande',Tahoma,Arial,sans-serif;z-index:9999}
#hyd-boot:not([open]){display:none}
#hyd-boot::backdrop{background:#100b1b}
#hyd-boot .hyd-boot-stage{position:relative;isolation:isolate;box-sizing:border-box;min-height:100%;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 20px;gap:24px;background:radial-gradient(ellipse at 59% 39%,#55306865,transparent 65%),linear-gradient(145deg,#100b1b,#21142f 62%,#120d20);animation:hyd-screen-wake 650ms ease-out both}
#hyd-boot .hyd-boot-wallpaper{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none;background-image:radial-gradient(#dec5ec77 .6px,transparent .9px);background-size:43px 43px}
#hyd-boot .hyd-boot-wallpaper:before,#hyd-boot .hyd-boot-wallpaper:after{content:'';position:absolute;width:145%;height:75%;left:-22%;top:29%;border-radius:50%;border-top:1px solid #c6a4de40;box-shadow:0 -22px 46px -24px #d7b6ea80,inset 0 29px 50px -34px #eab1cf88;background:linear-gradient(175deg,#b088c01a,transparent 34%);transform:rotate(-22deg);animation:hyd-aqua-current 3s cubic-bezier(.2,.6,.2,1) both}
#hyd-boot .hyd-boot-wallpaper:after{left:-8%;top:58%;width:125%;height:62%;transform:rotate(17deg);opacity:.6;animation-name:hyd-aqua-return}
#hyd-boot .hyd-boot-window{position:relative;box-sizing:border-box;width:450px;max-width:100%;overflow:hidden;border:1px solid;border-color:#d9c7e8 #6f547f #594168 #c8b0dc;border-radius:12px 12px 9px 9px;background:linear-gradient(135deg,#382443e8,#21162fe8 70%),repeating-linear-gradient(0deg,transparent 0 2px,#dfc1ef0a 2px 3px);box-shadow:0 0 0 1px #0b0712,0 26px 75px #07030db3,inset 0 0 0 1px #e6c9f01c;animation:hyd-aqua-window 660ms cubic-bezier(.16,.8,.22,1) 80ms both}
#hyd-boot .hyd-boot-bar{height:32px;padding:0 13px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #6b527b;background:linear-gradient(#fff0ff,#d1bddd 45%,#aa90bc 49%,#e0cde8);color:#34243e;font:11px 'Lucida Grande',Tahoma,Arial,sans-serif;text-shadow:0 1px #f5e9ff;box-shadow:inset 0 1px #fff5ff}
#hyd-boot .hyd-boot-bar>span:last-child{font-size:17px;color:#745c83}
#hyd-boot .hyd-boot-lights{display:flex;gap:6px}
#hyd-boot .hyd-boot-lights i{display:block;width:10px;height:10px;border-radius:50%;border:1px solid #87536f;background:radial-gradient(ellipse at 35% 20%,#fff9ff 0,#f3b8d6 25%,#b45e8e 68%,#633452);box-shadow:0 1px #f7e8fc,inset 0 -1px 2px #541b5466}
#hyd-boot .hyd-boot-lights i:nth-child(2){filter:hue-rotate(35deg);opacity:.8}#hyd-boot .hyd-boot-lights i:nth-child(3){filter:hue-rotate(280deg);opacity:.65}
#hyd-boot .hyd-boot-content{position:relative;padding:31px 39px 23px;text-align:center;background:repeating-linear-gradient(0deg,transparent 0 2px,#d9b9ee06 2px 3px)}
#hyd-boot .hyd-boot-cat{display:grid;place-items:center;width:160px;height:160px;margin:0 auto 18px;animation:hyd-cat-arrive 180ms ease-out both}
/* One small yawn followed by one continuous listening gesture; no forced startup delay. */
#hyd-boot .hyd-boot-cat-frames,.hyd-refresh-cat{position:relative;display:block;width:100%;height:100%;background-image:url("assets/cat/riyal-yawn-v2.webp");background-size:300% 200%;background-position:0 0;background-repeat:no-repeat;animation:hyd-riyal-opening 4s step-end 1 forwards;filter:drop-shadow(0 3px 2px #140923)}
@keyframes hyd-riyal-opening{0%,5%{background-position:0 0}9%{background-position:50% 0}13%{background-position:100% 0}17%{background-position:0 100%}21%{background-position:50% 100%}25%,31%{background-position:100% 100%}35%{background-position:50% 100%}39%{background-position:0 100%}42%{background-position:100% 0}45%{background-position:50% 0}48%{background-position:0 0}50%,100%{background-image:none}}
.hyd-boot-headphones{position:absolute;inset:0;opacity:0;animation:hyd-headphones-reveal 4s step-end 1 forwards}
.hyd-boot-headphones:before,.hyd-boot-headphones:after{content:'';position:absolute;inset:0;background-image:url("assets/cat/riyal-headphone-rig.webp");background-size:200% 100%;background-repeat:no-repeat}
.hyd-boot-headphones:before{background-position:0 0}
.hyd-boot-headphones:after{background-position:100% 0;translate:9.4% 0;transform-origin:48% 61%;animation:hyd-headphones-listen 2s 2s ease-in-out 1 both}
@keyframes hyd-headphones-reveal{0%{opacity:0}50%,100%{opacity:1}}
@keyframes hyd-headphones-listen{0%,100%{rotate:0deg}35%{rotate:-3deg}70%{rotate:2deg}}
#hyd-boot #hyd-boot-name{margin:0;color:#f6edf9;font:500 31px/1.25 "Lucida Grande",Geneva,Tahoma,sans-serif;letter-spacing:-1px;background:none;-webkit-text-fill-color:currentColor;filter:none;text-shadow:0 2px #170f22}
#hyd-boot #hyd-boot-name em{display:block;font:inherit;color:#e2b4d5;background:none;-webkit-text-fill-color:currentColor}
#hyd-boot #hyd-boot-description{margin:14px 0 28px;color:#d9c7e5;font:12px/1.4 'Lucida Grande',Tahoma,Arial,sans-serif}
#hyd-boot .hyd-boot-track{position:relative;height:14px;margin:0 20px 26px;overflow:hidden;border:1px solid #bda0cf;border-radius:10px;background:#160c20;box-shadow:0 1px #ecd7f53d,inset 0 2px 3px #060309}
#hyd-boot .hyd-boot-track>span{position:absolute;inset:2px -28px;border-radius:8px;background:repeating-linear-gradient(118deg,#936ba9 0 8px,#e2bddf 8px 16px,#705087 16px 24px);box-shadow:inset 0 3px 2px #fff0ffb3,inset 0 -2px #43225999;animation:hyd-startup-stripes 800ms linear infinite}
#hyd-boot .hyd-boot-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#cbb6d6;font:10px 'Lucida Grande',Tahoma,Arial,sans-serif}
#hyd-boot .hyd-boot-skip{min-height:32px;padding:5px 14px;display:inline-flex;align-items:center;gap:12px;border:1px solid #b398c6;border-radius:20px;background:linear-gradient(#f1e1fb 0,#c6afd8 44%,#856397 49%,#b79bcb 80%,#dac3eb);color:#27162f;box-shadow:inset 0 1px #fff6ff,0 2px 4px #0d051a80;text-shadow:0 1px #efdbf788;font:11px 'Lucida Grande',Tahoma,Arial,sans-serif;cursor:pointer;transition:filter .16s,translate .16s}
#hyd-boot .hyd-boot-skip:hover{filter:brightness(1.13)}#hyd-boot .hyd-boot-skip:active{translate:0 1px}
#hyd-boot .hyd-boot-skip:focus-visible{outline:2px solid #efb2d6;outline-offset:4px}
#hyd-boot .hyd-boot-caption{font:10px 'Lucida Grande',Tahoma,Arial,sans-serif;letter-spacing:.2px;color:#bfa6ce}
#hyd-boot.is-leaving{animation:hyd-startup-away 350ms ease-in both}
#hyd-boot.is-leaving .hyd-boot-window{animation:hyd-window-away 350ms cubic-bezier(.4,0,1,1) both}
#replay-startup[hidden]{display:none!important}
/* Page movement is orchestrated in JS so dragged window positions stay intact. */
#world .page{animation:none}
@keyframes hyd-screen-wake{from{opacity:0}to{opacity:1}}
@keyframes hyd-aqua-window{from{opacity:0;translate:0 20px;scale:.94}to{opacity:1;translate:0 0;scale:1}}
@keyframes hyd-cat-arrive{from{opacity:0;scale:.85}to{opacity:1;scale:1}}
@keyframes hyd-aqua-current{from{translate:-5% 9%;opacity:.15}to{translate:0 0;opacity:1}}
@keyframes hyd-aqua-return{from{translate:5% 8%;opacity:0}to{translate:0 0;opacity:.6}}
@keyframes hyd-startup-stripes{to{transform:translateX(24px)}}
@keyframes hyd-startup-away{to{opacity:0}}
@keyframes hyd-window-away{to{opacity:0;scale:1.04;translate:0 -8px}}
@media(max-width:480px){#hyd-boot .hyd-boot-content{padding:28px 23px 21px}#hyd-boot #hyd-boot-name{font-size:26px;letter-spacing:-.8px}#hyd-boot .hyd-boot-cat{width:144px;height:144px;margin-bottom:18px}#hyd-boot .hyd-boot-track{margin-inline:9px}}
@media(prefers-reduced-motion:reduce){#hyd-boot,#hyd-boot *,#hyd-boot *:before,#hyd-boot *:after{animation:none!important;transition:none!important}}
body.motion-off #hyd-boot,body.motion-off #hyd-boot *,body.motion-off #hyd-boot *:before,body.motion-off #hyd-boot *:after{animation:none!important;transition:none!important}
/* Returning visits get a light, non-blocking Aqua activity indicator. */
#hyd-refresh{position:fixed;top:18px;left:50%;transform:translateX(-50%);z-index:9998;display:flex;align-items:center;gap:12px;padding:11px 19px;border:1px solid #b8a2ca;border-radius:8px;color:#f5eafa;background:linear-gradient(#54415eea,#25192fea);box-shadow:inset 0 1px #f3dcff44,0 6px 25px #08040d66;font:12px/1.3 'Lucida Grande',Tahoma,Arial,sans-serif;pointer-events:none;white-space:nowrap}
#hyd-refresh[hidden]{display:none}
#hyd-refresh .hyd-refresh-cat{flex:none;width:58px;height:58px;filter:none}
#hyd-refresh.is-static .hyd-refresh-cat{animation:none}
@media(prefers-reduced-motion:reduce){.hyd-refresh-cat{animation:none!important}}
body.motion-off .hyd-refresh-cat{animation:none!important}

#hyd-refresh.is-static .hyd-boot-headphones{animation:none;opacity:0}
