/* MODE selector: lives inside each mode's own bar (Drive = v3 capsule nav, OS = status bar) */
.vsw{position:relative;display:inline-flex;align-items:center;gap:0;padding:3px;border-radius:999px;border:1px solid rgba(226,190,98,.35);background:rgba(226,190,98,.05);white-space:nowrap;font-family:var(--head,system-ui,sans-serif);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1;flex:none}
.vsw-l{position:relative;z-index:1;padding:0 9px 0 11px;color:var(--gold,#E2BE62);font-size:10px;letter-spacing:.22em}
.vsw a{position:relative;z-index:1;display:block;padding:8px 13px;border-radius:999px;color:var(--muted,#a0a4ba);text-decoration:none;transition:color .2s}
.vsw a:hover{color:var(--text,#fff)}
.vsw a.on{color:#1a1405}
.vsw .knob{position:absolute;top:3px;bottom:3px;left:0;width:var(--kw,60px);transform:translateX(var(--kx,0px));border-radius:999px;background:linear-gradient(180deg,#f3d98a,#E2BE62 60%,#cfa94f);box-shadow:0 2px 10px rgba(226,190,98,.35),inset 0 1px 0 rgba(255,255,255,.5);transition:transform .55s cubic-bezier(.2,.8,.2,1),width .55s cubic-bezier(.2,.8,.2,1)}
.vsw.ring{animation:vswring 1.2s ease-out 2}
@keyframes vswring{0%{box-shadow:0 0 0 0 rgba(226,190,98,.55)}100%{box-shadow:0 0 0 12px rgba(226,190,98,0)}}
/* OS status bar flavour */
html[data-ver="os"] .vsw{font-family:var(--mono,monospace);font-weight:600;font-size:12px;letter-spacing:0;text-transform:none;padding:2px}
html[data-ver="os"] .vsw a{padding:5px 11px}
html[data-ver="os"] .vsw-l{font-family:var(--disp,var(--mono,monospace));font-size:9.5px;letter-spacing:.2em;text-transform:uppercase}
html[data-ver="os"] .vsw .knob{top:2px;bottom:2px}
/* Drive top bar: compact until there is room for the label */
html[data-ver="main"] .topbar-in .vsw{margin:0 2px;flex-shrink:0}
html[data-ver="main"] .topbar-in .vsw a{padding:7px 11px;font-size:10.5px}
html[data-ver="main"] .topbar-in .vsw-l{display:none}
@media (min-width:1320px){html[data-ver="main"] .topbar-in .vsw-l{display:inline}}
html[data-ver="main"] .topbar-in .btn{white-space:nowrap}
/* Drive mobile menu entry */
.vsw-m{display:flex;justify-content:space-between;align-items:center}
.vsw-m small{font-family:var(--head,system-ui,sans-serif);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold,#E2BE62)}
@media (max-width:1080px){html[data-ver="main"] .topbar-in .vsw{display:none}}
@media (max-width:640px){html[data-ver="os"] .status .vsw,html[data-ver="os"] .st-dim{display:none}html[data-ver="os"] .st-l b{white-space:nowrap}}
.dock a.dock-drive svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
/* first-visit callout */
.vsw-tip{position:fixed;z-index:96;max-width:280px;padding:12px 14px 12px 16px;border-radius:14px;background:rgba(12,12,16,.94);border:1px solid rgba(226,190,98,.45);box-shadow:0 18px 50px rgba(0,0,0,.6);color:var(--text,#eef0f6);font-family:var(--body,system-ui,sans-serif);font-size:13.5px;line-height:1.45;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;transform:translateY(-6px);transition:opacity .35s,transform .35s}
.vsw-tip.show{opacity:1;transform:none}
.vsw-tip b{font-family:var(--head,system-ui,sans-serif);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold,#E2BE62);display:block;margin-bottom:5px}
.vsw-tip em{font-style:normal;color:var(--gold,#E2BE62);font-weight:600}
.vsw-tip button{display:block;margin:9px 0 0;padding:0;border:0;background:none;color:var(--muted,#a0a4ba);font:inherit;font-size:12px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.vsw-tip button:hover{color:#fff}
.vsw-tip::before{content:"";position:absolute;width:12px;height:12px;background:rgba(12,12,16,.98);border-left:1px solid rgba(226,190,98,.45);border-top:1px solid rgba(226,190,98,.45);transform:rotate(45deg);left:var(--ax,50%);margin-left:-6px;top:-7px}
.vsw-tip.up::before{top:auto;bottom:-7px;transform:rotate(225deg)}
/* fallback if a bar is missing */
.vsw.float{position:fixed;left:16px;bottom:16px;z-index:95;background:rgba(10,11,17,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
html.static .vsw,html.static .vsw-tip{display:none}
@media (prefers-reduced-motion:reduce){.vsw .knob{transition:none}.vsw.ring{animation:none}}
