/* toast + tab bar */
.toast{position:fixed;left:50%;top:calc(env(safe-area-inset-top,0px) + 10px);z-index:30;transform:translate(-50%,-140%);background:rgba(44,44,46,.85);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:.5px solid var(--line);border-radius:99px;padding:12px 20px;font-size:15px;font-weight:600;display:flex;gap:8px;align-items:center;white-space:nowrap;transition:transform .6s var(--spring)}
.toast.on{transform:translate(-50%,0)}
.toast svg{width:18px;height:18px;color:#30d158}
nav{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 14px);transform:translateX(-50%);z-index:20;display:flex;padding:6px;gap:2px;border-radius:99px;background:rgba(10,10,10,.72);backdrop-filter:blur(30px) saturate(1.8);-webkit-backdrop-filter:blur(30px) saturate(1.8);border:.5px solid rgba(255,255,255,.14);box-shadow:0 14px 40px rgba(0,0,0,.6)}
nav a{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:1px;width:62px;padding:8px 0 6px;border-radius:99px;color:var(--mu);text-decoration:none;font-size:11px;font-weight:600;transition:color .3s,transform .35s var(--spring)}
nav a svg{width:23px;height:23px}
nav a.on{color:var(--gold)}
nav a:active{transform:scale(.88)}
.pill{position:absolute;top:6px;bottom:6px;left:6px;width:62px;border-radius:99px;background:rgba(255,255,255,.12);transition:transform .55s var(--spring)}

/* reveal: one gentle scroll-in for section heads only */
.rv{opacity:0;transform:translateY(18px);transition:opacity .8s,transform .9s var(--spring)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01s!important;animation-delay:0s!important;transition-duration:.01s!important}.rv{opacity:1;transform:none}.line span{transform:none}.mq div,.cq div,h1 em,h2 em,.aurora i,.status b,.scroll i::after{animation:none!important}}
