/* VoidVision · Launcher themes (pairs with themes.js and tokens.css).
   html[data-vv-theme] names the theme; html.vv-alt means "not psychedelic";
   html.vvt-css marks the CSS-only classic themes; html.vv-light the light scheme.
   Each theme defines its palette once as --t-* here; tokens.css maps it onto
   the shared --vv-* tokens. Only colour, surface, type and decoration change:
   no grid, size or placement rules, so the layout stays identical. */

/* ===== Corner orb + named deck (all themes) ===== */
.vvt-orb{position:fixed;right:18px;bottom:18px;opacity:.82;z-index:2147482000;width:46px;height:46px;padding:0;border-radius:50%!important;border:1px solid #ffffff38!important;background:#08080ccc!important;box-shadow:0 10px 30px #000a,0 0 0 4px #ffffff0a!important;display:grid;place-items:center;cursor:pointer;transition:transform var(--vv-dur-3,.32s) cubic-bezier(.16,1,.3,1),box-shadow var(--vv-dur-3,.32s)!important;-webkit-app-region:no-drag}
.vvt-orb i{position:absolute;inset:7px;border-radius:50%;background:conic-gradient(from 210deg,var(--vvt-s1),var(--vvt-s2),var(--vvt-s3),var(--vvt-s1));box-shadow:inset 0 0 0 1px #ffffff40,inset 0 -6px 12px #0006;transition:transform calc(1.2s*var(--vv-motion-scale,1)) cubic-bezier(.16,1,.3,1)}
.vvt-orb b{position:absolute;inset:14px 16px 20px 13px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ffffffcc,#ffffff00 70%);pointer-events:none}
.vvt-orb:hover:not(:disabled),.vvt-open .vvt-orb,.vvt-orb:focus-visible{opacity:1}
.vvt-orb:focus-visible{outline-offset:3px}
.vvt-orb:hover:not(:disabled){transform:translateY(-2px) scale(1.06)!important;box-shadow:0 14px 34px #000c,0 0 0 4px #ffffff14,0 0 24px var(--vvt-s2)!important;background:#08080ccc!important;border-color:#ffffff66!important}
.vvt-orb:hover i,.vvt-open .vvt-orb i{transform:rotate(240deg)}
.vvt-open .vvt-orb{box-shadow:0 14px 34px #000c,0 0 0 2px var(--vvt-s3),0 0 28px var(--vvt-s2)!important}
body.vv-intro-active .vvt-orb,body.vv-intro-active .vvt-deck{display:none!important}
.vvt-deck{position:fixed;right:18px;bottom:76px;z-index:2147482000;padding:12px 14px 14px;border-radius:18px;background:#0a0a10f2;border:1px solid #ffffff24;box-shadow:0 30px 80px #000d,inset 0 1px #ffffff14;max-height:calc(100vh - 110px);overflow:auto;scrollbar-width:thin;transform-origin:100% 100%;animation:vvt-deck var(--vv-dur-3,.32s) cubic-bezier(.16,1,.3,1) both;-webkit-app-region:no-drag;font-family:var(--vv-font-ui)}
.vvt-grid{display:grid;grid-template-columns:repeat(4,138px);gap:10px}
.vvt-glabel{grid-column:1/-1;margin:6px 2px -2px;font:600 var(--vv-fs-1,11px)/1.2 var(--vv-font-ui);letter-spacing:.04em;color:#c9c9d6}
.vvt-glabel:first-child{margin-top:0}
@media(max-width:720px){.vvt-grid{grid-template-columns:repeat(3,112px)}}
@media(max-height:560px){.vvt-grid{grid-template-columns:repeat(6,104px)}}
.vvt-tile{position:relative;aspect-ratio:16/10;padding:0!important;border-radius:12px!important;overflow:hidden;border:1px solid #ffffff1c!important;background:linear-gradient(135deg,var(--a),var(--b) 55%,var(--c))!important;box-shadow:0 6px 18px #0008!important;transition:transform var(--vv-dur-2,.2s) cubic-bezier(.16,1,.3,1),box-shadow var(--vv-dur-2,.2s),border-color var(--vv-dur-2,.2s)!important}
.vvt-tile canvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity var(--vv-dur-3,.32s)}
.vvt-tile.ready canvas{opacity:1}
.vvt-tile i{position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px #ffffff14;background:linear-gradient(transparent 52%,#000000d0);pointer-events:none}
.vvt-name{position:absolute;left:8px;right:8px;bottom:6px;font:600 var(--vv-fs-1,11px)/1.25 var(--vv-font-ui);color:#fff;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px #000}
.vvt-tile:hover:not(:disabled),.vvt-tile:focus-visible{transform:translateY(-2px)!important;border-color:#ffffff66!important;box-shadow:0 12px 26px #000b!important}
.vvt-tile[aria-pressed=true]{border-color:#fff!important;box-shadow:0 0 0 2px #fff,0 10px 26px #000b!important}
.vvt-tile[aria-pressed=true]:after{content:'✓';position:absolute;right:6px;top:6px;width:18px;height:18px;border-radius:50%;background:#fff;color:#000;font:700 11px/18px var(--vv-font-ui);text-align:center}
@keyframes vvt-deck{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
/* Mini interface swatch for the CSS-only classic themes. */
.vvt-mini{position:absolute;inset:0;display:block;background:var(--a);overflow:hidden}
.vvt-mini i{position:absolute;display:block;border-radius:4px}
.vvt-mini i:nth-child(1){left:8%;top:12%;bottom:12%;width:18%;background:color-mix(in srgb,var(--a) 82%,#888);opacity:.9}
.vvt-mini i:nth-child(2){left:32%;right:8%;top:12%;height:30%;background:color-mix(in srgb,var(--b) 70%,var(--a))}
.vvt-mini i:nth-child(3){left:32%;width:26%;top:52%;height:12%;border-radius:99px;background:var(--c)}
.vvt-mini[data-theme=paper] i:nth-child(1){background:#e9e2d4}.vvt-mini[data-theme=paper] i:nth-child(2){background:#fffdf8;box-shadow:0 0 0 1px #0000001a}
.vvt-mini[data-theme=neon] i:nth-child(2){background:#16161d;box-shadow:inset 0 1px #ff3d9a,inset 0 -1px #23e5d0}
.vvt-mini[data-theme=charcoal] i:nth-child(2),.vvt-mini[data-theme=graphite] i:nth-child(2),.vvt-mini[data-theme=midnight] i:nth-child(2){background:color-mix(in srgb,var(--a) 70%,#fff 12%)}

/* Live field + theme-change veil. The veil is a CSS transition on a class, so a newer change simply re-targets it. */
.vvt-field,.vvt-still{position:fixed;inset:0;width:100vw;height:100vh;z-index:-2;pointer-events:none;display:none}
.vvt-veil{position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--vv-bg,#000);opacity:0;transition:opacity calc(.36s*var(--vv-motion-scale,1)) ease}
.vvt-veil.on{opacity:.92;transition-duration:calc(.14s*var(--vv-motion-scale,1))}
html.vv-alt .vvt-field,html.vv-alt .vvt-still{display:block}
html.vv-alt .psy-field,html.vv-alt .psy-still,html.vv-alt .psy-wipe{display:none!important}
html:not(.vv-alt) .vvt-still{display:none!important}
html.vv-alt.vvt-nogl .vvt-field,html.vvt-css .vvt-field,html.vvt-css .vvt-still{display:none}
html.vv-alt.vvt-nogl body,html.vvt-css body{background:var(--t-fallback)!important;background-attachment:fixed!important}

/* ===== Shared alt skin, driven by tokens ===== */
html.vv-alt{--t-r:12px;--t-hf:Street,'Arial Black',sans-serif;--t-hw:400;--t-ht:none;--t-hls:0;--t-hs:0 2px 12px #000a;--t-blur:14px;--t-onbg:var(--t-ink);--t-halo:0 1px 3px #000,0 0 14px #000c;--t-panel-shadow:0 22px 50px -18px #000c;background:var(--t-base)}
html.vv-alt,html.vv-alt body{color:var(--t-ink)}
html.vv-alt .aura{display:none}
html.vv-alt header{background:var(--t-bar)!important;color:var(--t-dim)}
html.vv-alt header:after{background:linear-gradient(90deg,transparent,var(--t-a),var(--t-b),transparent);background-size:100% 100%;animation:none;opacity:.7}
html.vv-alt .signal{background:var(--t-a);box-shadow:0 0 10px var(--t-a);animation:none}
html.vv-alt button{color:var(--t-ink);background:var(--t-btn2);border-color:var(--t-edge)}
html.vv-alt button:hover:not(:disabled){border-color:var(--t-a);background:var(--t-btn2h);box-shadow:0 0 0 1px color-mix(in srgb,var(--t-a) 25%,transparent),0 0 18px color-mix(in srgb,var(--t-a) 22%,transparent)}
html.vv-alt button:focus-visible,html.vv-alt input:focus-visible,html.vv-alt summary:focus-visible{outline-color:var(--t-a)}
html.vv-alt input,html.vv-alt select{background:var(--t-field);border-color:var(--t-edge);color:var(--t-ink);caret-color:var(--t-a)}
html.vv-alt input:focus{border-color:var(--t-a);box-shadow:0 0 0 1px color-mix(in srgb,var(--t-a) 40%,transparent)}
html.vv-alt .primary{background:var(--t-btn);border-color:transparent;color:var(--t-btn-ink);text-shadow:none;box-shadow:0 6px 18px -6px color-mix(in srgb,var(--t-a) 60%,transparent)}
html.vv-alt .primary:hover:not(:disabled){background:var(--t-btn);filter:brightness(1.12);border-color:transparent;box-shadow:0 8px 24px -6px color-mix(in srgb,var(--t-a) 75%,transparent)}
html.vv-alt .muted{color:var(--t-dim)}

/* Surfaces */
html.vv-alt .login-box,html.vv-alt .social-panel,html.vv-alt .inbox-panel,html.vv-alt .home-promos{background:var(--t-glass)!important;border:1px solid var(--t-edge)!important;border-image:none!important;border-radius:var(--t-r)!important;animation:none!important;-webkit-backdrop-filter:blur(var(--t-blur)) saturate(1.25)!important;backdrop-filter:blur(var(--t-blur)) saturate(1.25)!important;box-shadow:var(--t-panel-shadow)!important;rotate:none!important;translate:none!important}
html.vv-alt .home-promos{overflow:hidden}
html.vv-alt .social-panel:after,html.vv-alt .inbox-panel:after{display:none}
html.vv-alt .social-panel:before{background:var(--t-a);box-shadow:0 0 12px var(--t-a)}
html.vv-alt .inbox-panel:before{background:var(--t-b);box-shadow:0 0 12px var(--t-b)}
html.vv-alt .home-screen,html.vv-alt .home-content,html.vv-alt .home-panels{perspective:none}
html.vv-alt .library-sidebar{background:var(--t-side)!important;rotate:none!important;box-shadow:none;-webkit-backdrop-filter:blur(var(--t-blur)) saturate(1.2)!important;backdrop-filter:blur(var(--t-blur)) saturate(1.2)!important}
html.vv-alt .library-sidebar:before{background:linear-gradient(90deg,transparent,var(--t-a),transparent);box-shadow:none;opacity:.6}
html.vv-alt .library-sidebar:after{background:linear-gradient(transparent,var(--t-edge) 20%,var(--t-edge) 80%,transparent)!important;animation:none;width:1px!important;box-shadow:none!important}
html.vv-alt .home-top{translate:none}
html.vv-alt .home-top:before{background:none}
html.vv-alt .featured-game{background:#05050a}
html.vv-alt .home-promo-controls{border-top-color:var(--t-edge);background:var(--t-bar)}
html.vv-alt .home-promo-controls>button{background:var(--t-btn2);border-color:var(--t-edge)}
html.vv-alt .home-promo-status{color:var(--t-dim)}
html.vv-alt .home-promo-dots button{background:color-mix(in srgb,var(--t-ink) 30%,transparent)}
html.vv-alt .home-promo-dots button[aria-pressed=true]{background:var(--t-a);box-shadow:0 0 10px var(--t-a)}
html.vv-alt .studio-promo{background:radial-gradient(ellipse at 95% 15%,color-mix(in srgb,var(--t-a) 25%,transparent),transparent 60%),radial-gradient(ellipse at 10% 100%,color-mix(in srgb,var(--t-b) 20%,transparent),transparent 60%),var(--t-solid)}
html.vv-alt .studio-promo-copy p{color:var(--t-dim)}
html.vv-alt .studio-promo-tile{background:linear-gradient(140deg,color-mix(in srgb,var(--t-a) 14%,transparent),color-mix(in srgb,var(--t-b) 14%,transparent));border-color:var(--t-edge)}
html.vv-alt .studio-promo-apps button{background:var(--t-btn2);border-color:var(--t-edge)}
html.vv-alt #play-game{border-color:transparent;color:var(--t-btn-ink);background:var(--t-btn);background-size:100% 100%;box-shadow:0 6px 0 color-mix(in srgb,var(--t-a) 30%,#000),0 14px 28px #000a,0 0 26px color-mix(in srgb,var(--t-a) 40%,transparent),inset 0 1px #ffffff66;text-shadow:none}
html.vv-alt #play-game:before{opacity:.18}
html.vv-alt #game-launch-options{border-color:var(--t-edge)}
html.vv-alt #game-launch-menu{background:var(--t-solid);border-color:var(--t-a);box-shadow:0 10px 40px #000c}
html.vv-alt #game-launch-menu button{background:var(--t-btn2);color:var(--t-ink)}
html.vv-alt #game-launch-path{color:var(--t-dim)}
html.vv-alt .poster-stamp{color:var(--t-ink);border-left-color:var(--t-a);box-shadow:inset 0 0 0 1px var(--t-edge)}
html.vv-alt .poster-label{background:var(--t-btn);color:var(--t-btn-ink);animation:none;box-shadow:0 0 20px color-mix(in srgb,var(--t-a) 40%,transparent)}

/* Sign-in */
html.vv-alt .login-art:before{background:radial-gradient(ellipse at 40% 40%,color-mix(in srgb,var(--t-a) 14%,transparent),transparent 60%);border-color:transparent;animation:none}
html.vv-alt .logo-orbits i{border-color:color-mix(in srgb,var(--t-a) 25%,transparent);box-shadow:none}
html.vv-alt .logo-orbits i:nth-child(2){border-color:color-mix(in srgb,var(--t-b) 25%,transparent)}
html.vv-alt .logo-orbits i:nth-child(3){border-color:color-mix(in srgb,var(--t-c) 20%,transparent)}
html.vv-alt #hub-iris{filter:var(--t-iris,none) drop-shadow(0 0 22px color-mix(in srgb,var(--t-a) 35%,transparent))!important}
html.vv-alt .login-art h1{color:var(--t-onbg);text-shadow:var(--t-logo-shadow,var(--t-halo));animation:identity-reveal .8s ease-out both}
html.vv-alt .login-art h1 span{color:transparent;background:linear-gradient(100deg,var(--t-a),var(--t-b) 55%,var(--t-c));background-size:100% 100%;background-position:0 0;-webkit-background-clip:text;background-clip:text;animation:none;filter:drop-shadow(0 2px 6px #0008)}
html.vv-alt .login-art h1 span{text-shadow:none!important}
html.vv-alt .login-tag{color:var(--t-a);text-shadow:var(--t-halo)}
html.vv-alt .login-box:before{background:linear-gradient(var(--t-a),var(--t-b));box-shadow:0 0 14px var(--t-a)}
html.vv-alt .terminal-bar{background:var(--t-bar);border-bottom-color:var(--t-edge)}
html.vv-alt .terminal-bar>span:first-child{color:var(--t-a)}
html.vv-alt .terminal-bar>span:last-child{color:var(--t-b)}
html.vv-alt .login-box h2{color:var(--t-ink);text-shadow:none;font-family:var(--t-hf);font-weight:var(--t-hw);text-transform:var(--t-ht);letter-spacing:var(--t-hls)}
html.vv-alt .login-box h2:before{color:var(--t-a)}
html.vv-alt .login-box h2:after{color:var(--t-b)}
html.vv-alt .login-box label{color:var(--t-dim)}
html.vv-alt .login-box label:not(.remember):before{color:var(--t-a)}
html.vv-alt .login-box input:not([type=checkbox]){background:var(--t-field);border-bottom-color:var(--t-edge);box-shadow:inset 3px 0 color-mix(in srgb,var(--t-a) 50%,transparent);color:var(--t-ink)}
html.vv-alt .login-box input:not([type=checkbox]):focus{outline-color:var(--t-a);box-shadow:inset 3px 0 var(--t-a),0 0 18px color-mix(in srgb,var(--t-a) 18%,transparent)}
html.vv-alt .login-box .primary{background:var(--t-btn);border:1px solid transparent;color:var(--t-btn-ink)}
html.vv-alt .login-box .primary:before{color:inherit;opacity:.75}
html.vv-alt .login-box .primary:hover:not(:disabled){background:var(--t-btn);border-color:transparent}
html.vv-alt .login-box .google-button{background:color-mix(in srgb,var(--t-ink) 5%,transparent);border-color:var(--t-edge);color:var(--t-ink)}
html.vv-alt .login-box .text-button,html.vv-alt .login-box .offline-button{color:var(--t-ink);opacity:.85}
html.vv-alt .login-box .text-button:before,html.vv-alt .login-box .offline-button:before{color:var(--t-a)}
html.vv-alt .login-box .text-button:hover:not(:disabled),html.vv-alt .login-box .offline-button:hover:not(:disabled){color:var(--t-ink);opacity:1;text-shadow:0 0 10px var(--t-a);background:transparent;box-shadow:none}
html.vv-alt .login-box #account-status{color:var(--t-dim);border-left-color:var(--t-a)}
html.vv-alt .auth-divider:before,html.vv-alt .auth-divider:after{background:linear-gradient(90deg,transparent,var(--t-edge),transparent)}
html.vv-alt .remember input{accent-color:var(--t-a)}

/* Sidebar + Home */
html.vv-alt .sidebar-brand strong{color:var(--t-ink);text-shadow:var(--t-hs);font-family:var(--t-hf);font-weight:var(--t-hw);text-transform:var(--t-ht);letter-spacing:var(--t-hls)}
html.vv-alt .home-button{background:linear-gradient(90deg,color-mix(in srgb,var(--t-a) 18%,transparent),transparent)!important;border-color:color-mix(in srgb,var(--t-a) 55%,transparent)!important;color:var(--t-ink);box-shadow:inset 3px 0 var(--t-a)}
html.vv-alt .home-button.active{box-shadow:inset 3px 0 var(--t-a),0 0 18px color-mix(in srgb,var(--t-a) 20%,transparent)}
html.vv-alt .library-sidebar summary{color:var(--t-dim)}
html.vv-alt .library-sidebar summary:hover{color:var(--t-a)}
html.vv-alt .library-sidebar details{border-bottom-color:var(--t-edge)}
html.vv-alt .library-app{color:var(--t-ink)}
html.vv-alt .library-app:hover:not(:disabled){background:linear-gradient(90deg,color-mix(in srgb,var(--t-a) 16%,transparent),transparent)!important;border-color:color-mix(in srgb,var(--t-a) 40%,transparent)!important;box-shadow:inset 2px 0 var(--t-a)}
html.vv-alt .sidebar-account{border-top-color:var(--t-edge)}
html.vv-alt .sidebar-account strong{color:var(--t-ink);text-shadow:var(--t-hs);font-family:var(--t-hf);text-transform:var(--t-ht);letter-spacing:var(--t-hls)}
html.vv-alt .sidebar-account #avatar-edit{color:var(--t-a)}
html.vv-alt .sidebar-account #account-signout{color:var(--t-b)}
html.vv-alt #account-portrait{border-color:var(--t-a);box-shadow:0 0 0 3px var(--t-solid),0 0 16px color-mix(in srgb,var(--t-a) 30%,transparent)}
html.vv-alt .home-top h2{color:var(--t-onbg);text-shadow:var(--t-halo);font-family:var(--t-hf);font-weight:var(--t-hw);text-transform:var(--t-ht);letter-spacing:var(--t-hls)}
html.vv-alt .home-top h2 span{color:var(--t-a);text-shadow:var(--t-halo)}
html.vv-alt #service-status,html.vv-alt footer,html.vv-alt #status{color:var(--t-onbg);text-shadow:var(--t-halo);opacity:.88}
html.vv-alt .panel-title h3,html.vv-alt .console-welcome h4,html.vv-alt .settings-heading h2{color:var(--t-ink);text-shadow:var(--t-hs);font-family:var(--t-hf);font-weight:var(--t-hw);text-transform:var(--t-ht);letter-spacing:var(--t-hls)}
html.vv-alt .panel-title h3 span{color:var(--t-a);text-shadow:none}
html.vv-alt .social-panel p,html.vv-alt .inbox-panel p,html.vv-alt .home-screen .social-panel p,html.vv-alt .home-screen .inbox-panel p{color:var(--t-dim);text-shadow:none}
html.vv-alt #friends-search label,html.vv-alt .home-screen #friends-search label{color:var(--t-dim);text-shadow:none}
html.vv-alt .home-screen .friends-hint{color:var(--t-dim)!important;opacity:.8}
html.vv-alt .friend-row,html.vv-alt .inbox-thread{border-bottom-color:var(--t-edge)}
html.vv-alt .friend-avatar{border-color:color-mix(in srgb,var(--t-a) 50%,transparent);background:linear-gradient(145deg,color-mix(in srgb,var(--t-a) 20%,transparent),color-mix(in srgb,var(--t-b) 20%,transparent))}
html.vv-alt .friend-row small{color:var(--t-dim)}
html.vv-alt .console-welcome,html.vv-alt .home-screen .console-welcome{background:color-mix(in srgb,var(--t-solid) 70%,transparent);border-color:var(--t-edge)}
html.vv-alt .console-welcome:after{display:none}
html.vv-alt .console-welcome>span{color:var(--t-b)}
html.vv-alt .inbox-thread b{background:var(--t-a);color:var(--t-btn-ink)}
html.vv-alt .message{background:color-mix(in srgb,var(--t-b) 18%,var(--t-solid))}
html.vv-alt .message.own{background:color-mix(in srgb,var(--t-a) 22%,var(--t-solid))}
html.vv-alt .home-content{scrollbar-color:var(--t-a) transparent}
html.vv-alt .account-settings{background:var(--t-solid);border-color:var(--t-edge);box-shadow:0 28px 90px #000c,0 0 40px color-mix(in srgb,var(--t-a) 14%,transparent);border-radius:var(--t-r)}
html.vv-alt .account-tabs button[aria-selected=true]{border-color:var(--t-a);color:var(--t-ink);background:color-mix(in srgb,var(--t-a) 14%,transparent)}
html.vv-alt .psy-click{border-color:color-mix(in srgb,var(--t-c) 70%,transparent);box-shadow:0 0 10px 1px color-mix(in srgb,var(--t-a) 35%,transparent);mix-blend-mode:normal}
html.vv-alt .psy-click.b{border-color:color-mix(in srgb,var(--t-a) 60%,transparent)}
html.vv-alt .login-screen,html.vv-alt .home-screen{animation:vvt-in .7s cubic-bezier(.16,1,.3,1) both}
@keyframes vvt-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* ===================== THEMES ===================== */

/* Deep space */
html[data-vv-theme=cosmos]{--t-base:#02030a;--t-fallback:radial-gradient(ellipse at 30% 40%,#2a1450,transparent 60%),radial-gradient(ellipse at 80% 90%,#0a3a5a,transparent 55%),#02030a;
 --t-a:#9fd8ff;--t-b:#a98bff;--t-c:#ffc8e8;--t-ink:#eef3ff;--t-dim:#a9b4d6;--t-glass:rgba(5,7,20,.66);--t-solid:#070a18;--t-side:linear-gradient(180deg,rgba(6,8,22,.62),rgba(3,4,12,.72));--t-bar:#03040ccc;
 --t-edge:rgba(170,195,255,.18);--t-field:rgba(160,190,255,.05);--t-btn:linear-gradient(110deg,#5845e0,#1f6cb4);--t-btn-ink:#fff;--t-btn2:rgba(12,16,40,.7);--t-btn2h:rgba(24,30,70,.8);
 --t-r:16px;--t-hf:Bahnschrift,'Segoe UI',sans-serif;--t-hw:300;--t-ht:uppercase;--t-hls:.16em;--t-hs:0 0 18px #9fd8ff55;--t-logo-shadow:0 0 30px #6d5cffaa,0 2px 8px #000;--t-iris:hue-rotate(-60deg) saturate(.8)}
html[data-vv-theme=cosmos] .social-panel,html[data-vv-theme=cosmos] .inbox-panel,html[data-vv-theme=cosmos] .home-promos,html[data-vv-theme=cosmos] .login-box{box-shadow:0 30px 60px -24px #000,inset 0 1px #ffffff1a,0 0 50px -20px #6d5cff55!important}
html[data-vv-theme=cosmos] .social-panel:before,html[data-vv-theme=cosmos] .inbox-panel:before{width:40%;height:1px;left:30%;top:-1px;background:linear-gradient(90deg,transparent,#cfe9ff,transparent);box-shadow:0 0 12px #9fd8ff}

/* Island lagoon */
html[data-vv-theme=island]{--t-base:#05466e;--t-fallback:radial-gradient(ellipse at 65% 50%,#f2deb0 0 9%,#6ff2e0 13%,#13a5c8 30%,#05467a 70%);
 --t-a:#5ff2dd;--t-b:#ffb38a;--t-c:#fff1cf;--t-ink:#f4fdff;--t-dim:#b8dbe2;--t-glass:rgba(3,30,46,.84);--t-solid:#062a3c;--t-side:linear-gradient(180deg,rgba(4,36,54,.84),rgba(2,24,36,.9));--t-bar:#03243599;
 --t-edge:rgba(220,250,255,.24);--t-field:rgba(255,255,255,.07);--t-btn:linear-gradient(110deg,#28d3c5,#1aa7e0);--t-btn-ink:#00202b;--t-btn2:rgba(4,44,64,.6);--t-btn2h:rgba(8,70,96,.7);
 --t-r:22px;--t-blur:18px;--t-hf:Georgia,'Palatino Linotype',serif;--t-hw:400;--t-hls:.01em;--t-hs:0 2px 10px #00203088;--t-halo:0 1px 2px #002230,0 0 18px #002a3cdd;--t-iris:hue-rotate(-150deg) saturate(1.1) brightness(1.05)}
html[data-vv-theme=island] .login-tag{color:#fff1cf}
html[data-vv-theme=island] .panel-title h3,html[data-vv-theme=island] .home-top h2,html[data-vv-theme=island] .console-welcome h4,html[data-vv-theme=island] .login-box h2{font-style:italic}
html[data-vv-theme=island] .social-panel,html[data-vv-theme=island] .inbox-panel,html[data-vv-theme=island] .home-promos,html[data-vv-theme=island] .login-box{box-shadow:0 30px 60px -26px #00141fcc,inset 0 1px #ffffff40,inset 0 0 0 1px #ffffff0f!important}

/* Abstract art */
html[data-vv-theme=abstract]{--t-base:#0a1028;--t-fallback:radial-gradient(circle at 25% 55%,#f2b134 0 17%,transparent 17.3%),radial-gradient(circle at 80% 85%,#2a4fd6 0 20%,transparent 20.3%),radial-gradient(circle at 62% 28%,#1a9f98 0 9%,transparent 9.3%),#0d1630;
 --t-a:#ff5a3c;--t-b:#f6b73c;--t-c:#3d63ff;--t-ink:#fbf4e6;--t-dim:#cfc6b4;--t-glass:rgba(10,14,32,.86);--t-solid:#0c1128;--t-side:rgba(10,14,32,.9);--t-bar:#0a0f24ee;
 --t-edge:rgba(251,244,230,.85);--t-field:rgba(251,244,230,.06);--t-btn:#ff5a3c;--t-btn-ink:#0b0f22;--t-btn2:#121836;--t-btn2h:#1b2350;
 --t-r:0px;--t-blur:4px;--t-hf:'Arial Black','Segoe UI Black',Impact,sans-serif;--t-hw:900;--t-hls:-.02em;--t-hs:3px 3px 0 #ff5a3c;--t-logo-shadow:5px 5px 0 #2a4fd6,-3px -3px 0 #ff5a3c;--t-iris:saturate(1.2)}
html[data-vv-theme=abstract] .login-box,html[data-vv-theme=abstract] .social-panel,html[data-vv-theme=abstract] .inbox-panel,html[data-vv-theme=abstract] .home-promos{border-width:2px!important}
html[data-vv-theme=abstract] .social-panel{box-shadow:10px 10px 0 #ff5a3c!important}
html[data-vv-theme=abstract] .inbox-panel{box-shadow:10px 10px 0 #f6b73c!important}
html[data-vv-theme=abstract] .home-promos{box-shadow:10px 10px 0 #3d63ff!important}
html[data-vv-theme=abstract] .login-box{box-shadow:12px 12px 0 #f6b73c!important}
html[data-vv-theme=abstract] .social-panel:before,html[data-vv-theme=abstract] .inbox-panel:before{width:22px;height:22px;border-radius:50%;left:auto;right:-11px;top:-11px;box-shadow:none;border:2px solid #fbf4e6}
html[data-vv-theme=abstract] .panel-title h3 span{color:#f6b73c}
html[data-vv-theme=abstract] .home-button{border-width:2px!important;border-radius:0}
html[data-vv-theme=abstract] .primary,html[data-vv-theme=abstract] #play-game{box-shadow:4px 4px 0 #fbf4e6!important;border-radius:0}

/* Minimal */
html[data-vv-theme=minimal]{--t-base:#0a0b0d;--t-fallback:linear-gradient(160deg,#16181c,#0a0b0d 60%);
 --t-a:#e8eaee;--t-b:#8e96a3;--t-c:#ffffff;--t-ink:#eceef1;--t-dim:#a3a9b3;--t-glass:rgba(16,17,20,.62);--t-solid:#111215;--t-side:rgba(12,13,15,.6);--t-bar:#0a0b0dcc;
 --t-edge:rgba(255,255,255,.08);--t-field:rgba(255,255,255,.035);--t-btn:#eceef1;--t-btn-ink:#0b0c0e;--t-btn2:rgba(255,255,255,.04);--t-btn2h:rgba(255,255,255,.08);
 --t-r:18px;--t-blur:28px;--t-hf:'Segoe UI Variable Display','Segoe UI',system-ui,sans-serif;--t-hw:300;--t-hls:-.01em;--t-hs:none;--t-logo-shadow:none;--t-halo:0 1px 8px #000;--t-iris:grayscale(1) contrast(1.1);--t-panel-shadow:0 30px 60px -30px #000}
html[data-vv-theme=minimal] .social-panel:before,html[data-vv-theme=minimal] .inbox-panel:before,html[data-vv-theme=minimal] .login-box:before,html[data-vv-theme=minimal] .library-sidebar:before{display:none}
html[data-vv-theme=minimal] header:after{opacity:.15}
html[data-vv-theme=minimal] .home-button{box-shadow:none!important;border-radius:10px;background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.1)!important}
html[data-vv-theme=minimal] button:hover:not(:disabled){box-shadow:none}
html[data-vv-theme=minimal] .primary,html[data-vv-theme=minimal] #play-game{border-radius:999px!important;box-shadow:0 10px 30px -10px #fff3!important}
html[data-vv-theme=minimal] .login-art h1 span{background-image:linear-gradient(100deg,#fff,#9aa2ad)}

/* City lights */
html[data-vv-theme=city]{--t-base:#05060f;--t-fallback:linear-gradient(#03040c,#120a24 55%,#3a1838 70%,#05060f 71%);
 --t-a:#ffa046;--t-b:#ff4f8b;--t-c:#7fc8ff;--t-ink:#fff4ea;--t-dim:#c2b2b8;--t-glass:rgba(8,8,20,.7);--t-solid:#0a0a18;--t-side:linear-gradient(180deg,rgba(10,8,24,.62),rgba(5,5,14,.74));--t-bar:#05060fcc;
 --t-edge:rgba(255,190,150,.16);--t-field:rgba(255,220,200,.05);--t-btn:linear-gradient(110deg,#ff8a3c,#ff3f80);--t-btn-ink:#1a0610;--t-btn2:rgba(20,14,34,.7);--t-btn2h:rgba(40,20,50,.8);
 --t-r:12px;--t-hs:0 0 14px #ff8a3c88,2px 2px 0 #ff3f8066;--t-logo-shadow:3px 3px 0 #ff3f80,0 0 30px #ffa04688;--t-iris:hue-rotate(75deg) saturate(1.2)}
html[data-vv-theme=city] .social-panel:after,html[data-vv-theme=city] .inbox-panel:after{display:block;background:radial-gradient(ellipse,#ff8a3c66,#ff8a3c00 70%)}
html[data-vv-theme=city] .inbox-panel:after{background:radial-gradient(ellipse,#ff3f8066,#ff3f8000 70%)}
html[data-vv-theme=city] .social-panel,html[data-vv-theme=city] .inbox-panel,html[data-vv-theme=city] .home-promos{box-shadow:0 26px 60px -26px #000,inset 0 1px #ffffff12,0 0 40px -18px #ff8a3c66!important}

/* Sketchbook */
html[data-vv-theme=sketch]{--t-base:#29292b;--t-fallback:repeating-linear-gradient(45deg,#ffffff07 0 1px,transparent 1px 9px),#29292b;
 --t-a:#f1eee8;--t-b:#f27a64;--t-c:#f1eee8;--t-ink:#f4f1ea;--t-dim:#b9b5ac;--t-glass:rgba(34,34,36,.86);--t-solid:#262628;--t-side:rgba(30,30,32,.82);--t-bar:#232325ee;
 --t-edge:rgba(241,238,232,.35);--t-field:rgba(241,238,232,.04);--t-btn:#f1eee8;--t-btn-ink:#1d1d1f;--t-btn2:rgba(255,255,255,.03);--t-btn2h:rgba(255,255,255,.07);
 --t-r:6px;--t-blur:3px;--t-hf:'Ink Free','Segoe Print','Comic Sans MS',cursive;--t-hw:400;--t-hs:none;--t-logo-shadow:2px 2px 0 #e0533d;--t-iris:grayscale(1) contrast(1.3) brightness(1.1);--t-panel-shadow:6px 8px 0 -2px #00000055}
html[data-vv-theme=sketch] .login-box,html[data-vv-theme=sketch] .social-panel,html[data-vv-theme=sketch] .inbox-panel,html[data-vv-theme=sketch] .home-promos{border-color:transparent!important;overflow:visible}
html[data-vv-theme=sketch] .home-promos{overflow:hidden}
html[data-vv-theme=sketch] .login-box:after,html[data-vv-theme=sketch] .social-panel:after,html[data-vv-theme=sketch] .inbox-panel:after{content:'';display:block;position:absolute;inset:-4px -3px -3px -5px;border:1.6px solid #f1eee8d9;border-radius:4px 10px 5px 12px/10px 4px 12px 5px;filter:url(#vvt-rough);pointer-events:none;background:none;opacity:1;animation:vvt-boil .6s steps(1) infinite;transform:none;top:-4px;left:-5px;right:-3px;bottom:-3px;width:auto;height:auto;skew:none}
html[data-vv-theme=sketch] .inbox-panel:after{animation-delay:-.3s;border-radius:10px 4px 12px 5px/4px 12px 5px 10px}
html[data-vv-theme=sketch] .social-panel:before,html[data-vv-theme=sketch] .inbox-panel:before{width:56px;height:3px;top:-6px;left:18px;background:#e0533d;box-shadow:none;border-radius:2px;transform:rotate(-2deg)}
html[data-vv-theme=sketch] .home-top h2 span,html[data-vv-theme=sketch] .panel-title h3 span{color:#f27a64}
html[data-vv-theme=sketch] .primary,html[data-vv-theme=sketch] #play-game{border-radius:6px 12px 8px 14px/12px 6px 14px 8px!important;box-shadow:3px 4px 0 #e0533d!important}
html[data-vv-theme=sketch] .login-art h1 span{background-image:linear-gradient(100deg,#f1eee8,#e0533d)}
@keyframes vvt-boil{0%{transform:rotate(-.25deg)}33%{transform:rotate(.2deg) translate(1px,0)}66%{transform:rotate(0) translate(0,1px)}}

/* Lava lamp */
html[data-vv-theme=lava]{--t-base:#14031a;--t-fallback:radial-gradient(circle at 30% 70%,#ff3d6e 0 10%,transparent 18%),radial-gradient(circle at 65% 35%,#ff8a2a 0 8%,transparent 15%),radial-gradient(ellipse at 50% 100%,#ff5a2a66,transparent 60%),#1a0420;
 --t-a:#ff8a3c;--t-b:#ff3d7a;--t-c:#ffd27a;--t-ink:#fff0ea;--t-dim:#e0b3bd;--t-glass:rgba(26,4,30,.66);--t-solid:#1c0520;--t-side:linear-gradient(180deg,rgba(30,5,34,.62),rgba(18,2,22,.74));--t-bar:#14031acc;
 --t-edge:rgba(255,150,120,.22);--t-field:rgba(255,200,180,.05);--t-btn:linear-gradient(110deg,#ff3d7a,#ff8a3c 60%,#ffc24a);--t-btn-ink:#2a0610;--t-btn2:rgba(40,8,40,.6);--t-btn2h:rgba(70,14,56,.7);
 --t-r:28px;--t-blur:18px;--t-hf:'Cooper Black','Bauhaus 93',Georgia,serif;--t-hw:700;--t-hs:0 0 18px #ff5a3caa;--t-logo-shadow:0 0 26px #ff3d7a,0 3px 0 #6a0a2a;--t-iris:hue-rotate(40deg) saturate(1.3)}
html[data-vv-theme=lava] .social-panel:after,html[data-vv-theme=lava] .inbox-panel:after{display:block;background:radial-gradient(ellipse,#ff5a3c77,#ff5a3c00 70%)}
html[data-vv-theme=lava] .social-panel,html[data-vv-theme=lava] .inbox-panel,html[data-vv-theme=lava] .home-promos,html[data-vv-theme=lava] .login-box{box-shadow:0 30px 60px -26px #000,inset 0 1px #ffffff1c,0 0 60px -24px #ff3d7a!important}
html[data-vv-theme=lava] .primary,html[data-vv-theme=lava] #play-game,html[data-vv-theme=lava] .home-button,html[data-vv-theme=lava] button{border-radius:999px}
html[data-vv-theme=lava] .home-button{border-radius:999px!important}

/* Desert sunset */
html[data-vv-theme=desert]{--t-base:#1b0d1e;--t-fallback:linear-gradient(#2a1745,#d9496b 45%,#ffb25a 58%,#7a3a3a 60%,#3a1a26);
 --t-a:#ffb25a;--t-b:#ff6b6b;--t-c:#ffe1b0;--t-ink:#fff3e6;--t-dim:#e1bfb4;--t-glass:rgba(32,12,26,.64);--t-solid:#24101e;--t-side:linear-gradient(180deg,rgba(40,14,34,.58),rgba(24,8,20,.7));--t-bar:#1b0d1ecc;
 --t-edge:rgba(255,190,140,.22);--t-field:rgba(255,220,190,.05);--t-btn:linear-gradient(110deg,#ff6b6b,#ffb25a);--t-btn-ink:#2a0c10;--t-btn2:rgba(48,18,38,.6);--t-btn2h:rgba(76,28,50,.7);
 --t-r:8px;--t-hf:'Palatino Linotype','Book Antiqua',Georgia,serif;--t-hw:400;--t-ht:uppercase;--t-hls:.2em;--t-hs:0 0 16px #ff8a4a88;--t-logo-shadow:0 0 30px #ff8a4aaa,0 2px 6px #000;--t-iris:hue-rotate(80deg) saturate(1.1)}
html[data-vv-theme=desert] .social-panel:before,html[data-vv-theme=desert] .inbox-panel:before{width:100%;height:2px;left:0;top:-1px;background:linear-gradient(90deg,transparent,#ffb25a,#ff6b6b,transparent);box-shadow:0 0 14px #ff8a4a}
html[data-vv-theme=desert] .panel-title h3,html[data-vv-theme=desert] .console-welcome h4{font-size:19px}

/* Velocity */
html[data-vv-theme=speed]{--t-base:#070708;--t-fallback:repeating-linear-gradient(100deg,transparent 0 40px,#ff2a2a0d 40px 42px),radial-gradient(ellipse at 50% 50%,#ff8a3c44,transparent 50%),#070708;
 --t-a:#ff2a2a;--t-b:#ffb15a;--t-c:#ffffff;--t-ink:#ffffff;--t-dim:#b9b9c0;--t-glass:rgba(10,10,12,.78);--t-solid:#0c0c0e;--t-side:linear-gradient(180deg,rgba(14,14,16,.7),rgba(6,6,8,.82));--t-bar:#070708ee;
 --t-edge:rgba(255,255,255,.14);--t-field:rgba(255,255,255,.05);--t-btn:linear-gradient(100deg,#d41c1c,#bf3d14);--t-btn-ink:#fff;--t-btn2:rgba(20,20,24,.8);--t-btn2h:rgba(40,16,16,.9);
 --t-r:0px;--t-blur:10px;--t-hf:VVAnton,Impact,'Arial Black',sans-serif;--t-hw:400;--t-ht:uppercase;--t-hls:.04em;--t-hs:3px 0 0 #ff2a2a;--t-logo-shadow:4px 0 0 #ff2a2a,-2px 0 0 #ffb15a;--t-iris:hue-rotate(55deg) saturate(1.5)}
html[data-vv-theme=speed] .social-panel,html[data-vv-theme=speed] .inbox-panel,html[data-vv-theme=speed] .home-promos,html[data-vv-theme=speed] .login-box{clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px)}
html[data-vv-theme=speed] .social-panel:before,html[data-vv-theme=speed] .inbox-panel:before{left:auto;right:24px;top:0;width:70px;height:6px;background:repeating-linear-gradient(-60deg,#ff2a2a 0 8px,transparent 8px 13px);box-shadow:none}
html[data-vv-theme=speed] .inbox-panel:before{background:repeating-linear-gradient(-60deg,#ffb15a 0 8px,transparent 8px 13px)}
html[data-vv-theme=speed] .panel-title h3,html[data-vv-theme=speed] .home-top h2,html[data-vv-theme=speed] .sidebar-brand strong,html[data-vv-theme=speed] .login-box h2,html[data-vv-theme=speed] .console-welcome h4{font-style:italic;transform:skewX(-10deg)}
html[data-vv-theme=speed] .primary,html[data-vv-theme=speed] #play-game{clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);border-radius:0!important;box-shadow:none!important}
html[data-vv-theme=speed] .home-button{border-radius:0;clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%)}
html[data-vv-theme=speed] .library-sidebar:after{background:linear-gradient(transparent,#ff2a2a,transparent)!important;width:2px!important}

/* Walnut */
html[data-vv-theme=wood]{--t-base:#1a0e07;--t-fallback:repeating-linear-gradient(92deg,#3b2213 0 6px,#4a2b17 6px 9px,#2e1a0d 9px 14px),#3b2213;
 --t-a:#d8a65e;--t-b:#e7c48a;--t-c:#f4e3c3;--t-ink:#f7ecdb;--t-dim:#c9b294;--t-glass:rgba(22,12,6,.8);--t-solid:#1c1009;--t-side:linear-gradient(180deg,rgba(26,14,7,.82),rgba(16,9,4,.88));--t-bar:#140a05ee;
 --t-edge:rgba(216,166,94,.45);--t-field:rgba(255,230,200,.05);--t-btn:linear-gradient(180deg,#e7c48a,#b98a47);--t-btn-ink:#26160a;--t-btn2:rgba(40,24,12,.7);--t-btn2h:rgba(62,38,18,.8);
 --t-r:10px;--t-blur:6px;--t-hf:'Palatino Linotype','Book Antiqua',Georgia,serif;--t-hw:400;--t-hls:.02em;--t-hs:0 1px 0 #000;--t-logo-shadow:0 2px 0 #3a210f,0 0 22px #d8a65e66;--t-halo:0 1px 2px #000,0 0 12px #000c;--t-iris:sepia(.7) hue-rotate(-10deg) saturate(1.2)}
html[data-vv-theme=wood] .social-panel,html[data-vv-theme=wood] .inbox-panel,html[data-vv-theme=wood] .home-promos,html[data-vv-theme=wood] .login-box{box-shadow:0 24px 50px -20px #000,inset 0 1px #ffe2b322,inset 0 0 0 3px rgba(22,12,6,.8),inset 0 0 0 4px #d8a65e40!important}
html[data-vv-theme=wood] .social-panel:before,html[data-vv-theme=wood] .inbox-panel:before{width:8px;height:8px;border-radius:50%;left:10px;top:10px;background:radial-gradient(circle at 35% 35%,#fff2cf,#b98a47 60%,#5a3a18);box-shadow:0 1px 2px #000}
html[data-vv-theme=wood] .panel-title{padding-left:10px}

/* Marble */
html[data-vv-theme=marble]{--t-base:#e9e6e0;--t-fallback:linear-gradient(125deg,#f2efe9,#dcd8d1 40%,#f4f1ec 41%,#e3dfd8);
 --t-a:#d8b25e;--t-b:#f0d79a;--t-c:#fff6dd;--t-ink:#f6f2ea;--t-dim:#bdb6a8;--t-glass:rgba(16,15,14,.84);--t-solid:#141312;--t-side:linear-gradient(180deg,rgba(18,17,16,.86),rgba(12,11,10,.9));--t-bar:#121110f0;
 --t-edge:rgba(216,178,94,.5);--t-field:rgba(255,255,255,.04);--t-btn:linear-gradient(180deg,#f0d79a,#c79a45);--t-btn-ink:#1a1408;--t-btn2:rgba(30,28,26,.8);--t-btn2h:rgba(44,40,34,.9);
 --t-r:4px;--t-blur:10px;--t-hf:'Bodoni MT',Didot,Georgia,serif;--t-hw:400;--t-hls:.04em;--t-hs:none;--t-onbg:#1c1a17;--t-halo:0 1px 0 #ffffffaa,0 0 18px #ffffffcc;--t-logo-shadow:0 1px 0 #fff,0 0 24px #fff;--t-iris:grayscale(.85) sepia(.35) brightness(1.05);--t-panel-shadow:0 30px 60px -28px #00000088}
html[data-vv-theme=marble] .social-panel,html[data-vv-theme=marble] .inbox-panel,html[data-vv-theme=marble] .home-promos,html[data-vv-theme=marble] .login-box{box-shadow:0 30px 60px -28px #0009,inset 0 0 0 4px rgba(16,15,14,.84),inset 0 0 0 5px #d8b25e55!important}
html[data-vv-theme=marble] .social-panel:before,html[data-vv-theme=marble] .inbox-panel:before,html[data-vv-theme=marble] .login-box:before{background:linear-gradient(#f0d79a,#b88a3a);box-shadow:none}
html[data-vv-theme=marble] .login-art h1 span{background-image:linear-gradient(100deg,#b88a3a,#e9c77c 50%,#9a7028);filter:none}
html[data-vv-theme=marble] .login-tag{color:#8a6a2a;text-shadow:0 1px 0 #fff}
html[data-vv-theme=marble] header{color:#cfc6b4}
html[data-vv-theme=marble] .logo-orbits i{border-color:#00000018}

/* Circuit */
html[data-vv-theme=circuit]{--t-base:#010c09;--t-fallback:linear-gradient(#0a3a2c 1px,transparent 1px) 0 0/28px 28px,linear-gradient(90deg,#0a3a2c 1px,transparent 1px) 0 0/28px 28px,#02110d;
 --t-a:#4dffd2;--t-b:#5ab8ff;--t-c:#ffb347;--t-ink:#e6fff8;--t-dim:#8fbfb2;--t-glass:rgba(2,16,12,.78);--t-solid:#03140f;--t-side:linear-gradient(180deg,rgba(2,18,14,.72),rgba(1,10,8,.82));--t-bar:#010c09ee;
 --t-edge:rgba(77,255,210,.24);--t-field:rgba(77,255,210,.04);--t-btn:linear-gradient(110deg,#1de9b6,#3fa9ff);--t-btn-ink:#00140f;--t-btn2:rgba(4,30,24,.7);--t-btn2h:rgba(8,50,40,.8);
 --t-r:0px;--t-blur:8px;--t-hf:'Cascadia Mono',Consolas,monospace;--t-hw:600;--t-ht:uppercase;--t-hls:.12em;--t-hs:0 0 12px #4dffd288;--t-logo-shadow:0 0 22px #4dffd2aa,0 2px 4px #000;--t-iris:hue-rotate(-150deg) saturate(1.2)}
html[data-vv-theme=circuit] .social-panel,html[data-vv-theme=circuit] .inbox-panel,html[data-vv-theme=circuit] .home-promos,html[data-vv-theme=circuit] .login-box{clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));background:linear-gradient(#4dffd2,#4dffd2) 0 0/14px 2px no-repeat,linear-gradient(#4dffd2,#4dffd2) 0 0/2px 14px no-repeat,linear-gradient(#4dffd2,#4dffd2) 100% 100%/14px 2px no-repeat,linear-gradient(#4dffd2,#4dffd2) 100% 100%/2px 14px no-repeat,var(--t-glass)!important}
html[data-vv-theme=circuit] .panel-title h3,html[data-vv-theme=circuit] .console-welcome h4{font-size:17px}
html[data-vv-theme=circuit] .home-top h2{font-size:26px}
html[data-vv-theme=circuit] .social-panel:before,html[data-vv-theme=circuit] .inbox-panel:before{width:6px;height:6px;border-radius:50%;left:auto;right:26px;top:14px;animation:vvt-blink 1.6s steps(1) infinite}
@keyframes vvt-blink{50%{opacity:.15}}

/* 420 haze */
html[data-vv-theme=haze]{--t-base:#030805;--t-fallback:radial-gradient(ellipse at 50% 110%,#1c5a2c,transparent 60%),radial-gradient(ellipse at 20% 30%,#0f2a18,transparent 50%),#030805;
 --t-a:#7dff9a;--t-b:#e8d34a;--t-c:#ff6a3d;--t-ink:#effff1;--t-dim:#a9c9ad;--t-glass:rgba(4,14,8,.7);--t-solid:#06140b;--t-side:linear-gradient(180deg,rgba(5,18,10,.62),rgba(3,10,6,.76));--t-bar:#030805dd;
 --t-edge:rgba(125,255,154,.18);--t-field:rgba(125,255,154,.04);--t-btn:linear-gradient(110deg,#3fbf6a,#b5d94a);--t-btn-ink:#06140b;--t-btn2:rgba(8,28,14,.7);--t-btn2h:rgba(14,46,24,.8);
 --t-r:20px;--t-blur:16px;--t-hs:0 0 18px #7dff9a88;--t-logo-shadow:3px 3px 0 #1c5a2c,0 0 30px #7dff9a88;--t-iris:hue-rotate(-170deg) saturate(1.2)}
html[data-vv-theme=haze] .social-panel:after,html[data-vv-theme=haze] .inbox-panel:after{display:block;background:radial-gradient(ellipse,#7dff9a55,#7dff9a00 70%)}
html[data-vv-theme=haze] .social-panel,html[data-vv-theme=haze] .inbox-panel,html[data-vv-theme=haze] .home-promos,html[data-vv-theme=haze] .login-box{box-shadow:0 28px 60px -26px #000,inset 0 1px #ffffff14,0 0 50px -22px #7dff9a88!important}
html[data-vv-theme=haze] .inbox-panel:before{background:linear-gradient(#ff3b3b,#e8d34a,#3fbf6a);box-shadow:0 0 10px #e8d34a88}

@media(prefers-reduced-motion:reduce){.vvt-deck{animation:none}html[data-vv-theme] .social-panel:after,html[data-vv-theme] .inbox-panel:after,html[data-vv-theme] .login-box:after{animation:none}}

/* ===== Neutralise the hub-wide neon frame (game-launch.js) under other themes ===== */
html.vv-alt{--vv-line-hot:linear-gradient(110deg,var(--t-a),var(--t-b));--vv-glow-hot:0 0 0 1px color-mix(in srgb,var(--t-a) 25%,transparent),0 0 22px -6px color-mix(in srgb,var(--t-a) 60%,transparent)}
html.vv-alt body>header,html.vv-alt .library-sidebar,html.vv-alt .console-welcome,html.vv-alt .profile-facts,html.vv-alt .profile-info,html.vv-alt .profile-design>header{border-image:none!important}
html.vv-alt body>header{border-bottom-color:var(--t-edge);box-shadow:none}
html.vv-alt .library-sidebar{border-right:1px solid var(--t-edge)!important}
html.vv-alt .console-welcome{border:1px solid var(--t-edge)!important;box-shadow:none}
html.vv-alt .sidebar-brand strong,html.vv-alt .sidebar-account strong{letter-spacing:0;text-transform:none}
html.vv-alt .sidebar-account:has(#avatar-edit[hidden]) #return-login{background:var(--t-btn2);border:1px solid color-mix(in srgb,var(--t-a) 55%,transparent);color:var(--t-ink);box-shadow:0 0 16px -8px var(--t-a)}
html.vv-alt .sidebar-account:has(#avatar-edit[hidden]) #return-login:before{color:var(--t-a)}
html.vv-alt .sidebar-account button:hover:not(:disabled),html.vv-alt .sidebar-account button:focus-visible{color:var(--t-ink);text-shadow:0 0 9px var(--t-a)}
html.vv-alt .friend-row:hover,html.vv-alt .inbox-thread:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--t-a) 8%,transparent),transparent 70%);box-shadow:inset 2px 0 0 var(--t-a)}
html.vv-alt .sidekick-card,html.vv-alt .account-project,html.vv-alt .phone-pair-dialog,html.vv-alt .phone-install-guide{background:var(--t-solid)!important;border-color:var(--t-edge)!important}
html.vv-alt .account-provider,html.vv-alt #sidekick-form{border-color:var(--t-edge);box-shadow:none}
html.vv-alt #game-launch-menu{background:var(--t-solid)!important;border-color:var(--t-edge)!important}
html.vv-alt select:focus,html.vv-alt select:hover{border-color:var(--t-a)!important;box-shadow:0 0 14px -4px var(--t-a)}
html.vv-alt .account-tabs button[aria-selected=true]{box-shadow:inset 0 -2px 0 var(--t-a)}
html.vv-alt .social-panel:before,html.vv-alt .inbox-panel:before{color:var(--t-a)}
html.vv-alt{--vv-c:var(--t-a);--vv-m:var(--t-b);--vv-p:var(--t-b);--vv-t:var(--t-a);--vv-v:var(--t-c);--vv-line:linear-gradient(120deg,var(--t-a),var(--t-b));--vv-glow:0 0 0 1px color-mix(in srgb,var(--t-a) 12%,transparent),0 0 18px -8px color-mix(in srgb,var(--t-a) 50%,transparent)}

/* ===================== CLASSIC (CSS-only, no WebGL) =====================
   Restrained surfaces: solid panels (no backdrop blur), one accent, UI type
   for headings (Street stays on the brand mark and the big Home title). */
html.vvt-css{--t-blur:0px;--t-hw:600;--t-ht:none;--t-hls:0;--t-hs:none;--t-halo:none;--t-logo-shadow:3px 3px 0 #ff3cd7,-3px -2px 0 #2ec5ff,0 0 26px #8a5cff88;--t-iris:none;--t-panel-shadow:var(--vv-shadow-2)}
html.vvt-css .login-box,html.vvt-css .social-panel,html.vvt-css .inbox-panel,html.vvt-css .home-promos,html.vvt-css .library-sidebar{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
html.vvt-css .social-panel:before,html.vvt-css .inbox-panel:before,html.vvt-css .login-box:before,html.vvt-css .library-sidebar:before{display:none}
html.vvt-css header:after{opacity:.35}
html.vvt-css .home-button{box-shadow:inset 3px 0 var(--t-a)!important;background:color-mix(in srgb,var(--t-a) 10%,transparent)!important;border-color:var(--t-edge)!important}
html.vvt-css button:hover:not(:disabled){box-shadow:none}
html.vvt-css .panel-title h3,html.vvt-css .console-welcome h4,html.vvt-css .settings-heading h2{font-family:var(--vv-font-ui)!important;font-weight:650!important;letter-spacing:-.005em!important;text-transform:none!important}
html.vvt-css .panel-title h3{font-size:var(--vv-fs-5)!important}
html.vvt-css .console-welcome h4{font-size:var(--vv-fs-4)!important}
html.vvt-css .settings-heading h2{font-size:var(--vv-fs-6)!important}
html.vvt-css .poster-label{animation:none}
html.vvt-css .login-art h1 span{background-image:linear-gradient(100deg,var(--t-b),var(--t-a))}

/* Charcoal: dark neutral, warm brass accent used sparingly. */
html[data-vv-theme=charcoal]{--t-base:#141416;--t-fallback:radial-gradient(1100px 640px at 82% -12%,#2a2723 0,transparent 62%),radial-gradient(900px 620px at -5% 108%,#1e1c1a 0,transparent 60%),#141416;
 --t-a:#d9a35a;--t-b:#a7a29a;--t-c:#efe6d8;--t-ink:#ededee;--t-dim:#b9b9be;--t-meta:#9a9aa1;--t-glass:#1c1c1ff2;--t-solid:#1c1c1f;--t-surface-2:#232327;--t-raised:#2b2b30;--t-side:#18181af5;--t-bar:#121214f2;
 --t-edge:rgba(255,255,255,.09);--t-edge-strong:rgba(255,255,255,.2);--t-field:#141416;--t-field-solid:#141416;--t-btn:#d9a35a;--t-btn-ink:#000;--t-btn2:#26262a;--t-btn2h:#303035;--t-r:10px}
/* Midnight: deep navy, cool blue light. */
html[data-vv-theme=midnight]{--t-base:#0a1020;--t-fallback:radial-gradient(1100px 620px at 88% -8%,#1c3765 0,transparent 62%),radial-gradient(900px 560px at 4% 106%,#13244a 0,transparent 64%),linear-gradient(#0a1020,#070b17);
 --t-a:#5aa9ff;--t-b:#7fd3ff;--t-c:#c9e3ff;--t-ink:#e8eefc;--t-dim:#b0bfdc;--t-meta:#8d9fc2;--t-glass:#101a30f2;--t-solid:#101a30;--t-surface-2:#15213c;--t-raised:#1b2a4a;--t-side:#0d1628f5;--t-bar:#0a1020f2;
 --t-edge:rgba(150,185,255,.14);--t-edge-strong:rgba(150,185,255,.3);--t-field:#0b1325;--t-field-solid:#0b1325;--t-btn:#5aa9ff;--t-btn-ink:#000;--t-btn2:#17233f;--t-btn2h:#1e2d50;--t-r:12px}
/* Paper: warm light surfaces, ink text, one deep magenta accent. The whole UI flips to a light scheme. */
html[data-vv-theme=paper]{--t-base:#f4f0e8;--t-fallback:radial-gradient(1200px 760px at 100% -10%,#fffdf8 0,transparent 60%),radial-gradient(900px 600px at 0 110%,#ebe4d6 0,transparent 60%),#f4f0e8;
 --t-a:#a3245e;--t-b:#2f5f8a;--t-c:#c4562a;--t-ink:#1f1b16;--t-dim:#4a443b;--t-meta:#5f584d;--t-onbg:#1f1b16;--t-glass:#fbf9f4f7;--t-solid:#fbf9f4;--t-surface-2:#f1ece2;--t-raised:#ffffff;--t-side:#f8f5eef7;--t-bar:#efe9def2;
 --t-edge:rgba(70,50,30,.15);--t-edge-strong:rgba(70,50,30,.34);--t-field:#ffffff;--t-field-solid:#ffffff;--t-btn:#a3245e;--t-btn-ink:#fff;--t-btn2:#f1ece2;--t-btn2h:#e8e0d1;--t-r:10px;--t-scrim:rgba(50,40,30,.36);
 --t-logo-shadow:3px 3px 0 #ff3cd7,-3px -2px 0 #2ec5ff,0 0 26px #8a5cff88}
/* Graphite: understated grey and silver. */
html[data-vv-theme=graphite]{--t-base:#1b1d20;--t-fallback:repeating-linear-gradient(90deg,#ffffff03 0 1px,transparent 1px 3px),linear-gradient(160deg,#26292d,#1b1d20 55%,#151618);
 --t-a:#c7ced8;--t-b:#a9b2bf;--t-c:#e6eaf0;--t-ink:#e8eaed;--t-dim:#b6bbc2;--t-meta:#979da6;--t-glass:#24272bf2;--t-solid:#24272b;--t-surface-2:#2c3035;--t-raised:#353a40;--t-side:#202326f5;--t-bar:#181a1df2;
 --t-edge:rgba(220,228,240,.1);--t-edge-strong:rgba(220,228,240,.24);--t-field:#1c1e21;--t-field-solid:#1c1e21;--t-btn:#c7ced8;--t-btn-ink:#000;--t-btn2:#2e3237;--t-btn2h:#383d43;--t-r:8px}
/* Neon Studio: signature black, pink and teal, drawn as thin clean light lines. */
html[data-vv-theme=neon]{--t-base:#07070a;--t-fallback:radial-gradient(760px 440px at 94% 6%,#ff3d9a24 0,transparent 70%),radial-gradient(860px 520px at -4% 104%,#23e5d01c 0,transparent 70%),linear-gradient(#07070a,#050507);
 --t-a:#ff3d9a;--t-b:#23e5d0;--t-c:#f5f3f7;--t-ink:#f5f3f7;--t-dim:#c4c0cf;--t-meta:#a29dae;--t-glass:#0f0f14f2;--t-solid:#0f0f14;--t-surface-2:#16161d;--t-raised:#1d1d26;--t-side:#0b0b0ff5;--t-bar:#07070af2;
 --t-edge:rgba(255,255,255,.08);--t-edge-strong:rgba(255,255,255,.2);--t-field:#09090d;--t-field-solid:#09090d;--t-btn:#ff3d9a;--t-btn-ink:#000;--t-btn2:#15151c;--t-btn2h:#1d1d27;--t-r:10px}
html[data-vv-theme=neon] .social-panel,html[data-vv-theme=neon] .inbox-panel,html[data-vv-theme=neon] .home-promos,html[data-vv-theme=neon] .login-box{box-shadow:inset 0 1px 0 #ff3d9a99,var(--vv-shadow-2)!important}
html[data-vv-theme=neon] .inbox-panel{box-shadow:inset 0 1px 0 #23e5d099,var(--vv-shadow-2)!important}
html[data-vv-theme=neon] .library-sidebar{border-right:1px solid #ff3d9a40!important}
html[data-vv-theme=neon] header:after{background:linear-gradient(90deg,transparent,#ff3d9a,#23e5d0,transparent);opacity:.6}

/* ===================== Light scheme (Paper) =====================
   Overrides the dark-only colours that live outside the token skin. */
html.vv-light body{color:var(--vv-ink)}
html.vv-light header{color:var(--vv-ink-2)!important}
html.vv-light .login-art h1{color:#1f1b16}
html.vv-light .login-tag{color:var(--t-a)!important;text-shadow:none!important}
html.vv-light .logo-orbits i{border-color:#00000014!important}
html.vv-light .terminal-bar{background:var(--vv-surface-2)!important;color:var(--vv-ink-2)}
html.vv-light .login-box input:not([type=checkbox]){background:#fff!important;border:1px solid var(--vv-edge-strong)!important;box-shadow:none!important;color:var(--vv-ink)!important}
html.vv-light .login-box .google-button{background:#fff!important;color:var(--vv-ink)!important;border-color:var(--vv-edge-strong)!important}
html.vv-light .login-box .text-button,html.vv-light .login-box .offline-button{color:var(--vv-ink)!important;opacity:1}
html.vv-light .login-box .text-button:hover:not(:disabled),html.vv-light .login-box .offline-button:hover:not(:disabled){text-shadow:none!important;text-decoration:underline}
html.vv-light .login-box .auth-divider{color:var(--vv-ink-3)}
html.vv-light .remember{color:var(--vv-ink-2)!important}
html.vv-light .library-sidebar summary,html.vv-light .library-app,html.vv-light .home-button,html.vv-light .sidebar-account strong{text-shadow:none!important}
html.vv-light .library-app{color:var(--vv-ink)!important}
html.vv-light .library-sidebar summary{color:var(--vv-ink-2)!important}
html.vv-light .library-sidebar summary:hover{color:var(--t-a)!important}
html.vv-light .library-app:hover:not(:disabled){background:var(--vv-surface-2)!important}
html.vv-light .sidebar-account #avatar-edit,html.vv-light .sidebar-account #account-signout{color:var(--t-a)!important}
html.vv-light .home-top:before{display:none}
html.vv-light .home-top h2{color:var(--vv-ink)!important;text-shadow:none!important}
html.vv-light #service-status,html.vv-light footer,html.vv-light #status{color:var(--vv-ink-2)!important;text-shadow:none!important;opacity:1!important}
html.vv-light .social-panel p,html.vv-light .inbox-panel p,html.vv-light .panel-title,html.vv-light #friends-search label{text-shadow:none!important}
html.vv-light .friend-row strong,html.vv-light .inbox-thread strong{color:var(--vv-ink)}
html.vv-light .friend-avatar{color:var(--vv-ink)}
html.vv-light .inbox-thread span{color:var(--vv-ink-2)!important}
html.vv-light .inbox-thread b{color:#fff!important}
html.vv-light .message,html.vv-light .message.own{color:var(--vv-ink)}
html.vv-light .console-welcome{background:var(--vv-surface-2)!important}
html.vv-light .feature-scrim{background:linear-gradient(90deg,#0b0a0ced,#0b0a0c80 58%,#0b0a0c10)}
html.vv-light .home-promo-controls{background:var(--vv-surface-2)!important}
html.vv-light .home-promo-status,html.vv-light .studio-promo-copy p{color:var(--vv-ink-2)!important}
html.vv-light .studio-promo,html.vv-light .studio-promo-copy{color:var(--vv-ink)}
html.vv-light .home-content{scrollbar-color:#b9ae9c transparent}
html.vv-light .vvt-veil{background:#f4f0e8}
html.vv-light #hub-iris{filter:drop-shadow(0 2px 8px #0003)!important}
html.vv-light .psy-click{display:none}

/* ===================== SCENIC: Mountain dusk + Trippy storybook =====================
   Static art (theme-art/<id>.webp) is the no-WebGL / lost-context fallback;
   it sits in --t-fallback, so the browser only fetches it when that path is used. */
html[data-vv-theme=mountain]{--t-base:#12142a;--t-fallback:url(theme-art/mountain.webp) center 70%/cover no-repeat,linear-gradient(#1a1838,#7a4a7a 55%,#3a2a4e 62%,#0e0d1c);
 --t-a:#ffb48a;--t-b:#c9a7ff;--t-c:#fff1e2;--t-ink:#f6f1f4;--t-dim:#cdc2d6;--t-meta:#b2a6be;--t-glass:rgba(18,18,38,.8);--t-solid:#15152c;--t-surface-2:#1c1c38;--t-raised:#25254a;--t-side:linear-gradient(180deg,rgba(18,18,38,.78),rgba(12,12,26,.86));--t-bar:#0f1024e6;
 --t-edge:rgba(255,220,210,.14);--t-edge-strong:rgba(255,220,210,.3);--t-field:rgba(255,240,235,.05);--t-field-solid:#11122a;--t-btn:linear-gradient(110deg,#ffb48a,#f28fa8);--t-btn-ink:#1c1020;--t-btn2:rgba(28,28,56,.82);--t-btn2h:rgba(40,38,74,.9);
 --t-r:14px;--t-blur:10px;--t-hf:var(--vv-font-ui);--t-hw:600;--t-hls:.01em;--t-hs:0 1px 10px #0008;--t-halo:0 1px 3px #0b0a18,0 0 16px #0b0a18cc;--t-logo-shadow:3px 3px 0 #ff3cd7,-3px -2px 0 #2ec5ff,0 0 26px #8a5cff88;--t-iris:hue-rotate(-20deg) saturate(.85)}
html[data-vv-theme=mountain] .social-panel,html[data-vv-theme=mountain] .inbox-panel,html[data-vv-theme=mountain] .home-promos,html[data-vv-theme=mountain] .login-box{box-shadow:0 30px 60px -26px #05040ccc,inset 0 1px #ffffff14!important}
html[data-vv-theme=mountain] .social-panel:before,html[data-vv-theme=mountain] .inbox-panel:before{width:46px;height:2px;left:18px;top:-1px;border-radius:2px;background:#ffb48a;box-shadow:none}
html[data-vv-theme=mountain] .inbox-panel:before{background:#c9a7ff}
html[data-vv-theme=storybook]{--t-base:#120a26;--t-fallback:url(theme-art/storybook.webp) center 60%/cover no-repeat,linear-gradient(#0d0820,#3a1458 45%,#138f88 62%,#a3266a);
 --t-a:#ff6fb7;--t-b:#3fe6d2;--t-c:#ffd36b;--t-ink:#fff6fb;--t-dim:#dccbe6;--t-meta:#c3b0d2;--t-glass:rgba(20,10,40,.84);--t-solid:#180c2c;--t-surface-2:#22113c;--t-raised:#2d1850;--t-side:linear-gradient(180deg,rgba(22,10,42,.8),rgba(14,6,28,.88));--t-bar:#120a26ea;
 --t-edge:rgba(255,190,235,.18);--t-edge-strong:rgba(255,190,235,.36);--t-field:rgba(255,230,250,.05);--t-field-solid:#140a26;--t-btn:linear-gradient(110deg,#ff6fb7,#ffb36b);--t-btn-ink:#1a0820;--t-btn2:rgba(36,16,62,.84);--t-btn2h:rgba(52,24,86,.9);
 --t-r:18px;--t-blur:8px;--t-hs:2px 2px 0 #160a2a;--t-halo:0 1px 3px #0a0418,0 0 14px #0a0418cc;--t-logo-shadow:3px 3px 0 #ff3cd7,-3px -2px 0 #2ec5ff,0 0 26px #8a5cff88;--t-iris:hue-rotate(20deg) saturate(1.15);--t-panel-shadow:6px 7px 0 -1px #0a0418cc}
html[data-vv-theme=storybook] .social-panel,html[data-vv-theme=storybook] .inbox-panel,html[data-vv-theme=storybook] .home-promos,html[data-vv-theme=storybook] .login-box{border-width:2px!important;border-color:#2a1446!important;box-shadow:6px 7px 0 -1px #0a0418cc,inset 0 0 0 1px #ff6fb733!important}
html[data-vv-theme=storybook] .social-panel:before,html[data-vv-theme=storybook] .inbox-panel:before{width:14px;height:14px;border-radius:50%;left:auto;right:16px;top:-8px;background:radial-gradient(circle at 35% 35%,#fff3,transparent 60%),#3fe6d2;box-shadow:0 0 0 2px #160a2a}
html[data-vv-theme=storybook] .inbox-panel:before{background:radial-gradient(circle at 35% 35%,#fff3,transparent 60%),#ffd36b}

/* ===================== Settings picker (VoidThemes.mountPicker) ===================== */
.vvp{display:grid;gap:var(--vv-sp-6);font-family:var(--vv-font-ui);color:var(--vv-ink);min-width:0}
.vvp-sec{min-width:0}
.vvp h3.vvp-h{text-transform:none;margin:0 0 var(--vv-sp-3);font:650 var(--vv-fs-4)/1.25 var(--vv-font-ui);color:var(--vv-ink);letter-spacing:0;text-shadow:none}
.vvp-themes{display:grid;gap:var(--vv-sp-4)}
.vvp p.vvp-gl{margin:0 0 var(--vv-sp-2);font:600 var(--vv-fs-1)/1.3 var(--vv-font-ui);letter-spacing:.04em;color:var(--vv-ink-2)}
.vvp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(116px,100%),1fr));gap:var(--vv-sp-3)}
.vvp .vvp-tile{all:unset;box-sizing:border-box;display:flex;flex-direction:column;gap:6px;min-width:0;padding:5px 5px 8px;border-radius:var(--vv-radius-m);border:1px solid var(--vv-edge);background:var(--vv-surface-2);color:var(--vv-ink);cursor:pointer;transition:border-color var(--vv-dur-1),box-shadow var(--vv-dur-1),transform var(--vv-dur-2) var(--vv-ease-out)}
.vvp .vvp-tile:hover{border-color:var(--vv-edge-strong);transform:translateY(-1px)}
.vvp .vvp-tile:active{transform:translateY(0) scale(.985)}
.vvp .vvp-tile:focus-visible{outline:2px solid var(--vv-focus)!important;outline-offset:2px}
.vvp .vvp-tile[aria-checked=true]{border-color:var(--vv-focus);box-shadow:0 0 0 1px var(--vv-focus)}
.vvp-thumb{position:relative;display:block;aspect-ratio:16/10;border-radius:calc(var(--vv-radius-m) - 4px);overflow:hidden;background:linear-gradient(135deg,var(--a,#222),var(--b,#444) 55%,var(--c,#888));box-shadow:inset 0 0 0 1px #0000001f}
.vvp-thumb canvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity var(--vv-dur-3)}
.vvp-tile.ready .vvp-thumb canvas{opacity:1}
.vvp .vvp-tile[aria-checked=true] .vvp-thumb:after{content:'✓';position:absolute;right:5px;top:5px;width:18px;height:18px;border-radius:50%;background:var(--vv-accent);color:var(--vv-accent-ink);font:700 11px/18px var(--vv-font-ui);text-align:center}
.vvp .vvp-name{padding:0 3px;font:500 var(--vv-fs-2)/1.3 var(--vv-font-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vvp-accents{display:flex;flex-wrap:wrap;align-items:center;gap:var(--vv-sp-2)}
.vvp .vvp-acc{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:6px;min-width:36px;min-height:36px;padding:4px;border-radius:999px;border:1px solid transparent;cursor:pointer;color:var(--vv-ink);font:500 var(--vv-fs-2) var(--vv-font-ui)}
.vvp .vvp-acc:has(.vvp-acc-label){padding-right:12px;border-color:var(--vv-edge)}
.vvp-dot{display:block;width:26px;height:26px;border-radius:50%;box-shadow:inset 0 0 0 1px #0000002e,0 0 0 1px #ffffff22}
.vvp .vvp-acc[aria-checked=true]{border-color:var(--vv-focus);box-shadow:0 0 0 1px var(--vv-focus)}
.vvp .vvp-acc:hover{border-color:var(--vv-edge-strong)}
.vvp .vvp-acc:focus-visible{outline:2px solid var(--vv-focus)!important;outline-offset:2px}
.vvp-custom{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:4px 12px 4px 4px;border-radius:999px;border:1px solid var(--vv-edge);cursor:pointer;font:500 var(--vv-fs-2) var(--vv-font-ui)}
.vvp-custom.on{border-color:var(--vv-focus);box-shadow:0 0 0 1px var(--vv-focus)}
.vvp-custom input{width:28px;height:28px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer;overflow:hidden}
.vvp-custom input::-webkit-color-swatch-wrapper{padding:0}.vvp-custom input::-webkit-color-swatch{border:0;border-radius:50%}
.vvp-custom input:focus-visible{outline:2px solid var(--vv-focus)!important;outline-offset:2px}
.vvp p.vvp-note,.vvp p.vvp-help{margin:var(--vv-sp-2) 0 0;font:var(--vv-fs-2)/1.45 var(--vv-font-ui);color:var(--vv-ink-2)!important;max-width:62ch}
.vvp p.vvp-note[data-state=adjusted]{color:var(--vv-warn)!important}
.vvp-seg{display:inline-flex;flex-wrap:wrap;gap:2px;padding:3px;border-radius:999px;background:var(--vv-surface-2);border:1px solid var(--vv-edge)}
.vvp .vvp-segb{all:unset;box-sizing:border-box;min-height:34px;padding:7px 16px;border-radius:999px;cursor:pointer;color:var(--vv-ink-2);font:500 var(--vv-fs-2)/1.2 var(--vv-font-ui);transition:background var(--vv-dur-1),color var(--vv-dur-1)}
.vvp .vvp-segb:hover{color:var(--vv-ink)}
.vvp .vvp-segb[aria-checked=true]{background:var(--vv-accent);color:var(--vv-accent-ink)}
.vvp .vvp-segb:focus-visible{outline:2px solid var(--vv-focus)!important;outline-offset:2px}

/* ===== Shared fixes for every non-psychedelic theme ===== */
/* Sidebar apps read as a list, not a stack of boxed buttons. */
html.vv-alt .library-app{border-color:transparent!important;background:transparent!important;box-shadow:none!important}
html.vv-alt .library-app:hover:not(:disabled),html.vv-alt .library-app:focus-visible{background:color-mix(in srgb,var(--t-a) 12%,transparent)!important;box-shadow:inset 2px 0 var(--t-a)!important}
/* The featured ad is always a dark poster: keep light ink inside it, whatever the theme. */
html.vv-alt .featured-game{--t-ink:#f6f3fa;--t-dim:#d5d0e0;--t-edge:rgba(255,255,255,.22);--t-btn2:rgba(16,14,24,.82);--t-btn2h:rgba(30,28,44,.9);--vv-ink:#f6f3fa;color:#f6f3fa}
html.vv-light .featured-game .poster-stamp{color:#f6f3fa!important;background:#0b0a0ccc}

html[data-vv-theme=marble] .home-top h2 span{color:#7a5a1e;text-shadow:0 1px 0 #fff}
/* Badges use the accent pair, which always has readable ink. */
html.vv-alt .inbox-thread b{background:var(--vv-accent)!important;color:var(--vv-accent-ink)!important}

.vvp .vvp-tile,.vvp .vvp-tile:hover,.vvp .vvp-tile:focus,.vvp .vvp-tile .vvp-name{color:var(--vv-ink)!important}
.vvp .vvp-acc,.vvp .vvp-custom{color:var(--vv-ink)!important}
