:root{
  --glass:rgba(255,255,255,.38);
  --glass-soft:rgba(255,255,255,.22);
  --glass-hard:rgba(255,255,255,.58);
  --glass-line:rgba(255,255,255,.64);
  --glass-dark:rgba(0,63,125,.26);
  --deep:#053e73;
  --navy:#052b4d;
  --blue:#19a9ff;
  --blue-two:#2ed6ff;
  --green:#7ed957;
  --lime:#b7ff58;
  --mint:#dffff5;
  --text:#062941;
  --muted:#4c7186;
  --shadow:0 28px 80px rgba(0,39,91,.38);
  --shadow-soft:0 18px 44px rgba(0,48,98,.22);
  --radius:20px;
  --taskbar-height:58px;
  --accent-gradient:linear-gradient(135deg,#eefcff 0%,#61dcff 36%,#9eff6f 72%,#ffffff 100%);
  --vista-blue:linear-gradient(180deg,rgba(255,255,255,.78),rgba(44,178,255,.30) 42%,rgba(0,83,168,.36) 100%);
}
*{
  box-sizing:border-box;
}
html,
body{
  width:100%;
  height:100%;
  margin:0;
  overflow:hidden;
  font-family:"Segoe UI",Tahoma,Verdana,Arial,sans-serif;
  color:var(--text);
  background:#65ccff;
  user-select:none;
}
body{
  cursor:default;
}
body[data-reduced-motion="true"] *,
body.no-motion *,
body.no-motion *::before,
body.no-motion *::after{
  animation-duration:.001ms!important;
  animation-iteration-count:1!important;
  scroll-behavior:auto!important;
}
button,
input,
textarea,
select{
  font:inherit;
}
button{
  cursor:pointer;
}
a{
  color:#006fbd;
}
::selection{
  background:rgba(68,211,255,.45);
}
.desktop{
  position:relative;
  min-height:100%;
  overflow:hidden;
  background:linear-gradient(#82d8ff,#dffffd 52%,#55c94a 100%);
}
.wallpaper{
  position:absolute;
  inset:0;
  background-image:
    radial-gradient(circle at 74% 18%,rgba(255,255,255,.82),transparent 17%),
    linear-gradient(180deg,rgba(255,255,255,.22),rgba(22,168,211,.16) 52%,rgba(82,198,74,.22)),
    url('assets/v23/textures/water-caustics.svg');
  background-size:cover;
  background-position:center;
  filter:saturate(1.24) contrast(1.04) brightness(1.03);
  transform:scale(1.025);
}
[data-wallpaper="bubbles"] .wallpaper{
  background-image:
    radial-gradient(circle at 22% 16%,rgba(255,255,255,.85),transparent 16%),
    linear-gradient(180deg,rgba(255,255,255,.12),rgba(0,163,198,.18)),
    url('assets/v23/textures/bubble-overlay.svg');
}
[data-wallpaper="garden"] .wallpaper{
  background-image:
    radial-gradient(circle at 70% 15%,rgba(255,255,255,.92),transparent 17%),
    linear-gradient(180deg,rgba(255,255,255,.15),rgba(18,187,255,.10)),
    url('assets/v23/textures/grass.svg');
}
[data-wallpaper="vista"] .wallpaper{
  background-image:
    radial-gradient(circle at 38% 17%,rgba(255,255,255,.96),transparent 16%),
    radial-gradient(circle at 69% 26%,rgba(203,255,246,.72),transparent 22%),
    linear-gradient(135deg,#33bfff 0%,#dffeff 48%,#63d84e 100%);
}
[data-wallpaper="reef"] .wallpaper{
  background-image:
    radial-gradient(circle at 52% 18%,rgba(255,255,255,.8),transparent 20%),
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,160,212,.24)),
    url('assets/v23/textures/water-caustics.svg');
}
[data-wallpaper="forest"] .wallpaper{
  background-image:
    radial-gradient(circle at 74% 18%,rgba(255,255,255,.7),transparent 18%),
    linear-gradient(180deg,rgba(255,255,255,.18),rgba(88,215,112,.20)),
    url('assets/v23/textures/leaf-shadow-overlay.svg');
}
.desktop-lighting span{
  position:absolute;
  pointer-events:none;
}
.sunburst{
  width:620px;
  height:620px;
  right:5%;
  top:2%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.96),rgba(255,255,255,.33) 27%,rgba(116,244,255,.18) 47%,transparent 70%);
  mix-blend-mode:screen;
  filter:blur(.2px);
  animation:pulse 8s ease-in-out infinite;
}
.cloud{
  width:230px;
  height:76px;
  border-radius:80px;
  background:rgba(255,255,255,.78);
  box-shadow:
    42px -30px 0 8px rgba(255,255,255,.72),
    100px -12px 0 20px rgba(255,255,255,.62),
    135px 10px 0 6px rgba(255,255,255,.48);
  filter:blur(.25px);
  opacity:.78;
  animation:floatCloud 48s linear infinite;
}
.cloud-a{
  top:12%;
  left:-22%;
}
.cloud-b{
  top:24%;
  left:35%;
  transform:scale(.82);
  animation-duration:58s;
  opacity:.65;
}
.cloud-c{
  top:9%;
  left:82%;
  transform:scale(.62);
  animation-duration:70s;
  opacity:.52;
}
.aurora{
  width:90vw;
  height:250px;
  border-radius:50%;
  filter:blur(19px);
  opacity:.52;
  transform:rotate(-8deg);
  mix-blend-mode:screen;
}
.aurora-one{
  left:-20%;
  top:30%;
  background:linear-gradient(90deg,transparent,#30e3ff,#efffff,#98ff86,transparent);
  animation:wave 12s ease-in-out infinite;
}
.aurora-two{
  right:-25%;
  top:40%;
  background:linear-gradient(90deg,transparent,#b4ff5b,#4edfff,#ffffff,transparent);
  animation:wave 15s ease-in-out infinite reverse;
}
.waterline{
  left:0;
  right:0;
  bottom:66px;
  height:43%;
  background:
    linear-gradient(180deg,rgba(177,251,255,.10),rgba(17,131,194,.35)),
    repeating-radial-gradient(circle at 30% 20%,rgba(255,255,255,.12) 0 2px,transparent 3px 13px);
  backdrop-filter:blur(2px);
  clip-path:polygon(0 16%,8% 12%,19% 19%,34% 12%,52% 18%,66% 11%,82% 17%,100% 12%,100% 100%,0 100%);
  animation:tide 7.5s ease-in-out infinite;
}
.glass-reflection{
  left:-15%;
  right:-15%;
  top:0;
  height:100%;
  background:linear-gradient(110deg,transparent 0 32%,rgba(255,255,255,.12) 44%,transparent 57%);
  transform:translateX(-20%);
  animation:sweep 11s ease-in-out infinite;
}
.grass-front{
  left:-2%;
  right:-2%;
  bottom:52px;
  height:170px;
  background:
    linear-gradient(transparent 0,rgba(45,181,46,.32) 55%,rgba(15,116,28,.52) 100%),
    repeating-linear-gradient(78deg,transparent 0 10px,rgba(38,137,35,.45) 11px 13px),
    repeating-linear-gradient(102deg,transparent 0 14px,rgba(117,238,70,.35) 15px 17px);
  clip-path:polygon(0 44%,6% 12%,10% 50%,15% 18%,20% 53%,25% 17%,31% 53%,36% 21%,42% 50%,49% 18%,56% 53%,63% 22%,70% 56%,76% 18%,84% 53%,91% 23%,100% 47%,100% 100%,0 100%);
}
.life-canvas,
.bubble-layer,
.fish-layer,
.firefly-layer{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
  overflow:hidden;
}
.bubble{
  position:absolute;
  bottom:-90px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.75);
  background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.96),rgba(255,255,255,.16) 30%,rgba(126,236,255,.14) 80%);
  box-shadow:inset -10px -13px 22px rgba(0,107,188,.15),0 0 15px rgba(255,255,255,.45);
  animation:rise linear infinite;
}
.fish{
  position:absolute;
  font-size:28px;
  opacity:.55;
  filter:drop-shadow(0 4px 5px rgba(0,64,120,.26));
  animation:swim linear infinite;
}
.firefly{
  position:absolute;
  width:8px;
  height:8px;
  border-radius:50%;
  background:rgba(217,255,103,.82);
  box-shadow:0 0 16px rgba(226,255,102,.9);
  animation:firefly 9s ease-in-out infinite;
}
.glass-panel,
.glass-window{
  background:
    linear-gradient(180deg,rgba(255,255,255,.58),rgba(255,255,255,.18) 55%,rgba(116,205,255,.16)),
    linear-gradient(90deg,rgba(255,255,255,.18),transparent 28%,rgba(255,255,255,.12) 82%);
  border:1px solid var(--glass-line);
  box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.84),inset 0 -1px 0 rgba(0,88,164,.12);
  backdrop-filter:blur(18px) saturate(1.48);
  -webkit-backdrop-filter:blur(18px) saturate(1.48);
}
.glass-button,
.mini-action,
.start-right button,
.browser-button,
.window-toolbar button,
.window-toolbar select,
.window-toolbar input[type="button"],
.arcade-tab,
.launch-action,
.form-button{
  border:1px solid rgba(255,255,255,.72);
  border-bottom-color:rgba(0,105,171,.24);
  border-radius:13px;
  color:#073558;
  background:
    linear-gradient(180deg,rgba(255,255,255,.94),rgba(151,232,255,.48) 48%,rgba(40,156,226,.34)),
    radial-gradient(circle at 40% 0,rgba(255,255,255,.8),transparent 42%);
  box-shadow:0 7px 18px rgba(0,67,119,.18),inset 0 1px 0 rgba(255,255,255,.95);
  padding:9px 13px;
  text-shadow:0 1px rgba(255,255,255,.85);
}
.glass-button:hover,
.mini-action:hover,
.start-right button:hover,
.browser-button:hover,
.window-toolbar button:hover,
.arcade-tab:hover,
.launch-action:hover,
.form-button:hover{
  transform:translateY(-1px);
  filter:saturate(1.15) brightness(1.03);
}
.glass-button:active,
.mini-action:active,
.start-right button:active,
.browser-button:active,
.window-toolbar button:active,
.arcade-tab:active,
.launch-action:active,
.form-button:active{
  transform:translateY(1px);
}
.orb{
  display:inline-block;
  border-radius:50%;
  background:
    radial-gradient(circle at 33% 22%,#fff 0 9%,#ccfff9 15%,#6dffcc 25%,#24bdff 54%,#08619c 100%);
  box-shadow:
    0 0 18px rgba(255,255,255,.88),
    0 8px 20px rgba(0,68,120,.24),
    inset -7px -9px 16px rgba(0,42,115,.25),
    inset 5px 5px 13px rgba(255,255,255,.62);
}
.desktop-topbar{
  position:absolute;
  left:24px;
  right:304px;
  top:18px;
  min-height:66px;
  border-radius:var(--radius);
  display:flex;
  align-items:center;
  gap:20px;
  padding:10px 14px;
  z-index:5;
}
.brand-pill{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:162px;
  font-weight:800;
  letter-spacing:.2px;
  text-shadow:0 1px #fff;
}
.brand-orb{
  width:40px;
  height:40px;
}
.brand-pill strong{
  display:block;
  font-size:20px;
}
.brand-pill small{
  display:block;
  color:#197aa6;
  font-size:12px;
}
.headline-ticker{
  display:flex;
  gap:10px;
  flex:1;
  overflow:hidden;
  mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);
}
.headline-ticker span{
  flex:0 0 auto;
  padding:8px 13px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:999px;
  background:rgba(255,255,255,.26);
  white-space:nowrap;
  box-shadow:inset 0 1px rgba(255,255,255,.8);
  animation:ticker 22s linear infinite;
}
.top-actions{
  display:flex;
  gap:8px;
}
.desktop-icons{
  position:absolute;
  z-index:4;
  left:22px;
  top:104px;
  bottom:78px;
  width:124px;
  display:grid;
  grid-auto-rows:94px;
  gap:8px;
  align-content:start;
}
.desktop-icon{
  border:1px solid transparent;
  border-radius:16px;
  color:white;
  text-shadow:0 2px 7px rgba(0,32,72,.85),0 1px rgba(0,0,0,.35);
  background:transparent;
  padding:8px 6px;
  text-align:center;
}
.desktop-icon:hover,
.desktop-icon:focus-visible{
  outline:none;
  border-color:rgba(255,255,255,.68);
  background:linear-gradient(180deg,rgba(255,255,255,.34),rgba(93,206,255,.22));
  box-shadow:inset 0 1px rgba(255,255,255,.74),0 10px 24px rgba(0,52,99,.20);
}
.desktop-icon .icon-bubble{
  width:48px;
  height:48px;
  margin:0 auto 5px;
  display:grid;
  place-items:center;
  font-size:25px;
  border-radius:16px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.84),rgba(78,205,255,.36) 48%,rgba(0,93,181,.40)),
    radial-gradient(circle at 35% 15%,rgba(255,255,255,.95),transparent 36%);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 12px 20px rgba(0,58,105,.28),inset 0 1px rgba(255,255,255,.94);
}
.desktop-icon span:last-child{
  display:block;
  font-size:12px;
  line-height:1.15;
}
.sidebar{
  position:absolute;
  right:18px;
  top:18px;
  bottom:74px;
  width:268px;
  z-index:3;
  border-radius:24px;
  padding:12px;
  overflow:hidden auto;
}
.sidebar::-webkit-scrollbar{
  width:10px;
}
.sidebar::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.55);
  border-radius:999px;
}
.gadget{
  position:relative;
  border:1px solid rgba(255,255,255,.48);
  border-radius:20px;
  margin:0 0 12px;
  padding:14px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,.16)),
    radial-gradient(circle at 80% 0,rgba(128,255,222,.42),transparent 33%);
  box-shadow:inset 0 1px rgba(255,255,255,.74),0 10px 24px rgba(0,49,90,.15);
}
.gadget-title{
  color:#085183;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:9px;
}
.hero-gadget{
  text-align:center;
}
.coin-orb{
  width:82px;
  height:82px;
  margin:0 auto 8px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:
    radial-gradient(circle at 32% 22%,#fff 0 10%,#dafff8 17%,#73ffd3 33%,#29bcff 62%,#07599a 100%);
  box-shadow:0 0 26px rgba(191,255,246,.95),0 16px 28px rgba(0,77,135,.24),inset -9px -12px 18px rgba(0,40,110,.28);
}
.coin-orb span{
  color:white;
  font-size:38px;
  font-weight:900;
  text-shadow:0 2px 8px rgba(0,49,87,.7);
}
.analog-clock{
  position:relative;
  width:116px;
  height:116px;
  margin:5px auto 10px;
  border-radius:50%;
  background:
    radial-gradient(circle at 32% 24%,rgba(255,255,255,.96),rgba(238,254,255,.72) 38%,rgba(77,197,255,.45) 100%);
  border:1px solid rgba(255,255,255,.82);
  box-shadow:0 12px 25px rgba(0,66,116,.22),inset 0 1px 14px rgba(255,255,255,.75);
}
.analog-clock::before{
  content:"";
  position:absolute;
  inset:9px;
  border-radius:50%;
  border:1px solid rgba(11,119,178,.22);
}
.hand{
  position:absolute;
  left:50%;
  bottom:50%;
  transform-origin:bottom center;
  border-radius:999px;
  background:#07476e;
}
.hand.hour{
  width:5px;
  height:30px;
  margin-left:-2.5px;
}
.hand.minute{
  width:4px;
  height:42px;
  margin-left:-2px;
  background:#0b87ba;
}
.hand.second{
  width:2px;
  height:48px;
  margin-left:-1px;
  background:#40de8b;
}
.pin{
  position:absolute;
  width:12px;
  height:12px;
  left:50%;
  top:50%;
  margin:-6px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 3px rgba(31,171,235,.6);
}
#digitalClock{
  display:block;
  text-align:center;
  font-size:26px;
}
#digitalDate{
  display:block;
  text-align:center;
  color:var(--muted);
}
.meter{
  height:14px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(0,59,109,.18);
  border:1px solid rgba(255,255,255,.55);
  box-shadow:inset 0 2px 8px rgba(0,47,87,.24);
  margin:7px 0 2px;
}
.meter span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#3ebdff,#c8ff65,#ffffff);
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 0 12px rgba(107,231,255,.68);
  transition:width .6s ease;
}
.mini-action{
  width:100%;
  margin-top:8px;
}
.mini-feed ul,
ul#miniFeed{
  margin:0;
  padding:0;
  list-style:none;
}
#miniFeed li{
  padding:7px 0;
  border-bottom:1px solid rgba(255,255,255,.35);
  font-size:12px;
  color:#174d68;
}
.window-layer{
  position:absolute;
  inset:0;
  z-index:10;
  pointer-events:none;
}
.app-window{
  position:absolute;
  width:760px;
  height:540px;
  min-width:340px;
  min-height:250px;
  border-radius:19px 19px 13px 13px;
  overflow:hidden;
  pointer-events:auto;
  transform:translateZ(0);
}
.app-window.active{
  box-shadow:0 32px 94px rgba(0,35,88,.52),0 0 0 1px rgba(255,255,255,.34),inset 0 1px 0 rgba(255,255,255,.9);
}
.window-titlebar{
  height:38px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 8px 0 12px;
  color:white;
  text-shadow:0 1px 4px rgba(0,31,63,.75);
  background:
    linear-gradient(180deg,rgba(255,255,255,.48),rgba(48,171,241,.34) 48%,rgba(0,90,176,.50)),
    linear-gradient(90deg,rgba(57,225,255,.44),rgba(75,232,120,.28));
  border-bottom:1px solid rgba(0,90,155,.28);
  cursor:grab;
}
.window-titlebar:active{
  cursor:grabbing;
}
.window-title-wrap{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.window-icon{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:7px;
  background:rgba(255,255,255,.28);
  border:1px solid rgba(255,255,255,.58);
  box-shadow:inset 0 1px rgba(255,255,255,.68);
}
.window-title{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.window-controls{
  display:flex;
  align-items:flex-start;
  gap:3px;
}
.window-controls button{
  width:35px;
  height:25px;
  border:1px solid rgba(255,255,255,.7);
  color:#fff;
  text-shadow:0 1px 3px rgba(0,0,0,.55);
  background:linear-gradient(180deg,rgba(255,255,255,.7),rgba(35,144,220,.44));
  border-radius:0 0 8px 8px;
  box-shadow:inset 0 1px rgba(255,255,255,.85),0 6px 13px rgba(0,55,102,.18);
  padding:0;
}
.window-controls .win-close{
  background:linear-gradient(180deg,#ffc7b9,#ff694d 48%,#b6271e);
}
.window-controls button:hover{
  filter:brightness(1.12);
}
.window-toolbar{
  min-height:0;
  display:none;
  gap:8px;
  align-items:center;
  padding:8px 10px;
  background:rgba(255,255,255,.18);
  border-bottom:1px solid rgba(255,255,255,.35);
}
.window-toolbar:not(:empty){
  display:flex;
}
.window-body{
  position:absolute;
  left:8px;
  right:8px;
  top:46px;
  bottom:8px;
  padding:16px;
  overflow:auto;
  border-radius:0 0 10px 10px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.67),rgba(232,254,255,.45)),
    radial-gradient(circle at 86% 6%,rgba(148,255,214,.36),transparent 32%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8),inset 0 0 45px rgba(23,174,255,.08);
}
.window-toolbar:not(:empty)+.window-body{
  top:91px;
}
.window-body::-webkit-scrollbar,
.app-scroll::-webkit-scrollbar{
  width:12px;
}
.window-body::-webkit-scrollbar-thumb,
.app-scroll::-webkit-scrollbar-thumb{
  background:linear-gradient(#fff,#65ceff);
  border:2px solid rgba(239,254,255,.8);
  border-radius:999px;
}
.resize-handle{
  position:absolute;
  right:2px;
  bottom:2px;
  width:20px;
  height:20px;
  cursor:nwse-resize;
  background:linear-gradient(135deg,transparent 0 55%,rgba(0,87,143,.35) 56% 60%,transparent 61% 68%,rgba(0,87,143,.35) 69% 73%,transparent 74%);
}
.taskbar{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:var(--taskbar-height);
  z-index:30;
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.48),rgba(44,175,255,.43) 43%,rgba(0,67,144,.72)),
    linear-gradient(90deg,rgba(44,230,134,.18),rgba(255,255,255,.05));
  border-top:1px solid rgba(255,255,255,.72);
  box-shadow:0 -16px 32px rgba(0,52,102,.22),inset 0 1px rgba(255,255,255,.86);
  backdrop-filter:blur(18px) saturate(1.4);
}
.start-button{
  min-width:114px;
  height:44px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.78);
  display:flex;
  align-items:center;
  gap:8px;
  padding:3px 16px 3px 5px;
  color:white;
  text-shadow:0 1px 4px rgba(0,28,58,.85);
  font-size:18px;
  font-style:italic;
  font-weight:700;
  background:
    linear-gradient(180deg,rgba(255,255,255,.54),rgba(50,192,255,.36) 44%,rgba(5,92,169,.65)),
    linear-gradient(90deg,#7dff58,#00a2ff);
  box-shadow:0 10px 22px rgba(0,46,91,.35),inset 0 1px rgba(255,255,255,.85);
}
.start-orb{
  width:36px;
  height:36px;
}
.start-text{
  transform:translateY(-1px);
}
.quicklaunch{
  display:flex;
  gap:6px;
  padding:0 8px;
  border-left:1px solid rgba(255,255,255,.32);
  border-right:1px solid rgba(0,44,99,.24);
}
.launch-dot,
.tray-button{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.60);
  border-radius:12px;
  color:#fff;
  text-shadow:0 1px 4px rgba(0,36,70,.86);
  background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(36,174,235,.34) 48%,rgba(0,70,139,.50));
  box-shadow:inset 0 1px rgba(255,255,255,.78),0 8px 16px rgba(0,45,92,.20);
}
.task-buttons{
  display:flex;
  flex:1;
  gap:7px;
  min-width:0;
  overflow:hidden;
}
.task-button{
  height:38px;
  min-width:138px;
  max-width:210px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  border:1px solid rgba(255,255,255,.58);
  border-radius:12px;
  color:#083955;
  text-align:left;
  background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(166,236,255,.32) 50%,rgba(0,111,189,.28));
  box-shadow:inset 0 1px rgba(255,255,255,.75);
  padding:0 12px;
}
.task-button.active{
  background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(91,221,255,.44) 48%,rgba(38,201,120,.35));
  box-shadow:0 0 14px rgba(219,255,255,.58),inset 0 1px rgba(255,255,255,.9);
}
.tray{
  display:flex;
  align-items:center;
  gap:5px;
  padding-left:8px;
  border-left:1px solid rgba(255,255,255,.35);
}
#trayClock{
  min-width:58px;
  color:#fff;
  text-align:center;
  font-weight:700;
  text-shadow:0 1px 3px rgba(0,30,60,.8);
}
.start-menu{
  position:absolute;
  left:10px;
  bottom:62px;
  width:560px;
  min-height:455px;
  border-radius:24px 24px 18px 18px;
  z-index:40;
  display:grid;
  grid-template-columns:1fr 190px;
  gap:10px;
  padding:12px;
}
.start-menu[hidden]{
  display:none;
}
.start-left{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.start-search{
  padding:4px 4px 10px;
}
.start-search input,
.search-input,
.browser-address,
.note-area,
.glass-input,
select.glass-input{
  width:100%;
  border:1px solid rgba(54,155,206,.45);
  border-radius:13px;
  padding:10px 12px;
  color:#07334d;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(232,254,255,.84));
  box-shadow:inset 0 2px 7px rgba(0,73,121,.12),0 1px rgba(255,255,255,.78);
  outline:none;
  user-select:text;
}
.start-search input:focus,
.search-input:focus,
.browser-address:focus,
.note-area:focus,
.glass-input:focus{
  border-color:#28bfff;
  box-shadow:0 0 0 3px rgba(75,207,255,.26),inset 0 2px 7px rgba(0,73,121,.12);
}
.start-pinned{
  display:grid;
  gap:7px;
  overflow:auto;
  padding:2px 4px;
}
.start-app{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  border:1px solid transparent;
  border-radius:14px;
  background:rgba(255,255,255,.18);
  text-align:left;
  color:#07324f;
  padding:7px 10px;
}
.start-app:hover{
  border-color:rgba(255,255,255,.70);
  background:linear-gradient(180deg,rgba(255,255,255,.65),rgba(117,221,255,.25));
}
.start-app b{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:linear-gradient(180deg,#fff,rgba(69,203,255,.52));
  border:1px solid rgba(255,255,255,.68);
}
.start-right{
  padding:8px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(0,87,158,.30),rgba(0,73,130,.18));
  display:flex;
  flex-direction:column;
  gap:8px;
}
.user-tile{
  color:#fff;
  text-align:center;
  text-shadow:0 1px 4px rgba(0,33,70,.8);
  padding-bottom:8px;
}
.user-picture{
  width:74px;
  height:74px;
  display:grid;
  place-items:center;
  margin:0 auto 7px;
  color:white;
  font-size:25px;
  font-weight:900;
  border-radius:18px;
  background:linear-gradient(135deg,#eaffff,#52d8ff,#7dff64);
  border:1px solid rgba(255,255,255,.76);
  box-shadow:0 13px 24px rgba(0,54,100,.24),inset 0 1px 0 rgba(255,255,255,.86);
}
.user-tile strong,
.user-tile span{
  display:block;
}
.user-tile span{
  font-size:12px;
  opacity:.86;
}
.boot-screen{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 50% 32%,rgba(255,255,255,.96),transparent 16%),
    linear-gradient(180deg,#5bc7ff,#dffffe 56%,#6bc95b);
  transition:opacity .55s ease,visibility .55s ease;
}
.boot-screen.hide{
  opacity:0;
  visibility:hidden;
}
.boot-card{
  position:relative;
  width:min(480px,calc(100vw - 32px));
  border-radius:31px;
  padding:34px;
  text-align:center;
  overflow:hidden;
}
.boot-glow{
  position:absolute;
  inset:-30%;
  background:conic-gradient(from 90deg,transparent,#7affbd,#44cfff,#fff,transparent);
  opacity:.20;
  animation:spin 7s linear infinite;
}
.boot-card > *:not(.boot-glow){
  position:relative;
}
.boot-orb{
  width:92px;
  height:92px;
  margin:0 auto 13px;
}
.boot-kicker{
  margin:0 0 6px;
  color:#197198;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.boot-card h1{
  margin:0;
  font-size:56px;
  color:#075186;
  letter-spacing:-.04em;
  text-shadow:0 2px rgba(255,255,255,.7),0 0 24px rgba(255,255,255,.62);
}
.boot-bar{
  height:18px;
  margin:24px 0 16px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(0,69,125,.18);
  border:1px solid rgba(255,255,255,.62);
  box-shadow:inset 0 2px 10px rgba(0,67,119,.26);
}
.boot-bar span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#35bfff,#eaffff,#92ff5f);
  animation:boot 2.7s ease-in-out forwards;
}
.boot-skip{
  min-width:160px;
}
.hero,
.portal-hero{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.64);
  border-radius:24px;
  padding:24px;
  background:
    radial-gradient(circle at 82% 16%,rgba(255,255,255,.9),transparent 18%),
    linear-gradient(135deg,rgba(255,255,255,.72),rgba(95,222,255,.30) 52%,rgba(139,255,107,.31));
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 18px 42px rgba(0,65,112,.17);
}
.portal-hero h1,
.hero h1{
  margin:0 0 8px;
  font-size:48px;
  letter-spacing:-.05em;
  color:#064b80;
}
.portal-hero p,
.hero p{
  max-width:720px;
  line-height:1.5;
}
.kicker{
  color:#1689b8;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.badge-row,
.action-row,
.browser-actions,
.arcade-tabs,
.music-controls,
.setting-row,
.tool-row,
.calendar-row,
.quest-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.badge{
  display:inline-flex;
  align-items:center;
  gap:7px;
  border:1px solid rgba(255,255,255,.65);
  border-radius:999px;
  background:rgba(255,255,255,.30);
  padding:7px 11px;
  font-weight:700;
  color:#074368;
  box-shadow:inset 0 1px rgba(255,255,255,.76);
}
.app-list,
.card-grid,
.ecosystem-grid,
.stats-grid,
.wallpaper-grid,
.game-grid,
.quest-grid,
.track-grid,
.roadmap-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:12px;
  margin-top:14px;
}
.app-tile,
.aero-card,
.stat-card,
.wall-card,
.quest-card,
.track-card,
.roadmap-card,
.game-card{
  border:1px solid rgba(255,255,255,.58);
  border-radius:20px;
  padding:15px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.56),rgba(255,255,255,.22)),
    radial-gradient(circle at 86% 0,rgba(123,255,219,.30),transparent 36%);
  box-shadow:inset 0 1px rgba(255,255,255,.78),0 12px 28px rgba(0,57,103,.13);
}
.app-tile{
  color:#07354f;
  text-align:left;
}
.app-tile b{
  display:block;
  font-size:32px;
  margin-bottom:6px;
}
.app-tile small{
  display:block;
  color:#486f82;
}
.app-tile:hover,
.aero-card:hover,
.game-card:hover,
.track-card:hover,
.quest-card:hover{
  transform:translateY(-2px);
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 18px 35px rgba(0,77,128,.18);
}
.stat-card strong{
  display:block;
  font-size:28px;
  color:#064d82;
}
.stat-card small{
  color:#4f7285;
}
.coin-big{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:18px;
}
.coin-big .coin-orb{
  flex:0 0 auto;
  margin:0;
}
.token-copy{
  display:flex;
  gap:8px;
  align-items:center;
  padding:10px;
  border:1px solid rgba(255,255,255,.58);
  border-radius:15px;
  background:rgba(255,255,255,.24);
}
.token-copy code{
  flex:1;
  user-select:text;
  color:#074361;
}
.browser-shell{
  display:grid;
  grid-template-rows:auto 1fr;
  height:100%;
  min-height:360px;
  gap:10px;
}
.browser-bar{
  display:grid;
  grid-template-columns:auto auto 1fr auto auto;
  gap:8px;
  align-items:center;
}
.browser-address{
  min-width:0;
}
.browser-frame-wrap{
  position:relative;
  min-height:0;
  border:1px solid rgba(255,255,255,.62);
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 12px 30px rgba(0,54,102,.15);
}
.browser-frame{
  width:100%;
  height:100%;
  border:0;
  background:#fff;
}
.browser-fallback{
  position:absolute;
  right:12px;
  bottom:12px;
  max-width:330px;
  padding:11px;
  border-radius:14px;
  background:rgba(240,253,255,.92);
  border:1px solid rgba(74,172,220,.35);
  box-shadow:0 10px 26px rgba(0,58,99,.18);
  font-size:12px;
}
.search-results{
  display:grid;
  gap:10px;
}
.search-result{
  padding:13px;
  border:1px solid rgba(48,149,205,.25);
  border-radius:16px;
  background:linear-gradient(180deg,#fff,rgba(235,253,255,.92));
}
.search-result h3{
  margin:0 0 5px;
}
.search-result p{
  margin:0 0 8px;
  color:#446d82;
}
.music-app{
  display:grid;
  grid-template-columns:1fr 210px;
  gap:16px;
  height:100%;
}
.music-stage{
  position:relative;
  min-height:300px;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.62);
  background:
    radial-gradient(circle at 50% 28%,rgba(255,255,255,.95),transparent 18%),
    linear-gradient(135deg,rgba(46,201,255,.5),rgba(223,255,247,.80),rgba(119,242,84,.48));
  box-shadow:inset 0 1px rgba(255,255,255,.92),0 18px 40px rgba(0,67,117,.17);
}
.visualizer{
  position:absolute;
  inset:35px 28px 95px;
  display:flex;
  align-items:end;
  justify-content:center;
  gap:8px;
}
.visualizer span{
  width:12px;
  min-height:20px;
  border-radius:999px;
  background:linear-gradient(180deg,#fff,#69dfff,#87ff62);
  box-shadow:0 0 16px rgba(255,255,255,.74),inset 0 1px rgba(255,255,255,.9);
  transform-origin:bottom;
  animation:bounce 1.2s ease-in-out infinite;
}
.visualizer span:nth-child(2n){animation-duration:1.6s}
.visualizer span:nth-child(3n){animation-duration:.95s}
.music-now{
  position:absolute;
  left:24px;
  right:24px;
  bottom:22px;
  border-radius:18px;
  padding:16px;
  background:rgba(255,255,255,.40);
  border:1px solid rgba(255,255,255,.62);
  box-shadow:inset 0 1px rgba(255,255,255,.85);
}
.music-now h2{
  margin:0 0 4px;
}
.track-grid{
  grid-template-columns:1fr;
  margin:0;
  overflow:auto;
  max-height:100%;
}
.track-card.active{
  outline:2px solid rgba(48,205,255,.65);
  background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(125,237,255,.36));
}
.game-shell{
  display:grid;
  grid-template-rows:auto 1fr;
  height:100%;
  gap:12px;
}
.arcade-tab.active{
  background:linear-gradient(180deg,#fff,rgba(120,234,255,.60),rgba(108,234,98,.40));
}
.game-stage{
  min-height:0;
  display:grid;
}
.game-panel{
  display:none;
  min-height:0;
}
.game-panel.active{
  display:grid;
  grid-template-rows:auto 1fr;
  gap:10px;
}
.game-hud{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:8px;
  border:1px solid rgba(255,255,255,.48);
  border-radius:16px;
  padding:9px;
  background:rgba(255,255,255,.30);
}
.game-canvas{
  width:100%;
  height:100%;
  min-height:310px;
  border:1px solid rgba(255,255,255,.66);
  border-radius:20px;
  background:
    radial-gradient(circle at 50% 28%,rgba(255,255,255,.86),transparent 16%),
    linear-gradient(180deg,#9deaff,#eaffff 58%,#70d95a);
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 14px 30px rgba(0,64,111,.17);
  touch-action:none;
}
.memory-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(70px,1fr));
  gap:10px;
  max-width:520px;
  margin:auto;
}
.memory-card{
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.68);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(60,196,255,.42));
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 10px 22px rgba(0,67,120,.15);
  font-size:34px;
}
.memory-card.matched{
  background:linear-gradient(180deg,#fff,rgba(145,255,95,.62));
}
.aquarium{
  height:100%;
  min-height:380px;
  position:relative;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.64);
  background:
    radial-gradient(circle at 50% 18%,rgba(255,255,255,.86),transparent 17%),
    linear-gradient(180deg,#64d7ff,#dfffff 52%,#47bb62 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.92),0 18px 40px rgba(0,63,113,.17);
}
.aquarium::before{
  content:"";
  position:absolute;
  inset:0;
  background:repeating-radial-gradient(circle at 30% 40%,rgba(255,255,255,.13) 0 2px,transparent 3px 16px);
  animation:drift 12s linear infinite;
}
.aqua-creature{
  position:absolute;
  font-size:36px;
  filter:drop-shadow(0 6px 6px rgba(0,66,118,.20));
  animation:aquaCreature 16s linear infinite;
}
.note-area{
  min-height:280px;
  resize:none;
  user-select:text;
  line-height:1.45;
}
.calc{
  max-width:360px;
  margin:auto;
  border:1px solid rgba(255,255,255,.65);
  border-radius:25px;
  padding:15px;
  background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(95,210,255,.22));
  box-shadow:inset 0 1px rgba(255,255,255,.8),0 17px 37px rgba(0,64,113,.17);
}
.calc-screen{
  width:100%;
  padding:16px;
  border-radius:16px;
  border:1px solid rgba(37,137,198,.32);
  background:linear-gradient(180deg,#fff,#eafdff);
  font-size:30px;
  text-align:right;
  color:#06314a;
  user-select:text;
}
.calc-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  margin-top:12px;
}
.calc-grid button{
  min-height:52px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:15px;
  background:linear-gradient(180deg,#fff,rgba(95,211,255,.42));
  color:#073558;
  font-size:20px;
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 7px 14px rgba(0,55,102,.13);
}
.paint-tools{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}
.paint-canvas{
  width:100%;
  height:calc(100% - 56px);
  min-height:320px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:18px;
  background:white;
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 12px 28px rgba(0,59,101,.14);
  touch-action:none;
  user-select:none;
}
.event-list,
.todo-list{
  margin:12px 0 0;
  padding:0;
  list-style:none;
}
.event-list li,
.todo-list li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:8px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.48);
  border-radius:15px;
  background:rgba(255,255,255,.28);
}
.wall-card{
  min-height:145px;
  background-size:cover;
  background-position:center;
  display:flex;
  align-items:end;
}
.wall-card button{
  width:100%;
  border:1px solid rgba(255,255,255,.68);
  border-radius:14px;
  background:rgba(255,255,255,.82);
  padding:9px;
}
.context-menu{
  position:absolute;
  z-index:80;
  width:220px;
  border-radius:15px;
  overflow:hidden;
  padding:6px;
}
.context-menu[hidden]{
  display:none;
}
.context-menu button{
  display:block;
  width:100%;
  border:0;
  border-radius:10px;
  background:transparent;
  text-align:left;
  padding:10px;
  color:#07354f;
}
.context-menu button:hover{
  background:rgba(255,255,255,.48);
}
.toast-stack{
  position:absolute;
  right:286px;
  bottom:74px;
  z-index:90;
  display:grid;
  gap:8px;
  width:min(360px,calc(100vw - 32px));
  pointer-events:none;
}
.toast{
  border:1px solid rgba(255,255,255,.66);
  border-radius:16px;
  padding:12px 14px;
  color:#07324f;
  background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(201,247,255,.72));
  box-shadow:0 14px 34px rgba(0,58,105,.24),inset 0 1px rgba(255,255,255,.9);
  transition:.45s ease;
}
.web-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 9px;
  border-radius:999px;
  background:rgba(255,255,255,.48);
  border:1px solid rgba(255,255,255,.64);
  font-size:12px;
  font-weight:700;
}
.loader-dots{
  display:inline-flex;
  gap:4px;
}
.loader-dots span{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#2bcaff;
  animation:dot 1s ease-in-out infinite;
}
.loader-dots span:nth-child(2){animation-delay:.13s}
.loader-dots span:nth-child(3){animation-delay:.26s}
@keyframes pulse{
  0%,100%{transform:scale(1);opacity:.76}
  50%{transform:scale(1.05);opacity:.98}
}
@keyframes floatCloud{
  from{transform:translateX(0)}
  to{transform:translateX(145vw)}
}
@keyframes wave{
  0%,100%{transform:translateY(0) rotate(-8deg) scaleX(1)}
  50%{transform:translateY(18px) rotate(-5deg) scaleX(1.08)}
}
@keyframes tide{
  0%,100%{clip-path:polygon(0 16%,8% 12%,19% 19%,34% 12%,52% 18%,66% 11%,82% 17%,100% 12%,100% 100%,0 100%)}
  50%{clip-path:polygon(0 13%,9% 18%,20% 12%,35% 20%,52% 13%,67% 18%,82% 12%,100% 18%,100% 100%,0 100%)}
}
@keyframes sweep{
  0%,15%{transform:translateX(-35%)}
  55%,100%{transform:translateX(38%)}
}
@keyframes ticker{
  0%{transform:translateX(30px)}
  100%{transform:translateX(-180px)}
}
@keyframes rise{
  from{transform:translateY(0) translateX(0) scale(.75);opacity:0}
  12%{opacity:.92}
  85%{opacity:.72}
  to{transform:translateY(-110vh) translateX(var(--drift,34px)) scale(1.2);opacity:0}
}
@keyframes swim{
  from{transform:translateX(-12vw) scaleX(1)}
  49%{transform:translateX(108vw) scaleX(1)}
  50%{transform:translateX(108vw) scaleX(-1)}
  99%{transform:translateX(-12vw) scaleX(-1)}
  to{transform:translateX(-12vw) scaleX(1)}
}
@keyframes firefly{
  0%,100%{transform:translate(0,0);opacity:.25}
  25%{transform:translate(34px,-18px);opacity:.85}
  50%{transform:translate(12px,-44px);opacity:.45}
  75%{transform:translate(-24px,-18px);opacity:.9}
}
@keyframes spin{
  to{transform:rotate(1turn)}
}
@keyframes boot{
  from{width:6%}
  to{width:100%}
}
@keyframes bounce{
  0%,100%{height:26px;opacity:.75}
  50%{height:128px;opacity:1}
}
@keyframes aquaCreature{
  from{left:-12%;transform:translateY(0) scaleX(1)}
  45%{transform:translateY(-28px) scaleX(1)}
  50%{left:103%;transform:translateY(20px) scaleX(1)}
  51%{transform:translateY(20px) scaleX(-1)}
  95%{transform:translateY(-20px) scaleX(-1)}
  to{left:-12%;transform:translateY(0) scaleX(-1)}
}
@keyframes drift{
  from{background-position:0 0}
  to{background-position:120px -120px}
}
@keyframes dot{
  0%,100%{transform:translateY(0);opacity:.35}
  50%{transform:translateY(-4px);opacity:1}
}
@media (max-width:1100px){
  .desktop-topbar{
    right:24px;
  }
  .sidebar{
    display:none;
  }
  .toast-stack{
    right:18px;
  }
}
@media (max-width:760px){
  html,body{
    overflow:auto;
  }
  .desktop{
    min-height:100vh;
    overflow:auto;
  }
  .desktop-topbar{
    position:relative;
    left:auto;
    right:auto;
    top:auto;
    margin:10px;
    flex-direction:column;
    align-items:stretch;
  }
  .headline-ticker{
    display:none;
  }
  .desktop-icons{
    position:relative;
    left:auto;
    top:auto;
    bottom:auto;
    width:auto;
    grid-template-columns:repeat(3,1fr);
    grid-auto-rows:92px;
    padding:10px;
  }
  .window-layer{
    position:relative;
    min-height:520px;
  }
  .app-window{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    width:calc(100vw - 20px)!important;
    height:620px!important;
    margin:10px;
  }
  .taskbar{
    position:fixed;
  }
  .start-menu{
    position:fixed;
    left:8px;
    right:8px;
    width:auto;
    grid-template-columns:1fr;
    bottom:64px;
    max-height:calc(100vh - 90px);
    overflow:auto;
  }
  .start-right{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .user-tile{
    grid-column:1/-1;
  }
  .music-app{
    grid-template-columns:1fr;
  }
  .browser-bar{
    grid-template-columns:auto auto 1fr;
  }
  .browser-bar .popout-button,
  .browser-bar .home-button{
    display:none;
  }
  .portal-hero h1,
  .hero h1{
    font-size:34px;
  }
}
.window-toolbar .browser-bar{
  width:100%;
}
.window-toolbar .browser-address{
  width:100%;
}


/* v5 clean cryptic Frutiger Aero upgrade */
[data-wallpaper="core"] .wallpaper{
  background-image:
    radial-gradient(circle at 22% 11%,rgba(255,255,255,.96),transparent 18%),
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(47,209,255,.18) 50%,rgba(79,211,70,.24)),
    url('assets/v23/textures/sky-clouds.svg');
  background-position:center;
  background-size:cover;
}
[data-wallpaper="liminal"] .wallpaper{
  background-image:
    radial-gradient(circle at 49% 20%,rgba(255,255,255,.94),transparent 13%),
    radial-gradient(circle at 70% 54%,rgba(161,255,85,.52),transparent 20%),
    radial-gradient(circle at 22% 40%,rgba(68,217,255,.48),transparent 24%),
    linear-gradient(150deg,#61dbff 0%,#f8ffff 42%,#74e05b 67%,#021f42 100%);
  filter:saturate(1.35) contrast(1.07) brightness(1.02);
}
[data-aura="deep"] .wallpaper::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 51% 44%,transparent 0 16%,rgba(213,255,255,.10) 18%,transparent 23%),
    radial-gradient(circle at 50% 50%,rgba(13,45,84,.10),transparent 52%);
  mix-blend-mode:multiply;
  pointer-events:none;
}
.signal-halo{
  width:34vw;
  height:34vw;
  min-width:330px;
  min-height:330px;
  left:50%;
  top:46%;
  border-radius:50%;
  transform:translate(-50%,-50%);
  border:1px solid rgba(225,255,255,.25);
  background:radial-gradient(circle,transparent 44%,rgba(227,255,255,.16) 48%,transparent 52%,rgba(142,255,91,.10) 62%,transparent 68%);
  filter:blur(.2px) drop-shadow(0 0 28px rgba(153,255,255,.42));
  opacity:.78;
  animation:haloBreathe 9s ease-in-out infinite;
}
.signal-mist{
  left:-10%;
  right:-10%;
  bottom:18%;
  height:180px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),rgba(122,255,222,.15),transparent);
  filter:blur(18px);
  opacity:.7;
  transform:rotate(-2deg);
  animation:mistSlide 15s ease-in-out infinite;
}
.glyph-layer{
  position:absolute;
  inset:0;
  overflow:hidden;
  pointer-events:none;
  z-index:2;
}
.glyph-layer span{
  position:absolute;
  left:var(--x);
  top:var(--y);
  transform:scale(var(--s));
  color:rgba(237,255,255,.68);
  font-family:Georgia,serif;
  font-weight:700;
  letter-spacing:.08em;
  text-shadow:0 0 9px rgba(89,232,255,.8),0 0 24px rgba(145,255,94,.35);
  animation:glyphFloat var(--d) ease-in-out infinite;
}
body.shrine-touched .glyph-layer span{
  animation-duration:1.1s;
  color:rgba(255,255,255,.98);
}
.desktop-topbar,
.sidebar,
.app-window{
  backdrop-filter:blur(22px) saturate(1.58);
  -webkit-backdrop-filter:blur(22px) saturate(1.58);
}
.desktop-topbar{
  border-radius:24px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,.28) 52%,rgba(76,197,255,.18)),
    radial-gradient(circle at 45% -30%,rgba(255,255,255,.8),transparent 44%);
}
.app-window{
  border-radius:19px;
}
.window-titlebar{
  background:
    linear-gradient(180deg,rgba(255,255,255,.56),rgba(109,216,255,.30) 48%,rgba(0,95,180,.16)),
    radial-gradient(circle at 30% 0,rgba(255,255,255,.9),transparent 38%);
}
.window-body{
  background:linear-gradient(180deg,rgba(249,255,255,.72),rgba(226,252,255,.50));
}
.pump-hero,
.lore-hero{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px;
  align-items:center;
  border:1px solid rgba(255,255,255,.68);
  border-radius:26px;
  padding:24px;
  background:
    radial-gradient(circle at 86% 18%,rgba(255,255,255,.94),transparent 16%),
    radial-gradient(circle at 14% 80%,rgba(139,255,94,.35),transparent 24%),
    linear-gradient(135deg,rgba(255,255,255,.78),rgba(102,223,255,.34),rgba(145,255,98,.22));
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 18px 42px rgba(0,60,105,.15);
}
.pump-sigil{
  width:112px;
  height:112px;
  display:grid;
  place-items:center;
  border-radius:50%;
  font-size:66px;
  color:#03517e;
  background:radial-gradient(circle at 32% 24%,#fff,#bffff7 24%,#4bd8ff 52%,#83ff58 78%,#07568d 100%);
  box-shadow:inset -11px -12px 25px rgba(0,60,120,.30),inset 10px 9px 20px rgba(255,255,255,.68),0 0 34px rgba(178,255,247,.58);
  animation:orbListen 6s ease-in-out infinite;
}
.pump-hero h1,
.lore-hero h1{
  margin:.05em 0 .2em;
  font-size:44px;
  letter-spacing:-.05em;
  color:#064b80;
}
.launch-rail{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:12px;
  margin:16px 0;
}
.launch-card{
  position:relative;
  overflow:hidden;
  min-height:150px;
  border:1px solid rgba(255,255,255,.62);
  border-radius:22px;
  padding:15px;
  background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,255,255,.24));
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 14px 26px rgba(0,62,105,.12);
}
.launch-card span{
  display:inline-grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:50%;
  background:linear-gradient(180deg,#fff,#82eaff);
  font-weight:900;
  color:#075079;
}
.launch-card.ready span{background:linear-gradient(180deg,#fff,#aaff70)}
.launch-card.active{
  outline:2px solid rgba(89,219,255,.5);
}
.launch-card.active::after{
  content:"";
  position:absolute;
  inset:-30% 70% -30% -20%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);
  transform:rotate(18deg);
  animation:sweep 3.8s ease-in-out infinite;
}
.clean-copy{
  margin-top:16px;
}
.dex-app{
  display:grid;
  grid-template-columns:1fr 280px;
  gap:15px;
  height:100%;
  min-height:430px;
}
.chart-shell{
  position:relative;
  overflow:hidden;
  min-height:420px;
  border:1px solid rgba(255,255,255,.66);
  border-radius:26px;
  background:
    radial-gradient(circle at 50% 32%,rgba(255,255,255,.65),transparent 16%),
    linear-gradient(180deg,#09365e,#0a517d 43%,#defcff 44%,#80e866 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.86),0 20px 48px rgba(0,34,74,.22);
}
.chart-grid-lines{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.20) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.20) 1px,transparent 1px);
  background-size:46px 38px;
  opacity:.72;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.8),rgba(0,0,0,.25));
}
.chart-aura{
  position:absolute;
  inset:12%;
  border-radius:50%;
  border:1px solid rgba(225,255,255,.4);
  box-shadow:0 0 70px rgba(115,236,255,.45),inset 0 0 60px rgba(153,255,93,.18);
  animation:haloCenter 7s ease-in-out infinite;
}
.pending-chart{
  position:absolute;
  left:50%;
  top:50%;
  width:min(430px,82%);
  transform:translate(-50%,-50%);
  text-align:center;
  border:1px solid rgba(255,255,255,.72);
  border-radius:24px;
  padding:24px;
  background:rgba(244,255,255,.68);
  box-shadow:inset 0 1px rgba(255,255,255,.92),0 20px 45px rgba(0,37,76,.25);
  backdrop-filter:blur(12px) saturate(1.5);
}
.pending-chart strong{
  display:block;
  color:#073a65;
  letter-spacing:.12em;
  font-size:12px;
}
.pending-chart span{
  display:block;
  margin:8px 0;
  font-size:52px;
  font-weight:900;
  letter-spacing:-.06em;
  color:#075b8d;
}
.dex-side{
  border:1px solid rgba(255,255,255,.62);
  border-radius:24px;
  padding:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.66),rgba(255,255,255,.28));
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 14px 30px rgba(0,61,102,.13);
}
.dex-side h1{
  margin:.1em 0 .3em;
  letter-spacing:-.05em;
  color:#064b80;
}
.dex-side .glass-button{
  width:100%;
  margin-top:8px;
}
.lore-hero{
  grid-template-columns:1fr;
}
.lore-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
  margin:16px 0;
}
.lore-card{
  position:relative;
  min-height:162px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.62);
  border-radius:22px;
  padding:16px;
  background:
    radial-gradient(circle at calc(10% + var(--i)*12%) 0,rgba(255,255,255,.8),transparent 28%),
    linear-gradient(180deg,rgba(255,255,255,.58),rgba(187,244,255,.24));
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 14px 28px rgba(0,61,105,.12);
}
.lore-card::after{
  content:"◌";
  position:absolute;
  right:14px;
  bottom:-14px;
  font:700 76px Georgia,serif;
  color:rgba(255,255,255,.42);
  text-shadow:0 0 18px rgba(100,224,255,.45);
}
.lore-card small{
  color:#1588af;
  font-weight:900;
  letter-spacing:.12em;
}
.lore-card h3{margin:8px 0;color:#073f68}
#oracleLine,
.whisper-line{
  font-family:Georgia,serif;
  font-size:18px;
  color:#053a5f;
  text-shadow:0 1px rgba(255,255,255,.8);
}
.shrine-app{
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(280px,360px);
  gap:16px;
  min-height:100%;
}
.shrine-orb-wrap{
  position:relative;
  display:grid;
  place-items:center;
  min-height:420px;
  border:1px solid rgba(255,255,255,.62);
  border-radius:30px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 40%,rgba(255,255,255,.96),transparent 17%),
    linear-gradient(180deg,#7ce8ff,#f8ffff 46%,#78e665 76%,#05366a 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.92),0 20px 45px rgba(0,48,91,.18);
}
.shrine-orb{
  position:relative;
  z-index:2;
  width:190px;
  height:190px;
  border:1px solid rgba(255,255,255,.85);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#063b65;
  font-weight:900;
  letter-spacing:-.06em;
  background:
    radial-gradient(circle at 32% 22%,#fff 0 10%,#cffff8 16%,#4bdfff 42%,#8fff5e 67%,#042c61 100%);
  box-shadow:inset -22px -26px 50px rgba(0,35,97,.34),inset 14px 14px 30px rgba(255,255,255,.66),0 0 72px rgba(167,255,244,.68);
  animation:orbListen 5.5s ease-in-out infinite;
}
.shrine-orb span{font-size:34px;text-shadow:0 1px rgba(255,255,255,.65)}
.shrine-rings,
.shrine-rings::before,
.shrine-rings::after{
  position:absolute;
  content:"";
  border:1px solid rgba(255,255,255,.38);
  border-radius:50%;
  inset:14%;
  animation:haloCenter 7s ease-in-out infinite;
}
.shrine-rings::before{inset:12%;animation-delay:-1.2s}
.shrine-rings::after{inset:-12%;animation-delay:-2.4s}
.shrine-panel{
  border:1px solid rgba(255,255,255,.62);
  border-radius:26px;
  padding:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.66),rgba(255,255,255,.27));
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 14px 30px rgba(0,61,102,.13);
}
.shrine-panel h1{margin:.08em 0 .28em;color:#064b80;letter-spacing:-.05em}
.signal-readouts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin:14px 0;
}
.signal-readouts div{
  border:1px solid rgba(255,255,255,.55);
  border-radius:16px;
  padding:10px;
  background:rgba(255,255,255,.28);
}
.signal-readouts small{display:block;color:#577888}
.signal-readouts strong{display:block;color:#064b80;font-size:20px}
.upgraded-arcade .game-canvas{
  min-height:390px;
}
.typing-stage{
  position:relative;
  min-height:390px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.66);
  border-radius:20px;
  background:
    radial-gradient(circle at 50% 18%,rgba(255,255,255,.86),transparent 14%),
    linear-gradient(180deg,#93ebff,#f4ffff 55%,#74df5d 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 14px 30px rgba(0,64,111,.17);
}
.typing-words{
  position:absolute;
  inset:0;
}
.cipher-word{
  position:absolute;
  padding:7px 11px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:999px;
  color:#053a61;
  font-weight:900;
  background:rgba(255,255,255,.50);
  box-shadow:0 0 18px rgba(120,229,255,.38),inset 0 1px rgba(255,255,255,.9);
}
.cipher-word.glow{
  background:linear-gradient(180deg,#fff,rgba(174,255,90,.62));
  box-shadow:0 0 24px rgba(177,255,88,.75),inset 0 1px rgba(255,255,255,.9);
}
.typing-input{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:16px;
  padding:13px 15px;
  background:rgba(255,255,255,.72);
  color:#073a5d;
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 12px 28px rgba(0,64,111,.16);
}
.whisper-gadget p{
  margin:.2em 0 0;
  font-family:Georgia,serif;
  color:#063a5e;
}
@keyframes haloBreathe{
  0%,100%{transform:translate(-50%,-50%) scale(.96);opacity:.42}
  50%{transform:translate(-50%,-50%) scale(1.04);opacity:.86}
}
@keyframes haloCenter{
  0%,100%{transform:scale(.96);opacity:.42}
  50%{transform:scale(1.04);opacity:.86}
}
@keyframes mistSlide{
  0%,100%{transform:translateX(-6%) rotate(-2deg);opacity:.48}
  50%{transform:translateX(6%) rotate(1deg);opacity:.78}
}
@keyframes glyphFloat{
  0%,100%{transform:translateY(0) scale(var(--s));opacity:.18}
  38%{opacity:.72}
  50%{transform:translateY(-18px) scale(calc(var(--s) * 1.08));opacity:.88}
}
@keyframes orbListen{
  0%,100%{transform:scale(1);filter:saturate(1)}
  50%{transform:scale(1.035);filter:saturate(1.18) brightness(1.05)}
}
@media (max-width:900px){
  .dex-app,
  .shrine-app,
  .pump-hero{
    grid-template-columns:1fr;
  }
  .dex-side{
    order:-1;
  }
  .shrine-orb-wrap{
    min-height:300px;
  }
  .pump-sigil{
    width:84px;
    height:84px;
    font-size:48px;
  }
}


/* v6 cleanup pass: cleaner desktop, working controls, fitted tabs */
.desktop-topbar{
  right:318px;
  min-height:58px;
  padding:9px 12px;
  gap:14px;
}
.top-actions{
  flex-wrap:wrap;
  justify-content:flex-end;
  max-width:520px;
}
.top-actions .glass-button{
  padding:8px 11px;
}
.desktop-icons{
  top:102px;
  bottom:78px;
  width:132px;
  padding:10px 8px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(147,232,255,.13));
  box-shadow:inset 0 1px rgba(255,255,255,.46),0 20px 50px rgba(0,55,99,.13);
  backdrop-filter:blur(13px) saturate(1.22);
  overflow:hidden auto;
  grid-auto-rows:84px;
}
.desktop-icon .icon-bubble{
  width:43px;
  height:43px;
  border-radius:14px;
}
.desktop-dashboard{
  position:absolute;
  left:174px;
  right:326px;
  bottom:88px;
  z-index:2;
  min-height:104px;
  border-radius:28px;
  padding:16px 18px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  opacity:.94;
}
.dash-orb{
  width:74px;
  height:74px;
  display:grid;
  place-items:center;
  border-radius:50%;
  font-weight:900;
  font-size:34px;
  color:white;
  text-shadow:0 2px 8px rgba(0,38,78,.55);
  background:radial-gradient(circle at 28% 18%,#fff 0 10%,#c9fff4 18%,#51edd0 34%,#14aafa 64%,#07528d 100%);
  box-shadow:0 18px 34px rgba(0,72,128,.25),inset 0 1px rgba(255,255,255,.9),0 0 34px rgba(178,255,255,.52);
}
.dash-copy h2{
  margin:0;
  font-size:32px;
  letter-spacing:-.04em;
  color:#073f72;
}
.dash-copy p{
  margin:4px 0 0;
  color:#245d75;
}
.dash-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
  max-width:390px;
}
.app-window{
  min-width:360px;
  min-height:300px;
}
.window-titlebar{
  user-select:none;
}
.window-controls{
  flex:0 0 auto;
  position:relative;
  z-index:5;
}
.window-controls button{
  cursor:pointer;
}
.window-toolbar{
  overflow:hidden;
}
.window-toolbar:not(:empty){
  min-height:43px;
}
.browser-bar{
  width:100%;
  min-width:0;
  grid-template-columns:auto auto minmax(150px,1fr) auto auto;
}
.browser-address{
  width:100%;
  min-width:120px;
}
.browser-actions.browser-quicklinks{
  flex-wrap:nowrap;
  overflow-x:auto;
  padding-bottom:2px;
}
.browser-actions.browser-quicklinks .web-chip{
  flex:0 0 auto;
}
.web-chip:is(button){
  cursor:pointer;
  font:inherit;
}
.arcade-tabs{
  width:100%;
  min-width:0;
  flex-wrap:nowrap;
  overflow-x:auto;
  padding:2px 0 6px;
  scrollbar-width:thin;
}
.arcade-tab{
  flex:0 0 auto;
  white-space:nowrap;
  padding:8px 11px;
  font-size:12px;
}
.game-stage{
  min-height:0;
}
.game-panel.active{
  min-height:0;
}
.game-hud strong{
  color:#073f72;
}
.tile-grid{
  width:min(560px,100%);
  margin:auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(54px,1fr));
  gap:12px;
}
.tile-cell{
  min-height:78px;
  border:1px solid rgba(255,255,255,.68);
  border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(147,232,255,.24));
  color:#0b5d8a;
  font-size:28px;
  font-weight:900;
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 12px 26px rgba(0,73,120,.13);
  cursor:pointer;
}
.tile-cell.lit{
  background:radial-gradient(circle at 36% 22%,#fff 0 12%,#c9fff3 22%,#65f6c4 45%,#21b8ff 100%);
  color:white;
  text-shadow:0 2px 8px rgba(0,52,98,.55);
  box-shadow:0 0 28px rgba(145,255,231,.55),inset 0 1px rgba(255,255,255,.95);
  transform:scale(1.03);
}
.task-buttons{
  overflow-x:auto;
  scrollbar-width:thin;
}
.task-button{
  flex:0 0 auto;
  max-width:178px;
}
.start-menu{
  max-width:calc(100vw - 26px);
}
@media (max-width:1100px){
  .desktop-topbar{right:24px;}
  .desktop-dashboard{right:24px;}
}
@media (max-width:860px){
  .desktop-dashboard{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    margin:10px;
    grid-template-columns:1fr;
  }
  .dash-actions{justify-content:flex-start;max-width:none;}
  .browser-bar{grid-template-columns:auto auto minmax(120px,1fr) auto;}
  .browser-bar .home-button{display:none;}
}
@media (max-width:760px){
  .desktop-icons{
    border-radius:20px;
    overflow:visible;
  }
  .window-toolbar:not(:empty){
    overflow-x:auto;
  }
  .arcade-tabs{padding-bottom:8px;}
  .game-canvas{min-height:270px;}
  .tile-cell{min-height:62px;}
}


/* ===== Character / Beach / Cleaner Desktop Upgrade ===== */
.creator-boot .boot-card-creator{
  width:min(1060px,calc(100vw - 34px));
  min-height:min(720px,calc(100vh - 34px));
  display:grid;
  grid-template-rows:auto 1fr;
  gap:18px;
  padding:30px;
  overflow:hidden;
}
.boot-intro{
  position:relative;
  z-index:2;
  display:grid;
  gap:7px;
}
.boot-intro h1{
  margin:0;
  font-size:clamp(56px,9vw,104px);
  line-height:.82;
  letter-spacing:-.08em;
  color:#fff;
  text-shadow:0 5px 20px rgba(0,72,145,.5),0 1px rgba(255,255,255,.75);
}
.creator-setup{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(270px,.82fr) minmax(330px,1.18fr);
  gap:18px;
  align-items:stretch;
}
.creator-preview-card,
.creator-controls-card{
  border:1px solid rgba(255,255,255,.62);
  border-radius:30px;
  background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(168,236,255,.25));
  box-shadow:inset 0 1px rgba(255,255,255,.86),0 24px 60px rgba(0,62,122,.24);
  backdrop-filter:blur(18px) saturate(1.3);
}
.creator-preview-card{
  display:grid;
  place-items:center;
  align-content:center;
  gap:12px;
  padding:24px;
  text-align:center;
}
.creator-preview-card strong{
  font-size:26px;
  color:#083653;
}
.creator-preview-card small{
  max-width:260px;
  color:#386b82;
  line-height:1.45;
}
.creator-controls-card{
  padding:20px;
  display:grid;
  gap:14px;
  align-content:start;
}
.glass-label{
  display:grid;
  gap:7px;
  font-weight:800;
  color:#0a4767;
}
.creator-row{
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
  padding:12px;
  border:1px solid rgba(255,255,255,.5);
  border-radius:20px;
  background:rgba(255,255,255,.25);
}
.creator-row span{
  min-width:62px;
  font-weight:900;
  color:#0a4767;
}
.swatch,
.fit-chip{
  border:1px solid rgba(255,255,255,.74);
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 8px 18px rgba(0,66,122,.12);
}
.swatch{
  width:34px;
  height:34px;
  border-radius:50%;
}
.skin-one{background:linear-gradient(135deg,#fff5e7,#ffd5a5)}
.skin-two{background:linear-gradient(135deg,#ffe1bd,#d9945b)}
.skin-three{background:linear-gradient(135deg,#c99a62,#7b4f29)}
.skin-four{background:linear-gradient(135deg,#dff6ff,#6dcaf0)}
.hair-one{background:linear-gradient(135deg,#62edff,#057dc4)}
.hair-two{background:linear-gradient(135deg,#caff5d,#29b84d)}
.hair-three{background:linear-gradient(135deg,#284362,#071a31)}
.hair-four{background:linear-gradient(135deg,#fff,#a8c4d5)}
.fit-chip{
  padding:8px 12px;
  border-radius:999px;
  color:#0a4767;
  font-weight:800;
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(130,225,255,.46));
}
.fit-chip.active,
.swatch.active{
  outline:3px solid rgba(114,255,132,.55);
  box-shadow:0 0 0 1px rgba(0,122,200,.28),0 0 22px rgba(77,221,255,.45),inset 0 1px rgba(255,255,255,.94);
}
.boot-enter{
  min-height:50px;
  font-size:18px;
  font-weight:900;
}
#bootProgress{
  width:72%;
  animation:bootPulse 2.2s ease-in-out infinite alternate;
}
@keyframes bootPulse{
  from{width:42%}
  to{width:96%}
}
.desktop-icons.icon-free{
  left:18px;
  top:104px;
  right:auto;
  bottom:auto;
  width:0;
  height:0;
  padding:0;
  display:block;
  overflow:visible;
  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}
.desktop-icon.draggable-icon{
  position:absolute;
  width:112px;
  min-height:88px;
  touch-action:none;
  transition:transform .15s ease,background .15s ease,box-shadow .15s ease;
  cursor:grab;
}
.desktop-icon.draggable-icon:active{
  cursor:grabbing;
  transform:scale(1.035);
}
.desktop-icon.dragging{
  opacity:.9;
  z-index:80;
}
.desktop-icon .icon-label{
  display:block;
  font-size:12px;
  line-height:1.12;
  padding-top:4px;
  color:white;
}
.desktop-dashboard{
  border-radius:32px;
  background:linear-gradient(135deg,rgba(255,255,255,.62),rgba(193,243,255,.23) 40%,rgba(110,222,150,.18));
  box-shadow:inset 0 1px rgba(255,255,255,.82),0 28px 72px rgba(0,54,118,.18);
}
.desktop-dashboard::before{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:inherit;
  background:radial-gradient(circle at 80% 18%,rgba(255,255,255,.65),transparent 24%),linear-gradient(90deg,rgba(255,255,255,.15),transparent);
  pointer-events:none;
}
.window-titlebar{
  min-height:42px;
}
.app-window{
  filter:drop-shadow(0 28px 42px rgba(0,45,100,.22));
}
.desktop-avatar{
  position:absolute;
  z-index:9;
  left:47%;
  top:59%;
  width:74px;
  height:116px;
  transform:translate(-50%,-50%);
  pointer-events:auto;
  touch-action:none;
  cursor:grab;
}
.desktop-avatar:active{
  cursor:grabbing;
}
.avatar-nameplate{
  position:absolute;
  left:50%;
  bottom:99%;
  transform:translateX(-50%);
  white-space:nowrap;
  padding:4px 9px;
  border-radius:999px;
  color:white;
  font-weight:900;
  font-size:11px;
  text-shadow:0 1px 5px rgba(0,45,90,.85);
  background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(0,128,210,.35));
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 8px 22px rgba(0,44,95,.24),inset 0 1px rgba(255,255,255,.75);
}
.avatar-sprite,
.avatar-preview{
  --skin:#ffd9aa;
  --hair:#11b8e7;
  --shirt:#2fd6ff;
  --trim:#9fff6d;
  position:relative;
  width:72px;
  height:102px;
  margin:auto;
  filter:drop-shadow(0 12px 13px rgba(0,58,115,.25));
}
.avatar-preview.xl{
  width:154px;
  height:214px;
  transform:scale(1.35);
  transform-origin:center;
  margin:26px auto 36px;
}
.avatar-preview.sm{
  width:58px;
  height:82px;
}
.avatar-sprite::before,
.avatar-preview::before{
  content:"";
  position:absolute;
  left:18px;
  top:7px;
  width:36px;
  height:39px;
  border-radius:46% 46% 45% 45%;
  background:
    radial-gradient(circle at 37% 43%,#053650 0 2px,transparent 3px),
    radial-gradient(circle at 63% 43%,#053650 0 2px,transparent 3px),
    radial-gradient(ellipse at 50% 70%,rgba(255,255,255,.55) 0 5px,transparent 6px),
    linear-gradient(180deg,var(--skin),color-mix(in srgb,var(--skin),#d99555 18%));
  border:1px solid rgba(255,255,255,.82);
  box-shadow:inset 5px 6px 10px rgba(255,255,255,.38),0 5px 12px rgba(0,58,115,.18);
  z-index:3;
}
.avatar-sprite::after,
.avatar-preview::after{
  content:"";
  position:absolute;
  left:13px;
  top:1px;
  width:46px;
  height:26px;
  border-radius:22px 22px 13px 13px;
  background:linear-gradient(180deg,var(--hair),color-mix(in srgb,var(--hair),#002d55 38%));
  box-shadow:inset 0 1px rgba(255,255,255,.7),0 4px 9px rgba(0,66,132,.2);
  z-index:4;
}
.avatar-sprite .avatar-body,
.avatar-preview .avatar-body{
  position:absolute;
  left:15px;
  top:46px;
  width:42px;
  height:43px;
  border-radius:16px 16px 18px 18px;
  background:
    radial-gradient(circle at 72% 24%,rgba(255,255,255,.72),transparent 23%),
    linear-gradient(180deg,var(--shirt),color-mix(in srgb,var(--shirt),#0069af 25%));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 8px 14px rgba(0,55,108,.18);
  z-index:2;
}
.avatar-sprite .avatar-arm-left,
.avatar-sprite .avatar-arm-right,
.avatar-preview .avatar-arm-left,
.avatar-preview .avatar-arm-right{
  position:absolute;
  top:51px;
  width:13px;
  height:34px;
  border-radius:9px;
  background:linear-gradient(180deg,var(--skin),color-mix(in srgb,var(--skin),#c07738 22%));
  z-index:1;
}
.avatar-sprite .avatar-arm-left,
.avatar-preview .avatar-arm-left{left:6px;transform:rotate(9deg)}
.avatar-sprite .avatar-arm-right,
.avatar-preview .avatar-arm-right{right:6px;transform:rotate(-9deg)}
.avatar-sprite .avatar-leg-left,
.avatar-sprite .avatar-leg-right,
.avatar-preview .avatar-leg-left,
.avatar-preview .avatar-leg-right{
  position:absolute;
  top:84px;
  width:17px;
  height:19px;
  border-radius:0 0 12px 12px;
  background:linear-gradient(180deg,#0c7ec4,#064a86);
  z-index:1;
}
.avatar-sprite .avatar-leg-left,
.avatar-preview .avatar-leg-left{left:18px}
.avatar-sprite .avatar-leg-right,
.avatar-preview .avatar-leg-right{right:18px}
.avatar-sprite .avatar-badge,
.avatar-preview .avatar-badge{
  position:absolute;
  left:30px;
  top:58px;
  z-index:5;
  width:12px;
  height:12px;
  display:grid;
  place-items:center;
  border-radius:50%;
  font-size:8px;
  color:#064464;
  background:radial-gradient(circle at 35% 20%,#fff,#aaff68 68%);
  border:1px solid rgba(255,255,255,.72);
}
.avatar-shadow{
  position:absolute;
  left:50%;
  bottom:0;
  width:60px;
  height:14px;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(0,63,108,.24),transparent 68%);
}
.desktop-avatar.walking .avatar-sprite{
  animation:avatarBob .34s ease-in-out infinite alternate;
}
.desktop-avatar.walking .avatar-leg-left,
.desktop-avatar.walking .avatar-leg-right{
  animation:avatarStep .34s ease-in-out infinite alternate;
}
.desktop-avatar.walking .avatar-leg-right{animation-delay:.17s}
@keyframes avatarBob{from{transform:translateY(0)}to{transform:translateY(-4px)}}
@keyframes avatarStep{from{transform:translateY(0)}to{transform:translateY(4px)}}
.custom-cursor{
  position:fixed;
  z-index:99999;
  width:26px;
  height:26px;
  left:-40px;
  top:-40px;
  pointer-events:none;
  border-radius:50%;
  opacity:.92;
  mix-blend-mode:screen;
  transform:translate(-30%,-30%);
  transition:width .16s ease,height .16s ease,opacity .16s ease;
}
body[data-cursor-theme="aqua"] .custom-cursor{
  background:radial-gradient(circle at 34% 26%,#fff 0 14%,#88f3ff 20%,rgba(0,143,255,.3) 58%,transparent 72%);
  box-shadow:0 0 20px rgba(58,224,255,.62);
}
body[data-cursor-theme="bubble"] .custom-cursor{
  width:31px;height:31px;
  background:radial-gradient(circle at 30% 24%,#fff 0 12%,rgba(255,255,255,.35) 22%,rgba(98,229,255,.26) 60%,transparent 74%);
  border:1px solid rgba(255,255,255,.7);
}
body[data-cursor-theme="leaf"] .custom-cursor{
  width:22px;height:31px;border-radius:70% 0 70% 0;
  background:linear-gradient(135deg,#eaffff,#aaff5b 45%,#24b962);
  box-shadow:0 0 16px rgba(130,255,99,.55);
}
body[data-cursor-theme="glass"] .custom-cursor{
  width:28px;height:28px;border-radius:9px 50% 50% 50%;
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(75,215,255,.35));
  border:1px solid rgba(255,255,255,.8);
  box-shadow:0 0 22px rgba(255,255,255,.7);
}
body.cursor-down .custom-cursor{
  width:18px;
  height:18px;
  opacity:.75;
}
.character-editor{
  display:grid;
  grid-template-columns:minmax(230px,.75fr) minmax(320px,1.25fr);
  gap:16px;
  min-height:100%;
}
.editor-preview-panel,
.editor-control-panel,
.editor-inventory{
  border:1px solid rgba(255,255,255,.52);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.54),rgba(188,241,255,.2));
  box-shadow:inset 0 1px rgba(255,255,255,.78),0 18px 38px rgba(0,56,108,.12);
}
.editor-preview-panel{
  display:grid;
  place-items:center;
  align-content:center;
  gap:14px;
  padding:24px;
}
.editor-preview-panel h2,
.editor-control-panel h2{
  margin:0;
  letter-spacing:-.04em;
}
.editor-control-panel{
  padding:18px;
  display:grid;
  gap:14px;
  align-content:start;
}
.editor-inventory{
  grid-column:1 / -1;
  padding:14px;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:12px;
}
.inventory-card{
  border-radius:18px;
  padding:14px;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(255,255,255,.35);
}
.beach-toolbar{
  display:flex;
  gap:8px;
  overflow:auto;
}
.beach-game{
  display:grid;
  grid-template-rows:auto 1fr;
  gap:12px;
  height:100%;
}
.beach-hud{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.54);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(144,230,255,.2));
}
.beach-stage{
  position:relative;
  min-height:420px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.62);
  border-radius:28px;
  background:
    radial-gradient(circle at 18% 18%,rgba(255,255,255,.9),transparent 13%),
    radial-gradient(circle at 81% 22%,rgba(255,255,255,.55),transparent 15%),
    linear-gradient(180deg,#70dbff 0%,#e4ffff 36%,#ffe7a0 38%,#ffd477 70%,#4cc86a 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.84),0 22px 55px rgba(0,58,115,.2);
  isolation:isolate;
}
.beach-stage::before{
  content:"";
  position:absolute;
  left:-10%;right:-10%;top:30%;height:100px;
  background:
    radial-gradient(ellipse at 20% 52%,rgba(255,255,255,.8),transparent 23%),
    radial-gradient(ellipse at 55% 42%,rgba(255,255,255,.78),transparent 24%),
    linear-gradient(180deg,rgba(81,220,255,.88),rgba(255,255,255,.72),rgba(255,255,255,0));
  border-radius:0 0 50% 50%;
  animation:waterLap 6s ease-in-out infinite alternate;
  z-index:0;
}
.beach-stage::after{
  content:"";
  position:absolute;
  inset:auto -3% 0 -3%;
  height:150px;
  background:
    radial-gradient(circle at 12% 72%,#88e159 0 8px,transparent 9px),
    radial-gradient(circle at 80% 62%,#fff0b1 0 7px,transparent 8px),
    linear-gradient(180deg,rgba(255,247,181,.1),rgba(63,190,92,.42));
  z-index:0;
}
@keyframes waterLap{from{transform:translateX(-10px) translateY(0)}to{transform:translateX(24px) translateY(8px)}}
.beach-object{
  position:absolute;
  z-index:1;
  user-select:none;
}
.beach-palm{
  left:38px;bottom:78px;font-size:68px;filter:drop-shadow(0 12px 14px rgba(0,61,93,.22));
}
.beach-umbrella{
  right:62px;bottom:100px;font-size:72px;filter:drop-shadow(0 14px 16px rgba(0,61,93,.2));
}
.beach-boombox{
  right:178px;bottom:77px;font-size:42px;filter:drop-shadow(0 8px 11px rgba(0,61,93,.18));
}
.beach-player,
.beach-npc{
  position:absolute;
  width:72px;
  height:108px;
  z-index:4;
  transition:filter .18s ease;
}
.beach-player.walking .avatar-preview,
.beach-npc.walking .avatar-preview{animation:avatarBob .34s ease-in-out infinite alternate}
.beach-player-name,
.beach-npc-name{
  position:absolute;
  left:50%;bottom:98%;transform:translateX(-50%);
  white-space:nowrap;
  padding:4px 8px;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
  color:#fff;
  text-shadow:0 1px 5px rgba(0,44,90,.9);
  background:linear-gradient(180deg,rgba(255,255,255,.44),rgba(0,128,214,.36));
  border:1px solid rgba(255,255,255,.58);
}
.beach-npc{
  filter:hue-rotate(70deg) saturate(1.2);
}
.shell-item,
.bubble-item{
  position:absolute;
  z-index:3;
  width:32px;height:32px;
  display:grid;place-items:center;
  font-size:24px;
  border-radius:50%;
  background:radial-gradient(circle at 32% 20%,#fff,rgba(167,244,255,.55) 48%,rgba(255,255,255,.15));
  border:1px solid rgba(255,255,255,.66);
  box-shadow:0 10px 20px rgba(0,71,120,.18),inset 0 1px rgba(255,255,255,.86);
  animation:floatToken 2.4s ease-in-out infinite alternate;
}
@keyframes floatToken{from{transform:translateY(0)}to{transform:translateY(-8px)}}
.beach-chat{
  position:absolute;
  left:18px;
  right:18px;
  bottom:16px;
  z-index:8;
  display:flex;
  gap:10px;
  align-items:center;
  padding:10px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.58);
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(198,244,255,.42));
  box-shadow:0 14px 28px rgba(0,70,124,.16);
}
.beach-chat input{flex:1;min-width:120px}
.beach-log{
  position:absolute;
  left:18px;top:18px;
  z-index:8;
  width:min(300px,calc(100% - 36px));
  max-height:120px;
  overflow:auto;
  display:grid;
  gap:6px;
  pointer-events:none;
}
.beach-log p{
  margin:0;
  padding:7px 10px;
  border-radius:14px;
  background:rgba(255,255,255,.58);
  border:1px solid rgba(255,255,255,.5);
  font-size:12px;
  box-shadow:0 8px 18px rgba(0,57,102,.1);
}
.beach-minimap{
  position:absolute;right:18px;top:18px;z-index:8;
  width:116px;height:82px;border-radius:16px;
  border:1px solid rgba(255,255,255,.64);
  background:linear-gradient(180deg,#a9f3ff,#fff7b6 50%,#8fe36f);
  box-shadow:inset 0 1px rgba(255,255,255,.82),0 12px 22px rgba(0,52,104,.13);
}
.beach-minimap-dot{
  position:absolute;width:8px;height:8px;border-radius:50%;background:#006fc5;box-shadow:0 0 0 3px rgba(255,255,255,.6);
}
.arcade-launch-card{
  display:grid;
  place-items:center;
  text-align:center;
  padding:28px;
  min-height:320px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:28px;
  background:
    radial-gradient(circle at 35% 28%,rgba(255,255,255,.9),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.6),rgba(129,227,255,.22));
  box-shadow:inset 0 1px rgba(255,255,255,.8),0 18px 40px rgba(0,58,116,.14);
}
.quiet-panel{
  position:absolute;
  right:7%;
  top:21%;
  z-index:1;
  width:210px;
  height:210px;
  opacity:0;
  pointer-events:none;
  filter:blur(.2px);
  transition:opacity 2.4s ease;
}
.quiet-panel.visible{opacity:.48}
.quiet-panel span{
  position:absolute;
  inset:20%;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.3);
  box-shadow:0 0 42px rgba(175,255,233,.18),inset 0 0 38px rgba(2,24,58,.18);
  animation:quietSpin 19s linear infinite;
}
.quiet-panel span:nth-child(2){inset:32%;animation-duration:13s;animation-direction:reverse}
.quiet-panel span:nth-child(3){inset:44%;animation-duration:8s}
@keyframes quietSpin{to{transform:rotate(1turn)}}
@media (max-width:900px){
  .creator-setup,.character-editor{grid-template-columns:1fr}
  .creator-boot .boot-card-creator{overflow:auto;min-height:calc(100vh - 20px);padding:18px}
  .desktop-avatar{width:62px;height:98px}
  .beach-stage{min-height:360px}
}
@media (max-width:640px){
  .desktop-icon.draggable-icon{width:92px;min-height:78px}
  .avatar-preview.xl{transform:scale(1.06);margin:10px auto 20px}
  .beach-chat{left:10px;right:10px;bottom:10px;flex-wrap:wrap}
  .beach-minimap{display:none}
}

/* ===== v10 Bubble Mascot Professional Pass ===== */
:root{
  --mascot-ui-blue:rgba(32,183,255,.92);
  --mascot-ui-mint:rgba(111,255,216,.82);
  --mascot-panel:rgba(235,255,255,.54);
}
.boot-card-creator,
.creator-boot .boot-card-creator{
  width:min(1040px,calc(100vw - 36px));
  max-height:calc(100dvh - 36px);
  min-height:0;
  overflow:auto;
  padding:24px;
}
.pro-creator.creator-setup{
  grid-template-columns:minmax(260px,.9fr) minmax(340px,1.1fr);
  align-items:stretch;
}
.pro-preview-card,
.pro-controls-card,
.pro-editor-preview,
.pro-editor-controls,
.editor-sheet-panel{
  backdrop-filter:blur(26px) saturate(1.45);
}
.creator-preview-glass{
  position:relative;
  display:grid;
  place-items:center;
  width:min(250px,100%);
  aspect-ratio:1;
  margin:auto;
  border-radius:38px;
  background:
    radial-gradient(circle at 30% 18%,rgba(255,255,255,.95),transparent 24%),
    radial-gradient(circle at 68% 72%,rgba(84,255,218,.34),transparent 30%),
    linear-gradient(180deg,rgba(255,255,255,.68),rgba(132,226,255,.22));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:inset 0 1px rgba(255,255,255,.94),0 24px 60px rgba(0,84,150,.22);
  overflow:visible;
}
.creator-preview-glass.large{
  width:min(285px,100%);
}
.creator-preview-glass::before{
  content:"";
  position:absolute;
  inset:12%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(156,255,239,.36),transparent 64%);
  filter:blur(10px);
  animation:previewPulse 3.4s ease-in-out infinite alternate;
}
@keyframes previewPulse{from{opacity:.58;transform:scale(.96)}to{opacity:.95;transform:scale(1.05)}}
.mini-asset-reference{
  width:84px;
  height:84px;
  display:grid;
  place-items:center;
  border-radius:24px;
  padding:8px;
  background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(172,239,255,.18));
  border:1px solid rgba(255,255,255,.56);
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 14px 24px rgba(0,80,130,.14);
}
.mini-asset-reference img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  filter:drop-shadow(0 8px 12px rgba(0,78,130,.22));
}
.creator-row.color-creator-row{
  grid-template-columns:auto auto minmax(130px,1fr) repeat(4,auto);
}
.aero-color-input{
  inline-size:46px;
  block-size:38px;
  padding:2px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:14px;
  background:linear-gradient(180deg,#fff,rgba(179,243,255,.68));
  box-shadow:0 10px 18px rgba(0,74,126,.13),inset 0 1px rgba(255,255,255,.8);
  cursor:pointer;
}
.aero-color-input.wide{
  inline-size:100%;
  min-height:42px;
}
.aero-slider,
.volume-control input[type="range"]{
  width:100%;
  accent-color:#2dc8ff;
  cursor:pointer;
}
.fit-chip.active,
.swatch.active{
  transform:translateY(-1px);
  border-color:rgba(255,255,255,.92);
  box-shadow:0 0 0 3px rgba(72,216,255,.26),0 12px 22px rgba(0,106,160,.18),inset 0 1px rgba(255,255,255,.9);
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(111,232,255,.46));
}

/* Vista start menu: stays visible, compact, searchable */
.start-menu{
  position:fixed;
  left:10px;
  top:auto!important;
  bottom:58px!important;
  width:min(660px,calc(100vw - 20px));
  min-height:0!important;
  height:auto;
  max-height:calc(100dvh - 82px);
  overflow:hidden;
  grid-template-columns:minmax(0,1fr) 200px;
  padding:10px;
  border-radius:22px 22px 18px 18px;
  z-index:95;
}
.start-left,
.start-right{
  min-height:0;
}
.start-pinned{
  max-height:calc(100dvh - 170px);
  min-height:180px;
  overflow:auto;
  padding-right:6px;
}
.start-right{
  overflow:auto;
  max-height:calc(100dvh - 106px);
}
.start-empty{
  padding:16px;
  color:#07334d;
  border-radius:18px;
  background:rgba(255,255,255,.52);
  border:1px solid rgba(255,255,255,.55);
}
.start-search input{
  height:38px;
  border-radius:999px;
  padding-left:34px;
  background:
    radial-gradient(circle at 18px 50%,rgba(0,137,213,.76) 0 5px,transparent 6px),
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(230,254,255,.9));
}
.user-picture{
  background:radial-gradient(circle at 34% 20%,#fff 0 10%,#62e9ff 33%,#2484ff 82%);
  color:transparent;
  position:relative;
}
.user-picture::after{
  content:"";
  position:absolute;
  left:50%;top:54%;
  width:34px;height:38px;
  transform:translate(-50%,-50%);
  border-radius:48% 48% 42% 42%;
  background:radial-gradient(circle at 35% 19%,rgba(255,255,255,.86),transparent 20%),linear-gradient(180deg,#54dcff,#217eff);
  box-shadow:inset 0 1px rgba(255,255,255,.85),0 2px 7px rgba(0,54,110,.2);
}

/* Full glossy bubble avatar: replaces old humanoid CSS */
.desktop-avatar{
  width:96px!important;
  height:136px!important;
  transform:translate(-50%,-100%)!important;
  z-index:28;
  cursor:grab;
  will-change:left,top;
}
.desktop-avatar:active{cursor:grabbing;}
.avatar-sprite,
.avatar-preview{
  --avatar-base:#26c8ff;
  --avatar-top:#c8fbff;
  --avatar-core:#59ffe7;
  --avatar-deep:#1675e8;
  --avatar-rim:#006be8;
  --avatar-glow:.64;
  position:relative;
  display:block;
  width:92px!important;
  height:122px!important;
  margin:auto;
  filter:drop-shadow(0 18px 18px rgba(0,67,128,.25)) drop-shadow(0 0 calc(22px * var(--avatar-glow)) color-mix(in srgb,var(--avatar-base),transparent 42%));
  transform-origin:center bottom;
}
.avatar-preview.xl{
  width:178px!important;
  height:236px!important;
  transform:scale(1.05)!important;
  margin:18px auto 22px!important;
}
.avatar-preview.sm{
  width:80px!important;
  height:108px!important;
}
.avatar-sprite::before,
.avatar-sprite::after,
.avatar-preview::before,
.avatar-preview::after{
  content:none!important;
}
.bubble-aura{
  position:absolute;
  inset:14% 2% 2%;
  border-radius:50%;
  background:radial-gradient(circle at 50% 54%,color-mix(in srgb,var(--avatar-base),white 34%),transparent 67%);
  opacity:calc(.24 + var(--avatar-glow) * .44);
  filter:blur(13px);
  z-index:0;
}
.bubble-head{
  position:absolute;
  left:14px;
  top:2px;
  width:64px;
  height:64px;
  border-radius:50%;
  z-index:4;
  background:
    radial-gradient(ellipse at 35% 14%,rgba(255,255,255,.98) 0 16%,rgba(255,255,255,.38) 17%,transparent 30%),
    radial-gradient(ellipse at 72% 23%,rgba(255,255,255,.85) 0 5%,transparent 11%),
    radial-gradient(circle at 50% 76%,var(--avatar-core) 0 18%,transparent 43%),
    linear-gradient(180deg,var(--avatar-top),var(--avatar-base) 45%,var(--avatar-deep));
  border:2px solid color-mix(in srgb,var(--avatar-rim),#0042ff 32%);
  box-shadow:inset 10px 9px 13px rgba(255,255,255,.24),inset -7px -10px 18px rgba(0,53,169,.18),0 8px 18px rgba(0,86,152,.22),0 0 calc(16px * var(--avatar-glow)) color-mix(in srgb,var(--avatar-base),transparent 24%);
}
.bubble-body{
  position:absolute!important;
  left:7px!important;
  top:51px!important;
  width:78px!important;
  height:58px!important;
  border-radius:34px 34px 24px 24px!important;
  z-index:2!important;
  background:
    radial-gradient(ellipse at 25% 18%,rgba(255,255,255,.75) 0 9%,transparent 17%),
    radial-gradient(ellipse at 50% 78%,var(--avatar-core) 0 18%,transparent 42%),
    linear-gradient(180deg,var(--avatar-base),var(--avatar-deep));
  border:2px solid color-mix(in srgb,var(--avatar-rim),#0042ff 32%)!important;
  box-shadow:inset 11px 10px 17px rgba(255,255,255,.22),inset -8px -13px 18px rgba(0,50,170,.14),0 14px 22px rgba(0,67,130,.2)!important;
}
.bubble-body::after{
  content:"";
  position:absolute;
  left:25%;top:8%;
  width:52%;height:26%;
  border-radius:50%;
  background:rgba(255,255,255,.32);
  filter:blur(.2px);
}
.bubble-arm{
  position:absolute!important;
  top:61px!important;
  width:21px!important;
  height:45px!important;
  z-index:1!important;
  border-radius:999px!important;
  background:
    radial-gradient(ellipse at 35% 15%,rgba(255,255,255,.72),transparent 24%),
    linear-gradient(180deg,var(--avatar-top),var(--avatar-base) 36%,var(--avatar-deep));
  border:2px solid color-mix(in srgb,var(--avatar-rim),#0042ff 32%);
  box-shadow:inset 6px 5px 9px rgba(255,255,255,.22),0 10px 16px rgba(0,61,124,.18);
}
.bubble-arm-left{left:0!important;transform:rotate(8deg)!important;}
.bubble-arm-right{right:0!important;transform:rotate(-8deg)!important;}
.bubble-leg{
  position:absolute!important;
  top:103px!important;
  width:27px!important;
  height:21px!important;
  z-index:1!important;
  border-radius:10px 10px 16px 16px!important;
  background:
    radial-gradient(ellipse at 34% 20%,rgba(255,255,255,.68),transparent 25%),
    linear-gradient(180deg,var(--avatar-base),var(--avatar-deep));
  border:2px solid color-mix(in srgb,var(--avatar-rim),#0042ff 32%);
  box-shadow:inset 4px 3px 7px rgba(255,255,255,.2),0 8px 12px rgba(0,59,118,.16);
}
.bubble-leg-left{left:22px!important;}
.bubble-leg-right{right:22px!important;}
.bubble-face{
  position:absolute;
  left:27px;
  top:28px;
  width:38px;
  height:28px;
  z-index:8;
  transition:transform .16s ease,opacity .16s ease;
}
.bubble-eye{
  position:absolute;
  top:4px;
  width:7px;
  height:14px;
  border-radius:50%;
  background:linear-gradient(180deg,#052b66,#041940);
  box-shadow:inset 2px 2px 2px rgba(255,255,255,.42),0 1px 2px rgba(0,0,0,.12);
}
.bubble-eye-left{left:4px;}
.bubble-eye-right{right:4px;}
.bubble-mouth{
  position:absolute;
  left:12px;
  top:17px;
  width:14px;
  height:7px;
  border:3px solid #07386d;
  border-top:0;
  border-radius:0 0 14px 14px;
}
.expression-neutral .bubble-mouth{
  top:20px;
  height:0;
  border:0;
  border-top:3px solid #07386d;
  border-radius:999px;
}
.expression-wink .bubble-eye-left{
  top:9px;
  height:0;
  border-radius:999px;
  border-top:3px solid #07386d;
  background:transparent;
  box-shadow:none;
}
.facing-left .bubble-face{transform:translateX(-7px) scaleX(.95);}
.facing-right .bubble-face{transform:translateX(7px) scaleX(.95);}
.facing-back .bubble-face{opacity:0;}
.facing-back .bubble-head{
  background:
    radial-gradient(ellipse at 42% 14%,rgba(255,255,255,.72) 0 18%,transparent 30%),
    radial-gradient(circle at 50% 76%,var(--avatar-core) 0 18%,transparent 43%),
    linear-gradient(180deg,var(--avatar-base),var(--avatar-deep));
}
.avatar-sprite .avatar-badge,
.avatar-preview .avatar-badge{display:none!important;}
.bubble-accessory{position:absolute;display:none;z-index:12;pointer-events:none;}
.accessory-bubblecap .bubble-accessory-bubblecap{
  display:block;
  left:19px;top:-2px;width:54px;height:29px;border-radius:50% 50% 38% 38%;
  background:
    radial-gradient(ellipse at 34% 16%,rgba(255,255,255,.9),transparent 26%),
    linear-gradient(180deg,rgba(255,255,255,.5),var(--avatar-top) 34%,var(--avatar-base));
  border:2px solid color-mix(in srgb,var(--avatar-rim),#0042ff 34%);
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 6px 12px rgba(0,62,124,.16);
}
.accessory-bubblecap .bubble-accessory-bubblecap::after{
  content:"";position:absolute;left:-8px;bottom:-5px;width:38px;height:10px;border-radius:999px;background:linear-gradient(180deg,var(--avatar-top),var(--avatar-base));border:2px solid color-mix(in srgb,var(--avatar-rim),#0042ff 34%);
}
.accessory-leaf .bubble-accessory-leaf{
  display:block;
  left:24px;top:-11px;width:54px;height:31px;border-radius:6px 90% 8px 90%;
  background:linear-gradient(135deg,#d7ff64,#4fc833 54%,#1c8e2d);
  transform:rotate(-12deg);
  border:1px solid rgba(31,135,42,.82);
  box-shadow:inset 0 1px rgba(255,255,255,.62),0 8px 14px rgba(42,118,20,.22);
}
.accessory-leaf .bubble-accessory-leaf::after{content:"";position:absolute;left:8px;right:8px;top:50%;border-top:2px solid rgba(21,110,30,.5);transform:rotate(-8deg);}
.accessory-headphones .bubble-accessory-headphones{
  display:block;
  left:8px;top:16px;width:76px;height:42px;border-top:6px solid #123f87;border-radius:50% 50% 0 0;
}
.accessory-headphones .bubble-accessory-headphones::before,
.accessory-headphones .bubble-accessory-headphones::after{
  content:"";position:absolute;top:20px;width:16px;height:26px;border-radius:9px;background:linear-gradient(180deg,#0f275f,#09193d);box-shadow:inset 2px 2px 3px rgba(255,255,255,.24),0 0 0 4px var(--avatar-base);
}
.accessory-headphones .bubble-accessory-headphones::before{left:-3px;}
.accessory-headphones .bubble-accessory-headphones::after{right:-3px;}
.accessory-visor .bubble-accessory-visor{
  display:block;left:16px;top:12px;width:64px;height:22px;border-radius:22px 22px 10px 10px;
  background:linear-gradient(180deg,#bdffff,var(--avatar-base) 48%,#2b82ff);
  border:2px solid color-mix(in srgb,var(--avatar-rim),#0042ff 34%);
  box-shadow:inset 0 1px rgba(255,255,255,.86),0 5px 11px rgba(0,68,132,.18);
}
.accessory-visor .bubble-accessory-visor::after{
  content:"";position:absolute;right:-17px;bottom:-5px;width:40px;height:13px;border-radius:999px;background:linear-gradient(180deg,#ccffff,#45cfff);border:2px solid color-mix(in srgb,var(--avatar-rim),#0042ff 34%);transform:rotate(-8deg);
}
.accessory-halo .bubble-accessory-halo{
  display:block;left:21px;top:-24px;width:51px;height:17px;border-radius:50%;border:4px solid rgba(153,255,255,.9);box-shadow:0 0 16px rgba(116,255,245,.95),inset 0 0 10px rgba(255,255,255,.82);animation:haloFloat 1.8s ease-in-out infinite alternate;
}
@keyframes haloFloat{from{transform:translateY(0)}to{transform:translateY(-5px)}}
.desktop-avatar.walking .avatar-sprite,
.beach-player.walking .avatar-preview,
.beach-npc.walking .avatar-preview{animation:bubbleWalkBob .3s ease-in-out infinite alternate!important;}
.desktop-avatar.walking .bubble-leg-left,
.beach-player.walking .bubble-leg-left,
.beach-npc.walking .bubble-leg-left{animation:bubbleLegLeft .3s ease-in-out infinite alternate!important;}
.desktop-avatar.walking .bubble-leg-right,
.beach-player.walking .bubble-leg-right,
.beach-npc.walking .bubble-leg-right{animation:bubbleLegRight .3s ease-in-out infinite alternate!important;}
@keyframes bubbleWalkBob{from{transform:translateY(0) scaleY(1)}to{transform:translateY(-5px) scaleY(1.01)}}
@keyframes bubbleLegLeft{from{transform:translateY(0) rotate(-3deg)}to{transform:translateY(5px) rotate(8deg)}}
@keyframes bubbleLegRight{from{transform:translateY(5px) rotate(-8deg)}to{transform:translateY(0) rotate(3deg)}}
.avatar-shadow{width:86px;height:18px;bottom:-2px;background:radial-gradient(ellipse,rgba(0,82,140,.24),transparent 68%);}

/* Professional character editor */
.character-editor-pro{
  grid-template-columns:minmax(260px,.8fr) minmax(330px,1.2fr);
  gap:16px;
  height:100%;
  min-height:0;
  overflow:auto;
  padding:2px;
}
.pro-editor-preview{min-height:430px;}
.editor-action-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;}
.editor-grid-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.glass-label.compact{gap:8px;}
.palette-row,.accessory-row,.expression-row{align-items:center;}
.editor-sheet-panel{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(2,minmax(160px,220px)) minmax(280px,1fr);
  gap:12px;
  border:1px solid rgba(255,255,255,.52);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.48),rgba(186,246,255,.18));
  box-shadow:inset 0 1px rgba(255,255,255,.78),0 18px 38px rgba(0,56,108,.12);
  padding:14px;
}
.asset-sheet-card{
  margin:0;
  min-height:170px;
  max-height:230px;
  overflow:hidden;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.66);
  background:linear-gradient(45deg,rgba(255,255,255,.85),rgba(211,250,255,.62));
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 12px 28px rgba(0,75,130,.12);
}
.asset-sheet-card img{
  width:100%;height:100%;object-fit:cover;object-position:center;
  filter:saturate(1.05) contrast(1.02);
}
.movement-card{min-height:120px;}

/* Music volume */
.music-app-pro .music-now{gap:12px;}
.volume-control{
  width:min(420px,100%);
  display:grid;
  grid-template-columns:auto minmax(150px,1fr) 52px;
  gap:10px;
  align-items:center;
  color:#07334d;
  font-weight:900;
  background:rgba(255,255,255,.52);
  border:1px solid rgba(255,255,255,.62);
  border-radius:999px;
  padding:8px 12px;
  box-shadow:inset 0 1px rgba(255,255,255,.78),0 10px 22px rgba(0,73,124,.12);
}
.volume-control output{text-align:right;color:#055071;}

/* Cleaner beach game */
.beach-stage{
  min-height:500px;
  background:
    radial-gradient(circle at 18% 16%,rgba(255,255,255,.92),transparent 12%),
    radial-gradient(circle at 78% 20%,rgba(255,255,255,.65),transparent 14%),
    linear-gradient(180deg,#77e0ff 0%,#dffeff 30%,#fff7cf 39%,#ffd984 62%,#69d77a 100%);
}
.beach-title-card{
  position:absolute;
  right:18px;top:18px;
  z-index:8;
  display:grid;
  gap:2px;
  padding:10px 13px;
  border-radius:18px;
  color:#07334d;
  background:rgba(255,255,255,.62);
  border:1px solid rgba(255,255,255,.65);
  box-shadow:0 12px 24px rgba(0,75,130,.12),inset 0 1px rgba(255,255,255,.88);
}
.beach-title-card strong{font-size:15px;}
.beach-title-card span{font-size:12px;opacity:.74;}
.beach-player,.beach-npc{width:96px!important;height:128px!important;}
.beach-player-name,.beach-npc-name{bottom:100%;}
.beach-npc .avatar-preview{filter:hue-rotate(38deg) saturate(1.1) drop-shadow(0 18px 18px rgba(0,67,128,.2));}

/* Dragging desktop icons feels less clunky */
.desktop-icon.draggable-icon{
  transition:box-shadow .18s ease,transform .18s ease,background .18s ease;
}
.desktop-icon.draggable-icon.dragging{
  transform:translateY(-3px) scale(1.04);
  box-shadow:0 22px 42px rgba(0,76,132,.28),inset 0 1px rgba(255,255,255,.88);
  z-index:34;
}

@media (max-width:820px){
  .pro-creator.creator-setup,
  .character-editor-pro,
  .editor-sheet-panel{
    grid-template-columns:1fr;
  }
  .editor-sheet-panel{max-height:none;}
  .start-menu{grid-template-columns:1fr;width:calc(100vw - 20px);}
  .start-right{display:none;}
  .creator-row.color-creator-row{grid-template-columns:1fr 1fr;}
  .avatar-preview.xl{transform:scale(.94)!important;}
}

/* ===== v11 Frutiger Aero polish + connected bubble mascot ===== */
:root{
  --aero-sky:#57d8ff;
  --aero-water:#1ab7ff;
  --aero-mint:#8cff60;
  --aero-glass:#f4ffff;
}
body{
  background:#66d8ff;
}
.wallpaper::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 22% 18%,rgba(255,255,255,.96),transparent 11%),
    radial-gradient(circle at 73% 14%,rgba(255,255,255,.65),transparent 8%),
    radial-gradient(circle at 78% 64%,rgba(134,255,105,.28),transparent 18%),
    linear-gradient(120deg,rgba(255,255,255,.18),transparent 38%,rgba(79,232,255,.18));
  mix-blend-mode:screen;
}
.desktop-topbar,
.desktop-dashboard,
.sidebar,
.app-window,
.start-menu,
.glass-panel{
  border-color:rgba(255,255,255,.72)!important;
  box-shadow:
    inset 0 1px rgba(255,255,255,.92),
    inset 0 -1px rgba(79,215,255,.16),
    0 22px 48px rgba(0,65,124,.16)!important;
}
.boot-screen{
  background:
    radial-gradient(circle at 50% 28%,rgba(255,255,255,.98),transparent 12%),
    radial-gradient(circle at 18% 22%,rgba(255,255,255,.72),transparent 8%),
    radial-gradient(circle at 84% 32%,rgba(190,255,236,.72),transparent 13%),
    linear-gradient(180deg,#5ed9ff 0%,#eaffff 48%,#7cec58 100%);
}
.boot-screen::before,
.boot-screen::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
.boot-screen::before{
  background:
    radial-gradient(circle at 12% 78%,rgba(255,255,255,.58) 0 2.1%,transparent 2.3%),
    radial-gradient(circle at 28% 69%,rgba(255,255,255,.42) 0 1.4%,transparent 1.6%),
    radial-gradient(circle at 80% 72%,rgba(255,255,255,.5) 0 2.3%,transparent 2.5%),
    radial-gradient(circle at 68% 18%,rgba(255,255,255,.62) 0 1.5%,transparent 1.7%);
  animation:bootBubbles 10s linear infinite;
}
.boot-screen::after{
  background:
    linear-gradient(100deg,transparent 0 34%,rgba(255,255,255,.22) 42%,transparent 54%),
    repeating-linear-gradient(74deg,transparent 0 26px,rgba(55,178,82,.13) 27px 29px);
  clip-path:polygon(0 67%,7% 60%,16% 72%,25% 58%,34% 72%,44% 61%,55% 73%,65% 60%,76% 72%,88% 61%,100% 69%,100% 100%,0 100%);
  opacity:.85;
}
@keyframes bootBubbles{
  from{transform:translateY(32px)}
  to{transform:translateY(-48px)}
}
.boot-card-creator{
  backdrop-filter:blur(22px) saturate(1.7);
  background:
    radial-gradient(circle at 78% 18%,rgba(255,255,255,.76),transparent 22%),
    linear-gradient(145deg,rgba(255,255,255,.72),rgba(177,247,255,.32) 48%,rgba(133,255,108,.18))!important;
}
.boot-card-creator .mini-asset-reference{
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(195,248,255,.34));
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 12px 28px rgba(0,94,148,.12);
}
.creator-preview-glass,
.mascot-glass-stage{
  background:
    radial-gradient(circle at 50% 23%,rgba(255,255,255,.95),transparent 21%),
    radial-gradient(circle at 53% 72%,rgba(137,255,79,.42),transparent 28%),
    linear-gradient(180deg,rgba(255,255,255,.84),rgba(205,251,255,.54) 48%,rgba(141,238,113,.30))!important;
}

/* connected mascot structure */
.desktop-avatar{
  width:112px!important;
  height:150px!important;
  transform:translate(-50%,-100%)!important;
  z-index:28;
}
.avatar-sprite,
.avatar-preview{
  width:98px!important;
  height:132px!important;
  overflow:visible!important;
  filter:
    drop-shadow(0 18px 18px rgba(0,67,128,.22))
    drop-shadow(0 0 calc(26px * var(--avatar-glow)) color-mix(in srgb,var(--avatar-base),transparent 45%))!important;
}
.avatar-preview.xl{
  width:188px!important;
  height:254px!important;
  transform:scale(1.02)!important;
}
.avatar-preview.sm{
  width:92px!important;
  height:124px!important;
}
.bubble-aura{
  inset:6% -7% -2%!important;
  background:
    radial-gradient(ellipse at 50% 56%,color-mix(in srgb,var(--avatar-base),white 45%),transparent 56%),
    radial-gradient(circle at 50% 90%,rgba(143,255,92,.38),transparent 40%)!important;
  opacity:calc(.28 + var(--avatar-glow) * .42)!important;
  filter:blur(16px)!important;
}
.bubble-head{
  left:13px!important;
  top:0!important;
  width:72px!important;
  height:72px!important;
  z-index:6!important;
  border-radius:50%!important;
  background:
    radial-gradient(ellipse at 34% 13%,rgba(255,255,255,.98) 0 18%,rgba(255,255,255,.42) 19%,transparent 32%),
    radial-gradient(ellipse at 73% 23%,rgba(255,255,255,.9) 0 5%,transparent 12%),
    radial-gradient(circle at 50% 76%,var(--avatar-core) 0 18%,transparent 44%),
    linear-gradient(180deg,var(--avatar-top),var(--avatar-base) 44%,var(--avatar-deep))!important;
  border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 30%)!important;
  box-shadow:
    inset 12px 10px 16px rgba(255,255,255,.24),
    inset -8px -12px 18px rgba(0,47,170,.18),
    0 8px 18px rgba(0,86,152,.18),
    0 0 calc(18px * var(--avatar-glow)) color-mix(in srgb,var(--avatar-base),transparent 28%)!important;
}
.bubble-body{
  left:6px!important;
  top:51px!important;
  width:86px!important;
  height:67px!important;
  z-index:4!important;
  border-radius:39px 39px 24px 24px!important;
  background:
    radial-gradient(ellipse at 21% 18%,rgba(255,255,255,.76) 0 12%,transparent 21%),
    radial-gradient(ellipse at 54% 79%,var(--avatar-core) 0 20%,transparent 45%),
    linear-gradient(180deg,var(--avatar-base),var(--avatar-deep))!important;
  border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 30%)!important;
  box-shadow:
    inset 12px 11px 17px rgba(255,255,255,.23),
    inset -8px -13px 18px rgba(0,50,170,.15),
    0 14px 22px rgba(0,67,130,.16)!important;
}
.bubble-body::before{
  content:"";
  position:absolute;
  left:18%;
  top:-10px;
  width:64%;
  height:21px;
  border-radius:50%;
  background:radial-gradient(ellipse at 50% 72%,rgba(255,255,255,.38),rgba(255,255,255,.16) 52%,transparent 71%);
  pointer-events:none;
}
.bubble-body::after{
  left:23%!important;
  top:11%!important;
  width:56%!important;
  height:27%!important;
  opacity:.72;
}
.bubble-arm{
  top:61px!important;
  width:25px!important;
  height:53px!important;
  z-index:3!important;
  border-radius:999px!important;
  background:
    radial-gradient(ellipse at 35% 17%,rgba(255,255,255,.74),transparent 25%),
    linear-gradient(180deg,var(--avatar-top),var(--avatar-base) 36%,var(--avatar-deep))!important;
  border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 30%)!important;
  box-shadow:inset 6px 5px 9px rgba(255,255,255,.22),0 10px 16px rgba(0,61,124,.12)!important;
}
.bubble-arm-left{left:-2px!important;transform:rotate(7deg)!important;transform-origin:70% 20%!important;}
.bubble-arm-right{right:-2px!important;transform:rotate(-7deg)!important;transform-origin:30% 20%!important;}
.bubble-leg{
  top:106px!important;
  width:31px!important;
  height:27px!important;
  z-index:2!important;
  border-radius:12px 12px 19px 19px!important;
  background:
    radial-gradient(ellipse at 34% 20%,rgba(255,255,255,.7),transparent 25%),
    linear-gradient(180deg,var(--avatar-base),var(--avatar-deep))!important;
  border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 30%)!important;
  box-shadow:inset 4px 3px 7px rgba(255,255,255,.2),0 8px 12px rgba(0,59,118,.13)!important;
}
.bubble-leg-left{left:18px!important;transform-origin:70% 20%!important;}
.bubble-leg-right{right:18px!important;transform-origin:30% 20%!important;}
.bubble-face{
  left:29px!important;
  top:30px!important;
  width:40px!important;
  height:30px!important;
  z-index:9!important;
}
.bubble-eye{
  width:8px!important;
  height:16px!important;
  border-radius:50%!important;
  background:linear-gradient(180deg,#063170,#031a42)!important;
}
.bubble-eye-left{left:3px!important;}
.bubble-eye-right{right:3px!important;}
.bubble-mouth{
  left:12px!important;
  top:18px!important;
  width:16px!important;
  height:8px!important;
  border-width:3px!important;
  border-color:#06396f!important;
  border-top:0!important;
}
.expression-neutral .bubble-mouth{
  top:22px!important;
  width:16px!important;
  height:0!important;
  border:0!important;
  border-top:3px solid #06396f!important;
}
.expression-wink .bubble-eye-left{
  top:10px!important;
  height:0!important;
  border-top:3px solid #06396f!important;
  background:transparent!important;
  box-shadow:none!important;
}
.facing-left .bubble-head,
.facing-left .bubble-body,
.facing-right .bubble-head,
.facing-right .bubble-body{
  transform:scaleX(.92);
}
.facing-left .bubble-face{transform:translateX(-9px) scaleX(.88)!important;}
.facing-right .bubble-face{transform:translateX(9px) scaleX(.88)!important;}
.facing-left .bubble-arm-right,
.facing-right .bubble-arm-left{opacity:.54;}
.facing-left .bubble-arm-left,
.facing-right .bubble-arm-right{z-index:5!important;}
.facing-back .bubble-face{opacity:0!important;}
.facing-back .bubble-head{
  background:
    radial-gradient(ellipse at 42% 14%,rgba(255,255,255,.76) 0 18%,transparent 31%),
    radial-gradient(circle at 50% 76%,var(--avatar-core) 0 18%,transparent 44%),
    linear-gradient(180deg,var(--avatar-base),var(--avatar-deep))!important;
}
.accessory-bubblecap .bubble-accessory-bubblecap{
  left:18px!important;top:-4px!important;width:62px!important;height:32px!important;z-index:13!important;
  border-width:3px!important;
}
.accessory-bubblecap .bubble-accessory-bubblecap::after{
  left:-10px!important;bottom:-5px!important;width:42px!important;height:11px!important;border-width:3px!important;
}
.accessory-leaf .bubble-accessory-leaf{
  left:24px!important;top:-12px!important;width:61px!important;height:34px!important;z-index:13!important;
}
.accessory-headphones .bubble-accessory-headphones{
  left:6px!important;top:17px!important;width:86px!important;height:46px!important;z-index:13!important;
}
.accessory-headphones .bubble-accessory-headphones::before,
.accessory-headphones .bubble-accessory-headphones::after{
  top:21px!important;width:18px!important;height:29px!important;
}
.accessory-visor .bubble-accessory-visor{
  left:14px!important;top:12px!important;width:72px!important;height:24px!important;z-index:13!important;
}
.accessory-halo .bubble-accessory-halo{
  left:20px!important;top:-29px!important;width:58px!important;height:19px!important;z-index:13!important;
}
.desktop-avatar.walking .avatar-sprite,
.beach-player.walking .avatar-preview,
.beach-npc.walking .avatar-preview,
.avatar-preview.preview-walking{
  animation:bubbleWalkBobV11 .34s ease-in-out infinite alternate!important;
}
.desktop-avatar.walking .bubble-leg-left,
.beach-player.walking .bubble-leg-left,
.beach-npc.walking .bubble-leg-left,
.preview-walking .bubble-leg-left{animation:bubbleLegLeftV11 .34s ease-in-out infinite alternate!important;}
.desktop-avatar.walking .bubble-leg-right,
.beach-player.walking .bubble-leg-right,
.beach-npc.walking .bubble-leg-right,
.preview-walking .bubble-leg-right{animation:bubbleLegRightV11 .34s ease-in-out infinite alternate!important;}
.desktop-avatar.walking .bubble-arm-left,
.beach-player.walking .bubble-arm-left,
.beach-npc.walking .bubble-arm-left,
.preview-walking .bubble-arm-left{animation:bubbleArmLeftV11 .34s ease-in-out infinite alternate!important;}
.desktop-avatar.walking .bubble-arm-right,
.beach-player.walking .bubble-arm-right,
.beach-npc.walking .bubble-arm-right,
.preview-walking .bubble-arm-right{animation:bubbleArmRightV11 .34s ease-in-out infinite alternate!important;}
@keyframes bubbleWalkBobV11{from{transform:translateY(0) scaleY(1)}to{transform:translateY(-6px) scaleY(1.012)}}
@keyframes bubbleLegLeftV11{from{transform:translateY(0) rotate(-5deg)}to{transform:translateY(6px) rotate(8deg)}}
@keyframes bubbleLegRightV11{from{transform:translateY(6px) rotate(-8deg)}to{transform:translateY(0) rotate(5deg)}}
@keyframes bubbleArmLeftV11{from{transform:translateY(1px) rotate(9deg)}to{transform:translateY(-2px) rotate(-2deg)}}
@keyframes bubbleArmRightV11{from{transform:translateY(-2px) rotate(2deg)}to{transform:translateY(1px) rotate(-9deg)}}
.avatar-shadow{
  width:96px!important;
  height:20px!important;
  bottom:-2px!important;
  background:radial-gradient(ellipse,rgba(0,82,140,.24),transparent 70%)!important;
}
.showcase-avatar{
  transition:filter .18s ease,transform .18s ease;
}

/* Studio-quality editor */
.character-studio-v11{
  grid-template-columns:minmax(295px,.9fr) minmax(360px,1.1fr)!important;
  gap:18px!important;
}
.mascot-showcase-card,
.mascot-controls-card,
.studio-sheet-panel{
  background:
    radial-gradient(circle at 80% 10%,rgba(255,255,255,.86),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.72),rgba(188,248,255,.28))!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.92),0 18px 38px rgba(0,69,126,.13)!important;
}
.mascot-glass-stage{
  position:relative;
  min-height:342px;
  overflow:hidden;
}
.mascot-stage-rings{
  position:absolute;
  inset:18px;
  border-radius:50%;
  background:
    radial-gradient(ellipse at 50% 82%,rgba(132,255,78,.38),transparent 36%),
    repeating-radial-gradient(ellipse at 50% 60%,rgba(255,255,255,.44) 0 2px,transparent 3px 31px);
  opacity:.62;
  filter:blur(.2px);
}
.mascot-floor{
  position:absolute;
  left:18%;right:18%;bottom:38px;height:34px;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(83,212,255,.34),transparent 68%);
}
.studio-section{
  display:grid;
  gap:9px;
  border:1px solid rgba(255,255,255,.56);
  border-radius:20px;
  padding:12px;
  background:linear-gradient(180deg,rgba(255,255,255,.52),rgba(205,249,255,.20));
}
.studio-section > strong{
  color:#065175;
  font-size:13px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.double-section{
  grid-template-columns:1fr 1fr;
}
.color-strip{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.color-orb{
  width:34px;height:34px;border-radius:50%;
  border:2px solid rgba(255,255,255,.82);
  background:radial-gradient(circle at 34% 23%,#fff 0 15%,var(--swatch) 38%,color-mix(in srgb,var(--swatch),#0043ff 38%) 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.8),0 8px 14px rgba(0,84,140,.14);
  cursor:pointer;
}
.color-orb.active{
  outline:3px solid rgba(113,225,255,.38);
  transform:translateY(-2px);
}
.avatar-choice-grid{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.compact-grid .fit-chip{min-width:72px;}
.polished-sheet-card img{
  object-position:50% 44%;
  transform:scale(1.04);
}

/* First-login music player polish */
.music-player-v11 .music-stage{
  background:
    radial-gradient(circle at 22% 23%,rgba(255,255,255,.92),transparent 18%),
    radial-gradient(circle at 82% 72%,rgba(139,255,86,.32),transparent 22%),
    linear-gradient(135deg,rgba(255,255,255,.72),rgba(93,222,255,.34) 55%,rgba(126,239,95,.24));
}
.music-player-v11 .visualizer span{
  border-radius:999px;
  background:linear-gradient(180deg,#ffffff,#60e4ff 45%,#72ff75);
  box-shadow:0 0 18px rgba(126,245,255,.45);
}
.volume-control{
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(207,252,255,.46))!important;
}

/* Frutiger Aero beach hangout */
.beach-stage{
  min-height:530px!important;
  background:
    radial-gradient(circle at 16% 14%,rgba(255,255,255,.96),transparent 11%),
    radial-gradient(circle at 73% 18%,rgba(255,255,255,.74),transparent 13%),
    linear-gradient(180deg,#6bddff 0%,#eaffff 24%,#cdf6ff 31%,#fff8ca 40%,#ffd780 62%,#79dd76 100%)!important;
  overflow:hidden;
}
.aero-wave-overlay{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    repeating-radial-gradient(ellipse at 50% 30%,rgba(255,255,255,.26) 0 2px,transparent 3px 28px),
    linear-gradient(180deg,transparent 0 28%,rgba(255,255,255,.25) 29%,transparent 40%);
  mix-blend-mode:screen;
  opacity:.85;
}
.beach-stage::before{
  background:
    linear-gradient(180deg,rgba(255,255,255,.16),rgba(21,176,255,.22)),
    repeating-linear-gradient(100deg,transparent 0 31px,rgba(255,255,255,.22) 33px 35px)!important;
}
.beach-title-card{
  background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(201,249,255,.42))!important;
}
.beach-player,.beach-npc{
  width:104px!important;
  height:138px!important;
}
.beach-player .avatar-preview.sm,
.beach-npc .avatar-preview.sm{
  transform:scale(.92);
}

/* Start menu search stays usable */
.start-menu{
  position:fixed!important;
  left:10px!important;
  bottom:calc(var(--taskbar-height) + 4px)!important;
  top:auto!important;
  max-height:calc(100dvh - var(--taskbar-height) - 16px)!important;
  overflow:hidden!important;
}
.start-search input{
  font-size:14px!important;
  border-radius:16px!important;
}
.start-pinned::-webkit-scrollbar,
.start-right::-webkit-scrollbar{width:9px;}
.start-pinned::-webkit-scrollbar-thumb,
.start-right::-webkit-scrollbar-thumb{background:linear-gradient(#fff,#4bdcff);border-radius:999px;border:2px solid rgba(255,255,255,.66);}

@media (max-width:820px){
  .character-studio-v11{grid-template-columns:1fr!important;}
  .double-section{grid-template-columns:1fr;}
  .mascot-glass-stage{min-height:280px;}
  .desktop-avatar{width:96px!important;height:134px!important;}
  .start-menu{left:8px!important;width:calc(100vw - 16px)!important;}
}

/* ===== v12 Friends + Casino + cleaner mascot pass ===== */
:root{
  --v12-glass:rgba(245,255,255,.72);
  --v12-line:rgba(255,255,255,.74);
  --v12-blue:#1ab7ff;
  --v12-mint:#7cff67;
  --v12-deep:#006bdf;
}

.desktop-avatar.hidden-by-app{
  opacity:0!important;
  pointer-events:none!important;
  transform:translate(-50%,-100%) scale(.92)!important;
  filter:blur(2px) opacity(0)!important;
  transition:opacity .18s ease,filter .18s ease,transform .18s ease!important;
}

.reference-bubble-v12.avatar-sprite,
.reference-bubble-v12.avatar-preview,
.avatar-sprite,
.avatar-preview{
  --avatar-base:#27cfff;
  --avatar-top:#d8ffff;
  --avatar-core:#5dffe4;
  --avatar-deep:#146ee8;
  --avatar-rim:#0067e5;
  contain:layout style;
}
.reference-bubble-v12 .bubble-head,
.bubble-head{
  left:12px!important;
  top:0!important;
  width:68px!important;
  height:68px!important;
  border-width:3px!important;
  background:
    radial-gradient(ellipse at 38% 13%,rgba(255,255,255,.96) 0 17%,rgba(255,255,255,.46) 18%,transparent 31%),
    radial-gradient(ellipse at 73% 19%,rgba(255,255,255,.92) 0 5%,transparent 12%),
    radial-gradient(circle at 50% 76%,var(--avatar-core) 0 19%,transparent 45%),
    linear-gradient(180deg,var(--avatar-top) 0%,var(--avatar-base) 48%,var(--avatar-deep) 100%)!important;
  box-shadow:
    inset 11px 10px 16px rgba(255,255,255,.30),
    inset -9px -12px 20px rgba(0,40,170,.20),
    0 8px 16px rgba(0,83,154,.22),
    0 0 calc(18px * var(--avatar-glow)) color-mix(in srgb,var(--avatar-base),transparent 22%)!important;
}
.reference-bubble-v12 .bubble-body,
.bubble-body{
  left:5px!important;
  top:52px!important;
  width:82px!important;
  height:63px!important;
  border-radius:35px 35px 25px 25px!important;
  border-width:3px!important;
  z-index:4!important;
  background:
    radial-gradient(ellipse at 28% 18%,rgba(255,255,255,.82) 0 10%,transparent 20%),
    radial-gradient(ellipse at 50% 78%,var(--avatar-core) 0 21%,transparent 45%),
    linear-gradient(180deg,var(--avatar-base) 0%,var(--avatar-deep) 100%)!important;
}
.reference-bubble-v12 .bubble-body::before,
.bubble-body::before{
  content:""!important;
  position:absolute!important;
  left:17%!important;
  top:-10px!important;
  width:66%!important;
  height:25px!important;
  border-radius:50%!important;
  background:linear-gradient(180deg,rgba(255,255,255,.5),rgba(255,255,255,.12))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.75)!important;
}
.reference-bubble-v12 .bubble-arm,
.bubble-arm{
  top:63px!important;
  width:24px!important;
  height:48px!important;
  z-index:3!important;
  border-width:3px!important;
}
.reference-bubble-v12 .bubble-arm-left,
.bubble-arm-left{left:-1px!important;transform:rotate(7deg)!important;transform-origin:74% 16%!important;}
.reference-bubble-v12 .bubble-arm-right,
.bubble-arm-right{right:-1px!important;transform:rotate(-7deg)!important;transform-origin:26% 16%!important;}
.reference-bubble-v12 .bubble-leg,
.bubble-leg{
  top:106px!important;
  width:29px!important;
  height:24px!important;
  border-width:3px!important;
  z-index:3!important;
}
.reference-bubble-v12 .bubble-leg-left,
.bubble-leg-left{left:18px!important;}
.reference-bubble-v12 .bubble-leg-right,
.bubble-leg-right{right:18px!important;}
.reference-bubble-v12 .bubble-face,
.bubble-face{left:27px!important;top:30px!important;width:39px!important;height:29px!important;}
.reference-bubble-v12 .bubble-eye,
.bubble-eye{width:8px!important;height:16px!important;}
.reference-bubble-v12 .bubble-mouth,
.bubble-mouth{left:11px!important;top:18px!important;width:17px!important;height:8px!important;}

.facing-left .bubble-head,
.facing-left .bubble-body{transform:scaleX(.90) translateX(-3px)!important;}
.facing-right .bubble-head,
.facing-right .bubble-body{transform:scaleX(.90) translateX(3px)!important;}
.facing-left .bubble-arm-right,
.facing-right .bubble-arm-left{opacity:.45!important;}
.facing-left .bubble-arm-left,
.facing-right .bubble-arm-right{z-index:6!important;}
.facing-left .bubble-leg-left{transform:translateX(-5px) rotate(5deg)!important;}
.facing-right .bubble-leg-right{transform:translateX(5px) rotate(-5deg)!important;}

/* Friends app */
.friends-app{
  min-height:100%;
  display:grid;
  gap:16px;
  color:#07334d;
}
.aero-friends-empty{
  place-items:center;
  background:
    radial-gradient(circle at 20% 22%,rgba(255,255,255,.92),transparent 15%),
    radial-gradient(circle at 82% 72%,rgba(133,255,83,.28),transparent 21%),
    linear-gradient(140deg,rgba(255,255,255,.44),rgba(162,243,255,.22));
  border-radius:26px;
  padding:18px;
}
.friend-hero{
  width:min(760px,100%);
  position:relative;
  overflow:hidden;
  border-radius:30px;
  padding:24px;
  background:
    radial-gradient(circle at 32% 20%,rgba(255,255,255,.96),transparent 19%),
    radial-gradient(circle at 72% 78%,rgba(134,255,93,.34),transparent 23%),
    linear-gradient(180deg,rgba(255,255,255,.75),rgba(198,248,255,.37));
  border:1px solid var(--v12-line);
  box-shadow:inset 0 1px rgba(255,255,255,.92),0 22px 48px rgba(0,75,135,.13);
}
.friend-orbit{
  position:absolute;
  right:-90px;top:-80px;
  width:280px;height:280px;border-radius:50%;
  background:repeating-radial-gradient(circle,rgba(255,255,255,.38) 0 2px,transparent 3px 28px);
  opacity:.8;
}
.friend-preset-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(150px,1fr));
  gap:14px;
  margin-top:18px;
}
.friend-preset-card{
  display:grid;
  place-items:center;
  gap:8px;
  min-height:240px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:28px;
  padding:14px;
  background:
    radial-gradient(circle at 35% 17%,rgba(255,255,255,.88),transparent 19%),
    linear-gradient(180deg,rgba(255,255,255,.68),rgba(166,241,255,.28));
  box-shadow:inset 0 1px rgba(255,255,255,.92),0 16px 28px rgba(0,78,132,.12);
  cursor:pointer;
  color:#07334d;
  transition:transform .18s ease,box-shadow .18s ease;
}
.friend-preset-card:hover{transform:translateY(-4px);box-shadow:inset 0 1px rgba(255,255,255,.92),0 24px 42px rgba(0,85,150,.18);}
.friend-preset-card strong{font-size:20px;}
.friend-preset-card small{text-align:center;font-weight:800;opacity:.72;}
.aero-friend-room{
  grid-template-columns:minmax(260px,.82fr) minmax(360px,1.18fr);
  align-items:stretch;
}
.friend-profile-panel,
.friend-chat-panel{
  border:1px solid var(--v12-line);
  border-radius:28px;
  padding:16px;
  background:
    radial-gradient(circle at 72% 14%,rgba(255,255,255,.86),transparent 22%),
    linear-gradient(180deg,rgba(255,255,255,.72),rgba(198,249,255,.34));
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 18px 36px rgba(0,76,132,.13);
  min-height:0;
}
.friend-glass-stage{
  position:relative;
  display:grid;
  place-items:center;
  min-height:340px;
  overflow:hidden;
  border-radius:26px;
  background:
    radial-gradient(circle at 50% 22%,rgba(255,255,255,.97),transparent 17%),
    radial-gradient(ellipse at 50% 82%,rgba(140,255,87,.38),transparent 36%),
    linear-gradient(180deg,rgba(255,255,255,.8),rgba(192,249,255,.46));
  border:1px solid rgba(255,255,255,.72);
}
.friend-stage-rings{
  position:absolute;inset:24px;border-radius:50%;
  background:repeating-radial-gradient(ellipse at 50% 65%,rgba(255,255,255,.42) 0 2px,transparent 3px 31px);
}
.friend-floor{
  position:absolute;left:20%;right:20%;bottom:40px;height:32px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(88,215,255,.37),transparent 70%);
}
.friend-main-avatar{z-index:2;}
.bond-meter{
  height:16px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.56);
  border:1px solid rgba(255,255,255,.7);
  box-shadow:inset 0 2px 6px rgba(0,90,140,.12);
}
.bond-meter span{
  display:block;height:100%;border-radius:inherit;
  background:linear-gradient(90deg,#38d8ff,#7cff64,#ffffff);
  box-shadow:0 0 18px rgba(116,245,255,.54);
}
.bond-label{display:block;margin-top:8px;color:#075274;}
.friend-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
.friend-chat-header h2{margin:3px 0 7px;font-size:28px;}
.friend-choice-grid{display:grid;gap:10px;margin:14px 0;}
.friend-choice{
  display:grid;
  grid-template-columns:46px 1fr;
  align-items:center;
  gap:12px;
  text-align:left;
  padding:12px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.72);
  background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(192,248,255,.38));
  color:#07334d;
  font-weight:900;
  cursor:pointer;
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 10px 20px rgba(0,76,132,.09);
}
.friend-choice:hover{transform:translateY(-2px);}
.friend-choice b{
  display:grid;place-items:center;width:42px;height:42px;border-radius:50%;
  background:radial-gradient(circle at 35% 19%,#fff 0 15%,#6be8ff 42%,#2189ff 100%);
  color:#064268;
}
.friend-history{
  max-height:210px;
  overflow:auto;
  display:flex;
  flex-direction:column-reverse;
  gap:8px;
  padding:10px;
  border-radius:20px;
  background:rgba(255,255,255,.38);
  border:1px solid rgba(255,255,255,.54);
}
.friend-history p{
  margin:0;
  padding:10px 12px;
  border-radius:16px;
  line-height:1.35;
}
.friend-history .from-you{background:linear-gradient(180deg,rgba(210,255,210,.72),rgba(151,236,255,.32));align-self:flex-end;max-width:86%;}
.friend-history .from-friend{background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(192,248,255,.38));align-self:flex-start;max-width:86%;}
.beach-friend-v12{filter:drop-shadow(0 18px 18px rgba(0,67,128,.2))!important;}
.friend-bubble-line{
  position:absolute;
  left:50%;
  bottom:calc(100% + 22px);
  transform:translateX(-50%);
  white-space:nowrap;
  font-size:10px;
  font-weight:900;
  color:#054563;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.74);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 8px 16px rgba(0,75,132,.11);
}

/* Casino app */
.casino-app{
  display:grid;
  gap:12px;
  height:100%;
  color:#07334d;
  overflow:auto;
  padding:2px;
}
.casino-header{
  display:flex;
  align-items:stretch;
  justify-content:space-between;
  gap:14px;
  padding:16px;
  border-radius:28px;
  border:1px solid var(--v12-line);
  background:
    radial-gradient(circle at 22% 18%,rgba(255,255,255,.96),transparent 18%),
    linear-gradient(125deg,rgba(255,255,255,.72),rgba(177,246,255,.34) 56%,rgba(126,255,98,.20));
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 18px 34px rgba(0,76,132,.12);
}
.casino-header h1{margin:2px 0;font-size:34px;}
.casino-header p{margin:0;max-width:620px;font-weight:700;opacity:.76;}
.casino-wallet-card{
  min-width:230px;
  display:grid;
  gap:6px;
  align-content:center;
  padding:12px;
  border-radius:22px;
  background:rgba(255,255,255,.56);
  border:1px solid rgba(255,255,255,.66);
  box-shadow:inset 0 1px rgba(255,255,255,.85);
}
.casino-wallet-card strong{font-size:22px;color:#055274;}
.casino-wallet-button{white-space:nowrap;}
.casino-tabs{
  display:flex;
  gap:8px;
  overflow:auto;
  padding:4px;
}
.casino-tab{
  flex:0 0 auto;
  padding:10px 16px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.72);
  background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(190,248,255,.34));
  color:#06486b;
  font-weight:1000;
  cursor:pointer;
  box-shadow:inset 0 1px rgba(255,255,255,.85),0 8px 16px rgba(0,80,132,.08);
}
.casino-tab.active{background:linear-gradient(180deg,#fff,#67e4ff 55%,#78ff64);}
.casino-table-wrap{
  min-height:390px;
  border-radius:30px;
  border:1px solid var(--v12-line);
  background:
    radial-gradient(circle at 48% 22%,rgba(255,255,255,.94),transparent 17%),
    radial-gradient(circle at 80% 70%,rgba(124,255,89,.28),transparent 21%),
    linear-gradient(180deg,rgba(255,255,255,.67),rgba(173,244,255,.26));
  box-shadow:inset 0 1px rgba(255,255,255,.92),0 20px 42px rgba(0,76,132,.13);
  overflow:hidden;
}
.casino-table{padding:16px;display:grid;gap:14px;}
.blackjack-scene{
  position:relative;
  min-height:310px;
  border-radius:26px;
  overflow:hidden;
  background:
    radial-gradient(ellipse at 50% 76%,rgba(83,211,255,.36),transparent 42%),
    radial-gradient(circle at 50% 12%,rgba(255,255,255,.82),transparent 19%),
    linear-gradient(180deg,#a6efff 0%,#f6ffff 34%,#7ce269 100%);
  border:1px solid rgba(255,255,255,.68);
}
.blackjack-scene::before{
  content:"";position:absolute;left:8%;right:8%;top:35%;height:46%;border-radius:50%;
  background:radial-gradient(ellipse,rgba(255,255,255,.68),rgba(65,199,255,.32) 48%,rgba(20,142,46,.24) 70%,transparent 72%);
  border:1px solid rgba(255,255,255,.5);
}
.dealer-zone,.player-zone{
  position:absolute;
  left:22%;right:22%;
  display:grid;place-items:center;gap:8px;
  color:#07334d;font-weight:1000;
}
.dealer-zone{top:26px;}
.player-zone{bottom:22px;}
.card-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;}
.playing-card{
  display:grid;
  grid-template-rows:1fr auto;
  width:48px;height:66px;
  border-radius:10px;
  padding:6px;
  background:linear-gradient(160deg,#fff,#eaffff);
  color:#072a4e;
  border:1px solid rgba(255,255,255,.88);
  box-shadow:0 8px 15px rgba(0,64,108,.14),inset 0 1px rgba(255,255,255,.92);
  font-weight:1000;
}
.playing-card i{font-style:normal;font-size:18px;align-self:end;justify-self:end;}
.red-card{color:#d21855;}
.card-back{
  place-items:center;
  background:
    radial-gradient(circle at 35% 20%,#fff 0 12%,#64e5ff 34%,#207bff 84%);
  color:#fff;
  text-shadow:0 1px 4px rgba(0,40,100,.5);
}
.blackjack-avatar-seat{
  position:absolute;
  left:24px;bottom:18px;
  width:120px;height:150px;
  display:grid;place-items:end center;
  z-index:6;
}
.chair-back{
  position:absolute;bottom:42px;width:100px;height:82px;border-radius:28px 28px 18px 18px;
  background:linear-gradient(180deg,rgba(255,255,255,.84),rgba(99,222,255,.52));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:inset 0 1px rgba(255,255,255,.9),0 15px 25px rgba(0,74,132,.16);
}
.chair-seat{
  position:absolute;bottom:22px;width:112px;height:38px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(90,219,255,.72),rgba(8,132,226,.28) 60%,transparent 72%);
}
.seated-avatar{
  transform:scale(.74) translateY(18px)!important;
  z-index:4;
}
.seated-avatar .bubble-leg{transform:translateY(-2px) scaleY(.58)!important;}
.seated-avatar .bubble-arm-left{transform:rotate(28deg) translateY(8px)!important;}
.seated-avatar .bubble-arm-right{transform:rotate(-28deg) translateY(8px)!important;}
.casino-controls-row{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  padding:10px;
  border-radius:20px;
  background:rgba(255,255,255,.46);
  border:1px solid rgba(255,255,255,.58);
}
.casino-bet-label{
  display:flex;align-items:center;gap:8px;font-weight:1000;color:#064a6f;
}
.casino-bet-input{width:96px!important;}
.casino-message{
  margin:0;
  padding:12px 14px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.7),rgba(204,249,255,.36));
  border:1px solid rgba(255,255,255,.62);
  font-weight:900;
}
.casino-history{
  border-radius:22px;
  padding:12px;
  background:rgba(255,255,255,.48);
  border:1px solid rgba(255,255,255,.62);
}
.casino-history strong{display:block;margin-bottom:6px;color:#064a6f;}
.casino-history p{margin:4px 0;font-weight:800;font-size:13px;opacity:.82;}
.keno-board{
  display:grid;
  grid-template-columns:repeat(8,minmax(38px,1fr));
  gap:8px;
}
.keno-number,
.mine-tile{
  min-height:42px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.72);
  background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(180,246,255,.34));
  color:#064a6f;
  font-weight:1000;
  cursor:pointer;
  box-shadow:inset 0 1px rgba(255,255,255,.86),0 8px 14px rgba(0,80,132,.08);
}
.keno-number.picked{background:linear-gradient(180deg,#fff,#7ce9ff);}
.keno-number.drawn{outline:3px solid rgba(62,188,255,.28);}
.keno-number.hit{background:linear-gradient(180deg,#fff,#8cff64)!important;box-shadow:0 0 20px rgba(128,255,102,.6);}
.mines-board{
  width:min(430px,100%);
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:10px;
  margin:auto;
}
.mine-tile{min-height:64px;font-size:22px;}
.mine-tile.revealed{background:linear-gradient(180deg,#fff,#75efff);}
.mine-tile.bomb{background:linear-gradient(180deg,#fff,#1a6eff);color:#fff;box-shadow:0 0 20px rgba(0,92,255,.5);}

/* More glassy Frutiger Aero scene polish */
.wallpaper::before{
  filter:saturate(1.18) brightness(1.04);
}
.desktop-lighting .sunburst{
  box-shadow:0 0 90px rgba(255,255,255,.72),0 0 160px rgba(85,224,255,.38)!important;
}
.app-window .window-titlebar{
  background:
    linear-gradient(180deg,rgba(255,255,255,.82),rgba(164,239,255,.42) 54%,rgba(60,177,255,.22))!important;
}
.window-body{
  background:
    radial-gradient(circle at 12% 8%,rgba(255,255,255,.66),transparent 16%),
    linear-gradient(180deg,rgba(255,255,255,.36),rgba(184,247,255,.12));
}

@media (max-width:900px){
  .aero-friend-room{grid-template-columns:1fr;}
  .friend-preset-grid{grid-template-columns:1fr;}
  .casino-header{flex-direction:column;}
  .keno-board{grid-template-columns:repeat(5,1fr);}
  .dealer-zone,.player-zone{left:10%;right:10%;}
  .blackjack-avatar-seat{opacity:.82;transform:scale(.86);transform-origin:left bottom;}
}

/* ===== v13 polish: themed scrollbars, stable mascot, aquarium, friends, cafe, casino ===== */
:root{
  --aero-scroll-track:rgba(225,252,255,.48);
  --aero-scroll-thumb:#38d9ff;
  --aero-scroll-thumb-2:#7cff67;
  scrollbar-color: var(--aero-scroll-thumb) var(--aero-scroll-track);
  scrollbar-width: thin;
}
*{
  scrollbar-width:thin;
  scrollbar-color:var(--aero-scroll-thumb) var(--aero-scroll-track);
}
*::-webkit-scrollbar{width:13px;height:13px;}
*::-webkit-scrollbar-track{
  border-radius:999px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.72),rgba(187,246,255,.40)),
    repeating-linear-gradient(45deg,transparent 0 8px,rgba(255,255,255,.28) 9px 10px);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:inset 0 0 8px rgba(0,149,221,.10);
}
*::-webkit-scrollbar-thumb{
  border-radius:999px;
  border:3px solid rgba(236,255,255,.82);
  background:
    radial-gradient(circle at 30% 22%,#fff 0 12%,transparent 22%),
    linear-gradient(180deg,#dfffff 0%,var(--aero-scroll-thumb) 38%,var(--aero-scroll-thumb-2) 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.86),0 0 12px rgba(74,218,255,.42);
}
*::-webkit-scrollbar-corner{background:rgba(225,252,255,.45);}

.dex-logo-svg{width:1.28em;height:1.28em;display:inline-block;vertical-align:-.18em;filter:drop-shadow(0 3px 4px rgba(0,49,91,.25));}
.icon-bubble .dex-logo-svg,.start-app b .dex-logo-svg,.launch-dot .dex-logo-svg{width:28px;height:28px;}
.launch-dot .dex-logo-svg{width:20px;height:20px;}
.dex-logo-badge{
  display:inline-grid;place-items:center;width:54px;height:54px;border-radius:18px;
  background:linear-gradient(180deg,#161b26,#05070b);
  box-shadow:inset 0 1px rgba(255,255,255,.22),0 14px 28px rgba(0,63,122,.18);
}
.dex-logo-badge .dex-logo-svg{width:40px;height:40px;}

/* Stable cute mascot matching the glossy reference sheet */
.avatar-sprite,
.avatar-preview{
  --avatar-base:#27cfff;
  --avatar-top:#ddffff;
  --avatar-core:#67ffe7;
  --avatar-deep:#116ce8;
  --avatar-rim:#0064df;
  --avatar-glow:.70;
  width:94px!important;
  height:128px!important;
  position:relative!important;
  display:block!important;
  overflow:visible!important;
  isolation:isolate!important;
  transform-origin:center bottom!important;
  filter:
    drop-shadow(0 14px 15px rgba(0,83,145,.22))
    drop-shadow(0 0 calc(23px * var(--avatar-glow)) color-mix(in srgb,var(--avatar-base),transparent 48%))!important;
}
.avatar-preview.xl{width:188px!important;height:250px!important;transform:scale(1)!important;margin:18px auto 26px!important;}
.avatar-preview.sm{width:82px!important;height:112px!important;}
.avatar-sprite::before,.avatar-sprite::after,.avatar-preview::before,.avatar-preview::after{content:none!important;}
.bubble-aura{
  position:absolute!important;inset:17% 0 0!important;border-radius:50%!important;
  background:
    radial-gradient(ellipse at 50% 61%,color-mix(in srgb,var(--avatar-base),white 36%),transparent 63%),
    radial-gradient(ellipse at 50% 92%,rgba(134,255,91,.35),transparent 42%)!important;
  opacity:calc(.22 + var(--avatar-glow) * .48)!important;
  filter:blur(13px)!important;z-index:0!important;pointer-events:none!important;
}
.bubble-head{
  position:absolute!important;left:11px!important;top:0!important;width:72px!important;height:72px!important;border-radius:50%!important;z-index:7!important;
  background:
    radial-gradient(ellipse at 34% 12%,rgba(255,255,255,.98) 0 18%,rgba(255,255,255,.48) 19%,transparent 33%),
    radial-gradient(ellipse at 72% 20%,rgba(255,255,255,.92) 0 5%,transparent 12%),
    radial-gradient(circle at 50% 76%,var(--avatar-core) 0 20%,transparent 46%),
    linear-gradient(180deg,var(--avatar-top) 0%,var(--avatar-base) 46%,var(--avatar-deep) 100%)!important;
  border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 28%)!important;
  box-shadow:inset 13px 10px 17px rgba(255,255,255,.31),inset -9px -13px 20px rgba(0,44,168,.20),0 9px 18px rgba(0,83,154,.22),0 0 calc(17px * var(--avatar-glow)) color-mix(in srgb,var(--avatar-base),transparent 18%)!important;
}
.bubble-body{
  position:absolute!important;left:4px!important;top:54px!important;width:86px!important;height:66px!important;border-radius:37px 37px 25px 25px!important;z-index:5!important;
  background:
    radial-gradient(ellipse at 26% 18%,rgba(255,255,255,.80) 0 10%,transparent 20%),
    radial-gradient(ellipse at 50% 78%,var(--avatar-core) 0 21%,transparent 45%),
    linear-gradient(180deg,var(--avatar-base) 0%,var(--avatar-deep) 100%)!important;
  border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 28%)!important;
  box-shadow:inset 13px 10px 17px rgba(255,255,255,.24),inset -9px -13px 20px rgba(0,50,170,.15),0 16px 23px rgba(0,67,130,.20)!important;
}
.bubble-body::before{
  content:""!important;position:absolute!important;left:17%!important;top:-10px!important;width:66%!important;height:25px!important;border-radius:50%!important;
  background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(255,255,255,.13))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.74)!important;
}
.bubble-body::after{
  content:""!important;position:absolute!important;left:22%!important;top:16%!important;width:56%!important;height:24%!important;border-radius:50%!important;
  background:rgba(255,255,255,.24)!important;filter:blur(.2px)!important;
}
.bubble-arm{
  position:absolute!important;top:67px!important;width:25px!important;height:50px!important;border-radius:999px!important;z-index:4!important;
  background:
    radial-gradient(ellipse at 34% 14%,rgba(255,255,255,.70),transparent 25%),
    linear-gradient(180deg,var(--avatar-top),var(--avatar-base) 38%,var(--avatar-deep))!important;
  border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 28%)!important;
  box-shadow:inset 6px 5px 9px rgba(255,255,255,.23),0 10px 16px rgba(0,61,124,.16)!important;
}
.bubble-arm-left{left:0!important;transform:rotate(8deg)!important;transform-origin:82% 18%!important;}
.bubble-arm-right{right:0!important;transform:rotate(-8deg)!important;transform-origin:18% 18%!important;}
.bubble-leg{
  position:absolute!important;top:110px!important;width:30px!important;height:24px!important;border-radius:11px 11px 17px 17px!important;z-index:3!important;
  background:
    radial-gradient(ellipse at 34% 18%,rgba(255,255,255,.66),transparent 25%),
    linear-gradient(180deg,var(--avatar-base),var(--avatar-deep))!important;
  border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 28%)!important;
  box-shadow:inset 4px 3px 7px rgba(255,255,255,.21),0 8px 12px rgba(0,59,118,.15)!important;
}
.bubble-leg-left{left:18px!important;}
.bubble-leg-right{right:18px!important;}
.bubble-face{position:absolute!important;left:27px!important;top:31px!important;width:40px!important;height:30px!important;z-index:12!important;transition:transform .16s ease,opacity .16s ease!important;}
.bubble-eye{position:absolute!important;top:3px!important;width:9px!important;height:17px!important;border-radius:50%!important;background:linear-gradient(180deg,#073b82,#041a42)!important;box-shadow:inset 2px 2px 2px rgba(255,255,255,.42),0 1px 2px rgba(0,0,0,.12)!important;}
.bubble-eye-left{left:4px!important;}.bubble-eye-right{right:4px!important;}
.bubble-mouth{position:absolute!important;left:11px!important;top:18px!important;width:18px!important;height:8px!important;border:3px solid #07386d!important;border-top:0!important;border-radius:0 0 18px 18px!important;}
.expression-neutral .bubble-mouth{top:21px!important;height:0!important;border:0!important;border-top:3px solid #07386d!important;border-radius:999px!important;}
.expression-wink .bubble-eye-left{top:10px!important;height:0!important;border-radius:999px!important;border-top:3px solid #07386d!important;background:transparent!important;box-shadow:none!important;}
.expression-sleepy .bubble-eye{top:11px!important;height:0!important;border-radius:999px!important;border-top:3px solid #07386d!important;background:transparent!important;box-shadow:none!important;}
.expression-excited .bubble-mouth{height:13px!important;width:14px!important;left:13px!important;border:0!important;background:#07386d!important;border-radius:50%!important;box-shadow:inset 0 -3px rgba(255,117,154,.65)!important;}
.facing-left .bubble-face{transform:translateX(-8px) scaleX(.92)!important;}
.facing-right .bubble-face{transform:translateX(8px) scaleX(.92)!important;}
.facing-left .bubble-head,.facing-left .bubble-body{transform:scaleX(.92) translateX(-3px)!important;}
.facing-right .bubble-head,.facing-right .bubble-body{transform:scaleX(.92) translateX(3px)!important;}
.facing-back .bubble-face{opacity:0!important;}
.facing-back .bubble-head{background:radial-gradient(ellipse at 42% 14%,rgba(255,255,255,.72) 0 18%,transparent 30%),radial-gradient(circle at 50% 76%,var(--avatar-core) 0 20%,transparent 46%),linear-gradient(180deg,var(--avatar-base),var(--avatar-deep))!important;}
.facing-left .bubble-arm-right,.facing-right .bubble-arm-left{opacity:.48!important;z-index:3!important;}
.facing-left .bubble-arm-left,.facing-right .bubble-arm-right{z-index:6!important;}
.bubble-accessory{position:absolute!important;display:none;z-index:16!important;pointer-events:none!important;}
.accessory-shell .bubble-accessory-shell{display:block!important;left:18px!important;top:-6px!important;width:58px!important;height:30px!important;border-radius:50% 50% 20% 20%!important;background:repeating-radial-gradient(ellipse at 50% 100%,rgba(255,255,255,.86) 0 3px,rgba(51,213,255,.45) 4px 7px),linear-gradient(180deg,#fff,#59e2ff)!important;border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 32%)!important;}
.accessory-flower .bubble-accessory-flower{display:block!important;left:25px!important;top:-13px!important;width:48px!important;height:48px!important;background:radial-gradient(circle,#fff 0 11%,transparent 12%),radial-gradient(circle at 50% 20%,#fff76e 0 11%,transparent 12%),radial-gradient(circle at 80% 50%,#fff76e 0 11%,transparent 12%),radial-gradient(circle at 50% 80%,#fff76e 0 11%,transparent 12%),radial-gradient(circle at 20% 50%,#fff76e 0 11%,transparent 12%);filter:drop-shadow(0 5px 8px rgba(0,103,91,.18));}
.accessory-star .bubble-accessory-star{display:block!important;left:32px!important;top:-18px!important;width:34px!important;height:34px!important;background:linear-gradient(180deg,#fff,#9bff42)!important;clip-path:polygon(50% 0,61% 34%,98% 35%,68% 56%,79% 91%,50% 70%,21% 91%,32% 56%,2% 35%,39% 34%);filter:drop-shadow(0 0 10px rgba(154,255,86,.78));}
.accessory-bubblecap .bubble-accessory-bubblecap{display:block!important;}
.accessory-leaf .bubble-accessory-leaf{display:block!important;}
.accessory-headphones .bubble-accessory-headphones{display:block!important;}
.accessory-visor .bubble-accessory-visor{display:block!important;}
.accessory-halo .bubble-accessory-halo{display:block!important;}
.desktop-avatar.walking .avatar-sprite,.beach-player.walking .avatar-preview,.beach-npc.walking .avatar-preview,.avatar-preview.preview-walking{animation:v13BubbleBob .31s ease-in-out infinite alternate!important;}
.desktop-avatar.walking .bubble-leg-left,.beach-player.walking .bubble-leg-left,.beach-npc.walking .bubble-leg-left,.avatar-preview.preview-walking .bubble-leg-left{animation:v13LegLeft .31s ease-in-out infinite alternate!important;}
.desktop-avatar.walking .bubble-leg-right,.beach-player.walking .bubble-leg-right,.beach-npc.walking .bubble-leg-right,.avatar-preview.preview-walking .bubble-leg-right{animation:v13LegRight .31s ease-in-out infinite alternate!important;}
.desktop-avatar.walking .bubble-arm-left,.beach-player.walking .bubble-arm-left,.beach-npc.walking .bubble-arm-left,.avatar-preview.preview-walking .bubble-arm-left{animation:v13ArmLeft .31s ease-in-out infinite alternate!important;}
.desktop-avatar.walking .bubble-arm-right,.beach-player.walking .bubble-arm-right,.beach-npc.walking .bubble-arm-right,.avatar-preview.preview-walking .bubble-arm-right{animation:v13ArmRight .31s ease-in-out infinite alternate!important;}
@keyframes v13BubbleBob{from{transform:translateY(0) scaleY(1)}to{transform:translateY(-5px) scaleY(1.012)}}
@keyframes v13LegLeft{from{transform:translateY(0) rotate(-2deg)}to{transform:translateY(5px) translateX(-2px) rotate(8deg)}}
@keyframes v13LegRight{from{transform:translateY(5px) translateX(2px) rotate(-8deg)}to{transform:translateY(0) rotate(2deg)}}
@keyframes v13ArmLeft{from{transform:rotate(7deg)}to{transform:rotate(19deg) translateY(2px)}}
@keyframes v13ArmRight{from{transform:rotate(-19deg) translateY(2px)}to{transform:rotate(-7deg)}}

/* Cleaner character editor */
.character-studio-v13{grid-template-columns:minmax(320px,.82fr) minmax(420px,1fr) minmax(250px,.58fr)!important;align-items:start!important;}
.character-studio-v13 .studio-section{border-radius:22px!important;background:linear-gradient(180deg,rgba(255,255,255,.75),rgba(190,249,255,.30))!important;}
.character-studio-v13 .fit-chip.active,.friend-choice.active{box-shadow:0 0 0 3px rgba(113,231,255,.32), inset 0 1px rgba(255,255,255,.95)!important;background:linear-gradient(180deg,#fff,#67e4ff 55%,#8aff65)!important;}

/* Aquarium rebuild */
.aquarium-v13{height:100%;min-height:500px;display:grid;grid-template-rows:auto 1fr;gap:12px;overflow:hidden;color:#063a59;}
.aquarium-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border-radius:24px;border:1px solid rgba(255,255,255,.72);background:linear-gradient(180deg,rgba(255,255,255,.74),rgba(193,249,255,.32));box-shadow:inset 0 1px rgba(255,255,255,.92),0 14px 28px rgba(0,82,132,.10);}
.aquarium-topbar h1{margin:0;font-size:28px;}.aquarium-actions{display:flex;gap:8px;flex-wrap:wrap;}
.aquarium-stage-v13{position:relative;overflow:hidden;min-height:430px;border-radius:32px;border:1px solid rgba(255,255,255,.72);background:radial-gradient(circle at 21% 18%,rgba(255,255,255,.95),transparent 12%),radial-gradient(circle at 82% 72%,rgba(131,255,82,.34),transparent 21%),linear-gradient(180deg,#4cd8ff 0%,#d9ffff 32%,#8be972 100%);box-shadow:inset 0 1px rgba(255,255,255,.9),0 24px 52px rgba(0,78,134,.14);}
.aquarium-stage-v13::before{content:"";position:absolute;inset:0;background:repeating-radial-gradient(ellipse at 50% 26%,rgba(255,255,255,.28) 0 2px,transparent 3px 34px),linear-gradient(180deg,rgba(255,255,255,.26),transparent 35%,rgba(19,144,225,.18) 36%,transparent 65%);mix-blend-mode:screen;pointer-events:none;}
.aquarium-stage-v13::after{content:"";position:absolute;left:-8%;right:-8%;bottom:-22px;height:130px;background:radial-gradient(ellipse at 20% 35%,rgba(255,255,255,.72),transparent 16%),radial-gradient(ellipse at 70% 45%,rgba(255,255,255,.58),transparent 18%),linear-gradient(180deg,rgba(114,242,92,.56),rgba(11,135,72,.50));border-radius:50% 50% 0 0;}
.aqua-fish-v13{position:absolute;width:76px;height:38px;left:0;top:40%;border-radius:50%;background:linear-gradient(180deg,#fff,#6be6ff 50%,#127bff);border:2px solid rgba(0,102,215,.68);box-shadow:inset 0 1px rgba(255,255,255,.86),0 8px 18px rgba(0,87,150,.16);animation:aquaSwimV13 var(--speed,16s) linear infinite;z-index:3;}
.aqua-fish-v13::before{content:"";position:absolute;right:-18px;top:8px;width:26px;height:22px;background:linear-gradient(180deg,#fff,#58d8ff 65%,#116ee8);clip-path:polygon(0 50%,100% 0,100% 100%);border-radius:4px;}
.aqua-fish-v13::after{content:"";position:absolute;left:17px;top:10px;width:7px;height:7px;border-radius:50%;background:#052a66;box-shadow:0 0 0 2px rgba(255,255,255,.62);}
.aqua-fish-v13.reverse{transform:scaleX(-1);animation-name:aquaSwimReverseV13;}
.aqua-jelly-v13{position:absolute;width:44px;height:52px;border-radius:50% 50% 40% 40%;background:radial-gradient(circle at 35% 18%,#fff,transparent 17%),linear-gradient(180deg,rgba(255,255,255,.84),rgba(95,228,255,.36));border:1px solid rgba(255,255,255,.72);box-shadow:0 0 24px rgba(105,233,255,.42);animation:jellyFloatV13 var(--speed,12s) ease-in-out infinite;z-index:3;}
.aqua-jelly-v13::after{content:"";position:absolute;left:7px;right:7px;bottom:-17px;height:21px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.78) 0 3px,transparent 4px 10px);filter:blur(.3px);}
.aqua-bubble-v13{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 24%,#fff 0 16%,rgba(190,255,255,.78) 17%,rgba(77,213,255,.22) 63%,transparent 72%);box-shadow:0 0 10px rgba(130,244,255,.46);animation:aquaBubbleUpV13 var(--speed,5s) ease-out forwards;z-index:4;}
.aquarium-hud-v13{position:absolute;left:18px;bottom:18px;z-index:8;display:grid;gap:6px;max-width:420px;padding:14px;border-radius:22px;background:rgba(255,255,255,.66);border:1px solid rgba(255,255,255,.72);box-shadow:inset 0 1px rgba(255,255,255,.9),0 12px 24px rgba(0,80,132,.12);font-weight:800;}
@keyframes aquaSwimV13{from{transform:translateX(-120px)}to{transform:translateX(calc(100vw + 220px))}}
@keyframes aquaSwimReverseV13{from{transform:translateX(calc(100vw + 220px)) scaleX(-1)}to{transform:translateX(-140px) scaleX(-1)}}
@keyframes jellyFloatV13{0%{transform:translateY(0)}50%{transform:translateY(-34px)}100%{transform:translateY(0)}}
@keyframes aquaBubbleUpV13{from{transform:translate(0,0) scale(.8);opacity:.9}to{transform:translate(var(--drift),-380px) scale(1.4);opacity:0}}

/* Friends, custom chat, relationships, cafe */
.friend-chat-panel-v13{display:grid;grid-template-rows:auto auto 1fr auto;gap:12px;min-height:560px;}
.relationship-pill{display:inline-grid;place-items:center;padding:8px 12px;border-radius:999px;font-weight:1000;color:#064468;background:linear-gradient(180deg,#fff,#73e8ff 55%,#8cff65);box-shadow:inset 0 1px rgba(255,255,255,.94),0 8px 18px rgba(0,98,145,.12);}
.custom-friend-chat{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px;border-radius:20px;background:rgba(255,255,255,.46);border:1px solid rgba(255,255,255,.62);}
.custom-friend-chat input{min-width:0;}
.friend-secondary-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.friend-memory-line{font-size:12px;font-weight:900;color:#0a5776;opacity:.82;}
.cafe-app{height:100%;display:grid;grid-template-rows:auto 1fr;gap:12px;color:#07334d;}
.cafe-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(196,249,255,.34));border:1px solid rgba(255,255,255,.72);box-shadow:inset 0 1px rgba(255,255,255,.92),0 14px 28px rgba(0,82,132,.10);}
.cafe-stage{position:relative;min-height:510px;overflow:hidden;border-radius:32px;border:1px solid rgba(255,255,255,.72);background:radial-gradient(circle at 15% 16%,rgba(255,255,255,.96),transparent 13%),radial-gradient(circle at 80% 77%,rgba(129,255,83,.34),transparent 24%),linear-gradient(180deg,#6ee4ff 0%,#efffff 33%,#fff7d2 48%,#8ee86f 100%);box-shadow:inset 0 1px rgba(255,255,255,.92),0 24px 52px rgba(0,78,134,.14);}
.cafe-stage::before{content:"";position:absolute;left:7%;right:7%;top:18%;height:170px;border-radius:40px;background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(154,237,255,.42));border:1px solid rgba(255,255,255,.74);box-shadow:inset 0 1px rgba(255,255,255,.96),0 20px 40px rgba(0,80,132,.12);}
.cafe-counter{position:absolute;left:10%;right:10%;top:33%;height:80px;border-radius:28px;background:linear-gradient(180deg,#fff,#74e9ff 62%,#4ec45c);border:1px solid rgba(255,255,255,.82);box-shadow:inset 0 1px rgba(255,255,255,.92),0 18px 30px rgba(0,76,132,.14);z-index:1;}
.cafe-table{position:absolute;left:50%;top:58%;transform:translate(-50%,-50%);width:270px;height:100px;border-radius:50%;background:radial-gradient(ellipse,#fff 0 12%,#8ff0ff 40%,rgba(35,145,235,.58) 72%,transparent 74%);border:1px solid rgba(255,255,255,.82);box-shadow:0 18px 34px rgba(0,77,132,.18);z-index:5;}
.cafe-player,.cafe-friend{position:absolute;z-index:8;display:grid;place-items:center;gap:3px;font-weight:1000;color:#064469;text-shadow:0 1px rgba(255,255,255,.82);}
.cafe-player{left:23%;top:47%;}.cafe-friend{right:23%;top:47%;}
.cafe-player .avatar-preview,.cafe-friend .avatar-preview{transform:scale(.82)!important;}
.cafe-menu{position:absolute;right:18px;bottom:18px;width:min(320px,calc(100% - 36px));z-index:12;display:grid;gap:8px;padding:14px;border-radius:24px;background:rgba(255,255,255,.70);border:1px solid rgba(255,255,255,.78);box-shadow:inset 0 1px rgba(255,255,255,.94),0 16px 30px rgba(0,80,132,.14);}
.cafe-menu .glass-button{width:100%;}.cafe-chat-log{max-height:116px;overflow:auto;padding:8px;border-radius:16px;background:rgba(255,255,255,.44);font-weight:800;}
.cafe-empty{place-items:center;text-align:center;padding:22px;}

/* Casino cleaner layout */
.casino-app-v13{height:100%;overflow:auto;display:grid;gap:12px;color:#07334d;grid-template-rows:auto auto minmax(0,1fr) auto;}
.casino-header-v13{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:1fr minmax(210px,270px);gap:12px;align-items:stretch;padding:14px;border-radius:26px;border:1px solid rgba(255,255,255,.72);background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(191,249,255,.46));backdrop-filter:blur(18px) saturate(1.3);box-shadow:inset 0 1px rgba(255,255,255,.94),0 14px 28px rgba(0,76,132,.12);}
.casino-header-v13 h1{font-size:32px;margin:2px 0;}.casino-header-v13 p{margin:0;font-weight:800;opacity:.76;}
.casino-wallet-card-v13{display:grid;gap:6px;align-content:center;text-align:right;padding:12px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.74),rgba(200,250,255,.35));border:1px solid rgba(255,255,255,.68);}
.casino-wallet-card-v13 strong{font-size:24px;color:#045777;}.casino-wallet-card-v13 .glass-button{justify-self:end;}
.casino-main-v13{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:12px;min-height:500px;}
.casino-table-wrap-v13{min-height:500px;border-radius:30px;border:1px solid rgba(255,255,255,.74);background:radial-gradient(circle at 48% 18%,rgba(255,255,255,.96),transparent 16%),radial-gradient(circle at 80% 70%,rgba(124,255,89,.28),transparent 21%),linear-gradient(180deg,rgba(255,255,255,.72),rgba(173,244,255,.28));box-shadow:inset 0 1px rgba(255,255,255,.92),0 20px 42px rgba(0,76,132,.13);overflow:hidden;}
.casino-side-v13{display:grid;gap:12px;align-content:start;}
.bet-panel-v13,.casino-rules-v13,.casino-history-v13{padding:14px;border-radius:24px;border:1px solid rgba(255,255,255,.70);background:linear-gradient(180deg,rgba(255,255,255,.74),rgba(201,250,255,.35));box-shadow:inset 0 1px rgba(255,255,255,.92),0 14px 28px rgba(0,75,132,.10);}
.bet-panel-v13{display:grid;gap:10px;}.bet-panel-v13 h3,.casino-rules-v13 h3,.casino-history-v13 strong{margin:0;color:#045777;}
.quick-bets-v13{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;}.quick-bets-v13 button{min-height:36px;}
.casino-bet-input-v13{width:100%!important;font-size:20px!important;font-weight:1000!important;text-align:center!important;}
.casino-actions-v13{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}.casino-actions-v13 .glass-button{min-height:42px;}
.blackjack-table-v13,.keno-table-v13,.mines-table-v13{height:100%;display:grid;gap:12px;padding:16px;}
.blackjack-scene-v13{min-height:430px;border-radius:26px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 75%,rgba(83,211,255,.42),transparent 42%),radial-gradient(circle at 50% 11%,rgba(255,255,255,.88),transparent 18%),linear-gradient(180deg,#8beeff 0%,#fbffff 34%,#78e069 100%);border:1px solid rgba(255,255,255,.72);}
.blackjack-scene-v13::before{content:"";position:absolute;left:11%;right:11%;top:34%;height:48%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.72),rgba(65,199,255,.36) 48%,rgba(20,142,46,.28) 70%,transparent 72%);border:1px solid rgba(255,255,255,.5);}
.blackjack-avatar-seat-v13{position:absolute;left:24px;bottom:8px;width:140px;height:168px;display:grid;place-items:end center;z-index:8;}
.blackjack-avatar-seat-v13 .seated-avatar{transform:scale(.78) translateY(17px)!important;}
.dealer-zone-v13,.player-zone-v13{position:absolute;left:20%;right:12%;display:grid;place-items:center;gap:9px;color:#07334d;font-weight:1000;z-index:5;}.dealer-zone-v13{top:28px;}.player-zone-v13{bottom:28px;}
.card-row-v13{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;}.playing-card{width:56px!important;height:76px!important;font-size:16px!important;}
.casino-message-v13{margin:0;padding:12px 14px;border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(204,249,255,.36));border:1px solid rgba(255,255,255,.68);font-weight:1000;color:#064769;}
.keno-layout-v13,.mines-layout-v13{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,300px);gap:14px;align-items:start;}
.keno-board-v13{display:grid;grid-template-columns:repeat(8,minmax(42px,1fr));gap:9px;}.keno-number{min-height:48px!important;border-radius:16px!important;font-size:16px!important;}
.mines-board-v13{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;max-width:510px;margin:auto;}.mine-tile{min-height:76px!important;font-size:24px!important;}
.game-status-card-v13{display:grid;gap:8px;padding:14px;border-radius:22px;background:rgba(255,255,255,.56);border:1px solid rgba(255,255,255,.64);font-weight:900;}
@media(max-width:980px){.character-studio-v13{grid-template-columns:1fr!important}.casino-header-v13,.casino-main-v13,.keno-layout-v13,.mines-layout-v13{grid-template-columns:1fr}.casino-wallet-card-v13{text-align:left}.casino-wallet-card-v13 .glass-button{justify-self:start}.dealer-zone-v13,.player-zone-v13{left:10%;right:5%;}.blackjack-avatar-seat-v13{opacity:.82;transform:scale(.84);transform-origin:left bottom}.keno-board-v13{grid-template-columns:repeat(5,1fr)}.cafe-player{left:12%;}.cafe-friend{right:12%;}}

/* ===== V14 polish: fitted mascot, premium cafe, repaired aquarium, Dex logo ===== */
.dex-real-logo-v14{width:1.25em;height:1.25em;object-fit:contain;vertical-align:-.22em;border-radius:6px;filter:drop-shadow(0 2px 3px rgba(0,0,0,.18));}
.dex-icon-bubble-v14{background:#05070b!important;padding:7px!important;display:grid!important;place-items:center!important;}
.dex-icon-bubble-v14 img{width:72%!important;height:72%!important;object-fit:contain!important;display:block!important;filter:none!important;}
.launch-dot.dex-launch-v14{display:grid;place-items:center;padding:6px!important;}
.launch-dot.dex-launch-v14 img{width:24px;height:24px;border-radius:6px;display:block;}
.dex-window-icon-v14{display:grid!important;place-items:center!important;background:#05070b!important;color:transparent!important;border-radius:7px!important;overflow:hidden!important;}
.dex-window-icon-v14 img{width:18px;height:18px;display:block;}
.dex-toolbar-button-v14{display:inline-flex;align-items:center;gap:8px;}

/* Properly anchored avatar accessories and editor scale */
.avatar-rig-v14{isolation:isolate;contain:layout paint;}
.character-studio-v14{grid-template-columns:minmax(310px,.86fr) minmax(430px,1.14fr)!important;gap:18px!important;align-items:stretch;}
.mascot-showcase-v14,.mascot-controls-v14,.studio-sheet-panel-v14{border-radius:30px!important;background:radial-gradient(circle at 18% 14%,rgba(255,255,255,.96),transparent 18%),radial-gradient(circle at 92% 14%,rgba(130,255,99,.32),transparent 22%),linear-gradient(180deg,rgba(255,255,255,.82),rgba(195,250,255,.38) 55%,rgba(135,232,91,.16))!important;box-shadow:inset 0 1px rgba(255,255,255,.96),0 24px 52px rgba(0,76,132,.15)!important;}
.mascot-glass-stage-v14{min-height:330px!important;display:grid!important;place-items:center!important;overflow:visible!important;}
.mascot-glass-stage-v14 .avatar-preview.xl{margin:auto!important;transform:scale(1.48)!important;transform-origin:center bottom!important;}
.avatar-preview.xl{transform-origin:center bottom!important;}
.avatar-preview.sm{transform:scale(.86)!important;transform-origin:center bottom!important;}
.avatar-rig-v14 .bubble-head{left:13px!important;top:0!important;width:72px!important;height:72px!important;}
.avatar-rig-v14 .bubble-body{left:6px!important;top:51px!important;width:86px!important;height:67px!important;border-radius:38px 38px 24px 24px!important;}
.avatar-rig-v14 .bubble-arm{top:63px!important;width:25px!important;height:51px!important;}
.avatar-rig-v14 .bubble-arm-left{left:-3px!important;transform:rotate(8deg)!important;}
.avatar-rig-v14 .bubble-arm-right{right:-3px!important;transform:rotate(-8deg)!important;}
.avatar-rig-v14 .bubble-leg{top:106px!important;width:31px!important;height:28px!important;}
.avatar-rig-v14 .bubble-leg-left{left:18px!important;}
.avatar-rig-v14 .bubble-leg-right{right:18px!important;}
.avatar-rig-v14 .bubble-face{left:29px!important;top:30px!important;width:40px!important;height:31px!important;}
.avatar-rig-v14 .bubble-accessory{display:none;position:absolute;pointer-events:none;z-index:16;filter:drop-shadow(0 5px 6px rgba(0,74,128,.18));}
.accessory-bubblecap.avatar-rig-v14 .bubble-accessory-bubblecap{display:block!important;left:14px!important;top:-5px!important;width:69px!important;height:33px!important;border-radius:32px 32px 18px 18px!important;background:radial-gradient(circle at 27% 22%,#fff 0 17%,transparent 25%),linear-gradient(180deg,#eaffff,var(--avatar-top) 36%,var(--avatar-base) 76%,var(--avatar-deep))!important;border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 22%)!important;}
.accessory-bubblecap.avatar-rig-v14 .bubble-accessory-bubblecap::after{content:"";position:absolute;left:-9px;bottom:-7px;width:45px;height:12px;border-radius:999px;background:linear-gradient(180deg,#efffff,var(--avatar-base) 70%,var(--avatar-deep));border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 22%);box-shadow:inset 0 1px rgba(255,255,255,.8);}
.accessory-leaf.avatar-rig-v14 .bubble-accessory-leaf{display:block!important;left:36px!important;top:-16px!important;width:54px!important;height:32px!important;border-radius:8px 100% 8px 100%!important;background:radial-gradient(circle at 22% 22%,#fff 0 13%,transparent 22%),linear-gradient(135deg,#d9ffb3,#79ef52 45%,#219d38)!important;border:2px solid rgba(31,119,42,.55)!important;transform:rotate(-20deg)!important;}
.accessory-leaf.avatar-rig-v14 .bubble-accessory-leaf::after{content:"";position:absolute;left:6px;right:7px;top:51%;border-top:2px solid rgba(15,99,31,.46);transform:rotate(-5deg);}
.accessory-headphones.avatar-rig-v14 .bubble-accessory-headphones{display:block!important;left:3px!important;top:14px!important;width:92px!important;height:49px!important;border-radius:56px 56px 10px 10px!important;border:6px solid #0b2148!important;border-bottom:0!important;background:transparent!important;box-shadow:inset 0 4px rgba(255,255,255,.18);}
.accessory-headphones.avatar-rig-v14 .bubble-accessory-headphones::before,.accessory-headphones.avatar-rig-v14 .bubble-accessory-headphones::after{content:"";position:absolute;top:22px;width:18px;height:30px;border-radius:11px;background:linear-gradient(180deg,#152e66,#081633);box-shadow:inset 2px 2px 4px rgba(255,255,255,.24),0 0 0 4px color-mix(in srgb,var(--avatar-base),#fff 10%);}
.accessory-headphones.avatar-rig-v14 .bubble-accessory-headphones::before{left:-8px!important;}.accessory-headphones.avatar-rig-v14 .bubble-accessory-headphones::after{right:-8px!important;}
.accessory-visor.avatar-rig-v14 .bubble-accessory-visor{display:block!important;left:11px!important;top:14px!important;width:76px!important;height:24px!important;border-radius:15px 15px 10px 10px!important;background:linear-gradient(180deg,#f5ffff,#8df6ff 40%,var(--avatar-base) 74%,#2b82ff)!important;border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 24%)!important;}
.accessory-visor.avatar-rig-v14 .bubble-accessory-visor::after{content:"";position:absolute;right:-17px;bottom:-6px;width:42px;height:13px;border-radius:999px;background:linear-gradient(180deg,#ecffff,#49d7ff);border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 24%);transform:rotate(-9deg);}
.accessory-halo.avatar-rig-v14 .bubble-accessory-halo{display:block!important;left:18px!important;top:-31px!important;width:62px!important;height:20px!important;border-radius:50%!important;background:transparent!important;border:5px solid rgba(183,255,255,.95)!important;box-shadow:0 0 16px rgba(111,240,255,.9),inset 0 0 10px rgba(255,255,255,.8)!important;}
.accessory-shell.avatar-rig-v14 .bubble-accessory-shell{display:block!important;left:26px!important;top:-9px!important;width:48px!important;height:30px!important;border-radius:50% 50% 22% 22%!important;background:radial-gradient(circle at 50% 7%,#fff 0 14%,transparent 16%),repeating-radial-gradient(ellipse at 50% 88%,rgba(255,255,255,.58) 0 4px,rgba(72,211,255,.58) 5px 9px),linear-gradient(180deg,#fff,#8eeeff 50%,#44a9ff)!important;border:2px solid rgba(0,112,198,.42)!important;}
.accessory-flower.avatar-rig-v14 .bubble-accessory-flower{display:block!important;left:62px!important;top:5px!important;width:31px!important;height:31px!important;border-radius:50%!important;background:radial-gradient(circle at 50% 50%,#fff278 0 16%,transparent 18%),radial-gradient(circle at 50% 0,#ff9fe0 0 28%,transparent 30%),radial-gradient(circle at 100% 50%,#ff9fe0 0 28%,transparent 30%),radial-gradient(circle at 50% 100%,#ff9fe0 0 28%,transparent 30%),radial-gradient(circle at 0 50%,#ff9fe0 0 28%,transparent 30%)!important;}
.accessory-star.avatar-rig-v14 .bubble-accessory-star{display:block!important;left:61px!important;top:-10px!important;width:34px!important;height:34px!important;background:linear-gradient(180deg,#fffad3,#8df5ff 55%,#36adff)!important;clip-path:polygon(50% 0,61% 35%,98% 35%,68% 56%,79% 91%,50% 69%,21% 91%,32% 56%,2% 35%,39% 35%)!important;filter:drop-shadow(0 0 10px rgba(138,246,255,.8));}
.accessory-glasses.avatar-rig-v14 .bubble-accessory-glasses{display:block!important;left:21px!important;top:32px!important;width:58px!important;height:19px!important;background:linear-gradient(90deg,#09275e 0 7px,transparent 7px 23px,#09275e 23px 35px,transparent 35px 51px,#09275e 51px 58px)!important;border-radius:12px;}
.accessory-glasses.avatar-rig-v14 .bubble-accessory-glasses::before,.accessory-glasses.avatar-rig-v14 .bubble-accessory-glasses::after{content:"";position:absolute;top:-1px;width:22px;height:18px;border:4px solid #09275e;border-radius:50%;background:rgba(224,255,255,.35);}
.accessory-glasses.avatar-rig-v14 .bubble-accessory-glasses::before{left:1px}.accessory-glasses.avatar-rig-v14 .bubble-accessory-glasses::after{right:1px}
.accessory-crown.avatar-rig-v14 .bubble-accessory-crown{display:block!important;left:23px!important;top:-13px!important;width:54px!important;height:29px!important;background:linear-gradient(180deg,#fffbd2,#a9f9ff 58%,#4bbcff)!important;border:2px solid rgba(0,112,198,.45)!important;clip-path:polygon(0 100%,0 30%,22% 65%,36% 10%,50% 62%,64% 10%,78% 65%,100% 30%,100% 100%)!important;box-shadow:0 0 14px rgba(151,244,255,.72);}
.accessory-ribbon.avatar-rig-v14 .bubble-accessory-ribbon{display:block!important;left:32px!important;top:77px!important;width:35px!important;height:22px!important;border-radius:50%;background:linear-gradient(135deg,#ff81ca,#fff,#74e5ff)!important;z-index:18!important;}
.accessory-ribbon.avatar-rig-v14 .bubble-accessory-ribbon::before,.accessory-ribbon.avatar-rig-v14 .bubble-accessory-ribbon::after{content:"";position:absolute;top:3px;width:19px;height:17px;background:linear-gradient(180deg,#ffb4df,#44cfff);border-radius:60% 35% 60% 35%;}.accessory-ribbon.avatar-rig-v14 .bubble-accessory-ribbon::before{left:-12px;transform:rotate(-20deg)}.accessory-ribbon.avatar-rig-v14 .bubble-accessory-ribbon::after{right:-12px;transform:rotate(20deg)}
.expression-sleepy.avatar-rig-v14 .bubble-eye{height:0!important;top:12px!important;border-top:3px solid #06396f!important;background:transparent!important;box-shadow:none!important;}
.expression-sleepy.avatar-rig-v14 .bubble-mouth{top:22px!important;width:11px!important;height:8px!important;border:3px solid #06396f!important;border-left:0!important;border-top:0!important;border-bottom:0!important;border-radius:50%!important;}
.expression-excited.avatar-rig-v14 .bubble-eye{height:13px!important;width:10px!important;box-shadow:0 0 0 3px rgba(255,255,255,.34)!important;}
.expression-excited.avatar-rig-v14 .bubble-mouth{top:18px!important;left:13px!important;width:15px!important;height:12px!important;border:0!important;border-radius:50%!important;background:#06396f!important;}
.expression-soft.avatar-rig-v14 .bubble-eye{height:12px!important;width:9px!important;opacity:.86!important;}
.expression-soft.avatar-rig-v14 .bubble-mouth{top:20px!important;left:12px!important;width:16px!important;height:6px!important;border-width:2px!important;}
.expression-surprised.avatar-rig-v14 .bubble-mouth{top:18px!important;left:14px!important;width:12px!important;height:12px!important;border:0!important;border-radius:50%!important;background:#06396f!important;}
.accessory-grid-v14{grid-template-columns:repeat(3,minmax(120px,1fr))!important;}
.accessory-chip-v14{justify-content:flex-start!important;gap:8px!important;}
.mini-accessory{width:18px;height:18px;border-radius:50%;display:inline-block;background:linear-gradient(180deg,#fff,#79eaff);box-shadow:inset 0 1px rgba(255,255,255,.8),0 2px 5px rgba(0,74,128,.14);}
.mini-none{background:linear-gradient(180deg,#fff,#dffaff)}.mini-leaf{border-radius:6px 100% 6px 100%;background:linear-gradient(135deg,#d8ffb8,#49d847)}.mini-headphones{background:#0b2148}.mini-halo{background:transparent;border:3px solid #8ff7ff}.mini-flower{background:#ff9fe0}.mini-star{clip-path:polygon(50% 0,61% 35%,98% 35%,68% 56%,79% 91%,50% 69%,21% 91%,32% 56%,2% 35%,39% 35%)}.mini-glasses{border-radius:4px;background:#09275e}.mini-crown{clip-path:polygon(0 100%,0 30%,22% 65%,36% 10%,50% 62%,64% 10%,78% 65%,100% 30%,100% 100%)}.mini-ribbon{background:linear-gradient(135deg,#ff81ca,#fff,#74e5ff)}

/* Idle emotes */
.avatar-idle-bubble-v14{position:absolute;left:64px;top:-36px;min-width:56px;max-width:104px;padding:7px 10px;border-radius:18px 18px 18px 5px;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(195,250,255,.72));border:1px solid rgba(255,255,255,.9);box-shadow:inset 0 1px rgba(255,255,255,.96),0 10px 24px rgba(0,88,132,.16);font-size:12px;font-weight:1000;color:#075170;text-align:center;opacity:0;transform:translateY(6px) scale(.94);transition:.18s ease;pointer-events:none;z-index:50;}
.avatar-idle-bubble-v14.show{opacity:1;transform:translateY(0) scale(1);}
.desktop-avatar.idle-jump-v14 .avatar-sprite{animation:avatarJumpV14 .62s ease-in-out infinite alternate!important;}
.desktop-avatar.idle-sit-v14 .avatar-sprite{animation:avatarSitV14 3.2s ease-in-out!important;transform-origin:center bottom!important;}
.desktop-avatar.idle-yawn-v14 .avatar-sprite{animation:avatarYawnV14 2.8s ease-in-out!important;}
.desktop-avatar.idle-sleep-v14 .avatar-sprite{animation:avatarSleepV14 5.6s ease-in-out!important;transform-origin:center bottom!important;}
.desktop-avatar.idle-sleep-v14 .bubble-eye{height:0!important;top:12px!important;border-top:3px solid #06396f!important;background:transparent!important;box-shadow:none!important;}
.desktop-avatar.idle-yawn-v14 .bubble-mouth{top:18px!important;left:13px!important;width:15px!important;height:14px!important;border:0!important;border-radius:50%!important;background:#06396f!important;}
@keyframes avatarJumpV14{0%{transform:translateY(0) scaleY(1)}50%{transform:translateY(-20px) scaleY(1.03)}100%{transform:translateY(-4px) scaleY(.98)}}
@keyframes avatarSitV14{0%{transform:translateY(0) scaleY(1)}18%,82%{transform:translateY(18px) scaleY(.86)}100%{transform:translateY(0) scaleY(1)}}
@keyframes avatarYawnV14{0%,100%{transform:translateY(0) scaleX(1) scaleY(1)}35%,68%{transform:translateY(5px) scaleX(1.04) scaleY(.95)}}
@keyframes avatarSleepV14{0%{transform:rotate(0deg) translateY(0)}18%,82%{transform:rotate(-10deg) translateY(19px)}100%{transform:rotate(0deg) translateY(0)}}

/* Repaired aquarium */
.aquarium-v14{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;color:#07334d;overflow:hidden;}
.aquarium-header-v14{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,330px);gap:12px;align-items:stretch;padding:14px;border-radius:28px;background:radial-gradient(circle at 16% 10%,rgba(255,255,255,.92),transparent 18%),linear-gradient(180deg,rgba(255,255,255,.82),rgba(195,249,255,.4));border:1px solid rgba(255,255,255,.74);box-shadow:inset 0 1px rgba(255,255,255,.95),0 18px 36px rgba(0,76,132,.12);}
.aquarium-header-v14 h1{font-size:31px;margin:2px 0;}.aquarium-header-v14 p{margin:0;font-weight:800;opacity:.76;}
.aquarium-control-card-v14{display:grid;gap:6px;align-content:center;text-align:right;padding:12px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(198,249,255,.36));border:1px solid rgba(255,255,255,.7);}
.aquarium-stage-v14{position:relative;min-height:440px;overflow:hidden;border-radius:34px;border:1px solid rgba(255,255,255,.78);background:radial-gradient(circle at 20% 12%,rgba(255,255,255,.96),transparent 16%),radial-gradient(circle at 82% 14%,rgba(142,255,90,.32),transparent 18%),linear-gradient(180deg,#75e8ff 0%,#dfffff 36%,#4fb9ff 68%,#0d86ce 100%);box-shadow:inset 0 1px rgba(255,255,255,.96),inset 0 -42px 70px rgba(3,78,130,.18),0 24px 52px rgba(0,80,132,.16);}
.aqua-rays-v14{position:absolute;inset:-10% 0 0;background:repeating-conic-gradient(from 190deg at 50% -10%,rgba(255,255,255,.38) 0 8deg,transparent 8deg 18deg);opacity:.52;filter:blur(4px);mix-blend-mode:screen;animation:aquaRaysV14 12s ease-in-out infinite alternate;}
.aqua-backdrop-v14{position:absolute;left:6%;right:6%;top:10%;height:48%;border-radius:45%;background:radial-gradient(ellipse at 42% 50%,rgba(255,255,255,.34),transparent 56%),radial-gradient(ellipse at 70% 70%,rgba(112,255,99,.24),transparent 35%);border:1px solid rgba(255,255,255,.32);filter:blur(.2px);}
.aqua-sand-v14{position:absolute;left:-5%;right:-5%;bottom:-6%;height:28%;border-radius:50% 50% 0 0;background:radial-gradient(circle at 20% 30%,rgba(255,255,255,.82),transparent 8%),radial-gradient(circle at 72% 42%,rgba(255,255,255,.5),transparent 7%),linear-gradient(180deg,#fff9bf,#a4ec75 72%,#4db85e);box-shadow:inset 0 22px 30px rgba(255,255,255,.42);z-index:1;}
.aqua-plant{position:absolute;bottom:12%;width:48px;height:130px;z-index:2;transform-origin:center bottom;background:repeating-linear-gradient(90deg,rgba(42,186,65,.0) 0 6px,rgba(44,198,74,.8) 7px 13px);clip-path:polygon(50% 0,64% 34%,54% 100%,46% 100%,36% 34%);filter:drop-shadow(0 3px 5px rgba(0,100,87,.18));animation:plantWaveV14 3.8s ease-in-out infinite alternate;}
.aqua-plant.p1{left:7%;height:150px}.aqua-plant.p2{right:11%;height:120px;animation-delay:-1s}.aqua-plant.p3{left:78%;height:100px;animation-delay:-2s;}
.aqua-shells-v14{position:absolute;left:18%;bottom:13%;width:160px;height:50px;z-index:3;background:radial-gradient(ellipse at 20% 65%,#fff 0 11%,#8eeeff 12% 21%,transparent 22%),radial-gradient(ellipse at 52% 70%,#fff 0 9%,#97e68e 10% 18%,transparent 19%),radial-gradient(ellipse at 78% 62%,#fff 0 8%,#65cfff 9% 16%,transparent 17%);}
.aquarium-hud-v14{position:absolute;left:18px;bottom:18px;z-index:12;width:min(330px,calc(100% - 36px));display:grid;gap:9px;padding:14px;border-radius:24px;background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.78);box-shadow:inset 0 1px rgba(255,255,255,.95),0 16px 30px rgba(0,80,132,.14);font-weight:900;backdrop-filter:blur(16px);}
.aqua-tool-grid-v14{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}.aqua-tool-grid-v14 .glass-button{min-height:36px;}
.aqua-fish-v14{position:absolute;left:-150px;width:74px;height:42px;border-radius:58% 42% 43% 57%;background:radial-gradient(circle at 31% 23%,#fff 0 10%,transparent 16%),linear-gradient(180deg,#fff,#5ee4ff 45%,#1277e8);border:1px solid rgba(255,255,255,.72);box-shadow:inset 5px 4px 8px rgba(255,255,255,.32),0 9px 17px rgba(0,74,132,.16);z-index:5;transform:scale(var(--scale,1));animation:aquaSwimV14 var(--speed,24s) linear infinite;}
.aqua-fish-v14::before{content:"";position:absolute;right:-20px;top:9px;width:27px;height:24px;background:linear-gradient(180deg,#fff,#51d6ff 65%,#116ee8);clip-path:polygon(0 50%,100% 0,100% 100%);border-radius:5px;}.aqua-fish-v14::after{content:"";position:absolute;left:16px;top:11px;width:7px;height:7px;border-radius:50%;background:#052a66;box-shadow:0 0 0 2px rgba(255,255,255,.72);}
.aqua-fish-v14.green{filter:hue-rotate(66deg) saturate(1.12)}.aqua-fish-v14.koi{filter:hue-rotate(150deg) saturate(1.2)}.aqua-fish-v14.glass{opacity:.82;filter:saturate(.86) brightness(1.1)}.aqua-fish-v14.reverse{left:auto;right:-150px;animation-name:aquaSwimReverseV14;}
.aqua-jelly-v14{position:absolute;width:50px;height:57px;border-radius:50% 50% 41% 41%;background:radial-gradient(circle at 35% 18%,#fff,transparent 17%),linear-gradient(180deg,rgba(255,255,255,.84),rgba(98,228,255,.38));border:1px solid rgba(255,255,255,.74);box-shadow:0 0 26px rgba(105,233,255,.44);animation:jellyFloatV14 var(--speed,12s) ease-in-out infinite;z-index:6;}.aqua-jelly-v14::after{content:"";position:absolute;left:7px;right:7px;bottom:-17px;height:22px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.78) 0 3px,transparent 4px 10px);filter:blur(.3px);}
.aqua-bubble-v14{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 24%,#fff 0 16%,rgba(190,255,255,.78) 17%,rgba(77,213,255,.22) 63%,transparent 72%);box-shadow:0 0 10px rgba(130,244,255,.48);animation:aquaBubbleUpV14 var(--speed,5s) ease-out forwards;z-index:7;pointer-events:none;}.aqua-food-v14{position:absolute;width:8px;height:8px;border-radius:50%;background:linear-gradient(180deg,#fff9b2,#7ee866);box-shadow:0 0 7px rgba(157,255,102,.66);animation:aquaFoodDropV14 5.2s ease-in forwards;z-index:8;}
@keyframes aquaSwimV14{0%{left:-160px;transform:translateY(0) scale(var(--scale,1))}45%{transform:translateY(-16px) scale(var(--scale,1))}100%{left:calc(100% + 170px);transform:translateY(5px) scale(var(--scale,1))}}
@keyframes aquaSwimReverseV14{0%{right:-160px;transform:translateY(0) scaleX(-1) scale(var(--scale,1))}55%{transform:translateY(16px) scaleX(-1) scale(var(--scale,1))}100%{right:calc(100% + 170px);transform:translateY(-5px) scaleX(-1) scale(var(--scale,1))}}
@keyframes jellyFloatV14{0%,100%{transform:translateY(0)}50%{transform:translateY(-38px)}}
@keyframes aquaBubbleUpV14{from{transform:translate(0,0) scale(.82);opacity:.92}to{transform:translate(var(--drift),-380px) scale(1.45);opacity:0}}
@keyframes aquaFoodDropV14{from{transform:translateY(0);opacity:1}to{transform:translateY(260px);opacity:0}}
@keyframes aquaRaysV14{from{transform:translateX(-3%) rotate(-1deg);opacity:.42}to{transform:translateX(3%) rotate(1deg);opacity:.6}}
@keyframes plantWaveV14{from{transform:skewX(-4deg)}to{transform:skewX(5deg)}}

/* Expanded cafe */
.cafe-app-v14{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;overflow:hidden;color:#07334d;}
.cafe-header-v14{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,280px);gap:12px;align-items:center;padding:14px;border-radius:28px;background:radial-gradient(circle at 17% 14%,rgba(255,255,255,.96),transparent 18%),linear-gradient(180deg,rgba(255,255,255,.84),rgba(197,250,255,.42));border:1px solid rgba(255,255,255,.75);box-shadow:inset 0 1px rgba(255,255,255,.95),0 18px 36px rgba(0,76,132,.12);}.cafe-header-v14 h1{font-size:30px;margin:2px 0}.cafe-header-v14 p{margin:0;font-weight:800;opacity:.76;}
.cafe-status-v14{display:grid;gap:5px;justify-items:end;text-align:right;font-weight:900;}.cafe-status-v14 strong{color:#055274;}
.cafe-layout-v14{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:12px;overflow:hidden;}
.cafe-stage-v14{position:relative;min-height:530px;overflow:hidden;border-radius:34px;border:1px solid rgba(255,255,255,.78);background:radial-gradient(circle at 16% 12%,rgba(255,255,255,.96),transparent 16%),linear-gradient(180deg,#70e8ff 0%,#eeffff 29%,#fff8cc 42%,#93eb71 100%);box-shadow:inset 0 1px rgba(255,255,255,.96),0 24px 52px rgba(0,80,132,.15);}
.cafe-sun-v14{position:absolute;right:10%;top:7%;width:92px;height:92px;border-radius:50%;background:radial-gradient(circle,#fff 0 22%,rgba(255,255,255,.44) 23% 48%,transparent 70%);box-shadow:0 0 60px rgba(255,255,255,.75);}
.cafe-window-v14{position:absolute;left:8%;right:8%;top:10%;height:210px;border-radius:38px;background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(123,229,255,.32));border:1px solid rgba(255,255,255,.74);box-shadow:inset 0 1px rgba(255,255,255,.96),0 18px 36px rgba(0,80,132,.12);overflow:hidden;}.cafe-window-v14::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 25% 20%,#fff 0 8%,transparent 15%),linear-gradient(180deg,transparent 0 52%,rgba(52,176,255,.2) 53% 66%,rgba(72,213,83,.38) 67%);}.cafe-window-v14 span{position:absolute;left:0;right:0;bottom:22%;height:2px;background:rgba(255,255,255,.7);box-shadow:0 26px 0 rgba(255,255,255,.35)}
.cafe-counter-v14{position:absolute;left:10%;right:10%;top:31%;height:92px;border-radius:28px;background:linear-gradient(180deg,#fff,#72eaff 60%,#4ec45c);border:1px solid rgba(255,255,255,.82);box-shadow:inset 0 1px rgba(255,255,255,.94),0 18px 30px rgba(0,76,132,.14);}.cafe-counter-v14 i,.cafe-counter-v14 b{position:absolute;top:-50px;width:52px;height:52px;border-radius:50%;background:radial-gradient(circle at 30% 24%,#fff,transparent 17%),linear-gradient(180deg,#fff,#7deaff);box-shadow:0 0 20px rgba(124,235,255,.55);}.cafe-counter-v14 i{left:19%}.cafe-counter-v14 b{right:24%}
.cafe-sign-v14{position:absolute;left:50%;top:35%;transform:translateX(-50%);z-index:5;padding:7px 15px;border-radius:18px;background:linear-gradient(180deg,#fff,#c7fbff);border:1px solid rgba(255,255,255,.86);font-weight:1000;color:#05617e;box-shadow:0 8px 16px rgba(0,82,132,.12);}
.cafe-table-v14{position:absolute;left:50%;top:66%;transform:translate(-50%,-50%);width:310px;height:116px;border-radius:50%;background:radial-gradient(ellipse at 50% 38%,#fff 0 15%,#8ff0ff 43%,rgba(35,145,235,.58) 72%,transparent 74%);border:1px solid rgba(255,255,255,.82);box-shadow:0 18px 34px rgba(0,77,132,.18);z-index:7;}.cafe-table-v14 span{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:radial-gradient(circle at 34% 26%,#fff,transparent 20%),linear-gradient(180deg,#fff,#93f3ff 65%,#4bb9ff);box-shadow:0 8px 15px rgba(0,82,132,.16);}
.cafe-chair{position:absolute;top:63%;width:94px;height:82px;border-radius:44px 44px 20px 20px;background:linear-gradient(180deg,#fff,#5edcff 64%,#2da3ff);border:1px solid rgba(255,255,255,.78);box-shadow:0 14px 26px rgba(0,80,132,.16);z-index:5;}.chair-left{left:26%;}.chair-right{right:26%;}
.cafe-player-v14,.cafe-friend-v14{position:absolute;z-index:12;display:grid;place-items:center;gap:2px;font-weight:1000;color:#064469;text-shadow:0 1px rgba(255,255,255,.84);}.cafe-player-v14{left:21%;top:48%;}.cafe-friend-v14{right:21%;top:48%;}.cafe-player-v14 .avatar-preview,.cafe-friend-v14 .avatar-preview{transform:scale(.74)!important;}
.cafe-hidden-bubble-v14{position:absolute;right:18px;top:21px;width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.64);background:radial-gradient(circle at 32% 25%,#fff,rgba(200,255,255,.38) 45%,rgba(97,213,255,.14));box-shadow:0 0 14px rgba(152,244,255,.64);opacity:.55;cursor:pointer;}
.cafe-side-v14{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:12px;overflow:hidden;}.cafe-order-panel-v14,.cafe-actions-panel-v14,.cafe-chat-panel-v14{padding:14px;border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(202,250,255,.36));border:1px solid rgba(255,255,255,.72);box-shadow:inset 0 1px rgba(255,255,255,.95),0 16px 30px rgba(0,80,132,.11);}.cafe-side-v14 h3{margin:0 0 10px;color:#055274;}
.cafe-menu-grid-v14{display:grid;grid-template-columns:1fr 1fr;gap:8px;}.cafe-menu-card-v14{min-height:72px;border:0;border-radius:20px;padding:9px;background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(126,235,255,.38));box-shadow:inset 0 1px rgba(255,255,255,.96),0 8px 16px rgba(0,82,132,.1);font:inherit;font-weight:900;color:#064d6e;cursor:pointer;display:grid;gap:2px;justify-items:start;}.cafe-menu-card-v14 span{width:28px;height:28px;border-radius:50%;background:radial-gradient(circle at 35% 25%,#fff,transparent 18%),linear-gradient(180deg,#fff,#78eaff 64%,#94e85c);}.cafe-menu-card-v14:hover{transform:translateY(-1px);filter:saturate(1.08)}
.cafe-action-grid-v14{display:grid;grid-template-columns:1fr 1fr;gap:8px;}.cafe-action-grid-v14 .glass-button{min-height:38px;}.cafe-chat-panel-v14{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;}.cafe-chat-log-v14{min-height:150px;overflow:auto;padding:10px;border-radius:18px;background:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.62);font-weight:800;}.cafe-chat-log-v14 p{margin:0 0 8px;}.cafe-input-row-v14{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:9px;}.cafe-empty-v14{place-items:center;text-align:center;padding:22px;}

/* Dex app upgrade */
.dex-app-v14{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);gap:13px;color:#e8fbff;background:linear-gradient(180deg,#061018,#0b1d2a)!important;}
.dex-hero-v14{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px rgba(255,255,255,.14),0 18px 36px rgba(0,0,0,.22);}.dex-logo-shell-v14{width:68px;height:68px;border-radius:20px;background:#05070b;display:grid;place-items:center;box-shadow:0 12px 24px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.12);}.dex-logo-shell-v14 .dex-real-logo-v14{width:48px;height:48px;border-radius:0;}.dex-hero-v14 h1{font-size:31px;margin:2px 0;color:#fff}.dex-hero-v14 p{margin:0;font-weight:800;color:#a6c0c8;}.dex-grid-v14{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:13px;}.dex-chart-card-v14,.dex-info-v14{border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px rgba(255,255,255,.12),0 18px 36px rgba(0,0,0,.22);}.dex-chart-card-v14{padding:14px;min-height:0;}.chart-shell-v14{height:100%;min-height:410px;border-radius:24px;}.dex-info-v14{display:grid;align-content:start;gap:10px;padding:16px;}.dex-info-v14 strong{font-size:20px;color:#fff}.dex-info-v14 p{margin:0;color:#b7cbd0;font-weight:800;}

@media(max-width:1060px){.character-studio-v14,.cafe-layout-v14,.dex-grid-v14{grid-template-columns:1fr!important}.cafe-side-v14{grid-template-rows:auto}.cafe-stage-v14{min-height:480px}.cafe-player-v14{left:12%;}.cafe-friend-v14{right:12%;}.aquarium-header-v14,.cafe-header-v14,.dex-hero-v14{grid-template-columns:1fr}.cafe-status-v14,.aquarium-control-card-v14{text-align:left;justify-items:start}.accessory-grid-v14{grid-template-columns:repeat(2,minmax(120px,1fr))!important}}
@media(max-width:620px){.accessory-grid-v14,.cafe-menu-grid-v14,.cafe-action-grid-v14{grid-template-columns:1fr!important}.mascot-glass-stage-v14 .avatar-preview.xl{transform:scale(1.08)!important}.cafe-player-v14,.cafe-friend-v14{top:52%;}.cafe-player-v14{left:4%;}.cafe-friend-v14{right:4%;}.cafe-table-v14{width:230px}.aquarium-hud-v14{left:10px;right:10px;width:auto}.aqua-tool-grid-v14{grid-template-columns:1fr 1fr}.dex-hero-v14{gap:10px}.dex-logo-shell-v14{width:54px;height:54px}.dex-logo-shell-v14 .dex-real-logo-v14{width:38px;height:38px}}


/* ===== MERGED OLD DESKTOP STABILITY PASS ===== */
.merged-desktop-icons{left:18px!important;top:104px!important;width:0!important;height:0!important;overflow:visible!important;display:block!important;}
.desktop-icon.merged-icon{position:absolute!important;width:112px!important;min-height:88px!important;display:grid!important;place-items:center!important;gap:4px!important;}
.desktop-icon.merged-icon .icon-bubble{display:grid!important;place-items:center!important;overflow:hidden!important;}
.desktop-real-logo-merged{display:block;width:72%!important;height:72%!important;object-fit:contain!important;filter:drop-shadow(0 2px 3px rgba(0,0,0,.22));}
.dex-logo-merged{border-radius:6px;}
.pump-logo-merged{border-radius:8px;}
.logo-launch-merged{display:grid!important;place-items:center!important;padding:6px!important;}
.launch-real-logo-merged{width:24px!important;height:24px!important;object-fit:contain!important;display:block!important;}
.start-real-logo-merged{width:28px!important;height:28px!important;object-fit:contain!important;display:block!important;margin:auto!important;}
.window-logo-merged{display:grid!important;place-items:center!important;overflow:hidden!important;}
.window-real-logo-merged{width:20px!important;height:20px!important;object-fit:contain!important;display:block!important;}
.logo-toolbar-button{display:inline-flex!important;align-items:center!important;gap:8px!important;}
.toolbar-logo-img{width:18px;height:18px;object-fit:contain;vertical-align:-3px;}

.start-menu{transform-origin:left bottom;will-change:transform,opacity;}
.start-menu.start-menu-opening{animation:startMenuOpenMerged .18s cubic-bezier(.16,.84,.26,1) both;}
.start-menu.start-menu-closing{animation:startMenuCloseMerged .14s ease both;}
@keyframes startMenuOpenMerged{0%{opacity:0;transform:translateY(18px) scale(.94);filter:blur(4px)}70%{opacity:1;transform:translateY(-3px) scale(1.01);filter:blur(0)}100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
@keyframes startMenuCloseMerged{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(14px) scale(.96)}}

/* Keep avatar outline clean: body has rim, accessories stay clean and separate. */
.merged-avatar-safe .bubble-accessory,
.merged-avatar-safe .bubble-accessory *,
.merged-avatar-safe .bubble-accessory::before,
.merged-avatar-safe .bubble-accessory::after{outline:0!important;filter:none;}
.merged-avatar-safe.accessory-headphones .bubble-accessory-headphones{top:-4px!important;transform:translateY(-5px)!important;}
.merged-avatar-safe .bubble-accessory-headphones .headphone-band{top:-1px!important;}
.merged-avatar-safe .bubble-accessory-headphones .headphone-cup{top:30px!important;}
.merged-avatar-safe .bubble-head,.merged-avatar-safe .bubble-body,.merged-avatar-safe .bubble-arm,.merged-avatar-safe .bubble-leg{outline:0!important;}

.online-game-hub{height:100%;overflow:auto;padding:18px;display:grid;grid-template-rows:auto 1fr;gap:16px;background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(211,249,255,.55));color:#07334d;}
.online-hub-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(196,246,255,.42));border:1px solid rgba(255,255,255,.74);box-shadow:inset 0 1px rgba(255,255,255,.92),0 18px 42px rgba(0,80,132,.12);}
.online-hub-header h1{font-size:34px;margin:2px 0 4px}.online-hub-header p{margin:0;font-weight:800;opacity:.78;}
.online-hub-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:14px;align-content:start;}
.online-card{padding:16px;border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(200,249,255,.42));border:1px solid rgba(255,255,255,.72);box-shadow:inset 0 1px rgba(255,255,255,.9),0 16px 32px rgba(0,82,132,.1);}
.online-card h2{margin:0 0 8px;font-size:22px;color:#045777}.online-card p{font-weight:800;opacity:.8}.online-center-panel{display:grid;place-items:center;text-align:center;align-content:center;min-height:260px;}
.online-globe-merged{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;font-size:46px;background:radial-gradient(circle at 30% 24%,#fff,rgba(255,255,255,.46) 22%,transparent 24%),linear-gradient(180deg,#edffff,#70e8ff 45%,#2297ef);box-shadow:inset 0 1px rgba(255,255,255,.9),0 14px 32px rgba(0,85,148,.16);}
.party-code{display:inline-grid;place-items:center;margin:8px 0;padding:10px 16px;border-radius:999px;background:linear-gradient(180deg,#fff,#dffaff);font-size:22px;font-weight:1000;letter-spacing:.16em;color:#075f88;border:1px solid rgba(137,222,255,.5);}
.online-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.message-shell{display:grid;gap:6px;padding:12px;border-radius:18px;background:rgba(255,255,255,.55);border:1px solid rgba(141,221,255,.35);margin-bottom:12px;}.message-shell p{margin:0}.wide-card{min-height:150px}.recent-empty{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.recent-empty span{padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.58);border:1px solid rgba(151,226,255,.4);font-weight:900}.profile-mini-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.online-avatar-preview{transform:scale(.78)!important;}

.launch-dot,.task-button,.start-app,.desktop-icon{transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;}
.launch-dot:hover,.task-button:hover,.start-app:hover,.desktop-icon:hover{transform:translateY(-2px) scale(1.025);filter:saturate(1.08);}

@media(max-width:900px){.online-hub-header,.online-hub-grid{grid-template-columns:1fr;display:grid}.desktop-icon.merged-icon{width:94px!important}}

/* ===== v15 AeroClub Game Upgrade styles ===== */
.game-hud-v15{position:fixed;left:50%;bottom:72px;transform:translateX(-50%);z-index:64;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:20px;background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(87,209,255,.34));border:1px solid rgba(255,255,255,.72);box-shadow:0 16px 44px rgba(17,121,188,.24),inset 0 1px 0 rgba(255,255,255,.9);backdrop-filter:blur(18px) saturate(1.55)}
.game-hud-v15 small{font-size:9px;letter-spacing:.16em;color:#1875a8;display:block;text-transform:uppercase}.game-hud-v15 strong{font-size:21px;color:#0b7ed2;line-height:1}.game-hud-v15 button,.context-menu-v15 button{border:1px solid rgba(255,255,255,.72);border-radius:13px;background:linear-gradient(180deg,rgba(255,255,255,.8),rgba(85,207,255,.28));color:#075e95;font-weight:800;padding:8px 11px;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 8px 20px rgba(35,144,208,.16)}
.game-hud-v15 button:hover,.context-menu-v15 button:hover{transform:translateY(-1px);filter:saturate(1.2)}.hud-meter-v15{width:130px;height:10px;border-radius:999px;background:rgba(17,120,170,.16);overflow:hidden;box-shadow:inset 0 2px 8px rgba(9,82,131,.22)}.hud-meter-v15 span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#38c8ff,#70ffb2,#d8ff6d);box-shadow:0 0 18px rgba(82,221,255,.72)}
.context-menu-v15{position:fixed;z-index:1000;width:200px;padding:10px;border-radius:18px;display:none;gap:7px;flex-direction:column;background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(80,197,255,.34));border:1px solid rgba(255,255,255,.78);box-shadow:0 24px 66px rgba(6,86,141,.28),inset 0 1px 0 rgba(255,255,255,.9);backdrop-filter:blur(18px)}.context-menu-v15.show{display:flex;animation:popContextV15 .14s ease-out}@keyframes popContextV15{from{opacity:0;transform:scale(.94) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}
.portal-v15{display:flex;flex-direction:column;gap:16px;min-height:100%;padding:4px}.portal-hero-v15{position:relative;overflow:hidden;display:grid;grid-template-columns:160px 1fr;gap:20px;align-items:center;padding:24px;border-radius:30px;background:linear-gradient(135deg,rgba(255,255,255,.76),rgba(75,205,255,.32) 52%,rgba(105,255,188,.25));border:1px solid rgba(255,255,255,.76);box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 22px 56px rgba(14,107,180,.14)}.portal-hero-v15:after{content:"";position:absolute;inset:-40% -20% auto auto;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.78),rgba(82,223,255,.12) 55%,transparent 70%);animation:floatBubbleV15 8s ease-in-out infinite}.portal-orb-v15{width:130px;height:130px;border-radius:50%;background:radial-gradient(circle at 30% 24%,#fff 0 12%,#b6fff3 18%,#29d3ff 48%,#256fff 74%,#9dff73 96%);box-shadow:inset -14px -20px 36px rgba(10,77,156,.2),inset 13px 13px 22px rgba(255,255,255,.82),0 24px 55px rgba(29,159,237,.34);position:relative}.portal-orb-v15:before{content:"";position:absolute;left:24px;top:18px;width:38px;height:24px;border-radius:50%;background:rgba(255,255,255,.9);filter:blur(1px)}.portal-v15 h1,.world-map-v15 h1,.aero-pass-v15 h1,.online-hub-v15 h1{margin:.12em 0;color:#075eae;font-size:clamp(34px,6vw,62px);letter-spacing:-.04em;text-shadow:0 3px 0 rgba(255,255,255,.7)}.portal-v15 p,.world-map-v15 p,.aero-pass-v15 p,.online-hub-v15 p{color:#286f93;line-height:1.55}.portal-grid-v15{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.portal-card-v15{border:1px solid rgba(255,255,255,.72);border-radius:22px;padding:15px;background:linear-gradient(160deg,rgba(255,255,255,.76),rgba(89,203,255,.19));box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}.portal-card-v15 small{color:#1e80b5;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.portal-card-v15 strong{display:block;font-size:30px;color:#087acb;margin:5px 0}.v15-mini-meter,.pass-progress-v15{height:11px;border-radius:99px;overflow:hidden;background:rgba(9,87,132,.14);box-shadow:inset 0 2px 8px rgba(9,87,132,.22)}.v15-mini-meter span,.pass-progress-v15 span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2ed4ff,#6effb3,#e8ff62)}.portal-route-v15{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.portal-route-v15 button{border:1px solid rgba(255,255,255,.72);border-radius:18px;padding:13px 10px;background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(93,217,255,.28));font-weight:900;color:#086aa2;cursor:pointer}.portal-route-v15 button:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(22,135,205,.19)}
.world-map-v15{min-height:100%;display:flex;flex-direction:column;gap:14px}.map-header-v15{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;border-radius:26px;background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(84,211,255,.28));border:1px solid rgba(255,255,255,.75)}.map-scene-v15{position:relative;min-height:260px;border-radius:30px;overflow:hidden;border:1px solid rgba(255,255,255,.72);background:linear-gradient(#86dbff 0 38%,#8af2d7 39% 53%,#55c9ff 54% 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 20px 50px rgba(9,101,179,.15)}.map-scene-v15:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 24%,rgba(255,255,255,.85) 0 28px,transparent 29px),radial-gradient(ellipse at 70% 78%,rgba(106,255,160,.42),transparent 36%),linear-gradient(145deg,transparent 55%,rgba(255,255,255,.28));pointer-events:none}.map-water-v15{position:absolute;left:-5%;right:-5%;bottom:-22%;height:54%;background:repeating-linear-gradient(0deg,rgba(255,255,255,.22) 0 2px,transparent 2px 18px),linear-gradient(90deg,#2da6ff,#65ecff,#31b5ff);border-radius:50% 50% 0 0;animation:waterShiftV15 7s linear infinite}.map-pin-v15{position:absolute;z-index:3;display:flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.82);border-radius:18px;padding:9px 11px;background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(100,219,255,.36));box-shadow:0 14px 28px rgba(2,95,154,.18);color:#075f97;font-weight:900;cursor:pointer}.map-pin-v15 b{font-size:21px}.map-pin-v15:hover{transform:translateY(-4px) scale(1.03)}.pin-0{left:13%;top:44%}.pin-1{left:37%;top:25%}.pin-2{left:58%;top:48%}.pin-3{left:76%;top:22%}.pin-4{left:67%;top:70%}.pin-5{left:20%;top:73%}.map-avatar-v15{position:absolute;left:48%;top:59%;z-index:4;text-align:center;font-weight:900;color:#075f97}.map-avatar-v15 .avatar-preview{margin:auto}.map-card-grid-v15{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.map-room-card-v15{display:flex;justify-content:space-between;gap:12px;align-items:center;border-radius:22px;padding:15px;background:linear-gradient(160deg,rgba(255,255,255,.76),rgba(103,223,255,.23));border:1px solid rgba(255,255,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.92)}.map-room-card-v15 span{font-size:27px}.map-room-card-v15 h2{margin:0;color:#075eae}.map-room-card-v15 small{font-weight:800;color:#1f86b4}
.aero-pass-v15{display:flex;flex-direction:column;gap:14px;min-height:100%}.pass-hero-v15{display:grid;grid-template-columns:116px 1fr auto;gap:18px;align-items:center;padding:20px;border:1px solid rgba(255,255,255,.74);border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(80,211,255,.28),rgba(115,255,193,.19));box-shadow:0 20px 48px rgba(4,103,169,.13),inset 0 1px 0 rgba(255,255,255,.92)}.pass-badge-v15{width:98px;height:98px;border-radius:30px;display:grid;place-items:center;text-align:center;font-weight:900;color:#075faf;background:radial-gradient(circle at 30% 15%,#fff,#9ffaff 35%,#42bbff 72%,#70ff9c);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 14px 34px rgba(30,150,219,.25)}.pass-badge-v15 b{font-size:33px}.pass-progress-v15{margin:10px 0;width:min(470px,100%)}.pass-grid-v15{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quest-card-v15{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid rgba(255,255,255,.72);border-radius:22px;padding:15px;background:linear-gradient(155deg,rgba(255,255,255,.8),rgba(80,211,255,.22));box-shadow:inset 0 1px 0 rgba(255,255,255,.92)}.quest-card-v15.complete{filter:saturate(.85);opacity:.78}.quest-card-v15.complete h2:after{content:" ✓";color:#21b881}.quest-card-v15 h2{margin:.2em 0;color:#075fae}.quest-xp-v15{display:inline-flex;border-radius:999px;background:rgba(102,255,177,.3);border:1px solid rgba(255,255,255,.75);padding:3px 9px;color:#047a86;font-weight:900}.quest-actions-v15{display:flex;flex-direction:column;gap:8px;min-width:106px}.pass-history-v15{border:1px solid rgba(255,255,255,.72);border-radius:22px;padding:14px;background:linear-gradient(180deg,rgba(255,255,255,.68),rgba(75,202,255,.18));max-height:160px;overflow:auto}.pass-history-v15 h2{margin:0 0 8px;color:#076aaa}.pass-history-v15 p{margin:5px 0;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:4px}
.hangout-v15{height:100%;display:flex;flex-direction:column}.hangout-hud-v15{align-items:center}.hud-pill-v15{border:1px solid rgba(255,255,255,.7);border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(99,221,255,.31));color:#075f98;font-weight:900;padding:5px 10px;cursor:pointer}.hangout-stage-v15{position:relative;overflow:hidden;background:linear-gradient(#82dfff 0 33%,#5ad2ff 34% 56%,#f2e8b0 57% 77%,#99efb7 78% 100%)!important;border:1px solid rgba(255,255,255,.78);box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 26px 60px rgba(3,95,163,.17)}.hangout-stage-v15:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 14% 18%,rgba(255,255,255,.9) 0 26px,transparent 28px),radial-gradient(circle at 88% 18%,rgba(255,255,255,.38),transparent 76px),linear-gradient(transparent 0 55%,rgba(255,255,255,.2));pointer-events:none}.hangout-skyline-v15{position:absolute;left:0;right:0;top:0;height:38%;background:linear-gradient(180deg,rgba(255,255,255,.34),transparent);pointer-events:none}.hangout-water-v15{position:absolute;left:-6%;right:-6%;top:31%;height:28%;background:repeating-linear-gradient(0deg,rgba(255,255,255,.34) 0 2px,transparent 2px 14px),linear-gradient(90deg,#0ca2ff,#63e6ff,#22b4ff);border-radius:0 0 48% 48%;animation:waterShiftV15 8s linear infinite}.hangout-boardwalk-v15{position:absolute;left:0;right:0;bottom:0;height:29%;background:repeating-linear-gradient(90deg,rgba(138,96,44,.2) 0 2px,transparent 2px 84px),linear-gradient(180deg,#ffeea2,#d7b76b);clip-path:polygon(0 18%,100% 0,100% 100%,0 100%);opacity:.86}.hangout-club-v15{position:absolute;right:10%;top:9%;width:230px;height:140px;border-radius:34px 34px 20px 20px;background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(94,223,255,.38));border:1px solid rgba(255,255,255,.8);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 20px 44px rgba(3,96,162,.22);display:grid;place-items:center;color:#0874b5;font-weight:900;font-size:26px;text-shadow:0 1px 0 rgba(255,255,255,.75)}.hangout-club-v15 span{position:absolute;bottom:18px;width:76%;height:28px;border-radius:999px;background:linear-gradient(90deg,#48d7ff,#82ffbd)}.hangout-portal-v15{position:absolute;z-index:8;border:1px solid rgba(255,255,255,.85);border-radius:18px;padding:9px 13px;background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(101,226,255,.36));box-shadow:0 14px 34px rgba(4,100,163,.21);color:#075f98;font-weight:900;cursor:pointer}.hangout-portal-v15:hover{transform:translateY(-3px)}.portal-cafe{right:13%;top:34%}.portal-arcade{left:42%;top:53%}.portal-aquarium{right:26%;top:61%}.hangout-chat-v15{z-index:25}.hangout-v15 .beach-log{z-index:26}.hangout-v15 .beach-minimap{z-index:26}.hangout-v15 .beach-object{z-index:5}.hangout-v15 .beach-palm{left:7%;top:12%}.hangout-v15 .beach-umbrella{left:18%;top:59%}.hangout-v15 .beach-boombox{right:36%;top:67%}
.online-hub-v15{height:100%;display:flex;flex-direction:column;gap:14px}.online-header-v15{background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(70,204,255,.28));border-radius:26px;border:1px solid rgba(255,255,255,.74);padding:18px}.online-grid-v15{display:grid;grid-template-columns:1fr 1.15fr 1fr;grid-auto-rows:minmax(160px,auto);gap:12px}.online-card-v15{border:1px solid rgba(255,255,255,.72);border-radius:24px;padding:16px;background:linear-gradient(155deg,rgba(255,255,255,.78),rgba(86,215,255,.22));box-shadow:inset 0 1px 0 rgba(255,255,255,.92)}.online-card-v15 h2{margin:0 0 8px;color:#0866aa}.online-light-v15{width:58px;height:58px;border-radius:50%;background:radial-gradient(circle,#fff,#a2f8ff 38%,#23a7ff 72%,#d5ff73);box-shadow:0 0 28px rgba(42,206,255,.55);animation:pulseOnlineV15 2.8s ease-in-out infinite}.party-card-v15{grid-column:span 2}.profile-v15,.recent-v15{grid-column:span 1}.messages-v15{grid-row:span 2}.recent-v15{grid-column:span 2}.recent-empty{display:flex;flex-wrap:wrap;gap:7px}.recent-empty span{border:1px solid rgba(255,255,255,.72);border-radius:999px;padding:5px 10px;background:rgba(255,255,255,.44);font-weight:800;color:#07669f}.level-spark-v15{position:fixed;z-index:2000;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle,#fff,#83f7ff 42%,#3bbdff);box-shadow:0 0 18px rgba(87,225,255,.9);pointer-events:none;animation:sparkV15 1.25s ease-out forwards}@keyframes sparkV15{to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.18)}}@keyframes floatBubbleV15{50%{transform:translateY(28px) translateX(-18px)}}@keyframes waterShiftV15{from{background-position:0 0,0 0}to{background-position:0 60px,220px 0}}@keyframes pulseOnlineV15{50%{transform:scale(1.08);filter:saturate(1.3)}}
@media (max-width:900px){.portal-hero-v15{grid-template-columns:1fr}.portal-grid-v15,.portal-route-v15,.map-card-grid-v15,.pass-grid-v15,.online-grid-v15{grid-template-columns:1fr}.pass-hero-v15{grid-template-columns:1fr}.game-hud-v15{left:10px;right:10px;transform:none;justify-content:center;bottom:68px}.portal-orb-v15{width:92px;height:92px}.map-scene-v15{min-height:220px}.party-card-v15,.recent-v15{grid-column:auto}}

/* ===== v16 official AeroClub texture and Hangout stability polish ===== */
:root{
  --aero-v16-cyan:#3bdcff;
  --aero-v16-blue:#1687ff;
  --aero-v16-green:#81ff8d;
  --aero-v16-ink:#06395b;
  --aero-v16-glass:rgba(236,255,255,.54);
  --aero-v16-line:rgba(255,255,255,.78);
}
.texture-system-v16 .wallpaper{filter:saturate(1.32) contrast(1.05) brightness(1.06)!important;}
.texture-system-v16::before,
.texture-system-v16::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:2;
}
.texture-system-v16::before{
  background:
    radial-gradient(circle at 13% 18%,rgba(255,255,255,.55) 0 1px,transparent 2px),
    radial-gradient(circle at 72% 42%,rgba(255,255,255,.32) 0 1px,transparent 2px),
    repeating-linear-gradient(115deg,rgba(255,255,255,.055) 0 1px,transparent 1px 18px),
    linear-gradient(110deg,transparent 0 36%,rgba(255,255,255,.12) 45%,transparent 55%);
  background-size:120px 120px,170px 170px,100% 100%,100% 100%;
  mix-blend-mode:screen;
  opacity:.78;
}
.texture-system-v16::after{
  background:
    radial-gradient(ellipse at 50% 115%,rgba(255,255,255,.27),transparent 36%),
    repeating-radial-gradient(ellipse at 50% 70%,rgba(255,255,255,.12) 0 2px,transparent 3px 42px);
  opacity:.55;
  animation:aeroTextureDriftV16 16s ease-in-out infinite alternate;
}
@keyframes aeroTextureDriftV16{from{transform:translate3d(-12px,-6px,0)}to{transform:translate3d(18px,8px,0)}}

.aeroclub-polish-v16 .glass-panel,
.aeroclub-polish-v16 .glass-window,
.aeroclub-polish-v16 .app-window{
  background-image:
    radial-gradient(circle at 16% 7%,rgba(255,255,255,.72),transparent 14%),
    radial-gradient(circle at 86% 16%,rgba(127,255,214,.22),transparent 25%),
    repeating-linear-gradient(135deg,rgba(255,255,255,.075) 0 1px,transparent 1px 13px),
    linear-gradient(180deg,rgba(255,255,255,.58),rgba(206,248,255,.24) 54%,rgba(82,204,255,.14))!important;
  border-color:var(--aero-v16-line)!important;
  box-shadow:
    0 28px 80px rgba(0,52,112,.30),
    inset 0 1px rgba(255,255,255,.95),
    inset 0 -1px rgba(0,105,177,.14)!important;
}
.aeroclub-polish-v16 .app-window::before{
  content:"";
  position:absolute;
  left:-30%;right:-30%;top:-60px;height:130px;
  background:linear-gradient(105deg,transparent 0 32%,rgba(255,255,255,.30) 43%,transparent 54%);
  pointer-events:none;
  opacity:.62;
  z-index:2;
}
.aeroclub-polish-v16 .window-titlebar{
  background:
    linear-gradient(180deg,rgba(255,255,255,.82),rgba(115,226,255,.48) 47%,rgba(0,106,204,.54)),
    repeating-linear-gradient(90deg,rgba(255,255,255,.13) 0 2px,transparent 2px 52px)!important;
  border-bottom-color:rgba(255,255,255,.55)!important;
}
.aeroclub-polish-v16 .window-body{
  background:
    radial-gradient(circle at 12% 5%,rgba(255,255,255,.74),transparent 16%),
    radial-gradient(circle at 90% 100%,rgba(102,255,143,.19),transparent 26%),
    repeating-linear-gradient(130deg,rgba(255,255,255,.06) 0 1px,transparent 1px 12px),
    linear-gradient(180deg,rgba(255,255,255,.58),rgba(221,253,255,.34) 52%,rgba(165,238,255,.18))!important;
}
.aeroclub-polish-v16 .glass-button,
.aeroclub-polish-v16 .browser-button,
.aeroclub-polish-v16 .hud-pill-v15,
.aeroclub-polish-v16 .fit-chip,
.aeroclub-polish-v16 .track-card,
.aeroclub-polish-v16 .casino-tab{
  position:relative;
  overflow:hidden;
}
.aeroclub-polish-v16 .glass-button::after,
.aeroclub-polish-v16 .browser-button::after,
.aeroclub-polish-v16 .hud-pill-v15::after,
.aeroclub-polish-v16 .fit-chip::after{
  content:"";
  position:absolute;
  left:-70%;top:-40%;width:55%;height:180%;
  transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.52),transparent);
  opacity:0;
  pointer-events:none;
}
.aeroclub-polish-v16 .glass-button:hover::after,
.aeroclub-polish-v16 .browser-button:hover::after,
.aeroclub-polish-v16 .hud-pill-v15:hover::after,
.aeroclub-polish-v16 .fit-chip:hover::after{
  opacity:1;
  animation:shineSweepV16 .75s ease-out forwards;
}
@keyframes shineSweepV16{to{left:125%;}}

/* Cleaner Hangout scene: more detail, clear walkable floor, less visual glitching */
.hangout-stage-v15{
  min-height:520px!important;
  background:
    radial-gradient(circle at 13% 17%,rgba(255,255,255,.92) 0 26px,transparent 28px),
    linear-gradient(180deg,#7cdfff 0 28%,#37c7ff 29% 52%,#f7e9ae 53% 68%,#d9bd73 69% 80%,#8ee48d 81% 100%)!important;
  isolation:isolate!important;
}
.hangout-stage-v15::before{
  background:
    radial-gradient(circle at 15% 18%,rgba(255,255,255,.92) 0 26px,transparent 29px),
    radial-gradient(circle at 80% 20%,rgba(255,255,255,.42),transparent 76px),
    radial-gradient(ellipse at 42% 56%,rgba(255,255,255,.26),transparent 28%),
    linear-gradient(180deg,rgba(255,255,255,.10),transparent 55%,rgba(255,255,255,.22))!important;
  z-index:1!important;
}
.hangout-stage-v15::after{
  content:""!important;
  position:absolute!important;
  left:0!important;right:0!important;bottom:0!important;height:23%!important;
  background:
    repeating-linear-gradient(90deg,rgba(111,76,36,.22) 0 2px,transparent 2px 92px),
    repeating-linear-gradient(0deg,rgba(255,255,255,.18) 0 2px,transparent 2px 46px),
    linear-gradient(180deg,rgba(255,242,166,.74),rgba(174,126,62,.72))!important;
  clip-path:polygon(0 10%,100% 0,100% 100%,0 100%)!important;
  z-index:2!important;
  pointer-events:none!important;
}
.hangout-caustics-v16{
  position:absolute;
  left:-10%;right:-10%;top:31%;height:25%;
  z-index:3;
  background:
    repeating-radial-gradient(ellipse at 50% 40%,rgba(255,255,255,.24) 0 2px,transparent 3px 34px),
    linear-gradient(90deg,rgba(255,255,255,.18),rgba(122,246,255,.18),rgba(255,255,255,.10));
  mix-blend-mode:screen;
  opacity:.85;
  animation:hangoutCausticV16 7s ease-in-out infinite alternate;
  pointer-events:none;
}
.hangout-clouds-v16{position:absolute;left:0;right:0;top:0;height:32%;z-index:2;pointer-events:none;overflow:hidden;}
.hangout-clouds-v16 i{position:absolute;width:140px;height:42px;border-radius:999px;background:rgba(255,255,255,.62);box-shadow:35px -14px 0 8px rgba(255,255,255,.45),72px 2px 0 3px rgba(255,255,255,.36);filter:blur(.2px);animation:hangoutCloudV16 28s linear infinite;}
.hangout-clouds-v16 i:nth-child(1){left:10%;top:22%;animation-duration:31s}.hangout-clouds-v16 i:nth-child(2){left:44%;top:11%;transform:scale(.72);animation-duration:38s}.hangout-clouds-v16 i:nth-child(3){left:75%;top:26%;transform:scale(.58);animation-duration:44s}
.hangout-depth-v16{position:absolute;left:0;right:0;top:51%;height:12%;z-index:4;background:linear-gradient(180deg,rgba(255,255,255,.48),rgba(255,255,255,.02));pointer-events:none;}
.hangout-dock-posts-v16{position:absolute;left:8%;right:8%;bottom:16%;height:96px;z-index:5;pointer-events:none;}
.hangout-dock-posts-v16 span{position:absolute;bottom:0;width:18px;height:82px;border-radius:9px;background:linear-gradient(180deg,#fff0ae,#aa8041);box-shadow:inset 4px 0 rgba(255,255,255,.28),0 10px 18px rgba(72,48,17,.14)}
.hangout-dock-posts-v16 span:nth-child(1){left:4%;height:64px}.hangout-dock-posts-v16 span:nth-child(2){left:24%;height:92px}.hangout-dock-posts-v16 span:nth-child(3){left:48%;height:78px}.hangout-dock-posts-v16 span:nth-child(4){left:72%;height:90px}.hangout-dock-posts-v16 span:nth-child(5){right:3%;height:70px}
@keyframes hangoutCausticV16{from{transform:translateX(-16px) translateY(-2px)}to{transform:translateX(26px) translateY(8px)}}
@keyframes hangoutCloudV16{50%{transform:translateX(28px) translateY(-4px) scale(.95)}}
.hangout-water-v15{z-index:2!important;top:28%!important;height:27%!important;opacity:.96!important;}
.hangout-boardwalk-v15{z-index:4!important;bottom:0!important;height:33%!important;opacity:.96!important;}
.hangout-club-v15{z-index:6!important;right:7%!important;top:8%!important;}
.hangout-portal-v15{z-index:30!important;backdrop-filter:blur(10px) saturate(1.25);}
.portal-cafe{right:10%!important;top:38%!important}.portal-arcade{left:43%!important;top:58%!important}.portal-aquarium{right:27%!important;top:64%!important}
.hangout-v15 .beach-palm{left:5%!important;top:14%!important;z-index:7!important}.hangout-v15 .beach-umbrella{left:18%!important;top:66%!important;z-index:12!important}.hangout-v15 .beach-boombox{right:38%!important;top:74%!important;z-index:13!important}
.hangout-v15 .beach-log,.hangout-v15 .beach-minimap{z-index:45!important}.hangout-chat-v15{z-index:48!important;}

/* Stable avatar anchors for desktop, hangout, cafe and blackjack */
.avatar-rig-v16{
  --rig-w:100px;
  --rig-h:136px;
  width:var(--rig-w)!important;
  height:var(--rig-h)!important;
  contain:layout paint;
}
.avatar-rig-v16 .bubble-head{left:14px!important;top:0!important;width:72px!important;height:72px!important;z-index:8!important;}
.avatar-rig-v16 .bubble-body{left:7px!important;top:52px!important;width:86px!important;height:66px!important;z-index:5!important;}
.avatar-rig-v16 .bubble-arm{top:64px!important;width:24px!important;height:49px!important;border-radius:20px 20px 18px 18px!important;z-index:4!important;}
.avatar-rig-v16 .bubble-arm::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;bottom:-8px!important;
  width:24px!important;height:22px!important;
  transform:translateX(-50%)!important;
  border-radius:50% 50% 45% 45%!important;
  background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.82),transparent 25%),linear-gradient(180deg,var(--avatar-top),var(--avatar-base) 52%,var(--avatar-deep))!important;
  border:3px solid color-mix(in srgb,var(--avatar-rim),#0042ff 25%)!important;
  box-shadow:inset 4px 3px 7px rgba(255,255,255,.24),0 8px 12px rgba(0,60,118,.13)!important;
}
.avatar-rig-v16 .bubble-arm-left{left:0!important;transform:rotate(9deg)!important;transform-origin:83% 14%!important;}
.avatar-rig-v16 .bubble-arm-right{right:0!important;transform:rotate(-9deg)!important;transform-origin:17% 14%!important;}
.avatar-rig-v16 .bubble-leg{top:108px!important;width:31px!important;height:27px!important;z-index:3!important;}
.avatar-rig-v16 .bubble-leg-left{left:19px!important}.avatar-rig-v16 .bubble-leg-right{right:19px!important}
.avatar-rig-v16 .bubble-face{left:30px!important;top:30px!important;z-index:14!important;}
.avatar-rig-v16 .bubble-accessory{filter:drop-shadow(0 5px 8px rgba(0,73,128,.18));border-color:transparent;}
.accessory-headphones.avatar-rig-v16 .bubble-accessory-headphones{display:block!important;left:5px!important;top:10px!important;width:90px!important;height:48px!important;border-radius:58px 58px 12px 12px!important;border:6px solid #0b2148!important;border-bottom:0!important;background:transparent!important;box-shadow:inset 0 4px rgba(255,255,255,.18),0 2px 0 rgba(255,255,255,.16)!important;}
.accessory-headphones.avatar-rig-v16 .bubble-accessory-headphones::before,.accessory-headphones.avatar-rig-v16 .bubble-accessory-headphones::after{content:""!important;position:absolute!important;top:21px!important;width:18px!important;height:30px!important;border-radius:12px!important;background:linear-gradient(180deg,#15356d,#081733)!important;box-shadow:inset 2px 2px 4px rgba(255,255,255,.24),0 0 0 4px color-mix(in srgb,var(--avatar-base),#fff 12%)!important;}
.accessory-headphones.avatar-rig-v16 .bubble-accessory-headphones::before{left:-9px!important}.accessory-headphones.avatar-rig-v16 .bubble-accessory-headphones::after{right:-9px!important}
.accessory-visor.avatar-rig-v16 .bubble-accessory-visor{display:block!important;left:13px!important;top:17px!important;width:74px!important;height:23px!important;}
.accessory-bubblecap.avatar-rig-v16 .bubble-accessory-bubblecap{display:block!important;left:15px!important;top:-4px!important;width:69px!important;height:32px!important;}
.accessory-leaf.avatar-rig-v16 .bubble-accessory-leaf{display:block!important;left:38px!important;top:-16px!important;width:52px!important;height:31px!important;}
.accessory-halo.avatar-rig-v16 .bubble-accessory-halo{display:block!important;left:19px!important;top:-30px!important;width:62px!important;height:20px!important;}
.facing-left.avatar-rig-v16 .bubble-arm-left,.facing-right.avatar-rig-v16 .bubble-arm-right{z-index:7!important;opacity:1!important;}
.facing-left.avatar-rig-v16 .bubble-arm-right,.facing-right.avatar-rig-v16 .bubble-arm-left{opacity:.42!important;z-index:3!important;}
.desktop-avatar.walking .avatar-rig-v16,.beach-player.walking .avatar-rig-v16,.beach-npc.walking .avatar-rig-v16,.avatar-rig-v16.preview-walking{animation:v16MascotBob .34s ease-in-out infinite alternate!important;}
.desktop-avatar.walking .avatar-rig-v16 .bubble-arm-left,.beach-player.walking .avatar-rig-v16 .bubble-arm-left,.beach-npc.walking .avatar-rig-v16 .bubble-arm-left,.avatar-rig-v16.preview-walking .bubble-arm-left{animation:v16ArmLeft .34s ease-in-out infinite alternate!important;}
.desktop-avatar.walking .avatar-rig-v16 .bubble-arm-right,.beach-player.walking .avatar-rig-v16 .bubble-arm-right,.beach-npc.walking .avatar-rig-v16 .bubble-arm-right,.avatar-rig-v16.preview-walking .bubble-arm-right{animation:v16ArmRight .34s ease-in-out infinite alternate!important;}
@keyframes v16MascotBob{from{transform:translateY(0) scaleY(1)}to{transform:translateY(-4px) scaleY(1.01)}}
@keyframes v16ArmLeft{from{transform:rotate(9deg)}to{transform:rotate(20deg) translateY(2px)}}
@keyframes v16ArmRight{from{transform:rotate(-20deg) translateY(2px)}to{transform:rotate(-9deg)}}

.beach-player,.beach-npc,.beach-friend-v12{width:104px!important;height:144px!important;transform:translateZ(0);will-change:left,top;}
.beach-player .avatar-preview.sm,.beach-npc .avatar-preview.sm,.beach-friend-v12 .avatar-preview.sm{width:100px!important;height:136px!important;transform:none!important;margin:0!important;}
.beach-player-name,.beach-npc-name{bottom:calc(100% + 5px)!important;background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(80,208,255,.46))!important;color:#064766!important;text-shadow:0 1px rgba(255,255,255,.8)!important;box-shadow:0 8px 18px rgba(0,75,132,.14)!important;}
.friend-bubble-line{bottom:calc(100% + 30px)!important;}
.shell-item.shell-v16,.bubble-item.bubble-v16{width:34px!important;height:34px!important;font-size:0!important;z-index:22!important;}
.shell-item.shell-v16::before{content:"";width:25px;height:18px;border-radius:50% 50% 20% 20%;background:radial-gradient(circle at 50% 12%,#fff 0 14%,transparent 17%),repeating-radial-gradient(ellipse at 50% 85%,rgba(255,255,255,.85) 0 3px,rgba(89,218,255,.55) 4px 7px),linear-gradient(180deg,#fff,#70e7ff);border:1px solid rgba(0,117,195,.28);filter:drop-shadow(0 4px 6px rgba(0,83,132,.16));}
.bubble-item.bubble-v16::before{content:"";width:25px;height:25px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff 0 15%,rgba(255,255,255,.58) 16%,rgba(73,214,255,.22) 60%,rgba(255,255,255,.02) 72%);border:1px solid rgba(255,255,255,.74);box-shadow:inset 0 1px rgba(255,255,255,.9),0 0 14px rgba(88,222,255,.58);}
.shell-item.shell-v16:hover,.bubble-item.bubble-v16:hover{transform:translateY(-8px) scale(1.08)!important;}
.near-water-v16 .avatar-preview{filter:drop-shadow(0 16px 16px rgba(0,94,164,.24)) drop-shadow(0 0 12px rgba(119,238,255,.32));}

.game-hud-v15{backdrop-filter:blur(18px) saturate(1.45);background-image:radial-gradient(circle at 12% 12%,rgba(255,255,255,.72),transparent 24%),repeating-linear-gradient(135deg,rgba(255,255,255,.08) 0 1px,transparent 1px 10px),linear-gradient(180deg,rgba(255,255,255,.67),rgba(131,229,255,.31))!important;border-color:rgba(255,255,255,.82)!important;}
.portal-card-v15,.map-room-card-v15,.quest-card-v15,.online-card-v15{background-image:radial-gradient(circle at 10% 8%,rgba(255,255,255,.72),transparent 16%),repeating-linear-gradient(135deg,rgba(255,255,255,.06) 0 1px,transparent 1px 11px),linear-gradient(155deg,rgba(255,255,255,.80),rgba(84,214,255,.23))!important;}

@media (max-width:900px){
  .hangout-stage-v15{min-height:440px!important}.hangout-club-v15{transform:scale(.78);transform-origin:right top}.portal-cafe{right:6%!important}.portal-arcade{left:34%!important}.portal-aquarium{right:15%!important}.beach-player,.beach-npc,.beach-friend-v12{transform:scale(.88);transform-origin:center bottom;}
}

/* ===== v17 asset-pack integration: official Vista / Frutiger runtime textures ===== */
:root{
  --v17-water-caustics: url("assets/v23/textures/water-caustics.svg");
  --v17-glass-noise: url("assets/v23/textures/glass-noise.svg");
  --v17-bubbles: url("assets/v23/textures/bubble-overlay.svg");
  --v17-shimmer: url("assets/v23/textures/shimmer-overlay.svg");
  --v17-leaf-shadow: url("assets/v23/textures/leaf-shadow-overlay.svg");
  --v17-boardwalk: url("assets/v23/textures/boardwalk-planks.svg");
  --v17-aqua-tile: url("assets/v23/textures/aqua-floor-tile.svg");
  --v17-cafe-tile: url("assets/v23/textures/cafe-floor-tile.svg");
  --v17-frosted: url("assets/v23/textures/frosted-glass-panel.svg");
}
body.asset-integrated-v17 #desktop.texture-system-v16::before{
  background-image:
    var(--v17-bubbles),
    var(--v17-leaf-shadow),
    radial-gradient(circle at 22% 18%,rgba(255,255,255,.62),transparent 24%),
    linear-gradient(135deg,rgba(67,209,255,.18),rgba(118,255,190,.1));
  background-size:420px 350px,760px 420px,100% 100%,100% 100%;
  background-position:8% 8%,right 2% top 0,center,center;
  opacity:.72;
}
body.asset-integrated-v17 .app-window,
body.asset-integrated-v17 .glass-panel,
body.asset-integrated-v17 .start-menu,
body.asset-integrated-v17 .game-hud-v15{
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.84),rgba(166,235,255,.34)),
    var(--v17-glass-noise),
    radial-gradient(circle at 14% 10%,rgba(255,255,255,.72),transparent 21%);
  background-size:100% 100%,220px 220px,100% 100%;
  background-blend-mode:normal,screen,screen;
}
body.asset-integrated-v17 .app-window::before,
body.asset-integrated-v17 .glass-panel::before{
  background-image:var(--v17-shimmer),linear-gradient(110deg,transparent,rgba(255,255,255,.26),transparent);
  background-size:500px 320px,220% 100%;
  opacity:.34;
}
body.asset-integrated-v17 .window-titlebar{
  background-image:linear-gradient(180deg,rgba(255,255,255,.82),rgba(56,168,255,.62) 48%,rgba(0,93,218,.72)),var(--v17-shimmer)!important;
  background-size:100% 100%,360px 180px!important;
  background-blend-mode:normal,screen!important;
}
body.asset-integrated-v17 .window-body{content-visibility:auto;contain:layout paint style;}
body.asset-integrated-v17 .glass-button,
body.asset-integrated-v17 .browser-button,
body.asset-integrated-v17 .task-button,
body.asset-integrated-v17 .fit-chip{
  position:relative;
  overflow:hidden;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.86),inset 0 -8px 18px rgba(0,95,210,.12),0 10px 22px rgba(0,88,156,.14)!important;
}
body.asset-integrated-v17 .glass-button::before,
body.asset-integrated-v17 .browser-button::before,
body.asset-integrated-v17 .task-button::before,
body.asset-integrated-v17 .fit-chip::before{
  content:"";
  position:absolute;
  left:-40%;top:-120%;width:60%;height:300%;
  transform:rotate(24deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);
  opacity:.42;
  pointer-events:none;
  transition:transform .5s ease,left .5s ease;
}
body.asset-integrated-v17 .glass-button:hover::before,
body.asset-integrated-v17 .browser-button:hover::before,
body.asset-integrated-v17 .task-button:hover::before,
body.asset-integrated-v17 .fit-chip:hover::before{left:115%;}
body.asset-integrated-v17 .icon-bubble.asset-icon-v17,
body.asset-integrated-v17 .window-icon.asset-window-icon-v17,
body.asset-integrated-v17 .task-icon-v17,
body.asset-integrated-v17 .start-app-icon-v17{
  display:inline-grid;
  place-items:center;
  overflow:hidden;
}
body.asset-integrated-v17 .icon-bubble.asset-icon-v17{background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(110,219,255,.26));border:1px solid rgba(255,255,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 10px 20px rgba(0,88,156,.12);}
body.asset-integrated-v17 .icon-bubble.asset-icon-v17 img{width:54px;height:54px;object-fit:contain;filter:drop-shadow(0 5px 7px rgba(0,73,128,.18));}
body.asset-integrated-v17 .start-app-icon-v17{width:42px;height:42px;border-radius:15px;background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(91,215,255,.26));border:1px solid rgba(255,255,255,.72);box-shadow:0 8px 16px rgba(0,89,155,.12);}
body.asset-integrated-v17 .start-app-icon-v17 img{width:36px;height:36px;object-fit:contain;}
body.asset-integrated-v17 .window-icon.asset-window-icon-v17{width:28px;height:28px;border-radius:9px;background:rgba(255,255,255,.54);box-shadow:inset 0 1px 0 rgba(255,255,255,.86);}
body.asset-integrated-v17 .window-icon.asset-window-icon-v17 img{width:24px;height:24px;object-fit:contain;}
body.asset-integrated-v17 .task-icon-v17{width:22px;height:22px;border-radius:7px;background:rgba(255,255,255,.54);margin-right:5px;vertical-align:middle;}
body.asset-integrated-v17 .task-icon-v17 img{width:20px;height:20px;object-fit:contain;}
body.asset-integrated-v17 .desktop-icon:hover .icon-bubble.asset-icon-v17{transform:translateY(-3px) scale(1.06);filter:saturate(1.08) brightness(1.03);}

/* Hangout asset props and runtime texture layer */
.hangout-stage-v17{
  background-image:
    linear-gradient(180deg,rgba(90,209,255,.78) 0 34%,rgba(95,226,255,.86) 34% 55%,rgba(227,185,104,.76) 55% 100%),
    var(--v17-water-caustics),
    var(--v17-boardwalk)!important;
  background-size:100% 100%,420px 250px,360px 210px!important;
  background-position:center,center 35%,center bottom!important;
  background-blend-mode:normal,screen,multiply!important;
}
.hangout-stage-v17::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background-image:var(--v17-leaf-shadow),var(--v17-bubbles),linear-gradient(180deg,rgba(255,255,255,.28),transparent 55%);
  background-size:760px 420px,430px 330px,100% 100%;
  background-position:right top,left 10% top 12%,center;
  mix-blend-mode:screen;opacity:.56;
}
.hangout-props-v17{position:absolute;inset:0;z-index:7;pointer-events:none;}
.asset-prop-v17{position:absolute;display:block;object-fit:contain;filter:drop-shadow(0 14px 18px rgba(11,88,126,.18));user-select:none;}
.prop-v17-palm-left{left:2%;top:11%;width:130px;z-index:2;}
.prop-v17-palm-mid{left:22%;top:14%;width:110px;z-index:2;}
.prop-v17-palm-right{right:3%;top:10%;width:122px;z-index:2;}
.prop-v17-surf{left:42%;top:18%;width:76px;z-index:8;}
.prop-v17-bench{left:6%;bottom:23%;width:178px;z-index:13;}
.prop-v17-portal{right:26%;bottom:18%;width:158px;z-index:10;}
.prop-v17-quest{right:5%;bottom:26%;width:166px;z-index:12;}
.prop-v17-fountain{right:2%;bottom:2%;width:150px;z-index:17;}
.prop-v17-shells{left:55%;bottom:22%;width:92px;z-index:12;}
.prop-v17-bubbles{left:70%;top:25%;width:108px;z-index:6;animation:propFloatV17 4.6s ease-in-out infinite alternate;}
@keyframes propFloatV17{from{transform:translateY(0)}to{transform:translateY(-12px)}}
body.asset-integrated-v17 .shell-item.shell-v16{background:url("assets/v23/icons/shrine.svg") center/contain no-repeat!important;border:0!important;box-shadow:none!important;filter:drop-shadow(0 10px 12px rgba(0,89,155,.16));}
body.asset-integrated-v17 .shell-item.shell-v16:nth-of-type(2n){background-image:url("assets/v23/icons/shrine.svg")!important;}
body.asset-integrated-v17 .bubble-item.bubble-v16{background:url("assets/v23/icons/aquarium.svg") center/contain no-repeat!important;border:0!important;box-shadow:none!important;filter:drop-shadow(0 10px 12px rgba(0,89,155,.16));}
body.asset-integrated-v17 .beach-player,
body.asset-integrated-v17 .beach-npc,
body.asset-integrated-v17 .beach-friend-v12{width:104px!important;height:132px!important;overflow:visible!important;}
body.asset-integrated-v17 .beach-player .avatar-preview.sm,
body.asset-integrated-v17 .beach-npc .avatar-preview.sm,
body.asset-integrated-v17 .beach-friend-v12 .avatar-preview.sm{height:126px!important;}
body.asset-integrated-v17 .beach-player-name,
body.asset-integrated-v17 .beach-npc-name{left:50%!important;transform:translateX(-50%)!important;white-space:nowrap;}

/* v17 avatar anchors: cleaner right hand / legs / accessory placement */
.avatar-rig-v17{--avatar-scale-anchor:1;position:relative;isolation:isolate;}
.avatar-rig-v17 .bubble-arm{top:64px!important;width:24px!important;height:48px!important;border-radius:19px 19px 17px 17px!important;}
.avatar-rig-v17 .bubble-arm-left{left:1px!important;transform:rotate(7deg)!important;transform-origin:84% 13%!important;}
.avatar-rig-v17 .bubble-arm-right{right:1px!important;transform:rotate(-7deg)!important;transform-origin:16% 13%!important;}
.avatar-rig-v17 .bubble-arm-right::before{content:"";position:absolute;right:-5px;top:31px;width:10px;height:13px;border-radius:999px;background:radial-gradient(circle at 33% 22%,rgba(255,255,255,.9),transparent 34%),linear-gradient(180deg,var(--avatar-top),var(--avatar-deep));box-shadow:0 0 0 2px color-mix(in srgb,var(--avatar-rim),#0042ff 20%);transform:rotate(-25deg);}
.avatar-rig-v17 .bubble-leg{top:108px!important;width:24px!important;height:28px!important;border-radius:14px 14px 12px 12px!important;z-index:3!important;}
.avatar-rig-v17 .bubble-leg-left{left:26px!important;transform:rotate(2deg)!important;}
.avatar-rig-v17 .bubble-leg-right{right:26px!important;transform:rotate(-2deg)!important;}
.avatar-rig-v17.facing-left .bubble-leg-left,.avatar-rig-v17.facing-right .bubble-leg-right{z-index:4!important;}
.accessory-headphones.avatar-rig-v17 .bubble-accessory-headphones{left:6px!important;top:5px!important;width:88px!important;height:54px!important;border-width:6px!important;}
.accessory-headphones.avatar-rig-v17 .bubble-accessory-headphones::before,.accessory-headphones.avatar-rig-v17 .bubble-accessory-headphones::after{top:25px!important;width:19px!important;height:32px!important;}
.accessory-headphones.avatar-rig-v17 .bubble-accessory-headphones::before{left:-9px!important}.accessory-headphones.avatar-rig-v17 .bubble-accessory-headphones::after{right:-9px!important}
.accessory-visor.avatar-rig-v17 .bubble-accessory-visor{left:12px!important;top:15px!important;width:76px!important;height:24px!important;}
.accessory-glasses.avatar-rig-v17 .bubble-accessory-glasses{left:20px!important;top:31px!important;width:60px!important;}
.accessory-crown.avatar-rig-v17 .bubble-accessory-crown{left:23px!important;top:-16px!important;}
.accessory-ribbon.avatar-rig-v17 .bubble-accessory-ribbon{left:33px!important;top:-12px!important;}

/* Asset library app */
.asset-library-v17{display:grid;gap:16px;padding:4px;}
.asset-hero-v17{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);gap:16px;align-items:stretch;padding:18px;border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(118,231,255,.28)),var(--v17-bubbles);background-size:100% 100%,320px 240px;border:1px solid rgba(255,255,255,.75);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 20px 45px rgba(0,91,158,.12);}
.asset-hero-v17 h1{margin:2px 0 6px;color:#075eae;font-size:clamp(28px,4vw,48px);}
.asset-hero-v17 p{margin:0;color:#286b85;font-weight:800;line-height:1.45;}
.asset-mini-preview-v17{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-content:center;}
.asset-mini-preview-v17 img{width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:22px;background:rgba(255,255,255,.56);border:1px solid rgba(255,255,255,.8);padding:7px;box-shadow:0 12px 22px rgba(0,88,156,.12);}
.asset-board-grid-v17{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.asset-board-card-v17{border-radius:24px;padding:12px;background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(132,225,255,.22));border:1px solid rgba(255,255,255,.75);box-shadow:inset 0 1px rgba(255,255,255,.9),0 15px 30px rgba(0,89,155,.1);}
.asset-board-card-v17 h2{margin:0 0 8px;color:#075eae;font-size:18px;}
.asset-board-card-v17 img{width:100%;border-radius:18px;display:block;box-shadow:0 12px 30px rgba(0,74,128,.14);background:white;}
.asset-runtime-grid-v17{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.asset-runtime-grid-v17 figure{margin:0;padding:10px;border-radius:18px;background:rgba(255,255,255,.66);border:1px solid rgba(255,255,255,.74);text-align:center;font-weight:900;color:#075eae;}
.asset-runtime-grid-v17 img{height:58px;max-width:100%;object-fit:contain;display:block;margin:0 auto 6px;}
@media(max-width:860px){.asset-board-grid-v17{grid-template-columns:1fr}.asset-hero-v17{grid-template-columns:1fr}.asset-runtime-grid-v17{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ===== v18 layout polish / icon centering / hangout cleanup ===== */
body.asset-integrated-v17 .desktop-icons.asset-icons-v17{
  left:18px;
  top:100px;
}
body.asset-integrated-v17 .desktop-icon.draggable-icon{
  width:106px;
  min-height:92px;
  padding:8px 6px 6px;
}
body.asset-integrated-v17 .desktop-icon .icon-label{
  width:100%;
  margin:0 auto;
  text-align:center;
  text-wrap:balance;
}
body.asset-integrated-v17 .icon-bubble.asset-icon-v17{
  width:58px;
  height:58px;
  margin:0 auto 6px;
  padding:6px;
  border-radius:18px;
  background:
    radial-gradient(circle at 30% 16%, rgba(255,255,255,.96), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(121,225,255,.34) 55%, rgba(40,133,209,.26));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    inset 0 -1px 0 rgba(24,125,188,.18),
    0 10px 20px rgba(0,88,156,.13);
}
body.asset-integrated-v17 .icon-bubble.asset-icon-v17 img,
body.asset-integrated-v17 .start-app-icon-v17 img,
body.asset-integrated-v17 .window-icon.asset-window-icon-v17 img,
body.asset-integrated-v17 .task-icon-v17 img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
}
body.asset-integrated-v17 .start-app-icon-v17,
body.asset-integrated-v17 .window-icon.asset-window-icon-v17,
body.asset-integrated-v17 .task-icon-v17{
  overflow:hidden;
  display:inline-grid;
  place-items:center;
}
body.asset-integrated-v17 .start-app-icon-v17{padding:4px;}
body.asset-integrated-v17 .window-icon.asset-window-icon-v17{padding:2px;}
body.asset-integrated-v17 .task-icon-v17{padding:2px;}

/* keep desktop clean */
body.asset-integrated-v17 .hangout-v15 .beach-object{display:none !important;}

/* polished hangout stage */
body.asset-integrated-v17 .hangout-stage-v17,
body.asset-integrated-v17 .hangout-stage-v15{
  border-radius:26px;
  overflow:hidden;
  background-image:
    linear-gradient(180deg, #b8eeff 0 30%, #67d9ff 30% 53%, #1db6ff 53% 60%, #f2dea2 60% 79%, #9fe8bb 79% 100%),
    var(--v17-water-caustics),
    var(--v17-boardwalk) !important;
  background-size:100% 100%, 360px 220px, 420px 220px !important;
  background-position:center, center 38%, center bottom !important;
  background-blend-mode:normal, screen, multiply !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95), 0 24px 60px rgba(0,97,164,.18);
}
body.asset-integrated-v17 .hangout-stage-v17::before,
body.asset-integrated-v17 .hangout-stage-v15::before{
  opacity:.38;
  background-size:680px 360px, 360px 280px, 100% 100%;
}
body.asset-integrated-v17 .hangout-club-v15{
  right:8%;
  top:7%;
  width:250px;
  height:128px;
  font-size:24px;
  backdrop-filter:blur(10px) saturate(1.2);
}
body.asset-integrated-v17 .hangout-portal-v15{
  min-width:126px;
  text-align:center;
  z-index:18;
}
body.asset-integrated-v17 .portal-cafe{right:10% !important; top:39% !important;}
body.asset-integrated-v17 .portal-arcade{left:39% !important; top:59% !important;}
body.asset-integrated-v17 .portal-aquarium{right:25% !important; top:61% !important;}

body.asset-integrated-v17 .hangout-props-v17{z-index:6;}
body.asset-integrated-v17 .asset-prop-v17{
  opacity:.98;
  filter:drop-shadow(0 18px 22px rgba(0,76,120,.16));
  transform-origin:center bottom;
}
body.asset-integrated-v17 .prop-v17-palm-left{left:2%; top:8%; width:114px;}
body.asset-integrated-v17 .prop-v17-palm-mid{left:19%; top:10%; width:100px; opacity:.94;}
body.asset-integrated-v17 .prop-v17-palm-right{right:3%; top:9%; width:110px;}
body.asset-integrated-v17 .prop-v17-surf{left:52%; top:15%; width:62px;}
body.asset-integrated-v17 .prop-v17-bench{left:6%; bottom:18%; width:128px;}
body.asset-integrated-v17 .prop-v17-portal{right:23%; bottom:17%; width:120px;}
body.asset-integrated-v17 .prop-v17-quest{right:4%; bottom:21%; width:112px;}
body.asset-integrated-v17 .prop-v17-fountain{right:1.5%; bottom:1%; width:116px;}
body.asset-integrated-v17 .prop-v17-shells{left:57%; bottom:18%; width:48px;}
body.asset-integrated-v17 .prop-v17-bubbles{left:74%; top:24%; width:72px; opacity:.72;}

/* smaller, better integrated avatars in hangout */
body.asset-integrated-v17 .beach-player,
body.asset-integrated-v17 .beach-npc,
body.asset-integrated-v17 .beach-friend-v12{
  width:82px !important;
  height:108px !important;
  overflow:visible !important;
}
body.asset-integrated-v17 .beach-player::after,
body.asset-integrated-v17 .beach-npc::after,
body.asset-integrated-v17 .beach-friend-v12::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:3px;
  width:54px;
  height:15px;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(circle, rgba(0,78,132,.22), rgba(0,78,132,0) 72%);
  filter:blur(2px);
  z-index:0;
}
body.asset-integrated-v17 .beach-player .avatar-preview.sm,
body.asset-integrated-v17 .beach-npc .avatar-preview.sm,
body.asset-integrated-v17 .beach-friend-v12 .avatar-preview.sm{
  width:78px !important;
  height:104px !important;
  margin:0 auto !important;
  transform:none !important;
  filter:drop-shadow(0 10px 12px rgba(0,86,136,.15));
}
body.asset-integrated-v17 .beach-player-name,
body.asset-integrated-v17 .beach-npc-name{
  bottom:calc(100% + 4px) !important;
  padding:4px 8px !important;
  font-size:11px !important;
}

/* less cut-out feeling for avatars */
body.asset-integrated-v17 .asset-avatar-v17 .bubble-body,
body.asset-integrated-v17 .asset-avatar-v17 .bubble-head,
body.asset-integrated-v17 .asset-avatar-v17 .bubble-arm,
body.asset-integrated-v17 .asset-avatar-v17 .bubble-leg{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    0 6px 12px rgba(0,101,156,.10),
    0 0 0 1px rgba(0,123,199,.08);
}
body.asset-integrated-v17 .avatar-rig-v17 .bubble-arm-right::before{display:none !important;}
body.asset-integrated-v17 .avatar-rig-v17 .bubble-arm-left,
body.asset-integrated-v17 .avatar-rig-v17 .bubble-arm-right{
  top:63px !important;
  width:18px !important;
  height:42px !important;
}
body.asset-integrated-v17 .avatar-rig-v17 .bubble-arm-left{left:6px !important; transform:rotate(9deg) !important;}
body.asset-integrated-v17 .avatar-rig-v17 .bubble-arm-right{right:6px !important; transform:rotate(-9deg) !important;}
body.asset-integrated-v17 .avatar-rig-v17 .bubble-leg{top:95px !important; width:18px !important; height:24px !important;}
body.asset-integrated-v17 .avatar-rig-v17 .bubble-leg-left{left:22px !important;}
body.asset-integrated-v17 .avatar-rig-v17 .bubble-leg-right{right:22px !important;}
body.asset-integrated-v17 .accessory-headphones.avatar-rig-v17 .bubble-accessory-headphones{
  left:8px !important;
  top:-1px !important;
  width:74px !important;
  height:50px !important;
  border-width:5px !important;
}
body.asset-integrated-v17 .accessory-headphones.avatar-rig-v17 .bubble-accessory-headphones::before,
body.asset-integrated-v17 .accessory-headphones.avatar-rig-v17 .bubble-accessory-headphones::after{
  top:23px !important;
  width:16px !important;
  height:28px !important;
}
body.asset-integrated-v17 .accessory-headphones.avatar-rig-v17 .bubble-accessory-headphones::before{left:-8px !important;}
body.asset-integrated-v17 .accessory-headphones.avatar-rig-v17 .bubble-accessory-headphones::after{right:-8px !important;}

@media (max-width: 1000px){
  body.asset-integrated-v17 .portal-cafe{right:7% !important;}
  body.asset-integrated-v17 .portal-arcade{left:34% !important;}
  body.asset-integrated-v17 .portal-aquarium{right:16% !important;}
}

/* ===== v19 clean assets, stable hangout actors, Aeroify music app ===== */
body.asset-integrated-v17 .desktop-icons.asset-icons-v17{left:18px;top:100px;}
body.asset-integrated-v17 .desktop-icon.draggable-icon{width:106px;min-height:92px;padding:8px 6px 6px;}
body.asset-integrated-v17 .desktop-icon .icon-label{width:100%;margin:0 auto;text-align:center;text-wrap:balance;}
body.asset-integrated-v17 .icon-bubble.asset-icon-v17{
  width:58px;height:58px;margin:0 auto 6px;padding:8px;border-radius:18px;
  background:radial-gradient(circle at 32% 15%,rgba(255,255,255,.97),transparent 42%),linear-gradient(180deg,rgba(255,255,255,.94),rgba(109,222,255,.33) 55%,rgba(25,119,216,.25));
  border:1px solid rgba(255,255,255,.76);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.96),inset 0 -1px 0 rgba(23,119,188,.18),0 10px 22px rgba(0,87,156,.14);
}
body.asset-integrated-v17 .icon-bubble.asset-icon-v17 img,
body.asset-integrated-v17 .start-app-icon-v17 img,
body.asset-integrated-v17 .window-icon.asset-window-icon-v17 img,
body.asset-integrated-v17 .task-icon-v17 img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;}
body.asset-integrated-v17 .start-app-icon-v17{padding:5px;}
body.asset-integrated-v17 .window-icon.asset-window-icon-v17{padding:2px;}
body.asset-integrated-v17 .task-icon-v17{padding:2px;}
body.asset-integrated-v17 .desktop-icon:hover .icon-bubble.asset-icon-v17{transform:translateY(-3px) scale(1.05);}

/* Hide old sprite-sheet prop cutouts and emoji props. v19 draws clean props with CSS. */
body.asset-integrated-v17 .hangout-v15 .beach-object,
body.asset-integrated-v17 .hangout-props-v17{display:none!important;}
body.asset-integrated-v17 .hangout-stage-v15,
body.asset-integrated-v17 .hangout-stage-v17{
  border-radius:26px;overflow:hidden;
  background-image:
    linear-gradient(180deg,#b9f0ff 0 30%,#62d8ff 30% 53%,#17adf2 53% 60%,#f4dea4 60% 80%,#a6ebb8 80% 100%),
    var(--v17-water-caustics),
    var(--v17-boardwalk)!important;
  background-size:100% 100%,360px 220px,430px 220px!important;
  background-position:center,center 38%,center bottom!important;
  background-blend-mode:normal,screen,multiply!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 24px 60px rgba(0,97,164,.18);
}
body.asset-integrated-v17 .hangout-stage-v15::before,
body.asset-integrated-v17 .hangout-stage-v17::before{opacity:.34!important;background-size:650px 360px,340px 260px,100% 100%!important;}
body.asset-integrated-v17 .hangout-club-v15{right:8%;top:7%;width:240px;height:120px;font-size:24px;backdrop-filter:blur(10px) saturate(1.25);}
body.asset-integrated-v17 .hangout-portal-v15{z-index:24!important;min-width:124px;text-align:center;border-radius:999px;padding:10px 13px;}
body.asset-integrated-v17 .portal-cafe{right:10%!important;top:39%!important;}
body.asset-integrated-v17 .portal-arcade{left:40%!important;top:60%!important;}
body.asset-integrated-v17 .portal-aquarium{right:25%!important;top:62%!important;}
.hangout-props-v19{position:absolute;inset:0;z-index:7;pointer-events:none;}
.v19-prop{position:absolute;transform-origin:center bottom;filter:drop-shadow(0 15px 18px rgba(0,71,120,.14));}
.v19-palm{width:86px;height:126px;}
.v19-palm::before{content:"";position:absolute;left:36px;bottom:0;width:17px;height:78px;border-radius:10px;background:repeating-linear-gradient(180deg,#c58b45 0 13px,#9f672f 13px 17px);box-shadow:inset 3px 0 rgba(255,255,255,.24);}
.v19-palm::after{content:"";position:absolute;left:0;top:0;width:86px;height:58px;border-radius:50%;background:radial-gradient(ellipse at 50% 100%,rgba(255,255,255,.55),transparent 22%),conic-gradient(from 12deg,#6fe648,#2da948,#b7ff5f,#2fbd55,#7ce24f,#269b42,#9cff5a);clip-path:polygon(48% 100%,0 48%,36% 48%,18% 5%,50% 38%,82% 5%,64% 48%,100% 48%);}
.v19-palm-left{left:3%;top:10%;}.v19-palm-mid{left:21%;top:11%;transform:scale(.88);opacity:.95}.v19-palm-right{right:3%;top:10%;transform:scale(.92);}
.v19-bench{left:6%;bottom:20%;width:126px;height:58px;border-radius:40px 40px 18px 18px;background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(67,207,255,.32));border:2px solid rgba(255,255,255,.72);box-shadow:inset 0 1px rgba(255,255,255,.95),0 13px 20px rgba(0,99,160,.1);}
.v19-bench::before,.v19-bench::after{content:"";position:absolute;bottom:-18px;width:8px;height:20px;border-radius:999px;background:#5e97bd}.v19-bench::before{left:28px}.v19-bench::after{right:28px}
.v19-surf{left:52%;top:14%;width:50px;height:128px;border-radius:50% 50% 44% 44%;background:linear-gradient(180deg,#fff,#76dfff 48%,#92f26d 49%,#fff 100%);border:2px solid rgba(6,115,190,.38);display:grid;place-items:center;color:#0874b5;font-size:11px;font-weight:1000;text-align:center;}
.v19-surf::after{content:"AERO\A CLUB";white-space:pre-line;line-height:1.05;}
.v19-portal{right:23%;bottom:16%;width:118px;height:112px;border-radius:58px 58px 18px 18px;border:14px solid rgba(18,174,255,.82);border-bottom-width:18px;background:radial-gradient(ellipse at 50% 100%,rgba(148,255,242,.65),transparent 54%);box-shadow:inset 0 1px rgba(255,255,255,.92),0 0 0 3px rgba(255,255,255,.52),0 16px 30px rgba(0,110,180,.14);}
.v19-portal::before{content:"";position:absolute;left:19px;right:19px;bottom:-26px;height:20px;border-radius:50%;background:radial-gradient(ellipse,rgba(113,255,234,.86),rgba(16,141,224,.05) 70%);}
.v19-quest{right:5%;bottom:22%;width:110px;height:90px;border-radius:17px;background:linear-gradient(180deg,#45b8ff,#106ec4);border:2px solid rgba(255,255,255,.75);box-shadow:inset 0 1px rgba(255,255,255,.9),0 13px 22px rgba(0,75,132,.16);}
.v19-quest::before{content:"QUESTS";position:absolute;top:8px;left:0;right:0;text-align:center;color:#fff;font-weight:1000;font-size:13px;letter-spacing:.04em}.v19-quest::after{content:"";position:absolute;left:16px;right:16px;bottom:12px;top:31px;background:linear-gradient(90deg,rgba(255,255,255,.9) 0 36%,transparent 36% 47%,rgba(255,255,255,.9) 47% 100%);border-radius:5px;opacity:.86;}
.v19-fountain{right:2%;bottom:1%;width:88px;height:94px;border-radius:0 0 44px 44px;background:radial-gradient(ellipse at 50% 16%,rgba(255,255,255,.9),rgba(102,224,255,.5) 46%,rgba(16,135,213,.78) 75%);border:2px solid rgba(255,255,255,.7);}
.v19-fountain::before{content:"";position:absolute;left:24px;top:-40px;width:40px;height:48px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.85),rgba(76,208,255,.38) 50%,transparent 72%);box-shadow:0 -16px 0 -9px rgba(96,225,255,.74),18px -6px 0 -11px rgba(96,225,255,.74),-18px -4px 0 -11px rgba(96,225,255,.74);}
.v19-shells{left:56%;bottom:19%;width:72px;height:34px}.v19-shells::before,.v19-shells::after{content:"";position:absolute;bottom:0;border-radius:50% 50% 12px 12px;background:linear-gradient(180deg,#fff,#82e0ff 45%,#2491db);border:1px solid rgba(255,255,255,.8)}.v19-shells::before{left:0;width:34px;height:23px}.v19-shells::after{right:2px;width:38px;height:28px;background:linear-gradient(180deg,#fff,#ffb5e5 45%,#36b5ff)}
.v19-bubbles{left:74%;top:24%;width:70px;height:68px;background:radial-gradient(circle at 25% 60%,rgba(255,255,255,.88) 0 8px,rgba(97,218,255,.34) 10px,transparent 12px),radial-gradient(circle at 60% 30%,rgba(255,255,255,.82) 0 12px,rgba(97,218,255,.28) 14px,transparent 18px),radial-gradient(circle at 78% 72%,rgba(255,255,255,.75) 0 7px,rgba(97,218,255,.25) 9px,transparent 12px);animation:propFloatV17 4.6s ease-in-out infinite alternate;opacity:.72;}

/* stable small bubble rig for hangout actors */
body.asset-integrated-v17 .beach-player,
body.asset-integrated-v17 .beach-npc,
body.asset-integrated-v17 .beach-friend-v12{width:82px!important;height:108px!important;overflow:visible!important;}
body.asset-integrated-v17 .beach-player::after,
body.asset-integrated-v17 .beach-npc::after,
body.asset-integrated-v17 .beach-friend-v12::after{content:"";position:absolute;left:50%;bottom:2px;width:52px;height:14px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(0,78,132,.22),rgba(0,78,132,0) 72%);filter:blur(2px);z-index:0;}
body.asset-integrated-v17 .beach-player .avatar-preview.sm,
body.asset-integrated-v17 .beach-npc .avatar-preview.sm,
body.asset-integrated-v17 .beach-friend-v12 .avatar-preview.sm{width:76px!important;height:104px!important;margin:0 auto!important;transform:none!important;filter:drop-shadow(0 8px 10px rgba(0,86,136,.16));}
body.asset-integrated-v17 .beach-player-name,
body.asset-integrated-v17 .beach-npc-name{bottom:calc(100% + 4px)!important;padding:4px 8px!important;font-size:11px!important;left:50%!important;transform:translateX(-50%)!important;white-space:nowrap!important;}
body.asset-integrated-v17 .beach-player .bubble-head,
body.asset-integrated-v17 .beach-npc .bubble-head,
body.asset-integrated-v17 .beach-friend-v12 .bubble-head{left:12px!important;top:0!important;width:52px!important;height:52px!important;border-width:2px!important;}
body.asset-integrated-v17 .beach-player .bubble-body,
body.asset-integrated-v17 .beach-npc .bubble-body,
body.asset-integrated-v17 .beach-friend-v12 .bubble-body{left:8px!important;top:40px!important;width:60px!important;height:50px!important;border-radius:28px 28px 18px 18px!important;border-width:2px!important;}
body.asset-integrated-v17 .beach-player .bubble-arm,
body.asset-integrated-v17 .beach-npc .bubble-arm,
body.asset-integrated-v17 .beach-friend-v12 .bubble-arm{top:48px!important;width:16px!important;height:37px!important;border-width:2px!important;}
body.asset-integrated-v17 .beach-player .bubble-arm-left,
body.asset-integrated-v17 .beach-npc .bubble-arm-left,
body.asset-integrated-v17 .beach-friend-v12 .bubble-arm-left{left:5px!important;transform:rotate(9deg)!important;}
body.asset-integrated-v17 .beach-player .bubble-arm-right,
body.asset-integrated-v17 .beach-npc .bubble-arm-right,
body.asset-integrated-v17 .beach-friend-v12 .bubble-arm-right{right:5px!important;transform:rotate(-9deg)!important;}
body.asset-integrated-v17 .beach-player .bubble-arm-right::before,
body.asset-integrated-v17 .beach-npc .bubble-arm-right::before,
body.asset-integrated-v17 .beach-friend-v12 .bubble-arm-right::before{display:none!important;}
body.asset-integrated-v17 .beach-player .bubble-leg,
body.asset-integrated-v17 .beach-npc .bubble-leg,
body.asset-integrated-v17 .beach-friend-v12 .bubble-leg{top:83px!important;width:19px!important;height:18px!important;border-width:2px!important;border-radius:9px 9px 13px 13px!important;}
body.asset-integrated-v17 .beach-player .bubble-leg-left,
body.asset-integrated-v17 .beach-npc .bubble-leg-left,
body.asset-integrated-v17 .beach-friend-v12 .bubble-leg-left{left:19px!important;}
body.asset-integrated-v17 .beach-player .bubble-leg-right,
body.asset-integrated-v17 .beach-npc .bubble-leg-right,
body.asset-integrated-v17 .beach-friend-v12 .bubble-leg-right{right:19px!important;}
body.asset-integrated-v17 .beach-player .bubble-face,
body.asset-integrated-v17 .beach-npc .bubble-face,
body.asset-integrated-v17 .beach-friend-v12 .bubble-face{left:18px!important;top:20px!important;transform:scale(.75)!important;transform-origin:top left!important;}
body.asset-integrated-v17 .beach-player .bubble-accessory,
body.asset-integrated-v17 .beach-npc .bubble-accessory,
body.asset-integrated-v17 .beach-friend-v12 .bubble-accessory{transform:scale(.72)!important;transform-origin:top center!important;}
body.asset-integrated-v17 .beach-player .bubble-accessory-headphones,
body.asset-integrated-v17 .beach-npc .bubble-accessory-headphones,
body.asset-integrated-v17 .beach-friend-v12 .bubble-accessory-headphones{left:2px!important;top:-6px!important;width:72px!important;height:42px!important;border-width:4px!important;}

/* Aeroify */
.aeroify-app{height:100%;display:grid;grid-template-columns:270px 1fr;grid-template-rows:70px 1fr 92px;gap:14px;padding:12px;border-radius:24px;background:linear-gradient(180deg,rgba(185,239,255,.7),rgba(69,189,255,.28)),var(--v17-bubbles);background-size:100% 100%,420px 330px;overflow:hidden;}
.aeroify-top{grid-column:1/3;display:grid;grid-template-columns:230px auto 130px 54px 210px;gap:14px;align-items:center;}
.aeroify-brand{display:flex;align-items:center;gap:10px;font-size:28px;font-weight:1000;color:white;text-shadow:0 3px 10px rgba(0,75,139,.38)}
.aeroify-logo-orb{width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 31% 18%,#fff 0 12%,#b8fff6 22%,#35d8ff 48%,#186fe8 76%,#7eff72 100%);box-shadow:inset -7px -10px 18px rgba(0,61,149,.22),0 8px 18px rgba(0,84,148,.22)}
.aeroify-nav{display:flex;gap:8px}.aeroify-nav button,.aeroify-upgrade,.aeroify-bell{border:1px solid rgba(255,255,255,.72);border-radius:999px;padding:10px 13px;background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(72,198,255,.34));color:white;font-weight:1000;text-shadow:0 1px 4px rgba(0,79,135,.45);box-shadow:inset 0 1px rgba(255,255,255,.9),0 10px 20px rgba(0,78,140,.14)}
.aeroify-search{height:46px;border-radius:999px;border:1px solid rgba(255,255,255,.76);padding:0 18px;background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(98,214,255,.22));color:#075c91;font-weight:900;box-shadow:inset 0 1px rgba(255,255,255,.9)}
.aeroify-profile{display:flex;align-items:center;gap:10px;justify-content:flex-end;border-radius:999px;padding:6px 10px;background:linear-gradient(180deg,rgba(255,255,255,.68),rgba(55,187,255,.27));border:1px solid rgba(255,255,255,.72);color:#075c91;font-weight:1000;min-width:0}.aeroify-profile span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aeroify-profile-head{width:36px;height:36px;border-radius:50%;position:relative;background:radial-gradient(circle at 31% 18%,#fff 0 10%,#bffff8 20%,var(--avatar-base,#31d1ff) 55%,#126de8 100%);box-shadow:inset -4px -7px 10px rgba(0,67,145,.24),0 5px 10px rgba(0,79,136,.16)}.aeroify-profile-head::before,.aeroify-profile-head::after{content:"";position:absolute;top:15px;width:4px;height:8px;border-radius:50%;background:#07386d}.aeroify-profile-head::before{left:11px}.aeroify-profile-head::after{right:11px}.aeroify-profile-head i{position:absolute;left:13px;top:24px;width:10px;height:5px;border:2px solid #07386d;border-top:0;border-radius:0 0 10px 10px}
.aeroify-sidebar{grid-row:2/3;display:flex;flex-direction:column;gap:13px;padding:14px;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(32,150,221,.18));border:1px solid rgba(255,255,255,.72);box-shadow:inset 0 1px rgba(255,255,255,.92);min-height:0}.aeroify-menu{display:grid;gap:8px}.aeroify-menu button,.aeroify-playlist{border:1px solid rgba(255,255,255,.52);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(103,216,255,.22));padding:12px;display:flex;align-items:center;gap:12px;color:white;text-align:left;font-weight:1000;text-shadow:0 1px 6px rgba(0,72,130,.45)}.aeroify-playlists{overflow:auto;display:grid;gap:9px;padding-right:4px}.aeroify-playlist i{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#eaffff,#31cfff,#89ff70);font-style:normal;box-shadow:inset 0 1px rgba(255,255,255,.8)}.aeroify-main{position:relative;overflow:hidden;border-radius:28px;padding:26px;background:linear-gradient(180deg,rgba(255,255,255,.44),rgba(29,150,225,.16)),linear-gradient(150deg,#1aaeff,#9befff 48%,rgba(117,220,76,.36));border:1px solid rgba(255,255,255,.74);box-shadow:inset 0 1px rgba(255,255,255,.94)}.aeroify-main::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 77% 20%,rgba(255,255,255,.88),transparent 6%),radial-gradient(circle at 76% 56%,rgba(255,255,255,.28),transparent 22%),linear-gradient(180deg,transparent 55%,rgba(32,150,41,.25));pointer-events:none}.aeroify-hero{position:relative;z-index:2;display:grid;grid-template-columns:180px 1fr;gap:28px;align-items:center}.aeroify-cover{width:180px;height:180px;border-radius:20px;display:grid;place-items:center;background:radial-gradient(circle at 33% 22%,#fff 0 8%,#dfffff 16%,#31d9ff 46%,#126de8 74%,#84ff65 100%);box-shadow:inset -14px -16px 28px rgba(0,61,149,.18),inset 11px 10px 18px rgba(255,255,255,.62),0 20px 44px rgba(0,76,132,.22);border:1px solid rgba(255,255,255,.84)}.aeroify-cover b{font-size:52px;color:#fff;text-shadow:0 3px 10px rgba(0,71,134,.38)}.aeroify-meta{color:white;text-shadow:0 2px 12px rgba(0,66,128,.35)}.aeroify-meta small{font-size:18px;font-weight:900;opacity:.9}.aeroify-meta h1{font-size:clamp(42px,6vw,86px);line-height:.9;margin:8px 0 8px;letter-spacing:-.06em}.aeroify-meta p{font-size:18px;margin:0 0 16px;font-weight:800}.aeroify-controls{display:flex;align-items:center;gap:14px}.aeroify-play{width:76px;height:76px;border-radius:50%;border:1px solid rgba(255,255,255,.75);font-size:34px;font-weight:1000;color:#064f72;background:radial-gradient(circle at 35% 20%,#fff,#beff8c 45%,#33d850 100%);box-shadow:inset 0 1px rgba(255,255,255,.95),0 16px 32px rgba(0,94,135,.2)}.aeroify-round{width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.66);background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(92,213,255,.26));font-size:22px;color:#075c91;font-weight:1000}.aeroify-table{position:relative;z-index:2;margin-top:24px;border-radius:20px;overflow:hidden;background:rgba(255,255,255,.22);border:1px solid rgba(255,255,255,.46);backdrop-filter:blur(12px)}.aeroify-row{display:grid;grid-template-columns:52px 1fr 120px 80px;gap:12px;align-items:center;padding:12px 15px;border-bottom:1px solid rgba(255,255,255,.24);color:white;text-shadow:0 1px 7px rgba(0,74,130,.38);font-weight:800}.aeroify-row.head{opacity:.82;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.aeroify-row.track{cursor:pointer}.aeroify-row.track:hover,.aeroify-row.track.active{background:rgba(255,255,255,.20)}.aeroify-row.track strong{display:block}.aeroify-row.track small{opacity:.78}.aeroify-nowbar{grid-column:1/3;grid-row:3/4;display:grid;grid-template-columns:260px 1fr 260px;gap:16px;align-items:center;padding:12px 16px;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(15,119,187,.30));border:1px solid rgba(255,255,255,.78);box-shadow:inset 0 1px rgba(255,255,255,.95),0 18px 44px rgba(0,73,137,.16)}.aeroify-now-left{display:flex;align-items:center;gap:12px;min-width:0}.aeroify-mini-cover{width:58px;height:58px;border-radius:14px;background:radial-gradient(circle at 31% 18%,#fff,#6cecff 45%,#1b72e6 80%,#93ff68);box-shadow:inset 0 1px rgba(255,255,255,.9)}.aeroify-now-left strong,.aeroify-now-left small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aeroify-now-left strong{color:white;text-shadow:0 1px 6px rgba(0,68,125,.42)}.aeroify-now-left small{color:#dffffd}.aeroify-center{display:grid;gap:8px;justify-items:center}.aeroify-player-buttons{display:flex;gap:14px;align-items:center}.aeroify-player-buttons button{border:0;background:transparent;color:white;font-size:24px;text-shadow:0 2px 8px rgba(0,75,135,.5)}.aeroify-player-buttons .big{width:54px;height:54px;border-radius:50%;background:white;color:#075c91;box-shadow:0 10px 20px rgba(0,72,132,.18)}.aeroify-progress-wrap{width:100%;display:grid;grid-template-columns:42px 1fr 42px;gap:8px;align-items:center;color:#eaffff;font-size:12px;font-weight:900}.aeroify-progress{height:9px;border-radius:999px;background:rgba(255,255,255,.35);overflow:hidden;box-shadow:inset 0 2px 7px rgba(0,51,95,.22);cursor:pointer}.aeroify-progress span{display:block;height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg,#c9ff66,#58ffe0,#fff);box-shadow:0 0 14px rgba(255,255,255,.72)}.aeroify-right{display:flex;align-items:center;justify-content:flex-end;gap:12px;color:white}.aeroify-right input{accent-color:#aaff62;width:120px}.aeroify-visualizer{height:36px;display:flex;align-items:end;gap:4px}.aeroify-visualizer span{width:5px;border-radius:99px;background:linear-gradient(180deg,#fff,#71e9ff,#8eff69);height:12px;animation:bounce 1.2s ease-in-out infinite}.aeroify-visualizer span:nth-child(2n){animation-duration:.8s}.aeroify-visualizer span:nth-child(3n){animation-duration:1.5s}body.no-motion .aeroify-visualizer span{animation:none!important}
@media(max-width:900px){.aeroify-app{grid-template-columns:1fr;grid-template-rows:auto auto 1fr auto}.aeroify-top,.aeroify-nowbar{grid-column:1}.aeroify-top{grid-template-columns:1fr;}.aeroify-sidebar{display:none}.aeroify-hero{grid-template-columns:1fr}.aeroify-cover{width:130px;height:130px}.aeroify-nowbar{grid-template-columns:1fr}.aeroify-row{grid-template-columns:36px 1fr 60px}.aeroify-row span:nth-child(3){display:none}}


/* ===== v20 mascot rig rebuild, clean assets, calendar + Aeroify polish ===== */

body.asset-integrated-v17 .icon-bubble.asset-icon-v17{
  width:58px!important;
  height:58px!important;
  padding:7px!important;
  border-radius:18px!important;
  overflow:hidden!important;
}
body.asset-integrated-v17 .icon-bubble.asset-icon-v17 img,
body.asset-integrated-v17 .start-app-icon-v17 img,
body.asset-integrated-v17 .window-icon.asset-window-icon-v17 img,
body.asset-integrated-v17 .task-icon-v17 img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
  border:0!important;
}

/* New mascot rig: one stable model across desktop, Hangout, Cafe, editor */
.aero-avatar-v20.avatar-sprite,
.aero-avatar-v20.avatar-preview{
  --a20-size:1;
  position:relative!important;
  width:92px!important;
  height:122px!important;
  overflow:visible!important;
  margin:auto!important;
  transform:none!important;
  isolation:isolate!important;
  filter:drop-shadow(0 14px 14px rgba(0,82,142,.18))!important;
}
.aero-avatar-v20.avatar-preview.sm{
  width:76px!important;
  height:98px!important;
  --a20-size:.82;
}
.aero-avatar-v20.avatar-preview.xl{
  width:168px!important;
  height:216px!important;
  --a20-size:1.82;
  margin:14px auto 22px!important;
}
.aero-avatar-v20::before,
.aero-avatar-v20::after{
  display:none!important;
  content:none!important;
}
.aero-avatar-v20 .bubble-shadow{
  position:absolute;
  left:50%;
  top:calc(113px * var(--a20-size));
  width:calc(64px * var(--a20-size));
  height:calc(14px * var(--a20-size));
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(0,72,130,.23),rgba(0,72,130,0) 70%);
  filter:blur(2px);
  z-index:0;
}
.aero-avatar-v20 .bubble-aura{
  position:absolute;
  left:calc(8px * var(--a20-size));
  top:calc(0px * var(--a20-size));
  width:calc(76px * var(--a20-size));
  height:calc(112px * var(--a20-size));
  border-radius:999px;
  background:radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--avatar-base,#2fd6ff),transparent 80%),transparent 72%);
  filter:blur(calc(7px * var(--a20-size)));
  opacity:.65;
  z-index:0;
}
.aero-avatar-v20 .bubble-head{
  position:absolute!important;
  left:calc(15px * var(--a20-size))!important;
  top:calc(0px * var(--a20-size))!important;
  width:calc(62px * var(--a20-size))!important;
  height:calc(62px * var(--a20-size))!important;
  border-radius:50%!important;
  z-index:6!important;
  background:
    radial-gradient(ellipse at 35% 15%,rgba(255,255,255,.98) 0 18%,rgba(255,255,255,.34) 19%,transparent 34%),
    radial-gradient(circle at 50% 78%,var(--avatar-core,#35f0ff) 0 18%,transparent 44%),
    linear-gradient(180deg,var(--avatar-top,#9bf7ff),var(--avatar-base,#2fd6ff) 45%,var(--avatar-deep,#126fe8))!important;
  border:calc(2.25px * var(--a20-size)) solid color-mix(in srgb,var(--avatar-rim,#116fe8),#0047ff 22%)!important;
  box-shadow:
    inset calc(8px * var(--a20-size)) calc(8px * var(--a20-size)) calc(14px * var(--a20-size)) rgba(255,255,255,.26),
    inset calc(-7px * var(--a20-size)) calc(-9px * var(--a20-size)) calc(15px * var(--a20-size)) rgba(0,44,155,.16),
    0 calc(7px * var(--a20-size)) calc(13px * var(--a20-size)) rgba(0,88,150,.18)!important;
}
.aero-avatar-v20 .bubble-body{
  position:absolute!important;
  left:calc(13px * var(--a20-size))!important;
  top:calc(48px * var(--a20-size))!important;
  width:calc(66px * var(--a20-size))!important;
  height:calc(58px * var(--a20-size))!important;
  border-radius:calc(32px * var(--a20-size)) calc(32px * var(--a20-size)) calc(22px * var(--a20-size)) calc(22px * var(--a20-size))!important;
  z-index:3!important;
  background:
    radial-gradient(ellipse at 28% 18%,rgba(255,255,255,.72) 0 11%,transparent 20%),
    radial-gradient(circle at 50% 80%,var(--avatar-core,#35efff) 0 20%,transparent 46%),
    linear-gradient(180deg,var(--avatar-base,#2fd6ff),var(--avatar-deep,#126fe8))!important;
  border:calc(2.25px * var(--a20-size)) solid color-mix(in srgb,var(--avatar-rim,#116fe8),#0047ff 22%)!important;
  box-shadow:
    inset calc(10px * var(--a20-size)) calc(9px * var(--a20-size)) calc(15px * var(--a20-size)) rgba(255,255,255,.20),
    inset calc(-8px * var(--a20-size)) calc(-11px * var(--a20-size)) calc(16px * var(--a20-size)) rgba(0,44,155,.13),
    0 calc(10px * var(--a20-size)) calc(18px * var(--a20-size)) rgba(0,83,140,.16)!important;
}
.aero-avatar-v20 .bubble-body::after{
  content:"";
  position:absolute;
  left:22%;
  top:8%;
  width:54%;
  height:22%;
  border-radius:50%;
  background:rgba(255,255,255,.30);
}
.aero-avatar-v20 .bubble-arm{
  position:absolute!important;
  top:calc(55px * var(--a20-size))!important;
  width:calc(18px * var(--a20-size))!important;
  height:calc(42px * var(--a20-size))!important;
  border-radius:999px!important;
  z-index:2!important;
  background:
    radial-gradient(ellipse at 35% 18%,rgba(255,255,255,.70),transparent 28%),
    linear-gradient(180deg,var(--avatar-top,#9bf7ff),var(--avatar-base,#2fd6ff) 38%,var(--avatar-deep,#126fe8))!important;
  border:calc(2px * var(--a20-size)) solid color-mix(in srgb,var(--avatar-rim,#116fe8),#0047ff 24%)!important;
  box-shadow:inset calc(5px * var(--a20-size)) calc(4px * var(--a20-size)) calc(9px * var(--a20-size)) rgba(255,255,255,.22),0 calc(8px * var(--a20-size)) calc(12px * var(--a20-size)) rgba(0,83,140,.12)!important;
}
.aero-avatar-v20 .bubble-arm-left{left:calc(4px * var(--a20-size))!important;transform:rotate(9deg)!important;transform-origin:80% 12%!important;}
.aero-avatar-v20 .bubble-arm-right{right:calc(4px * var(--a20-size))!important;transform:rotate(-9deg)!important;transform-origin:20% 12%!important;}
.aero-avatar-v20 .bubble-arm::before,
.aero-avatar-v20 .bubble-arm::after{display:none!important;}
.aero-avatar-v20 .bubble-leg{
  position:absolute!important;
  top:calc(96px * var(--a20-size))!important;
  width:calc(22px * var(--a20-size))!important;
  height:calc(20px * var(--a20-size))!important;
  z-index:1!important;
  border-radius:calc(10px * var(--a20-size)) calc(10px * var(--a20-size)) calc(14px * var(--a20-size)) calc(14px * var(--a20-size))!important;
  background:
    radial-gradient(ellipse at 34% 21%,rgba(255,255,255,.65),transparent 26%),
    linear-gradient(180deg,var(--avatar-base,#2fd6ff),var(--avatar-deep,#126fe8))!important;
  border:calc(2px * var(--a20-size)) solid color-mix(in srgb,var(--avatar-rim,#116fe8),#0047ff 24%)!important;
  box-shadow:inset calc(4px * var(--a20-size)) calc(3px * var(--a20-size)) calc(7px * var(--a20-size)) rgba(255,255,255,.2),0 calc(7px * var(--a20-size)) calc(10px * var(--a20-size)) rgba(0,83,140,.12)!important;
}
.aero-avatar-v20 .bubble-leg-left{left:calc(23px * var(--a20-size))!important;}
.aero-avatar-v20 .bubble-leg-right{right:calc(23px * var(--a20-size))!important;}
.aero-avatar-v20 .bubble-face{
  position:absolute!important;
  left:calc(29px * var(--a20-size))!important;
  top:calc(26px * var(--a20-size))!important;
  width:calc(34px * var(--a20-size))!important;
  height:calc(18px * var(--a20-size))!important;
  z-index:8!important;
  transform:none!important;
}
.aero-avatar-v20 .bubble-eye{
  position:absolute!important;
  top:0!important;
  width:calc(6px * var(--a20-size))!important;
  height:calc(12px * var(--a20-size))!important;
  border-radius:50%!important;
  background:linear-gradient(180deg,#07265e,#021c47)!important;
  box-shadow:inset 1px 2px rgba(255,255,255,.72),0 0 0 calc(1px * var(--a20-size)) rgba(255,255,255,.18)!important;
}
.aero-avatar-v20 .bubble-eye-left{left:0!important;}
.aero-avatar-v20 .bubble-eye-right{right:0!important;}
.aero-avatar-v20 .bubble-mouth{
  position:absolute!important;
  left:50%!important;
  top:calc(12px * var(--a20-size))!important;
  width:calc(14px * var(--a20-size))!important;
  height:calc(8px * var(--a20-size))!important;
  transform:translateX(-50%)!important;
  border:calc(2px * var(--a20-size)) solid #04315e!important;
  border-top:0!important;
  border-left-color:transparent!important;
  border-right-color:transparent!important;
  border-radius:0 0 999px 999px!important;
  background:transparent!important;
}
.aero-avatar-v20.expression-neutral .bubble-mouth{border-top:calc(2px * var(--a20-size)) solid #04315e!important;border-left:0!important;border-right:0!important;border-bottom:0!important;height:1px!important;top:calc(16px * var(--a20-size))!important;}
.aero-avatar-v20.expression-wink .bubble-eye-right{height:calc(3px * var(--a20-size))!important;border-radius:999px!important;top:calc(5px * var(--a20-size))!important;}
.aero-avatar-v20.expression-sleepy .bubble-eye{height:calc(3px * var(--a20-size))!important;border-radius:999px!important;top:calc(5px * var(--a20-size))!important;}
.aero-avatar-v20.expression-excited .bubble-mouth{width:calc(16px * var(--a20-size))!important;height:calc(12px * var(--a20-size))!important;border:0!important;border-radius:50%!important;background:#092b61!important;}
.aero-avatar-v20.expression-excited .bubble-mouth::after{content:"";position:absolute;left:4px;right:4px;bottom:1px;height:5px;border-radius:50%;background:#ff8cb8;}

.aero-avatar-v20 .bubble-accessory{
  position:absolute!important;
  display:none!important;
  z-index:12!important;
  pointer-events:none!important;
  transform:none!important;
  transform-origin:center top!important;
}
.aero-avatar-v20.accessory-bubblecap .bubble-accessory-bubblecap{display:block!important;left:calc(22px * var(--a20-size))!important;top:calc(-4px * var(--a20-size))!important;width:calc(50px * var(--a20-size))!important;height:calc(28px * var(--a20-size))!important;border-radius:50% 50% 34% 34%!important;background:radial-gradient(ellipse at 30% 16%,rgba(255,255,255,.9),transparent 28%),linear-gradient(180deg,rgba(255,255,255,.55),var(--avatar-top,#9bf7ff) 42%,var(--avatar-base,#2fd6ff))!important;border:calc(2px * var(--a20-size)) solid color-mix(in srgb,var(--avatar-rim,#116fe8),#0047ff 18%)!important;box-shadow:0 calc(5px * var(--a20-size)) calc(10px * var(--a20-size)) rgba(0,82,143,.10)!important;}
.aero-avatar-v20.accessory-bubblecap .bubble-accessory-bubblecap::after{content:"";position:absolute;left:calc(-7px * var(--a20-size));bottom:calc(-5px * var(--a20-size));width:calc(35px * var(--a20-size));height:calc(10px * var(--a20-size));border-radius:999px;background:linear-gradient(180deg,var(--avatar-top,#9bf7ff),var(--avatar-base,#2fd6ff));border:calc(2px * var(--a20-size)) solid color-mix(in srgb,var(--avatar-rim,#116fe8),#0047ff 18%);}
.aero-avatar-v20.accessory-leaf .bubble-accessory-leaf{display:block!important;left:calc(25px * var(--a20-size))!important;top:calc(-13px * var(--a20-size))!important;width:calc(50px * var(--a20-size))!important;height:calc(29px * var(--a20-size))!important;border-radius:9% 88% 10% 88%!important;background:linear-gradient(135deg,#e5ff67,#65db37 54%,#238f35)!important;transform:rotate(-12deg)!important;border:calc(1px * var(--a20-size)) solid rgba(24,118,39,.75)!important;}
.aero-avatar-v20.accessory-leaf .bubble-accessory-leaf::after{content:"";position:absolute;left:10%;right:8%;top:48%;height:2px;background:rgba(255,255,255,.55);transform:rotate(-8deg);}
.aero-avatar-v20.accessory-headphones .bubble-accessory-headphones{display:block!important;left:calc(8px * var(--a20-size))!important;top:calc(-1px * var(--a20-size))!important;width:calc(76px * var(--a20-size))!important;height:calc(52px * var(--a20-size))!important;border:calc(5px * var(--a20-size)) solid #062a67!important;border-bottom:0!important;border-radius:999px 999px 0 0!important;background:transparent!important;box-shadow:inset 0 calc(2px * var(--a20-size)) rgba(255,255,255,.35)!important;}
.aero-avatar-v20.accessory-headphones .bubble-accessory-headphones::before,.aero-avatar-v20.accessory-headphones .bubble-accessory-headphones::after{content:"";display:block!important;position:absolute;top:calc(25px * var(--a20-size))!important;width:calc(17px * var(--a20-size))!important;height:calc(29px * var(--a20-size))!important;border-radius:999px!important;background:radial-gradient(circle at 40% 30%,#fff 0 10%,#62f0ff 36%,#196be5 70%,#08295d 100%)!important;border:calc(2px * var(--a20-size)) solid #05275d!important;}
.aero-avatar-v20.accessory-headphones .bubble-accessory-headphones::before{left:calc(-7px * var(--a20-size))!important;}
.aero-avatar-v20.accessory-headphones .bubble-accessory-headphones::after{right:calc(-7px * var(--a20-size))!important;}
.aero-avatar-v20.accessory-visor .bubble-accessory-visor{display:block!important;left:calc(16px * var(--a20-size))!important;top:calc(13px * var(--a20-size))!important;width:calc(60px * var(--a20-size))!important;height:calc(20px * var(--a20-size))!important;border-radius:999px 999px 50% 50%!important;background:linear-gradient(180deg,rgba(255,255,255,.66),rgba(62,194,255,.38),rgba(22,108,219,.62))!important;border:calc(2px * var(--a20-size)) solid color-mix(in srgb,var(--avatar-rim,#116fe8),#0047ff 16%)!important;}
.aero-avatar-v20.accessory-halo .bubble-accessory-halo{display:block!important;left:calc(20px * var(--a20-size))!important;top:calc(-18px * var(--a20-size))!important;width:calc(52px * var(--a20-size))!important;height:calc(14px * var(--a20-size))!important;border-radius:50%!important;border:calc(3px * var(--a20-size)) solid #6af5ff!important;box-shadow:0 0 calc(12px * var(--a20-size)) #8affff,inset 0 0 calc(8px * var(--a20-size)) #fff!important;}
.aero-avatar-v20.accessory-shell .bubble-accessory-shell{display:block!important;left:calc(21px * var(--a20-size))!important;top:calc(-7px * var(--a20-size))!important;width:calc(50px * var(--a20-size))!important;height:calc(31px * var(--a20-size))!important;border-radius:50% 50% 38% 38%!important;background:repeating-radial-gradient(ellipse at 50% 100%,rgba(255,255,255,.7) 0 3px,rgba(92,208,255,.54) 4px 8px),linear-gradient(180deg,#fff,#5ed9ff)!important;border:calc(2px * var(--a20-size)) solid #1979d6!important;}
.aero-avatar-v20.accessory-flower .bubble-accessory-flower{display:block!important;left:calc(55px * var(--a20-size))!important;top:calc(4px * var(--a20-size))!important;width:calc(28px * var(--a20-size))!important;height:calc(28px * var(--a20-size))!important;border-radius:50%!important;background:radial-gradient(circle,#48d8ff 0 16%,#fff 17% 31%,transparent 32%),radial-gradient(circle at 50% 0,#fff 0 28%,transparent 29%),radial-gradient(circle at 100% 50%,#fff 0 28%,transparent 29%),radial-gradient(circle at 50% 100%,#fff 0 28%,transparent 29%),radial-gradient(circle at 0 50%,#fff 0 28%,transparent 29%)!important;filter:drop-shadow(0 4px 6px rgba(0,92,150,.18));}
.aero-avatar-v20.accessory-star .bubble-accessory-star{display:block!important;left:calc(54px * var(--a20-size))!important;top:calc(3px * var(--a20-size))!important;width:calc(30px * var(--a20-size))!important;height:calc(30px * var(--a20-size))!important;background:#75f3ff!important;clip-path:polygon(50% 0,61% 35%,98% 35%,68% 56%,79% 91%,50% 70%,21% 91%,32% 56%,2% 35%,39% 35%)!important;filter:drop-shadow(0 3px 4px rgba(0,86,150,.18));}
.aero-avatar-v20.accessory-glasses .bubble-accessory-glasses{display:block!important;left:calc(24px * var(--a20-size))!important;top:calc(27px * var(--a20-size))!important;width:calc(44px * var(--a20-size))!important;height:calc(15px * var(--a20-size))!important;background:linear-gradient(90deg,#062a67 0 8%,transparent 8% 43%,#062a67 43% 57%,transparent 57% 92%,#062a67 92% 100%)!important;}
.aero-avatar-v20.accessory-glasses .bubble-accessory-glasses::before,.aero-avatar-v20.accessory-glasses .bubble-accessory-glasses::after{content:"";position:absolute;top:0;width:calc(17px * var(--a20-size));height:calc(17px * var(--a20-size));border-radius:50%;border:calc(3px * var(--a20-size)) solid #062a67;background:rgba(160,245,255,.25);}
.aero-avatar-v20.accessory-glasses .bubble-accessory-glasses::before{left:0}.aero-avatar-v20.accessory-glasses .bubble-accessory-glasses::after{right:0}
.aero-avatar-v20.accessory-crown .bubble-accessory-crown{display:block!important;left:calc(24px * var(--a20-size))!important;top:calc(-12px * var(--a20-size))!important;width:calc(44px * var(--a20-size))!important;height:calc(28px * var(--a20-size))!important;background:linear-gradient(180deg,#fff,#69eaff 42%,#1c6fe6)!important;clip-path:polygon(0 100%,0 38%,18% 70%,32% 12%,50% 62%,68% 12%,82% 70%,100% 38%,100% 100%)!important;border-radius:0 0 8px 8px;filter:drop-shadow(0 5px 8px rgba(0,88,150,.18));}
.aero-avatar-v20.accessory-ribbon .bubble-accessory-ribbon{display:block!important;left:calc(30px * var(--a20-size))!important;top:calc(-10px * var(--a20-size))!important;width:calc(34px * var(--a20-size))!important;height:calc(25px * var(--a20-size))!important;background:radial-gradient(circle,#fff 0 12%,#62e7ff 13% 28%,transparent 29%),linear-gradient(135deg,transparent 0 20%,#3ee1ff 21% 45%,transparent 46%),linear-gradient(225deg,transparent 0 20%,#3ee1ff 21% 45%,transparent 46%)!important;filter:drop-shadow(0 4px 7px rgba(0,88,150,.18));}

/* Hangout/Cafe final scale and placement */
body.asset-integrated-v17 .beach-player,
body.asset-integrated-v17 .beach-npc,
body.asset-integrated-v17 .beach-friend-v12{
  width:78px!important;
  height:112px!important;
  overflow:visible!important;
}
body.asset-integrated-v17 .beach-player .aero-avatar-v20.avatar-preview.sm,
body.asset-integrated-v17 .beach-npc .aero-avatar-v20.avatar-preview.sm,
body.asset-integrated-v17 .beach-friend-v12 .aero-avatar-v20.avatar-preview.sm{
  width:72px!important;
  height:94px!important;
  --a20-size:.78;
}
body.asset-integrated-v17 .beach-player-name,
body.asset-integrated-v17 .beach-npc-name{
  bottom:calc(100% + 3px)!important;
  font-size:10.5px!important;
  padding:3px 7px!important;
}
.cafe-player .aero-avatar-v20.avatar-preview.sm,
.cafe-friend .aero-avatar-v20.avatar-preview.sm{
  width:74px!important;
  height:96px!important;
  --a20-size:.80;
}
.cafe-player,.cafe-friend{
  padding:4px 7px 3px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.52),rgba(82,218,255,.18));
  border:1px solid rgba(255,255,255,.55);
}
.cafe-player{left:20%!important;top:44%!important;}
.cafe-friend{right:20%!important;top:44%!important;}

/* Clean, drawn prop layer instead of pasted cutout sheet props */
body.asset-integrated-v17 .hangout-props-v17 .asset-prop-v17{display:none!important;}
.hangout-clean-props-v20{position:absolute;inset:0;z-index:5;pointer-events:none;}
.v20-palm{position:absolute;width:76px;height:112px;filter:drop-shadow(0 12px 12px rgba(0,82,130,.18));}
.v20-palm::before{content:"";position:absolute;left:32px;top:43px;width:18px;height:64px;border-radius:12px;background:repeating-linear-gradient(180deg,#b87b34 0 10px,#d49a4d 10px 20px);box-shadow:inset 5px 0 rgba(255,255,255,.22);}
.v20-palm::after{content:"";position:absolute;left:1px;top:0;width:74px;height:60px;background:radial-gradient(ellipse at 50% 100%,#4cc23a 0 26%,transparent 28%),radial-gradient(ellipse at 15% 72%,#64d943 0 30%,transparent 32%),radial-gradient(ellipse at 85% 72%,#43b534 0 30%,transparent 32%),radial-gradient(ellipse at 35% 34%,#b8ff6d 0 20%,transparent 22%),radial-gradient(ellipse at 65% 34%,#76df48 0 22%,transparent 24%);}
.v20-palm.left{left:6%;top:11%;}.v20-palm.mid{left:23%;top:14%;transform:scale(.88)}.v20-palm.right{right:4%;top:11%;transform:scale(.9)}
.v20-bench{position:absolute;left:7%;bottom:20%;width:130px;height:50px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(77,218,255,.42));border:1px solid rgba(255,255,255,.84);box-shadow:inset 0 1px rgba(255,255,255,.95),0 14px 22px rgba(0,86,140,.14);transform:skewX(-8deg);}
.v20-surf{position:absolute;left:53%;top:17%;width:50px;height:100px;border-radius:50% 50% 42% 42%;background:linear-gradient(180deg,#fff,#8ff3ff 45%,#a8ff67 46%);border:2px solid rgba(255,255,255,.85);box-shadow:0 12px 20px rgba(0,82,140,.13);}
.v20-surf::after{content:"AERO";position:absolute;left:0;right:0;top:24px;text-align:center;font-weight:1000;font-size:12px;color:#0874bd;}
.v20-portal{position:absolute;right:24%;bottom:18%;width:108px;height:114px;border-radius:54px 54px 18px 18px;border:16px solid #25c6ff;border-bottom-width:12px;background:radial-gradient(circle at 50% 100%,rgba(255,255,255,.86),rgba(85,220,255,.26));box-shadow:inset 0 1px rgba(255,255,255,.9),0 16px 26px rgba(0,91,150,.14);}
.v20-quest{position:absolute;right:5%;bottom:22%;width:106px;height:94px;border-radius:18px;background:linear-gradient(180deg,#3ed2ff,#1375d6);border:2px solid rgba(255,255,255,.82);box-shadow:0 16px 25px rgba(0,91,150,.15);}
.v20-quest::before{content:"QUESTS";position:absolute;left:0;right:0;top:8px;text-align:center;color:#fff;font-weight:1000;font-size:12px}.v20-quest::after{content:"";position:absolute;left:20px;right:20px;top:34px;height:42px;border-radius:4px;background:repeating-linear-gradient(180deg,#fff 0 8px,#e7f5ff 8px 15px);}
.v20-fountain{position:absolute;right:2%;bottom:2%;width:82px;height:82px;border-radius:50%;background:radial-gradient(circle,#fff 0 11%,#7defff 12% 44%,#1f85e9 45%);box-shadow:0 15px 25px rgba(0,91,150,.14);opacity:.88;}
.v20-fountain::before{content:"";position:absolute;left:31px;bottom:46px;width:20px;height:45px;border-radius:50%;background:radial-gradient(circle,#fff,#61e6ff 54%,transparent 57%);box-shadow:-17px 8px 0 -4px rgba(100,230,255,.8),17px 9px 0 -5px rgba(100,230,255,.8);}
.v20-shell{position:absolute;left:58%;bottom:21%;font-size:32px;filter:drop-shadow(0 8px 8px rgba(0,80,130,.13));}

/* Calendar v20 */
.calendar-v20{display:grid;gap:14px;padding:4px;}
.calendar-hero-v20{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:18px;border-radius:26px;background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(107,221,255,.28));border:1px solid rgba(255,255,255,.78);box-shadow:inset 0 1px rgba(255,255,255,.95),0 18px 34px rgba(0,91,150,.11);}
.calendar-hero-v20 h1{margin:0;color:#075eae;font-size:42px;letter-spacing:-.04em}.calendar-hero-v20 p{margin:4px 0 0;color:#2c7795;font-weight:800;}
.calendar-date-v20{min-width:112px;text-align:center;border-radius:20px;background:linear-gradient(180deg,#fff,#77e5ff);padding:10px 12px;border:1px solid rgba(255,255,255,.9);box-shadow:0 12px 22px rgba(0,91,150,.13)}.calendar-date-v20 b{display:block;font-size:32px;color:#075eae}.calendar-date-v20 span{font-weight:1000;color:#0a79bd;text-transform:uppercase;letter-spacing:.08em}
.calendar-form-v20{display:grid;grid-template-columns:1fr 160px 130px;gap:10px;padding:12px;border-radius:22px;background:rgba(255,255,255,.46);border:1px solid rgba(255,255,255,.72);}
.calendar-grid-v20{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;}
.calendar-day-v20{min-height:84px;padding:9px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(95,216,255,.18));border:1px solid rgba(255,255,255,.70);box-shadow:inset 0 1px rgba(255,255,255,.9);font-weight:900;color:#075eae;}
.calendar-day-v20.today{outline:2px solid rgba(126,255,126,.9);box-shadow:0 0 0 4px rgba(126,255,126,.18),inset 0 1px rgba(255,255,255,.9);}
.calendar-day-v20.has-event{background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(119,255,179,.22));}
.calendar-dot-v20{display:block;margin-top:7px;padding:4px 6px;border-radius:999px;background:rgba(7,117,185,.12);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.event-list-v20{display:grid;gap:8px;margin:0;padding:0;list-style:none}.event-list-v20 li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 12px;border-radius:18px;background:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.72);font-weight:800;color:#07577d}.event-list-v20 small{display:block;color:#2a7d9d;font-weight:900}

/* Aeroify v20: closer to the provided blue-glass music app, rebranded */
.aeroify-app.aeroify-v20{
  height:100%;
  display:grid;
  grid-template-columns:286px 1fr;
  grid-template-rows:74px minmax(0,1fr) 104px;
  gap:16px;
  padding:14px;
  border-radius:26px;
  overflow:hidden;
  color:white;
  background:
    radial-gradient(circle at 86% 18%,rgba(255,255,255,.92),transparent 9%),
    radial-gradient(circle at 63% 48%,rgba(255,255,255,.22),transparent 16%),
    linear-gradient(180deg,rgba(0,134,225,.92),rgba(40,188,255,.72) 48%,rgba(34,130,215,.64)),
    linear-gradient(180deg,#78ddff,#1275d4);
}
.aeroify-v20::before{content:"";position:absolute;inset:0;background:var(--v17-bubbles),linear-gradient(180deg,transparent 0 63%,rgba(80,192,61,.55) 64% 100%);background-size:420px 300px,100% 100%;opacity:.72;pointer-events:none;mix-blend-mode:screen;}
.aeroify-v20 > *{position:relative;z-index:1;}
.aeroify-v20 .aeroify-top{grid-column:1/3;display:grid;grid-template-columns:260px 84px 1fr 120px 54px 210px;gap:13px;align-items:center;}
.aeroify-v20 .aeroify-brand{font-size:29px;color:#fff;gap:12px;}
.aeroify-v20 .aeroify-logo-orb{position:relative;background:linear-gradient(135deg,#a8ff52,#18d45e);box-shadow:0 9px 18px rgba(0,73,130,.26),inset 0 1px rgba(255,255,255,.72);}
.aeroify-v20 .aeroify-logo-orb::after{content:"";position:absolute;left:11px;right:10px;top:12px;height:18px;border-top:3px solid #065733;border-bottom:3px solid #065733;border-radius:50%;transform:rotate(12deg);}
.aeroify-v20 .aeroify-search{height:48px;background:linear-gradient(180deg,rgba(255,255,255,.56),rgba(83,194,255,.24));border-color:rgba(255,255,255,.68);color:#fff;text-shadow:0 1px 4px rgba(0,68,128,.36);box-shadow:inset 0 1px rgba(255,255,255,.72),0 10px 20px rgba(0,72,125,.16);}
.aeroify-v20 .aeroify-search::placeholder{color:rgba(255,255,255,.92)}
.aeroify-v20 .aeroify-sidebar{grid-row:2/3;padding:14px;border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.38),rgba(2,96,180,.18));border:1px solid rgba(255,255,255,.58);box-shadow:inset 0 1px rgba(255,255,255,.76);}
.aeroify-v20 .aeroify-menu button,.aeroify-v20 .aeroify-playlist{min-height:56px;color:#fff;background:linear-gradient(180deg,rgba(255,255,255,.30),rgba(7,115,202,.16));border-color:rgba(255,255,255,.42);text-shadow:0 1px 4px rgba(0,60,120,.36);}
.aeroify-v20 .aeroify-menu button.active{background:linear-gradient(180deg,rgba(255,255,255,.56),rgba(115,216,255,.26));}
.aeroify-v20 .aeroify-playlist i{background:linear-gradient(135deg,#7f7dff,#6eff74);color:white;}
.aeroify-v20 .aeroify-main{border-radius:28px;padding:20px;background:linear-gradient(180deg,rgba(255,255,255,.34),rgba(255,255,255,.10));border:1px solid rgba(255,255,255,.58);box-shadow:inset 0 1px rgba(255,255,255,.72);overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr);}
.aeroify-v20 .aeroify-hero{display:grid;grid-template-columns:250px 1fr;gap:24px;align-items:center;min-height:250px;}
.aeroify-v20 .aeroify-cover{width:230px;height:230px;border-radius:24px;background:radial-gradient(circle at 35% 22%,#fff 0 10%,#b8fff4 18%,#2ed8ff 50%,#176fe6 82%,#91ff65);box-shadow:0 18px 30px rgba(0,72,125,.23),inset 0 1px rgba(255,255,255,.82);display:grid;place-items:center;overflow:hidden;}
.aeroify-v20 .aeroify-cover b{font-size:92px;text-shadow:0 4px 14px rgba(0,74,130,.30);}
.aeroify-v20 .aeroify-meta small{font-size:20px;font-weight:900;text-shadow:0 2px 8px rgba(0,60,120,.28);}
.aeroify-v20 .aeroify-meta h1{font-size:clamp(48px,7vw,86px);line-height:.92;margin:10px 0 12px;color:white;text-shadow:0 5px 16px rgba(0,72,132,.34);}
.aeroify-v20 .aeroify-controls{display:flex;gap:14px;align-items:center;margin-top:24px;}
.aeroify-v20 .aeroify-play{width:74px;height:74px;background:radial-gradient(circle at 35% 22%,#fff 0 8%,#bfff80 15%,#47df33 55%,#188920);color:#042e16;font-size:32px;box-shadow:0 16px 28px rgba(0,74,120,.26),inset 0 1px rgba(255,255,255,.9);}
.aeroify-v20 .aeroify-round{width:56px;height:56px;border-radius:50%;font-size:25px;color:white;background:linear-gradient(180deg,rgba(255,255,255,.45),rgba(64,176,255,.28));border:1px solid rgba(255,255,255,.56);}
.aeroify-v20 .aeroify-table{margin-top:10px;border-radius:22px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);overflow:auto;min-height:0;}
.aeroify-v20 .aeroify-row{grid-template-columns:50px minmax(240px,1fr) 160px 70px;color:white;border-color:rgba(255,255,255,.20);background:transparent;text-shadow:0 1px 4px rgba(0,64,120,.24);}
.aeroify-v20 .aeroify-row.track:hover,.aeroify-v20 .aeroify-row.track.active{background:linear-gradient(180deg,rgba(255,255,255,.32),rgba(50,184,255,.18));}
.aeroify-v20 .aeroify-nowbar{grid-column:1/3;border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.34),rgba(0,104,184,.24));border:1px solid rgba(255,255,255,.58);box-shadow:inset 0 1px rgba(255,255,255,.78);color:white;}
.aeroify-v20 .aeroify-mini-cover{background:radial-gradient(circle,#fff 0 10%,#67eaff 30%,#176fe6 80%,#9dff69);}
.aeroify-v20 .aeroify-progress{background:rgba(255,255,255,.42);}.aeroify-v20 .aeroify-progress span{background:linear-gradient(90deg,#6dff70,#eaffff);}
.aeroify-v20 .aeroify-profile{color:white;background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(0,111,202,.22));border-color:rgba(255,255,255,.56);text-shadow:0 1px 4px rgba(0,66,120,.36);}
.aeroify-v20 .aeroify-profile .aero-avatar-v20{width:40px!important;height:42px!important;--a20-size:.34;filter:none!important;}
@media(max-width:900px){.aeroify-app.aeroify-v20{grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr) auto}.aeroify-v20 .aeroify-top,.aeroify-v20 .aeroify-nowbar{grid-column:1}.aeroify-v20 .aeroify-top{grid-template-columns:1fr}.aeroify-v20 .aeroify-hero{grid-template-columns:1fr}.aeroify-v20 .aeroify-cover{width:160px;height:160px}}

/* ===== v21 launch polish: cleaner transparent icons + Aeroify final pass ===== */
body.v21-launch-polished .desktop-icons.asset-icons-v17{left:18px!important;top:96px!important;}
body.v21-launch-polished .desktop-icon.draggable-icon{width:104px!important;min-height:88px!important;padding:7px 4px!important;}
body.v21-launch-polished .desktop-icon .icon-label{font-size:12px!important;line-height:1.12!important;text-shadow:0 2px 7px rgba(0,44,82,.82),0 1px 0 rgba(0,0,0,.25)!important;}
body.v21-launch-polished .icon-bubble.asset-icon-v17,
body.v21-launch-polished .start-app-icon-v17,
body.v21-launch-polished .window-icon.asset-window-icon-v17,
body.v21-launch-polished .task-icon-v17{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  display:inline-grid!important;
  place-items:center!important;
}
body.v21-launch-polished .icon-bubble.asset-icon-v17{width:64px!important;height:64px!important;margin:0 auto 4px!important;padding:0!important;border-radius:0!important;}
body.v21-launch-polished .icon-bubble.asset-icon-v17 img{width:64px!important;height:64px!important;object-fit:contain!important;object-position:center!important;filter:drop-shadow(0 9px 10px rgba(0,72,135,.24)) drop-shadow(0 0 6px rgba(160,244,255,.35))!important;}
body.v21-launch-polished .desktop-icon:hover .icon-bubble.asset-icon-v17{transform:translateY(-4px) scale(1.06)!important;}
body.v21-launch-polished .desktop-icon:hover .icon-bubble.asset-icon-v17 img{filter:drop-shadow(0 12px 14px rgba(0,72,135,.28)) drop-shadow(0 0 12px rgba(170,255,246,.7))!important;}
body.v21-launch-polished .start-app-icon-v17{width:42px!important;height:42px!important;padding:0!important;}
body.v21-launch-polished .start-app-icon-v17 img{width:42px!important;height:42px!important;object-fit:contain!important;filter:drop-shadow(0 6px 6px rgba(0,72,135,.20));}
body.v21-launch-polished .window-icon.asset-window-icon-v17{width:28px!important;height:28px!important;padding:0!important;}
body.v21-launch-polished .window-icon.asset-window-icon-v17 img{width:28px!important;height:28px!important;object-fit:contain!important;filter:drop-shadow(0 4px 4px rgba(0,72,135,.20));}
body.v21-launch-polished .task-icon-v17{width:24px!important;height:24px!important;margin-right:5px!important;padding:0!important;}
body.v21-launch-polished .task-icon-v17 img{width:24px!important;height:24px!important;object-fit:contain!important;}
body.v21-launch-polished .desktop-icon:hover,
body.v21-launch-polished .desktop-icon:focus-visible{background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(89,218,255,.13))!important;border-color:rgba(255,255,255,.42)!important;}

/* Avatar scale polish for world rooms */
body.v21-launch-polished .beach-player,
body.v21-launch-polished .beach-npc,
body.v21-launch-polished .beach-friend-v12{width:74px!important;height:104px!important;overflow:visible!important;}
body.v21-launch-polished .beach-player .aero-avatar-v20.avatar-preview.sm,
body.v21-launch-polished .beach-npc .aero-avatar-v20.avatar-preview.sm,
body.v21-launch-polished .beach-friend-v12 .aero-avatar-v20.avatar-preview.sm{--a20-size:.64!important;width:74px!important;height:98px!important;filter:drop-shadow(0 10px 12px rgba(0,80,130,.18))!important;}
body.v21-launch-polished .cafe-player .aero-avatar-v20.avatar-preview.sm,
body.v21-launch-polished .cafe-friend .aero-avatar-v20.avatar-preview.sm{--a20-size:.66!important;width:74px!important;height:98px!important;}
body.v21-launch-polished .beach-player::after,
body.v21-launch-polished .beach-npc::after,
body.v21-launch-polished .beach-friend-v12::after{width:48px!important;height:12px!important;opacity:.65!important;}
body.v21-launch-polished .aero-avatar-v20 .bubble-head{top:calc(1px * var(--a20-size))!important;}
body.v21-launch-polished .aero-avatar-v20 .bubble-body{top:calc(52px * var(--a20-size))!important;height:calc(48px * var(--a20-size))!important;}
body.v21-launch-polished .aero-avatar-v20 .bubble-arm{top:calc(57px * var(--a20-size))!important;height:calc(39px * var(--a20-size))!important;}
body.v21-launch-polished .aero-avatar-v20 .bubble-leg{top:calc(94px * var(--a20-size))!important;height:calc(19px * var(--a20-size))!important;}

/* Aeroify v21 - blue-glass Vista music app, rebranded */
.aeroify-app.aeroify-v21{
  position:relative;
  height:100%;
  min-height:650px;
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  grid-template-rows:72px minmax(0,1fr) 96px;
  gap:14px;
  padding:14px;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 84% 16%,rgba(255,255,255,.98) 0 3%,rgba(255,255,255,.44) 5%,transparent 17%),
    radial-gradient(circle at 50% 6%,rgba(255,255,255,.74),transparent 18%),
    linear-gradient(180deg,#138be9 0%,#3fbfff 46%,#64c957 100%);
}
.aeroify-app.aeroify-v21::before{content:"";position:absolute;inset:0;background:var(--v17-bubbles),linear-gradient(180deg,rgba(255,255,255,.10),transparent 55%,rgba(21,105,34,.25));background-size:480px 340px,100% 100%;opacity:.78;mix-blend-mode:screen;pointer-events:none;}
.aeroify-app.aeroify-v21::after{content:"";position:absolute;left:-4%;right:-4%;bottom:90px;height:260px;background:repeating-linear-gradient(80deg,transparent 0 24px,rgba(42,130,28,.44) 25px 30px),linear-gradient(180deg,transparent,rgba(20,126,36,.56));clip-path:polygon(0 35%,7% 14%,12% 58%,18% 22%,24% 68%,31% 19%,37% 69%,43% 28%,51% 70%,58% 18%,65% 72%,73% 25%,79% 70%,88% 20%,94% 62%,100% 31%,100% 100%,0 100%);opacity:.72;pointer-events:none;}
.aeroify-v21 > *{position:relative;z-index:1;}
.aeroify-v21 .aeroify-top{grid-column:1/3;display:grid;grid-template-columns:250px 86px minmax(240px,1fr) 118px 48px 210px;gap:14px;align-items:center;}
.aeroify-v21 .aeroify-brand{display:flex;align-items:center;gap:12px;font-size:29px;font-weight:1000;letter-spacing:-.03em;color:#fff;text-shadow:0 3px 12px rgba(0,51,99,.38);}
.aeroify-v21 .aeroify-logo-orb{width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 32% 22%,#fff 0 10%,#d2ff9b 14%,#42e347 54%,#128a33 100%);box-shadow:0 10px 18px rgba(0,60,90,.22),inset 0 1px rgba(255,255,255,.9);position:relative;display:inline-block;}
.aeroify-v21 .aeroify-logo-orb::before,.aeroify-v21 .aeroify-logo-orb::after{content:"";position:absolute;left:11px;right:8px;height:4px;border-radius:999px;background:#063d1d;transform:rotate(12deg);}.aeroify-v21 .aeroify-logo-orb::before{top:13px}.aeroify-v21 .aeroify-logo-orb::after{top:22px;left:14px;right:12px}
.aeroify-v21 .aeroify-nav{display:flex;gap:6px}.aeroify-v21 .aeroify-nav button,.aeroify-v21 .aeroify-bell,.aeroify-v21 .aeroify-upgrade{height:48px;border:1px solid rgba(255,255,255,.50);border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.45),rgba(19,119,207,.20));color:#fff;font-weight:1000;box-shadow:inset 0 1px rgba(255,255,255,.76),0 8px 16px rgba(0,64,120,.12);text-shadow:0 1px 4px rgba(0,55,100,.38);}
.aeroify-v21 .aeroify-nav button,.aeroify-v21 .aeroify-bell{width:48px;font-size:24px}.aeroify-v21 .aeroify-upgrade{padding:0 18px}
.aeroify-v21 .aeroify-search{height:50px;border-radius:999px;border:1px solid rgba(255,255,255,.58);padding:0 22px 0 44px;background:linear-gradient(180deg,rgba(255,255,255,.48),rgba(44,143,229,.25));color:#fff;font-weight:900;box-shadow:inset 0 1px rgba(255,255,255,.72),0 10px 22px rgba(0,63,115,.13);text-shadow:0 1px 4px rgba(0,64,120,.32);}
.aeroify-v21 .aeroify-search::placeholder{color:rgba(255,255,255,.9)}
.aeroify-v21 .aeroify-profile{height:50px;border-radius:999px;border:1px solid rgba(255,255,255,.48);background:linear-gradient(180deg,rgba(255,255,255,.46),rgba(30,127,215,.18));display:flex;align-items:center;gap:9px;padding:4px 10px 4px 5px;color:#fff;font-weight:1000;text-shadow:0 1px 4px rgba(0,55,100,.38);min-width:0;}
.aeroify-v21 .aeroify-profile .aero-avatar-v20{width:42px!important;height:45px!important;--a20-size:.35!important;filter:none!important;transform:none!important;}
.aeroify-v21 .aeroify-sidebar{grid-row:2/3;display:flex;flex-direction:column;gap:12px;min-height:0;padding:14px;border:1px solid rgba(255,255,255,.58);border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.38),rgba(0,99,186,.16));box-shadow:inset 0 1px rgba(255,255,255,.74),0 16px 36px rgba(0,70,120,.12);backdrop-filter:blur(15px) saturate(1.35);}
.aeroify-v21 .aeroify-menu{display:grid;gap:9px}.aeroify-v21 .aeroify-menu button,.aeroify-v21 .aeroify-playlist{border:1px solid rgba(255,255,255,.38);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.30),rgba(15,103,190,.17));color:#fff;text-align:left;font-weight:1000;text-shadow:0 1px 5px rgba(0,58,105,.38);box-shadow:inset 0 1px rgba(255,255,255,.48);}
.aeroify-v21 .aeroify-menu button{min-height:54px;padding:0 16px;font-size:17px}.aeroify-v21 .aeroify-menu button.active{background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(104,210,255,.26));}
.aeroify-v21 .aeroify-playlists{overflow:auto;display:grid;gap:9px;padding-right:4px}.aeroify-v21 .aeroify-playlist{display:grid;grid-template-columns:52px 1fr;gap:12px;align-items:center;min-height:72px;padding:8px 10px}.aeroify-v21 .aeroify-playlist i{width:52px;height:52px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#7d83ff,#66ff75);box-shadow:inset 0 1px rgba(255,255,255,.7),0 8px 14px rgba(0,68,125,.16);font-style:normal}.aeroify-v21 .aeroify-playlist small{color:rgba(255,255,255,.82);font-weight:800}.aeroify-v21 .aeroify-playlist.active{outline:2px solid rgba(183,255,96,.72)}
.aeroify-v21 .aeroify-main{position:relative;min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;padding:18px;border:1px solid rgba(255,255,255,.58);border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.31),rgba(0,94,174,.10));box-shadow:inset 0 1px rgba(255,255,255,.72),0 16px 36px rgba(0,70,120,.13);backdrop-filter:blur(12px) saturate(1.25);overflow:hidden;}
.aeroify-v21 .aeroify-hero{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px;align-items:center;min-height:230px;}.aeroify-v21 .aeroify-cover{width:220px;height:220px;border-radius:24px;display:grid;place-items:center;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.72);box-shadow:0 18px 34px rgba(0,59,110,.22),inset 0 1px rgba(255,255,255,.9);background:radial-gradient(circle at 33% 20%,#fff 0 8%,#cffffa 15%,#2edbff 48%,#1269dd 78%,#91ff60);}.aeroify-v21 .aeroify-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.34),transparent 35%,rgba(255,255,255,.10) 70%,transparent);}.aeroify-v21 .aeroify-cover b{position:relative;z-index:1;font-size:94px;text-shadow:0 4px 13px rgba(0,62,110,.28)}
.aeroify-v21 .aeroify-cover.cover-lagoon{background:radial-gradient(circle at 35% 23%,#fff 0 8%,#a9fff3 16%,#19c6ff 46%,#2385ef 80%,#68f879)}.aeroify-v21 .aeroify-cover.cover-bubble{background:radial-gradient(circle at 25% 25%,#fff 0 9%,#dfffff 17%,#6ae8ff 43%,#5c80ff 75%,#c37dff)}.aeroify-v21 .aeroify-cover.cover-taskbar{background:linear-gradient(180deg,#fff,#79e6ff 35%,#0974d8 36% 68%,#032c80)}.aeroify-v21 .aeroify-cover.cover-drive{background:linear-gradient(145deg,#0a4da3,#36c6ff,#76ff63)}
.aeroify-v21 .aeroify-meta small{font-size:20px;font-weight:1000;text-shadow:0 3px 10px rgba(0,60,120,.28)}.aeroify-v21 .aeroify-meta h1{margin:8px 0 10px;font-size:clamp(46px,7vw,78px);line-height:.92;letter-spacing:-.055em;color:#fff;text-shadow:0 5px 16px rgba(0,62,110,.36)}.aeroify-v21 .aeroify-meta p{font-size:18px;font-weight:900;margin:0;color:rgba(255,255,255,.92);text-shadow:0 2px 7px rgba(0,62,110,.28)}.aeroify-v21 .aeroify-controls{display:flex;gap:12px;align-items:center;margin-top:22px}.aeroify-v21 .aeroify-play{width:74px;height:74px;border-radius:50%;border:1px solid rgba(255,255,255,.80);background:radial-gradient(circle at 34% 20%,#fff 0 8%,#d9ff82 15%,#4ee636 56%,#15952d);font-size:30px;color:#032d16;box-shadow:0 16px 28px rgba(0,74,120,.24),inset 0 1px rgba(255,255,255,.9)}.aeroify-v21 .aeroify-round{width:54px;height:54px;border-radius:50%;border:1px solid rgba(255,255,255,.56);background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(65,172,255,.25));color:#fff;font-size:24px;box-shadow:inset 0 1px rgba(255,255,255,.7)}
.aeroify-v21 .aeroify-table{min-height:0;overflow:auto;border-radius:18px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.10)}.aeroify-v21 .aeroify-row{display:grid;grid-template-columns:52px minmax(220px,1fr) 140px 66px;align-items:center;width:100%;min-height:52px;border:0;border-bottom:1px solid rgba(255,255,255,.16);background:transparent;color:#fff;text-align:left;text-shadow:0 1px 4px rgba(0,58,105,.25);font-weight:900}.aeroify-v21 .aeroify-row.head{min-height:40px;color:rgba(255,255,255,.75);font-size:13px;text-transform:uppercase;letter-spacing:.08em}.aeroify-v21 .aeroify-row.track:hover,.aeroify-v21 .aeroify-row.track.active{background:linear-gradient(180deg,rgba(255,255,255,.30),rgba(69,188,255,.14));}.aeroify-v21 .aeroify-row small{display:block;color:rgba(255,255,255,.78);font-weight:800}.aeroify-v21 .aeroify-bars{display:inline-grid;grid-template-columns:repeat(3,4px);gap:2px;align-items:end;height:18px}.aeroify-v21 .aeroify-bars i{display:block;width:4px;border-radius:999px;background:#aaff5d;animation:aeroifyBarsV21 .6s ease-in-out infinite alternate}.aeroify-v21 .aeroify-bars i:nth-child(2){animation-delay:.12s}.aeroify-v21 .aeroify-bars i:nth-child(3){animation-delay:.24s}@keyframes aeroifyBarsV21{from{height:5px}to{height:18px}}
.aeroify-v21 .aeroify-nowbar{grid-column:1/3;display:grid;grid-template-columns:250px minmax(300px,1fr) 300px;gap:16px;align-items:center;padding:10px 14px;border-radius:25px;border:1px solid rgba(255,255,255,.58);background:linear-gradient(180deg,rgba(255,255,255,.36),rgba(0,95,179,.24));box-shadow:inset 0 1px rgba(255,255,255,.78);color:#fff;text-shadow:0 1px 5px rgba(0,57,105,.35);backdrop-filter:blur(12px) saturate(1.25);}.aeroify-v21 .aeroify-now-left{display:flex;align-items:center;gap:12px;min-width:0}.aeroify-v21 .aeroify-mini-cover{width:58px;height:58px;border-radius:14px;background:radial-gradient(circle at 33% 20%,#fff,#65eaff 38%,#176fe6 76%,#a0ff65);box-shadow:0 8px 14px rgba(0,64,120,.18),inset 0 1px rgba(255,255,255,.85)}.aeroify-v21 .aeroify-now-left strong,.aeroify-v21 .aeroify-now-left small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aeroify-v21 .aeroify-now-left small{color:rgba(255,255,255,.78)}.aeroify-v21 .aeroify-center{display:grid;gap:7px}.aeroify-v21 .aeroify-player-buttons{display:flex;justify-content:center;align-items:center;gap:16px}.aeroify-v21 .aeroify-player-buttons button{border:0;background:transparent;color:#fff;text-shadow:0 2px 8px rgba(0,57,105,.42);font-size:26px}.aeroify-v21 .aeroify-player-buttons .big{width:58px;height:58px;border-radius:50%;background:rgba(255,255,255,.9);color:#063e66;box-shadow:0 9px 16px rgba(0,60,110,.18)}.aeroify-v21 .aeroify-progress-wrap{display:grid;grid-template-columns:42px 1fr 42px;gap:10px;align-items:center;font-size:13px;font-weight:900}.aeroify-v21 .aeroify-progress{height:8px;border-radius:999px;background:rgba(255,255,255,.45);overflow:hidden;cursor:pointer;box-shadow:inset 0 1px 4px rgba(0,52,100,.22)}.aeroify-v21 .aeroify-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#75ff6b,#eaffff);box-shadow:0 0 12px rgba(151,255,94,.7)}.aeroify-v21 .aeroify-right{display:flex;align-items:center;gap:10px}.aeroify-v21 .aeroify-visualizer{display:flex;align-items:end;gap:3px;height:34px;min-width:70px}.aeroify-v21 .aeroify-visualizer span{width:4px;height:10px;border-radius:999px;background:linear-gradient(180deg,#fff,#8cff5f);opacity:.65}.aeroify-v21.is-playing .aeroify-visualizer span{animation:aeroifyBarsV21 .55s ease-in-out infinite alternate}.aeroify-v21 .aeroify-right input{accent-color:#9dff5d;width:110px}.aeroify-v21 .aeroify-right output{font-weight:1000;min-width:38px}.aeroify-v21 .aeroify-empty-row{grid-column:1/-1;padding:18px;color:rgba(255,255,255,.82)}
@media(max-width:980px){.aeroify-app.aeroify-v21{grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr) auto}.aeroify-v21 .aeroify-top,.aeroify-v21 .aeroify-nowbar{grid-column:1}.aeroify-v21 .aeroify-top{grid-template-columns:1fr}.aeroify-v21 .aeroify-sidebar{grid-row:auto}.aeroify-v21 .aeroify-hero{grid-template-columns:1fr}.aeroify-v21 .aeroify-cover{width:160px;height:160px}.aeroify-v21 .aeroify-nowbar{grid-template-columns:1fr}.aeroify-v21 .aeroify-row{grid-template-columns:42px minmax(160px,1fr) 90px 54px}}
