/* Validated Vision Flow dock. Three destinations + Menu, icons above labels. */
nav.vp-bottom-navigation{display:flex;align-items:center;gap:2px;box-sizing:border-box;padding:7px;width:520px;max-width:calc(100vw - 24px);height:82px;border:1px solid #ffffff52;border-radius:999px;background:linear-gradient(135deg,#ffffff19,#e9f0ff06 44%,#ffffff10);box-shadow:inset 1px 1px 1px #ffffff70,inset -1px -1px 1px #ffffff2b,inset 0 0 12px #eaf3ff10,0 12px 30px #05081735;-webkit-backdrop-filter:blur(5px) saturate(1.45) brightness(.88);backdrop-filter:blur(5px) saturate(1.45) brightness(.88);isolation:isolate;--glint-x:25%;--glint-y:0%}
.vp-bottom-navigation::before{content:'';position:absolute;inset:3px;z-index:2;padding:1px;border-radius:inherit;background:linear-gradient(137deg,#ffffff9c,transparent 29%,#e8f2ff20 56%,#ffffff73 78%,#ccb9ff42);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none}
.vp-bottom-navigation::after{content:'';position:absolute;inset:0;z-index:0;border-radius:inherit;pointer-events:none;background:radial-gradient(ellipse at var(--glint-x) var(--glint-y),#ffffff20,transparent 58%);opacity:.8}
nav.vp-bottom-navigation>:is(a,button){position:relative;z-index:1;display:flex;align-items:center;justify-content:center;flex:1 1 0;min-width:0;height:66px;gap:6px;flex-direction:column;padding:0;margin:0;border:0;border-radius:999px;background:transparent;color:#fafbff;font-family:inherit;font-size:11px;font-weight:600;text-align:center;text-decoration:none;text-shadow:0 1px 3px #07101ec4;box-shadow:none;cursor:pointer;touch-action:manipulation;transition:color .18s,background .18s,transform .18s}
nav.vp-bottom-navigation>button:last-of-type{padding:2px 6px}
nav.vp-bottom-navigation svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 1px #06122766)}
nav.vp-bottom-navigation>:is(a,button):hover{background:#ffffff0d;color:#fff}
nav.vp-bottom-navigation>:is(a,button):active{transform:scale(.95)}
nav.vp-bottom-navigation>:is(a,button):focus-visible{outline:2px solid white;outline-offset:-3px}
.vp-bottom-navigation>.dock-current{position:absolute;left:0;top:7px;bottom:7px;z-index:0;width:var(--pill-width,124px);transform:translate3d(var(--pill-x,7px),0,0);border-radius:999px;border:1px solid #ffffff45;background:linear-gradient(135deg,#ffffff24,#ffffff09 60%,#ffffff15);box-shadow:inset 1px 1px 1px #ffffff70,inset -1px -1px 1px #ffffff3d,inset 0 -6px 14px -12px #fff,0 2px 9px #0b102618;transition:transform .48s cubic-bezier(.22,.8,.2,1),width .42s cubic-bezier(.22,.8,.2,1),opacity .2s;pointer-events:none}
.vp-menu-section-title{margin:24px 0 12px;font-size:11px;font-weight:650;letter-spacing:.08em;text-transform:uppercase}
.vp-menu-group{margin:16px 0}.vp-menu-group>h3{font-size:11px;font-weight:500;color:#e1e6f0;margin:0 0 8px}
.vp-menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.vp-menu-actions>:is(button,a){min-height:54px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #ffffff26;border-radius:17px;background:linear-gradient(135deg,#ffffff10,#ffffff04);box-shadow:inset 0 1px 1px #ffffff13;color:#fafbff;text-align:left;font-family:inherit;font-size:12px;cursor:pointer;text-decoration:none}
.vp-menu-actions>:is(button,a):hover{background:#ffffff1c;border-color:#ffffff68}.vp-menu-actions>[aria-pressed=true]{border-color:#ffffff8a;background:#ffffff24}
.vp-menu-actions>:is(button,a):focus-visible{outline:2px solid white;outline-offset:2px}
@media(max-width:760px){nav.vp-bottom-navigation{height:70px;width:390px;max-width:calc(100vw - 24px);padding:6px;gap:1px}nav.vp-bottom-navigation>:is(a,button){height:56px;font-size:9px;gap:5px}nav.vp-bottom-navigation svg{width:22px;height:22px}.vp-bottom-navigation>.dock-current{top:6px;bottom:6px}.vp-menu-actions>:is(button,a){font-size:11px;min-height:50px}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){nav.vp-bottom-navigation{background:#253041ed}}
@media(prefers-contrast:more){nav.vp-bottom-navigation{background:#192332f2;border-color:white}}
@media(prefers-reduced-motion:reduce){.vp-bottom-navigation>.dock-current,nav.vp-bottom-navigation>:is(a,button){transition:none!important}}
