@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,600;12..96,800&family=JetBrains+Mono:wght@500;700;800&family=Hanken+Grotesk:wght@400;500;600;700&display=swap');:root{color-scheme:dark;--bg:#08080f;--bg2:#0f0d1b;--panel:#13111f;--panel2:#1a1729;--line:#2b2845;--ink:#eaf2ff;--muted:#9aa3c0;--accent:#5ad9ff;--accent2:#19e3c2;--cyan:#5ad9ff;--lime:#3ce88f;--orange:#ff8a1f;--yellow:#ffd24d;--acid:#3ce88f;--hot:#ff5d72;--rainbow:linear-gradient(90deg,#19e3c2,#5ad9ff,#9b6cff,#ff5cc8,#19e3c2);--rad:6px}*{box-sizing:border-box;margin:0;padding:0}img{max-width:100%}.cover{overflow:hidden}html{scroll-behavior:smooth;overscroll-behavior-y:none;background:var(--bg)}body{overscroll-behavior-y:none}body{background:var(--bg);color:var(--ink);font-family:'Hanken Grotesk',sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4{font-family:'Bricolage Grotesque',sans-serif;letter-spacing:-.02em}.mono{font-family:'JetBrains Mono',monospace}::selection{background:var(--accent);color:#fff}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit}@media(max-width:760px){input,select,textarea{font-size:16px}}@keyframes hue{to{background-position:200% center}}.grad{background:var(--rainbow);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:hue 6s linear infinite}body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9998;opacity:.4;background:repeating-linear-gradient(0deg,rgba(255,255,255,.02) 0 1px,transparent 1px 3px)}nav{position:relative;z-index:60;display:flex;align-items:center;justify-content:space-between;padding:14px 22px;background:rgba(8,7,15,.97);border-bottom:1px solid var(--line);-webkit-transform:translateZ(0);transform:translateZ(0)}.brand{display:flex;align-items:center;gap:11px;font-family:'Bricolage Grotesque';font-weight:800;font-size:22px;letter-spacing:-.04em;text-transform:uppercase}.brand .mark{width:44px;height:44px;border-radius:11px;background:var(--rainbow);background-size:200% auto;display:grid;place-items:center;box-shadow:0 0 20px rgba(24,182,216,.6)}.b-stack{display:flex;flex-direction:column;justify-content:center;line-height:1.05}.brand .slogan{font-family:'JetBrains Mono',monospace;font-style:italic;font-weight:600;font-size:10.5px;letter-spacing:.02em;text-transform:none;color:var(--lime);margin-top:3px;white-space:nowrap}@media(max-width:400px){.brand .slogan{display:none}}.nav-links{display:flex;gap:2px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.nav-links button{background:none;border:none;color:var(--muted);font-weight:700;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;padding:7px 9px;border-radius:5px;transition:.2s;font-family:'JetBrains Mono',monospace}.nav-links button:hover{color:var(--ink)}
/* ===== Console personnelle : encadrée, pour la distinguer de la navigation =====
   Les autres entrées mènent à des pages publiques ; celle-ci mène à l'espace de
   l'artiste. Un cadre plutôt qu'une couleur : la différence est de nature, pas
   d'importance. L'icône est un tracé vectoriel — trois faders de table de mixage. */
.nav-links button.nav-desk{
  display:inline-flex;align-items:center;gap:8px;
  border:1px solid color-mix(in srgb,var(--accent,#5ad9ff) 34%,transparent);
  background:linear-gradient(180deg,rgba(90,217,255,.11),rgba(155,108,255,.07));
  color:var(--ink);border-radius:9px;padding:7px 13px;margin-left:4px
}
.nav-links button.nav-desk::before{
  content:"";width:14px;height:14px;flex:0 0 auto;opacity:.9;
  background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%3E%3Cpath%20d%3D%22M3.2%202v3.4M3.2%208.6V14M8%202v6.4M8%2011.6V14M12.8%202v1.4M12.8%206.6V14%22%2F%3E%3Crect%20x%3D%221.5%22%20y%3D%225.4%22%20width%3D%223.4%22%20height%3D%223.2%22%20rx%3D%221%22%20fill%3D%22%23000%22%20stroke%3D%22none%22%2F%3E%3Crect%20x%3D%226.3%22%20y%3D%228.4%22%20width%3D%223.4%22%20height%3D%223.2%22%20rx%3D%221%22%20fill%3D%22%23000%22%20stroke%3D%22none%22%2F%3E%3Crect%20x%3D%2211.1%22%20y%3D%223.4%22%20width%3D%223.4%22%20height%3D%223.2%22%20rx%3D%221%22%20fill%3D%22%23000%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%3E%3Cpath%20d%3D%22M3.2%202v3.4M3.2%208.6V14M8%202v6.4M8%2011.6V14M12.8%202v1.4M12.8%206.6V14%22%2F%3E%3Crect%20x%3D%221.5%22%20y%3D%225.4%22%20width%3D%223.4%22%20height%3D%223.2%22%20rx%3D%221%22%20fill%3D%22%23000%22%20stroke%3D%22none%22%2F%3E%3Crect%20x%3D%226.3%22%20y%3D%228.4%22%20width%3D%223.4%22%20height%3D%223.2%22%20rx%3D%221%22%20fill%3D%22%23000%22%20stroke%3D%22none%22%2F%3E%3Crect%20x%3D%2211.1%22%20y%3D%223.4%22%20width%3D%223.4%22%20height%3D%223.2%22%20rx%3D%221%22%20fill%3D%22%23000%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat
}
.nav-links button.nav-desk.active{
  border-color:var(--accent,#5ad9ff);color:var(--accent,#5ad9ff);
  background:linear-gradient(180deg,rgba(90,217,255,.2),rgba(155,108,255,.12))
}
/* Le trait de survol commun ferait doublon avec le cadre */
.nav-links button.nav-desk::after{display:none}
/* Chaque console garde son icône propre : faders pour l'artiste, bouclier
   pour l'administration. Le cadre dit « ton espace », l'icône dit lequel. */
.nav-links button.nav-desk[data-nav="admin"]::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M8%201.4%202.6%203.7v4.1c0%203.2%202.2%205.6%205.4%206.8%203.2-1.2%205.4-3.6%205.4-6.8V3.7Z%22%2F%3E%3Cpath%20d%3D%22m8%205.1%201%202.05%202.25.3-1.65%201.58.42%202.24L8%2010.2l-2.02%201.07.42-2.24L4.75%207.45l2.25-.3Z%22%20fill%3D%22%23000%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M8%201.4%202.6%203.7v4.1c0%203.2%202.2%205.6%205.4%206.8%203.2-1.2%205.4-3.6%205.4-6.8V3.7Z%22%2F%3E%3Cpath%20d%3D%22m8%205.1%201%202.05%202.25.3-1.65%201.58.42%202.24L8%2010.2l-2.02%201.07.42-2.24L4.75%207.45l2.25-.3Z%22%20fill%3D%22%23000%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E")
}
.nav-links button.nav-desk[data-nav="admin"]{
  border-color:rgba(155,108,255,.42);
  background:linear-gradient(180deg,rgba(155,108,255,.12),rgba(90,217,255,.06))
}
.nav-links button.nav-desk[data-nav="admin"].active{
  border-color:#9b6cff;color:#c3a6ff;
  background:linear-gradient(180deg,rgba(155,108,255,.22),rgba(90,217,255,.1))
}
@media (min-width:1024px) and (hover:hover) and (pointer:fine){
  .nav-links button.nav-desk{transition:border-color .18s,background .18s,box-shadow .22s,transform .18s}
  .nav-links button.nav-desk:hover,
  .nav-links button.nav-desk:focus-visible{
    border-color:var(--accent,#5ad9ff);
    box-shadow:0 0 0 1px rgba(90,217,255,.25),0 4px 16px rgba(90,217,255,.18);
    transform:translateY(-1px);letter-spacing:.06em
  }
  .nav-links button.nav-desk[data-nav="admin"]:hover,
  .nav-links button.nav-desk[data-nav="admin"]:focus-visible{
    border-color:#9b6cff;
    box-shadow:0 0 0 1px rgba(155,108,255,.3),0 4px 18px rgba(155,108,255,.24)
  }
  /* Le bouclier pivote légèrement, comme un sceau qu'on présente */
  .nav-links button.nav-desk[data-nav="admin"]:hover::before{transform:rotate(-8deg) scale(1.12)}
  .nav-links button.nav-desk::before{transition:transform .26s cubic-bezier(.34,1.4,.64,1)}
  /* Les faders bougent : le geste dit ce que fait la destination */
  .nav-links button.nav-desk:hover::before{transform:translateY(-1px) scale(1.1)}
}
html.anim-off .nav-links button.nav-desk,
html.anim-off .nav-links button.nav-desk::before{transition:none!important;transform:none!important}
@media (prefers-reduced-motion:reduce){
  .nav-links button.nav-desk,
  .nav-links button.nav-desk::before{transition:none!important;transform:none!important}
}

/* ===== Menu grand écran : une icône par destination, animation au survol =====
   Glyphes géométriques plutôt qu'émojis : ils héritent de la couleur du texte,
   s'alignent sur la casse monospace du menu et animent avec le bouton. */
.nav-links button[data-nav]{display:inline-flex;align-items:center;gap:7px}
  .nav-links button[data-nav]::before{
    content:attr(data-ic);font-size:13px;line-height:1;opacity:.62;
    transition:transform .22s cubic-bezier(.34,1.4,.64,1),opacity .18s
  }
  .nav-links button[data-nav="home"]::before{content:"\2302"}         /* maison */
  .nav-links button[data-nav="catalog"]::before{content:"\25A4"}      /* rayonnage */
  .nav-links button[data-nav="listen"]::before{content:"\25B6"}       /* lecture */
  .nav-links button[data-nav="artists"]::before{content:"\2605"}      /* étoile */
  .nav-links button[data-nav="collectives"]::before{content:"\2756"}  /* losange ajouré */
  .nav-links button[data-nav="events"]::before{content:"\25A3"}       /* billet */
  .nav-links button[data-nav="shop"]::before{content:"\25A7"}         /* étal */
  .nav-links button[data-nav="contact"]::before{content:"\270E"}      /* écrire */
  .nav-links button[data-nav="msg"]::before{content:"\2709"}          /* enveloppe */
  .nav-links button[data-nav="library"]::before{content:"\25A5"}      /* bibliothèque */
  .nav-links button[data-nav="artist"]::before{content:"\25C9"}       /* tableau de bord */
  .nav-links button[data-nav="admin"]::before{content:"\2699"}        /* réglages */
  .nav-links button[data-nav="mycoll"]::before{content:"\25C8"}       /* page collectif */
  .nav-links button[data-nav="myevents"]::before{content:"\25A3"}

/* Barre horizontale intermédiaire : les icônes y sont conservées, on récupère
   la place sur les marges internes plutôt qu'en les supprimant. */
@media (min-width:761px) and (max-width:1439px){
  .nav-links{gap:0}
  .nav-links button{padding:7px 7px;font-size:11px;letter-spacing:.045em}
  .nav-links button[data-nav]{gap:5px}
  .nav-links button[data-nav]::before{font-size:12px}
  .nav-links button::after{left:7px;right:7px}
  .nav-links button.nav-desk{padding:6px 10px;margin-left:3px}
}
@media (min-width:761px) and (max-width:1279px){
  .nav-links button{padding:7px 5px;font-size:10.5px;letter-spacing:.028em}
  .nav-links button[data-nav]{gap:4px}
  .nav-links button[data-nav]::before{font-size:11.5px}
  .nav-links button::after{left:5px;right:5px}
  .nav-links button.nav-desk{padding:6px 9px;margin-left:2px}
}

/* Menu déplié : la liste gagne à être alignée à gauche, les icônes formant
   une colonne que l'œil suit d'une entrée à l'autre. */
@media (max-width:760px){
  .nav-menu.open .nav-links{justify-content:flex-start}
  .nav-menu.open .nav-links button[data-nav]{gap:9px;padding:9px 10px}
  .nav-menu.open .nav-links button[data-nav]::before{
    width:15px;text-align:center;opacity:.75;font-size:13.5px
  }
  .nav-menu.open .nav-links button.active::before{opacity:1}
  /* Les deux consoles prennent la largeur : leurs libellés sont longs et
     passeraient sur deux lignes dans une demi-colonne, déséquilibrant la grille. */
  .nav-menu.open .nav-links button.nav-desk{
    flex:1 1 100%;justify-content:flex-start;margin-left:0;padding:10px 12px
  }
}
/* Survol : réservé aux écrans larges avec un vrai pointeur. Sur tactile,
   l'état de survol reste collé après le tap — on ne l'active donc pas. */
@media (min-width:1024px) and (hover:hover) and (pointer:fine){
  .nav-links button{position:relative;overflow:visible}
  /* Trait qui balaie depuis la gauche : écho au ticker et au lecteur */
  .nav-links button::after{
    content:"";position:absolute;left:9px;right:9px;bottom:3px;height:2px;border-radius:2px;
    background:linear-gradient(90deg,var(--accent2,#5ad9ff),var(--accent,#9b6cff));
    transform:scaleX(0);transform-origin:left;transition:transform .26s cubic-bezier(.2,.8,.3,1)
  }
  .nav-links button:hover::after,
  .nav-links button:focus-visible::after{transform:scaleX(1)}
  .nav-links button.active::after{transform:scaleX(1);opacity:.55}
  .nav-links button:hover{color:var(--ink);letter-spacing:.085em}
  .nav-links button{transition:color .18s,letter-spacing .22s}
  .nav-links button[data-nav]:hover::before{opacity:1;transform:translateY(-1px) scale(1.16)}
  .nav-links button[data-nav="listen"]:hover::before{transform:translateX(2px) scale(1.16)}
  .nav-links button[data-nav="artists"]:hover::before{transform:rotate(72deg) scale(1.16)}
  .nav-links button[data-nav="admin"]:hover::before{transform:rotate(60deg) scale(1.12)}
  .nav-links button:active{transform:translateY(1px)}
}
/* Réglage « animations désactivées » du site et préférence système */
html.anim-off .nav-links button,
html.anim-off .nav-links button::before,
html.anim-off .nav-links button::after{transition:none!important}
html.anim-off .nav-links button:hover{letter-spacing:.06em}
html.anim-off .nav-links button[data-nav]:hover::before{transform:none}
@media (prefers-reduced-motion:reduce){
  .nav-links button,.nav-links button::before,.nav-links button::after{transition:none!important}
  .nav-links button:hover{letter-spacing:.06em}
  .nav-links button[data-nav]:hover::before{transform:none}
}
.nav-links button.active{color:var(--accent)}.who{display:flex;align-items:center;gap:9px;font-size:13px}.who .pill{padding:5px 11px;border:1px solid var(--line);border-radius:4px;font-family:'JetBrains Mono';font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.who .pill b{color:var(--accent)}.nav-burger{display:none;background:none;border:1px solid var(--line);color:var(--ink);width:44px;height:40px;border-radius:8px;font-size:20px;cursor:pointer;place-items:center;position:relative}.nav-burger.has-unread::after{content:'';position:absolute;top:-3px;right:-3px;width:11px;height:11px;border-radius:50%;background:#ff3b5c;border:2px solid var(--bg,#0a0a12);box-shadow:0 0 6px rgba(255,59,92,.8)}.nav-menu{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;flex:1;justify-content:flex-end}@media(max-width:760px){.hero{padding:0 0 42px;position:relative}}
.hero.hs-playing .hero-inner{display:none}
.hspot{position:relative;display:none;width:100%;aspect-ratio:16/9;max-height:76vh;overflow:hidden;
 background:#04070d;border-radius:16px;opacity:0;transition:opacity .55s ease}
.hspot.hs-on{display:block;opacity:1}
.hspot.hs-out{opacity:0}
@media(max-width:820px){.hspot{aspect-ratio:9/16;max-height:74vh;border-radius:12px}}
.hs-stage{position:absolute;inset:0;overflow:hidden;transform-origin:50% 50%;will-change:transform;
 --t-eb:clamp(9px,min(calc(var(--HS,300px)*.030),calc(var(--WS,500px)*.022)),15px);
 --t-brand:min(calc(var(--HS,300px)*.26),calc(var(--WS,500px)*.132));
 --t-pct:min(calc(var(--HS,300px)*.290),calc(var(--WS,500px)*.168));
 --t-h1:min(calc(var(--HS,300px)*.110),calc(var(--WS,500px)*.066));
 --t-h1b:min(calc(var(--HS,300px)*.100),calc(var(--WS,500px)*.100));
 --t-h2:min(calc(var(--HS,300px)*.095),calc(var(--WS,500px)*.078));
 --t-h3:min(calc(var(--HS,300px)*.070),calc(var(--WS,500px)*.060));
 --t-lead:clamp(11px,min(calc(var(--HS,300px)*.040),calc(var(--WS,500px)*.030)),22px);
 --t-fm:min(calc(var(--HS,300px)*.190),calc(var(--WS,500px)*.130));
 --ph-w:min(calc(var(--WS,500px)*.30),calc(var(--HS,300px)*.55));
 --ph-h:min(calc(var(--HS,300px)*.72),calc(var(--WS,500px)*.42));
 background:radial-gradient(120% 85% at 10% -12%,rgba(94,234,212,.13),transparent 55%),radial-gradient(130% 95% at 110% 10%,rgba(199,125,255,.17),transparent 55%),radial-gradient(95% 85% at 50% 118%,rgba(56,189,248,.10),transparent 62%),#04070d}
.hs-stage.hs-narrow{--t-eb:clamp(9px,min(calc(var(--HS,300px)*.032),calc(var(--WS,500px)*.030)),15px);--t-brand:min(calc(var(--HS,300px)*.26),calc(var(--WS,500px)*.135));--t-pct:min(calc(var(--HS,300px)*.34),calc(var(--WS,500px)*.325));--t-h1:min(calc(var(--HS,300px)*.135),calc(var(--WS,500px)*.128));--t-h1b:min(calc(var(--HS,300px)*.120),calc(var(--WS,500px)*.115));--t-h2:min(calc(var(--HS,300px)*.115),calc(var(--WS,500px)*.130));--t-h3:min(calc(var(--HS,300px)*.090),calc(var(--WS,500px)*.090));--t-lead:clamp(13px,min(calc(var(--HS,300px)*.046),calc(var(--WS,500px)*.048)),22px);--t-fm:min(calc(var(--HS,300px)*.22),calc(var(--WS,500px)*.210));--ph-w:min(calc(var(--WS,500px)*.62),calc(var(--HS,300px)*.35));--ph-h:min(calc(var(--HS,300px)*.47),calc(var(--WS,500px)*.95))}.hs-narrow .hs-sc{padding:4% 4% 8%}.hs-narrow .hs-mark{width:min(calc(var(--HS,300px)*.13),calc(var(--WS,500px)*.20))}
.hs-viz{position:absolute;left:0;right:0;bottom:0;width:100%;height:20%;pointer-events:none;opacity:.85}
.hs-flash{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none;mix-blend-mode:screen}
.hs-vig{position:absolute;inset:0;pointer-events:none;background:radial-gradient(115% 85% at 50% 45%,transparent 55%,rgba(0,0,0,.6))}
.hs-sc{position:absolute;inset:0;display:none;place-items:center;text-align:center;padding:5% 4% 9%;overflow:hidden}
.hs-sc.hs-vis{display:grid}
.hs-sc>div{max-width:100%;min-width:0}
.hs-eb{font-family:'JetBrains Mono',monospace;font-weight:700;font-size:var(--t-eb);letter-spacing:.36em;text-transform:uppercase;color:#5eead4}
.hs-imp{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;text-transform:uppercase;line-height:.96;letter-spacing:-.015em;color:#f2f8ff;max-width:100%;overflow-wrap:break-word}
.hs-g{background:linear-gradient(96deg,#5eead4,#38bdf8 45%,#c77dff);-webkit-background-clip:text;background-clip:text;color:transparent}
.hs-lead{font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:var(--t-lead);color:#93a9bd;line-height:1.4;max-width:100%}
.hs-brand{font-size:var(--t-brand)}.hs-pct{font-size:var(--t-pct);line-height:.86}
.hs-t1{font-size:var(--t-h1)}.hs-t1b{font-size:var(--t-h1b)}.hs-t2{font-size:var(--t-h2)}.hs-t3{font-size:var(--t-h3)}
.hs-split{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(10px,2.4vw,38px);align-items:center;width:100%;max-width:1100px;margin-inline:auto;text-align:left;min-width:0}
.hs-split>div{min-width:0}
.hs-shot{display:flex;justify-content:center;min-width:0}
.hs-phone{position:relative;width:var(--ph-w);height:var(--ph-h);border-radius:clamp(8px,1.2vw,18px);overflow:hidden;background:#000;border:2px solid rgba(255,255,255,.16);box-shadow:0 22px 50px -18px rgba(0,0,0,.95),0 0 44px -12px rgba(94,234,212,.32);flex:0 0 auto}
.hs-phone img{width:100%;height:auto;display:block}
.hs-sc.hs-vis .hs-phone img{animation:hsPan 3.05s cubic-bezier(.45,0,.55,1) both}
@keyframes hsPan{0%{transform:translateY(0)}14%{transform:translateY(0)}86%{transform:translateY(min(0px,calc(var(--ph-h) - var(--ph-w) * 2.168)))}100%{transform:translateY(min(0px,calc(var(--ph-h) - var(--ph-w) * 2.168)))}}
.hs-phone::after{content:"";position:absolute;inset:0;background:linear-gradient(200deg,rgba(255,255,255,.14),transparent 42%)}
.hs-mark{width:min(calc(var(--HS,300px)*.15),calc(var(--WS,500px)*.09));aspect-ratio:1;border-radius:22%;position:relative;margin-inline:auto;background:linear-gradient(135deg,#5eead4,#38bdf8 45%,#c77dff);box-shadow:0 0 36px rgba(94,234,212,.45)}
.hs-mark svg{position:absolute;inset:0;margin:auto;width:54%;height:54%}
.hs-duo{display:grid;grid-template-columns:1fr 1fr;gap:clamp(6px,1vw,14px);width:100%;max-width:820px;margin:clamp(6px,1.4vw,18px) auto 0}
.hs-cd{border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:clamp(7px,1.1vw,16px);text-align:left;background:linear-gradient(160deg,rgba(20,34,48,.62),rgba(6,12,20,.32));min-width:0}
.hs-cd .hs-ic{display:block;font-size:var(--t-h3);margin-bottom:3px}
.hs-cd b{display:block;font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:var(--t-lead);color:#f2f8ff}
.hs-cd i{display:block;font-style:normal;font-family:'JetBrains Mono',monospace;font-size:var(--t-eb);letter-spacing:.02em;color:#8ba0b6;margin-top:2px}
.hs-chips{display:flex;flex-wrap:wrap;gap:clamp(4px,.7vw,9px);justify-content:center;width:100%;max-width:940px;margin:clamp(6px,1.2vw,16px) auto 0}
.hs-ch{font-family:'JetBrains Mono',monospace;font-size:var(--t-eb);letter-spacing:.02em;padding:.45em .9em;border-radius:999px;border:1px solid rgba(94,234,212,.35);background:rgba(94,234,212,.07);color:#eaf6ff;white-space:nowrap}
.hs-badge{display:inline-block;font-family:'JetBrains Mono',monospace;font-weight:800;font-size:var(--t-eb);letter-spacing:.22em;padding:.36em .9em;border-radius:999px;color:#04140f;background:linear-gradient(135deg,#5eead4,#38bdf8 55%,#c77dff)}
.hs-fmts{display:flex;gap:clamp(6px,1.2vw,18px);justify-content:center;flex-wrap:wrap}
.hs-fm{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;letter-spacing:.04em;font-size:var(--t-fm);padding:.12em .32em;border:2px solid rgba(255,255,255,.14);border-radius:12px;line-height:1}
.hs-fm.a{color:#5eead4;border-color:rgba(94,234,212,.45)}
.hs-fm.b{color:#38bdf8;border-color:rgba(56,189,248,.45)}
.hs-url{display:inline-block;font-family:'JetBrains Mono',monospace;font-weight:700;font-size:var(--t-lead);letter-spacing:.06em;padding:.5em 1.15em;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(8,16,26,.5);margin-top:clamp(6px,1.2vw,16px)}
.hs-btn{position:absolute;z-index:5;cursor:pointer;font-family:'JetBrains Mono',monospace;font-size:clamp(9px,1.4vw,11px);letter-spacing:.08em;text-transform:uppercase;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(4,10,16,.6);color:#cfe3f2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.hs-btn:hover{color:#fff;border-color:rgba(255,255,255,.45)}
.hs-skip{top:10px;right:10px}
.hs-snd{bottom:10px;left:50%;transform:translateX(-50%);border-color:rgba(94,234,212,.5);color:#5eead4}
.hs-rev{overflow:hidden;display:block}
.hs-rev>span{display:block;transform:translateY(105%)}
.hs-sc.hs-vis .hs-rev>span{animation:hsUp .58s cubic-bezier(.16,.9,.24,1) forwards}
@keyframes hsUp{to{transform:translateY(0)}}
.hs-pop{animation:hsPop .5s cubic-bezier(.15,1.2,.3,1) both}
@keyframes hsPop{from{transform:scale(.86);opacity:0;filter:blur(6px)}to{transform:none;opacity:1;filter:none}}
.hs-fu{animation:hsFu .5s ease both .15s}
@keyframes hsFu{from{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}
.hs-si{animation:hsSi .62s cubic-bezier(.16,.9,.24,1) both .08s}
@keyframes hsSi{from{transform:translateY(20px) scale(.96);opacity:0}to{transform:none;opacity:1}}
.hs-narrow .hs-split{grid-template-columns:1fr;text-align:center;gap:clamp(6px,1.6vw,14px)}
.hs-narrow .hs-duo{grid-template-columns:1fr 1fr}
.hs-narrow .hs-chips .hs-ch{padding:.4em .7em}
@media(max-width:760px){.hero h1{margin:12px 0 18px}.nav-burger{display:grid}.nav-menu{display:none;position:absolute;top:100%;left:0;right:0;z-index:70;flex-direction:column;align-items:stretch;gap:8px;max-height:calc(100vh - 64px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:#0a141b;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);box-shadow:0 24px 50px -18px rgba(0,0,0,.92);padding:14px 16px 20px}.nav-menu.open{display:flex}body.nav-open .nav-menu.open .nav-links button,.nav-menu.open .lang-switch,.nav-menu.open .who{animation:fade .26s both}body.nav-open #bubbleTab{opacity:0;pointer-events:none;transition:opacity .15s}.nav-menu.open .nav-links button:nth-child(1){animation-delay:0ms}.nav-menu.open .nav-links button:nth-child(2){animation-delay:45ms}.nav-menu.open .nav-links button:nth-child(3){animation-delay:90ms}.nav-menu.open .nav-links button:nth-child(4){animation-delay:135ms}.nav-menu.open .nav-links button:nth-child(5){animation-delay:180ms}.nav-menu.open .nav-links button:nth-child(6){animation-delay:225ms}.nav-menu.open .nav-links button:nth-child(7){animation-delay:270ms}.nav-menu.open .nav-links button:nth-child(8){animation-delay:315ms}.nav-menu.open .who{animation-delay:.34s}.nav-menu.open .who>*{animation:fade .24s both}.nav-menu.open .who>*:nth-child(1){animation-delay:360ms}.nav-menu.open .who>*:nth-child(2){animation-delay:400ms}.nav-menu.open .who>*:nth-child(3){animation-delay:440ms}.nav-menu.open .who>*:nth-child(4){animation-delay:480ms}.nav-menu.open .who>*:nth-child(5){animation-delay:520ms}.nav-menu.open .who>*:nth-child(6){animation-delay:560ms}.nav-menu .nav-links{order:1;flex-direction:row;flex-wrap:wrap;align-items:stretch;width:100%;gap:8px}.nav-menu .nav-links button{flex:1 1 calc(50% - 8px);text-align:center;min-height:46px;padding:12px 8px;font-size:13px;border-radius:8px;border:1px solid var(--line)}.nav-menu .nav-links button:hover,.nav-menu .nav-links button:active{background:rgba(255,255,255,.06);color:var(--ink)}.nav-menu .nav-links button.active{background:rgba(24,182,216,.12)}.nav-menu .lang-switch{display:none}.nav-menu .who{order:2;justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:8px;padding-top:10px;border-top:1px solid var(--line)}.nav-menu .who .pill{flex:1 1 100%;text-align:center}.nav-menu .who .cart-pill{flex:1 1 calc(50% - 8px);text-align:center;justify-content:center;display:inline-flex;align-items:center}.nav-menu .who .cart-pill.logout-pill{flex:0 0 auto;order:99}
.nav-menu .who .nav-push-sw{flex:1 1 calc(50% - 8px);justify-content:center;order:50}
@media(max-width:760px) and (orientation:landscape){.nav-menu{padding:10px 14px 14px}.nav-menu .nav-links{gap:6px}.nav-menu .nav-links button{flex:1 1 calc(33.333% - 6px);min-height:40px;padding:9px 6px;font-size:12.5px}.nav-menu .who{padding-top:8px;gap:6px}.nav-menu .who .cart-pill,.nav-menu .who .nav-push-sw{flex:1 1 calc(33.333% - 6px)}}.nav-menu .who .lang-inline{order:100;margin-left:auto;display:flex;gap:6px}}.btn{border:none;border-radius:4px;font-family:'JetBrains Mono',monospace;font-weight:800;font-size:13px;letter-spacing:.05em;text-transform:uppercase;padding:10px 18px;transition:.18s;display:inline-flex;align-items:center;gap:7px}.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff}.btn-primary:hover{box-shadow:0 0 22px rgba(24,182,216,.55);filter:brightness(1.08)}.btn-ghost{background:none;border:1px solid var(--line);color:var(--ink)}.btn-ghost:hover{border-color:var(--cyan);color:var(--cyan)}.btn-acid{background:var(--lime);color:#14250a}.btn-acid:hover{box-shadow:0 0 22px rgba(60,232,143,.45)}.btn-danger{background:none;border:1px solid var(--hot);color:var(--hot)}.btn-danger:hover{background:var(--hot);color:#fff}.btn-sm{padding:8px 13px;font-size:11px}.ticker{position:relative;z-index:59;overflow:hidden;background:var(--rainbow);background-size:200% auto;color:#04161c;border-bottom:2px solid #04161c}
.ticker.lv-on{background:linear-gradient(90deg,#ff2d55,#ff6b3d,#ff2d55);background-size:200% auto;animation:lvglow 3s linear infinite;color:#fff;border-bottom-color:#3a0410}
@keyframes lvglow{to{background-position:200% center}}
.ticker.lv-on .move{animation:none;display:flex;align-items:center;gap:10px;white-space:nowrap;padding:7px 10px;width:100%;text-transform:none;letter-spacing:.04em;font-size:13px}
.lv-tag{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;font-size:11px;white-space:nowrap}
.lv-tag i{width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.75);animation:lvdot 1.6s infinite;display:inline-block;flex:0 0 auto}
@keyframes lvdot{70%{box-shadow:0 0 0 8px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
.lv-scroll{flex:1 1 auto;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.lv-track{display:inline-flex;white-space:nowrap;will-change:transform;animation:lvscroll 18s linear infinite}
.lv-track b{font-weight:800;padding-right:64px}
@keyframes lvscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ticker.lv-on{cursor:pointer;-webkit-tap-highlight-color:transparent}.lvp-list{display:flex;flex-direction:column;gap:8px;max-height:52vh;overflow-y:auto;text-align:left}.lvp-row{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--line,#173842);border-radius:12px;background:rgba(255,255,255,.03)}.lvp-dot{flex:0 0 auto;width:9px;height:9px;border-radius:50%;background:#ff2d55;box-shadow:0 0 0 0 rgba(255,45,85,.7);animation:lvpPulse 1.6s infinite}html.anim-off .lvp-dot{animation:none}@keyframes lvpPulse{70%{box-shadow:0 0 0 8px rgba(255,45,85,0)}100%{box-shadow:0 0 0 0 rgba(255,45,85,0)}}.lvp-tx{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.lvp-tx b{font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lvp-badge{margin-left:6px;padding:1px 6px;border-radius:999px;font-size:9.5px;background:rgba(90,217,255,.16);color:var(--cyan,#5ad9ff);vertical-align:middle}.lvp-meta{font-size:11px;color:var(--muted,#8aa)}.lvp-go{flex:0 0 auto;background:#ff2d55;color:#fff;border:none;border-radius:99px;padding:7px 14px;font-family:inherit;font-weight:900;font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;white-space:nowrap;cursor:pointer}.lvp-go:hover{filter:brightness(1.1)}.ticker.lv-on .move{-webkit-user-select:none;user-select:none}.ticker.lv-on:hover .lv-go{background:#ffe9ee}.ticker.lv-on:active{filter:brightness(.94)}.ticker.lv-on:focus-visible{outline:2px solid #fff;outline-offset:-3px}.lv-go{flex:0 0 auto;background:#fff;color:#c4102f;border:none;border-radius:99px;padding:6px 13px;font-family:inherit;font-weight:900;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;text-decoration:none;white-space:nowrap}
.lv-go:hover{background:#ffe9ee}
@media (max-width:420px){.lv-tag span{display:none}.ticker.lv-on .move{gap:8px}}
@media (prefers-reduced-motion: reduce){.ticker.lv-on{animation:none}.lv-tag i{animation:none}.lv-track{animation:none}
  .lv-scroll{overflow:hidden;text-overflow:ellipsis}.lv-track b:nth-child(2){display:none}}.ticker .move{display:inline-block;white-space:nowrap;animation:scroll 20s linear infinite;font-family:'JetBrains Mono';font-weight:800;font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:7px 0}.ticker .move span{padding:0 16px}@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}.topbar{position:sticky;top:0;z-index:60}.wrap{max-width:1180px;margin:0 auto;padding:0 22px}.view{display:none;padding:38px 0 110px}#view-home{padding-top:8px}#view-home .hero{padding-top:10px}.view.show{display:block}@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.label{font-family:'JetBrains Mono';font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:9px}.label::before{content:"";width:22px;height:3px;border-radius:3px;background:var(--rainbow)}.hero{position:relative;padding:40px 0 56px;overflow:hidden}.hero .glow{position:absolute;inset:-30% -15% auto;height:580px;z-index:0;opacity:.8;background:radial-gradient(closest-side at 18% 36%,rgba(24,182,216,.34),transparent),radial-gradient(closest-side at 50% 22%,rgba(29,224,192,.22),transparent),radial-gradient(closest-side at 82% 32%,rgba(20,160,178,.26),transparent),radial-gradient(closest-side at 60% 78%,rgba(29,224,192,.16),transparent);filter:blur(36px);animation:throb 5.5s ease-in-out infinite}@keyframes throb{0%,100%{opacity:.6;transform:scale(1)}50%{opacity:.9;transform:scale(1.06)}}.hero-inner{position:relative;z-index:1;max-width:820px}.hero h1{font-size:clamp(42px,9vw,88px);line-height:.92;font-weight:800;margin:18px 0 22px;text-transform:uppercase;letter-spacing:-.03em}.hero p{font-size:17px;color:var(--muted);max-width:540px;margin-bottom:30px}.hero p b{color:var(--ink)}.hero-cta{display:flex;gap:11px;flex-wrap:wrap}.stats{display:flex;gap:14px;margin-top:46px;flex-wrap:wrap}.stat{background:var(--panel);border:1px solid var(--line);border-radius:var(--rad);padding:16px 20px;min-width:120px;position:relative;overflow:hidden}.stat::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--rainbow)}.stat b{font-family:'Bricolage Grotesque';font-size:30px;font-weight:800;display:block;line-height:1}.stat span{font-family:'JetBrains Mono';font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.shead{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:8px 0 22px;flex-wrap:wrap}.shead h2{font-size:clamp(26px,5vw,42px);font-weight:800;text-transform:uppercase;letter-spacing:-.02em;margin-top:8px}.filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:24px}.catalog-search{display:flex;gap:9px;margin-bottom:16px}.catalog-search input{flex:1;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:13px 15px;color:var(--ink);font-size:14px;transition:.18s}.catalog-search input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(24,182,216,.16)}.catalog-search .btn-sm{align-self:stretch}.chip{background:var(--panel);border:1px solid var(--line);color:var(--muted);font-family:'JetBrains Mono';font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:7px 13px;border-radius:4px;transition:.18s}.chip:hover{color:var(--ink);border-color:var(--cyan)}.chip.active{background:linear-gradient(135deg,var(--accent),var(--accent2));border-color:transparent;color:#fff}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:18px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--rad);overflow:hidden;display:flex;flex-direction:column;transition:.2s;position:relative}.card:hover{transform:translateY(-4px);border-color:var(--cyan);box-shadow:0 18px 46px -20px rgba(24,182,216,.55),0 0 30px -18px rgba(29,224,192,.6)}.cover{aspect-ratio:1;position:relative;background:#0e242d}.cover img{width:100%;height:100%;object-fit:cover;display:block}.cover .ph,.cover.noimg{width:100%;height:100%;display:grid;place-items:center;position:relative;overflow:hidden;color:#fff;font-size:clamp(22px,9%,64px);background:linear-gradient(135deg,#19e3c2,#5ad9ff 34%,#9b6cff 68%,#ff5cc8);background-size:220% 220%;animation:noimgShift 11s ease-in-out infinite}
@keyframes noimgShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.noimg::before{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(115deg,rgba(255,255,255,.14) 0 2px,transparent 2px 13px),radial-gradient(60% 70% at 22% 18%,rgba(255,255,255,.30),transparent 62%),radial-gradient(70% 80% at 82% 88%,rgba(0,0,0,.34),transparent 66%)}
.noimg>*{position:relative;z-index:1;text-shadow:0 2px 12px rgba(0,0,0,.45)}
.noimg[data-v='1']{filter:hue-rotate(45deg)}.noimg[data-v='2']{filter:hue-rotate(95deg)}
.noimg[data-v='3']{filter:hue-rotate(150deg)}.noimg[data-v='4']{filter:hue-rotate(200deg)}
.noimg[data-v='5']{filter:hue-rotate(255deg)}.noimg[data-v='6']{filter:hue-rotate(300deg)}
.noimg .ni-ini{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;letter-spacing:-.02em;line-height:1;font-size:2.1em;opacity:.92}.cover .ph svg{width:46px;height:46px;opacity:.4}.fmt-tags{position:absolute;top:9px;left:9px;right:56px;display:flex;gap:4px;flex-wrap:wrap}.feat .fmt-tags,.cover:has(.feat-ribbon) .fmt-tags,.feat-ribbon+.fmt-tags{top:34px}.resume-bar{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;align-items:center;gap:6px;padding:6px 8px;background:linear-gradient(0deg,rgba(7,6,14,.92),rgba(7,6,14,0));pointer-events:none}.resume-bar .resume-track{flex:1;height:3px;border-radius:2px;background:rgba(255,255,255,.22);overflow:hidden}.resume-bar .resume-fill{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),#ff9f1c);min-width:6%}.resume-bar .resume-lbl{font-family:'JetBrains Mono';font-size:10px;font-weight:800;letter-spacing:.04em;color:var(--cyan);white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.6)}.lp-ctrls{display:flex;align-items:center;gap:8px;margin-left:auto}.lp-q{position:relative;background:rgba(255,255,255,.04);border:1px solid rgba(150,160,255,.18);color:#5ad9ff;width:42px;height:42px;border-radius:50%;cursor:pointer;font-size:18px;line-height:1;flex:none;transition:.18s;display:grid;place-items:center;box-shadow:0 2px 10px -4px rgba(0,0,0,.55),0 1px 0 rgba(255,255,255,.08) inset}.lp-rpt{opacity:.42}.lp-rpt.on{opacity:1;color:var(--cyan);border-color:var(--cyan)}.lp-rpt.one::after{content:'1';position:absolute;top:3px;right:5px;font-size:9px;font-weight:800;line-height:1}.lp-norm{opacity:.42}.lp-norm.on{opacity:1;color:var(--cyan);border-color:var(--cyan)}.lp-q:hover{border-color:rgba(155,108,255,.85);color:#fff;box-shadow:0 0 16px -3px rgba(155,108,255,.75),0 1px 0 rgba(255,255,255,.16) inset}.lp-q:active{transform:scale(.94)}.lp-q:active{transform:translateY(0)}#lpPlay2{background:conic-gradient(from 200deg,#19e3c2,#5ad9ff,#9b6cff,#ff5cc8,#19e3c2)!important;color:#fff!important;border:1px solid rgba(255,255,255,.35)!important;box-shadow:0 0 26px -4px rgba(155,108,255,.85),0 0 44px -10px rgba(90,217,255,.6),0 1px 0 rgba(255,255,255,.4) inset!important;width:48px!important;height:48px!important;font-size:20px}#lpPlay2:hover{color:#fff!important;box-shadow:0 0 32px -3px rgba(155,108,255,1),0 0 52px -8px rgba(90,217,255,.75),0 1px 0 rgba(255,255,255,.5) inset!important}.lp-qcount{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--cyan);color:#04161c;font:800 10px/16px 'JetBrains Mono',monospace;text-align:center}.lp-queue{position:absolute;right:10px;bottom:64px;width:min(340px,86vw);max-height:46vh;overflow:auto;background:rgba(7,12,18,.97);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:12px;padding:10px;z-index:60;box-shadow:0 12px 40px rgba(0,0,0,.5)}.lpq-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.lpq-head b{font-size:13px;letter-spacing:.02em}.lpq-empty{font-size:12px;color:var(--muted,#8aa);margin:6px 2px}.lpq-row{display:flex;align-items:center;gap:8px;padding:6px 4px;border-top:1px solid var(--line)}.lpq-meta{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}.lpq-meta b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lpq-meta span{font-size:11px;color:var(--muted,#8aa);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lpq-play,.lpq-del{background:transparent;border:1px solid var(--line);color:var(--cyan);width:28px;height:28px;border-radius:6px;cursor:pointer;flex:none;font-size:12px}.lpq-del{color:#ff7a7a}.lpq-play:hover,.lpq-del:hover{border-color:currentColor}.lpq-ctrls{display:flex;gap:6px;align-items:center}.lpq-x{background:transparent;border:1px solid var(--line);color:#d7e6e9;width:26px;height:26px;border-radius:6px;cursor:pointer;font-size:12px;line-height:1;flex:none}.lpq-x:hover{border-color:var(--cyan);color:var(--cyan)}.lp-vizpanel{padding:8px;width:min(220px,80vw)}.lp-vizpanel .vizopt{display:block;width:100%;text-align:left;background:transparent;border:1px solid var(--line);color:#d7e6e9;padding:8px 10px;border-radius:8px;margin-top:6px;cursor:pointer;font-size:13px}.lp-vizpanel .vizopt:hover{border-color:var(--cyan)}.lp-vizpanel .vizopt.on{border-color:var(--cyan);color:var(--cyan);font-weight:700}.pro-adv .adv-extra{border-top:1px solid var(--line);margin-top:14px;padding-top:6px}.brow .bmain .fmt{font-family:'JetBrains Mono';font-size:10px;font-weight:800;border:1px solid var(--line);padding:3px 6px;border-radius:3px;color:var(--cyan)}.brow input,.brow select{padding:6px 8px}.fmt{font-family:'JetBrains Mono';font-size:10px;font-weight:800;letter-spacing:.06em;background:rgba(7,6,14,.8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid var(--line);padding:3px 6px;border-radius:3px;color:var(--cyan)}.cbody{padding:15px;display:flex;flex-direction:column;gap:5px;flex:1}.cbody .artist{font-family:'JetBrains Mono';font-size:11px;color:var(--accent);font-weight:700;letter-spacing:.05em;text-transform:uppercase}.cbody h3{font-size:18px;font-weight:800;text-transform:uppercase;letter-spacing:-.01em}.cbody .genre{font-family:'JetBrains Mono';font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.cbody .desc{font-size:13px;color:var(--muted);flex:1}.cbody .artist,.cbody h3,.cbody .genre,.lrow .meta b,.urow .uinfo b,.listen-row .lr-main h3,.listen-row .lr-main .artist{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.cbody .desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.lrow .meta span,.urow .uinfo span,.cbody,.listen-row .lr-main,.empty p,.meta span{overflow-wrap:break-word}.pass-wrap{position:relative;display:block}.pass-wrap input{width:100%;padding-right:44px}.pass-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:17px;line-height:1;opacity:.65;padding:4px 8px}.pass-toggle:hover{opacity:1}.player{display:flex;align-items:center;gap:9px;margin-top:6px;padding:8px 10px;background:var(--bg);border:1px solid var(--line);border-radius:5px}.player button{width:32px;height:32px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;display:grid;place-items:center;flex-shrink:0;font-size:12px}.player button:disabled{background:var(--line);color:var(--muted)}.player .track{flex:1;height:4px;background:var(--line);border-radius:3px;position:relative;overflow:hidden}.player .track .fill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--rainbow);background-size:200% auto;animation:hue 4s linear infinite}.player .time{font-family:'JetBrains Mono';font-size:10px;color:var(--muted);min-width:30px;text-align:right}.preview-note{font-family:'JetBrains Mono';font-size:10px;color:var(--muted);text-align:center;margin-top:3px;letter-spacing:.04em;text-transform:uppercase}.cfoot{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border-top:1px solid var(--line)}.price{font-family:'Bricolage Grotesque';font-weight:800;font-size:20px;white-space:nowrap}
.cbody .price{font-size:clamp(14px,4vw,19px)}.price small{font-size:12px;color:var(--muted);font-family:'JetBrains Mono';font-weight:700}.owned{font-family:'JetBrains Mono';font-size:11px;color:var(--lime);font-weight:800;text-transform:uppercase;letter-spacing:.05em}.status{font-family:'JetBrains Mono';font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:4px 9px;border-radius:3px}.status.pending{background:rgba(255,225,77,.16);color:var(--yellow)}.status.approved{background:rgba(60,232,143,.15);color:var(--lime)}.status.rejected{background:rgba(255,59,107,.18);color:var(--hot)}.empty{grid-column:1/-1;text-align:center;padding:64px 20px;border:1px dashed var(--line);border-radius:var(--rad);color:var(--muted)}.empty h3{font-size:21px;color:var(--ink);margin-bottom:8px;text-transform:uppercase}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:28px}.maxw{max-width:520px;margin:0 auto}.tabs{display:flex;gap:5px;background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:5px;margin-bottom:22px}.tabs button{flex:1;background:none;border:none;color:var(--muted);font-family:'JetBrains Mono';font-weight:800;font-size:13px;letter-spacing:.05em;text-transform:uppercase;padding:11px;border-radius:4px;transition:.18s}.tabs button.active{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff}.field{margin-bottom:15px}.field label{display:block;font-family:'JetBrains Mono';font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.field input,.field select,.field textarea{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:5px;padding:12px 13px;color:var(--ink);font-size:14px;transition:.18s}.field input:focus,select option,select optgroup{background-color:#13111f;color:#eaf2ff}
select option:checked{background:#1a1729}
.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(24,182,216,.16)}.field textarea{resize:vertical;min-height:78px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:13px}.checks{display:flex;gap:9px;flex-wrap:wrap}.checks label{display:flex;align-items:center;gap:7px;background:var(--bg);border:1px solid var(--line);padding:9px 12px;border-radius:5px;font-family:'JetBrains Mono';font-size:12px;font-weight:700;text-transform:uppercase;cursor:pointer;color:var(--muted)}.checks input{width:auto}.checks label.on{border-color:var(--accent);color:var(--accent)}.scp-modal{text-align:left;max-width:100%;overflow-x:hidden}.scp-modal h3{text-align:center;margin-bottom:10px}.scp-modal .hint{font-size:12px;line-height:1.45}.scp-modal .field{margin-bottom:10px}.scp-modal .rights-check span{font-size:12px;line-height:1.4}.scp-head{display:flex;flex-direction:column;gap:6px;margin:2px 0 8px}.scp-count{font-size:11.5px;color:var(--muted,#8aa);letter-spacing:.02em}.scp-acts{display:flex;gap:5px;flex-wrap:wrap}.scp-acts .btn{padding:5px 9px;font-size:10.5px;white-space:nowrap;min-height:0;line-height:1.4}.scp-legend{border:1px solid var(--line,#173842);border-radius:10px;padding:9px 10px;margin:0 0 9px;background:rgba(90,217,255,.04)}.scp-lg{display:flex;gap:8px;align-items:flex-start;font-size:11.5px;line-height:1.45;color:var(--muted,#8aa);margin-bottom:4px}.scp-lg:last-of-type{margin-bottom:0}.scp-lg-i{flex:0 0 auto;width:22px;text-align:center;font-size:13px}.scp-lg b{color:var(--cyan,#5ad9ff);font-weight:700}.scp-list{max-height:min(44vh,340px);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;border:1px solid var(--line,#173842);border-radius:12px;padding:5px}.scp-row{display:flex;gap:9px;align-items:center;padding:7px 6px;border-radius:9px;cursor:pointer;transition:background .15s,border-color .15s;border:1px solid transparent}.scp-row:hover{background:rgba(90,217,255,.06)}.scp-row.on{background:rgba(90,217,255,.14);border-color:var(--cyan,#5ad9ff)}.scp-cb{flex:0 0 auto;width:19px;height:19px;margin:0}.scp-art{flex:0 0 auto;width:40px;height:40px;border-radius:8px;object-fit:cover}.scp-art-ph{background:#0a2129;display:flex;align-items:center;justify-content:center;font-size:16px}.scp-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px;align-items:flex-start}.scp-info b{display:block;width:100%;font-size:13px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scp-meta{display:block;width:100%;font-size:10.5px;line-height:1.3;color:var(--muted,#8aa);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scp-tag{display:inline-block;max-width:100%;padding:1px 6px;border-radius:999px;font-size:9.5px;line-height:1.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scp-tag-file{background:rgba(43,217,160,.16);color:#2bd9a0}.scp-tag-embed{background:rgba(90,217,255,.14);color:#5ad9ff}.scp-tag-ko{background:rgba(255,93,114,.14);color:#ff5d72}.scp-kind{display:inline-flex;flex:0 0 auto;border:1px solid var(--line,#173842);border-radius:8px;overflow:hidden}.scp-kind button{background:transparent;border:0;color:var(--muted,#8aa);font-size:13px;line-height:1;padding:7px 8px;cursor:pointer}.scp-kind button.on{background:rgba(90,217,255,.18);color:#5ad9ff}.scp-kind button:disabled{opacity:.28;cursor:not-allowed}@media(max-width:420px){.scp-art{width:34px;height:34px}.scp-info b{font-size:12.5px}.scp-acts .btn{padding:4px 7px;font-size:10px}.scp-row{gap:7px;padding:6px 4px}.scp-kind button{padding:6px 7px}}.rights-check{display:flex;gap:9px;align-items:flex-start;font-family:'Hanken Grotesk';text-transform:none;letter-spacing:0;color:var(--ink);font-size:13px;font-weight:500;cursor:pointer;background:var(--bg);border:1px solid var(--line);padding:11px 13px;border-radius:5px}.rights-check input{width:auto;margin-top:2px;flex-shrink:0}.field input[type=file]{padding:9px;font-size:12px;color:var(--muted);cursor:pointer}.fmt-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px;padding-bottom:10px;border-bottom:1px dashed var(--line)}.fmt-row label{display:flex;align-items:center;gap:7px;min-width:118px;background:var(--bg);border:1px solid var(--line);padding:10px 12px;border-radius:5px;font-family:'JetBrains Mono';font-size:12px;font-weight:700;text-transform:uppercase;cursor:pointer;color:var(--muted)}.fmt-row label.on{border-color:var(--accent);color:var(--accent)}.fmt-row input[type=checkbox]{width:auto}.fmt-row .fmt-price{flex:1;min-width:90px;background:var(--bg);border:1px solid var(--line);border-radius:5px;padding:10px 12px;color:var(--ink);font-size:14px}.fmt-row .fmt-price:focus{outline:none;border-color:var(--accent)}.fmt-row .fmt-file{flex-basis:100%;order:5;font-size:12px;color:var(--muted);cursor:pointer;padding:6px 0;display:none}.fmt-row.checked .fmt-file{display:block}.fmt-row .fmt-file-name{flex-basis:100%;order:6;margin-top:0}.hint{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.5}.err{color:var(--hot);font-size:13px;margin-top:10px;min-height:18px;font-weight:600}.rowlist{display:flex;flex-direction:column;gap:10px}.lrow{display:flex;align-items:center;gap:13px;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:11px 13px}.lrow .thumb{width:50px;height:50px;border-radius:5px;object-fit:cover;background:repeating-linear-gradient(45deg,#0c222a 0 8px,#103039 8px 16px);flex-shrink:0}.lrow .meta{flex:1;min-width:0}.lrow .meta b{font-family:'Bricolage Grotesque';font-size:15px;display:block;text-transform:uppercase}.lrow .meta span{font-family:'JetBrains Mono';font-size:11px;color:var(--muted);letter-spacing:.03em}.lrow .acts{display:flex;gap:7px;flex-wrap:wrap;align-items:center}@media(max-width:560px){.lrow{flex-wrap:wrap}.lrow .acts{flex-basis:100%;width:100%}.lrow .acts .btn{flex:1 1 auto}}.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:30px}.metric{background:linear-gradient(160deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:12px;padding:18px 20px;position:relative;overflow:hidden;transition:transform .18s,border-color .18s,box-shadow .18s}.metric:hover{transform:translateY(-3px);border-color:var(--cyan);box-shadow:0 14px 34px -18px rgba(24,182,216,.5)}.metric .mic{position:absolute;top:14px;right:14px;font-size:18px;opacity:.55}.metric::after{content:"";position:absolute;right:-20px;bottom:-20px;width:90px;height:90px;border-radius:50%;background:radial-gradient(closest-side,rgba(24,182,216,.2),transparent)}.metric .k{font-family:'JetBrains Mono';font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;padding-right:22px}.metric .v{font-family:'Bricolage Grotesque';font-size:36px;font-weight:800;line-height:1}.metric .v small{font-size:18px;color:var(--muted)}.metric.hl{border-color:var(--accent)}.metric.hl .v{color:transparent;background:var(--rainbow);background-size:200% auto;-webkit-background-clip:text;background-clip:text;animation:hue 6s linear infinite}.metric.warn{border-color:var(--yellow);box-shadow:0 0 0 1px rgba(255,210,77,.25)}.metric.warn .v{color:var(--yellow)}.metric.warn::after{background:radial-gradient(closest-side,rgba(255,210,77,.25),transparent)}.bar-list{display:flex;flex-direction:column;gap:12px}.bar-row{display:grid;grid-template-columns:1fr;gap:6px}.bar-row .top{display:flex;justify-content:space-between;font-size:13px}.bar-row .top b{font-family:'Bricolage Grotesque';text-transform:uppercase}.bar-row .top span{font-family:'JetBrains Mono';font-size:12px;color:var(--cyan)}.bar-track{height:8px;background:var(--bg);border:1px solid var(--line);border-radius:5px;overflow:hidden}.bar-fill{height:100%;background:var(--rainbow);background-size:200% auto;animation:hue 5s linear infinite;border-radius:5px;transition:width .6s cubic-bezier(.2,1,.3,1)}.verify-card{max-width:480px;margin:30px auto 0;text-align:center}.verify-card .env{width:74px;height:74px;border-radius:50%;background:rgba(24,182,216,.14);display:grid;place-items:center;margin:0 auto 20px;font-size:34px}.verify-card .mail-to{font-family:'JetBrains Mono';color:var(--accent);font-weight:700;word-break:break-all}.fake-mail{margin-top:24px;background:var(--bg);border:1px dashed var(--line);border-radius:8px;padding:20px;text-align:left}.fake-mail .from{font-family:'JetBrains Mono';font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}.urow{background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:13px 15px;margin-bottom:10px}.urow.banned{border-color:var(--hot);opacity:.82}.urow .head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.urow .avatar{width:42px;height:42px;border-radius:50%;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;display:grid;place-items:center;color:#04161c;font-family:'Bricolage Grotesque';font-weight:800;font-size:17px;flex-shrink:0}.urow .uinfo{flex:1;min-width:0}.urow .ucontrol{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.urow .acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}@media(max-width:560px){.urow .acts{flex-basis:100%;width:100%;margin-top:6px}.urow .acts .btn{flex:1 1 auto}}@media(max-width:560px){.urow .ucontrol{flex-basis:100%;width:100%;margin-top:4px}}.urow .wadj{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:11px 0 1px;padding:9px 11px;background:rgba(25,227,194,.06);border:1px solid var(--line);border-radius:9px}.urow .wadj .wadj-l{font-family:'JetBrains Mono';font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--accent)}.urow .wadj .wadj-i{width:120px;background:var(--bg);border:1px solid var(--line);border-radius:6px;color:var(--ink);padding:7px 9px;font-family:'JetBrains Mono';font-size:13px}.urow .wadj .wadj-i:focus{outline:none;border-color:var(--accent)}.urow .wadj .wadj-h{font-size:10px;color:var(--muted);font-family:'JetBrains Mono';flex-basis:100%}.urow .uinfo b{font-family:'Bricolage Grotesque';font-size:16px;text-transform:uppercase;display:block}.urow .uinfo span{font-family:'JetBrains Mono';font-size:11px;color:var(--muted)}.role-tag{font-family:'JetBrains Mono';font-size:10px;font-weight:800;text-transform:uppercase;padding:3px 8px;border-radius:3px;letter-spacing:.05em}.role-artist{background:rgba(20,160,178,.18);color:#6fe6d0}.role-customer{background:rgba(29,224,192,.15);color:var(--cyan)}.role-admin{background:rgba(29,224,192,.18);color:var(--orange)}.role-moderator{background:rgba(255,210,77,.16);color:var(--yellow)}.adm-search{width:100%;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:11px 13px;color:var(--ink);font-size:14px;margin-bottom:14px}.adm-search:focus{outline:none;border-color:var(--accent)}.urow .avatar img,.profile-head .pa img{width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar,.profile-head .pa{overflow:hidden}.avatar img,.urow .avatar img,.profile-head .pa img{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:50%;display:block}.tag-ban{color:var(--hot);font-weight:800}.tag-ok{color:var(--lime);font-weight:800}.udetail{display:none;margin-top:12px;padding-top:12px;border-top:1px dashed var(--line)}.udetail.open{display:block}.udetail h5{font-family:'JetBrains Mono';font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin:10px 0 7px}.mini{font-size:13px;color:var(--muted);display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.04)}.mini b{color:var(--ink);font-weight:600}.order-group{background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:14px 16px;margin-bottom:12px}.order-group .gh{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:10px;flex-wrap:wrap}.order-group .gh b{font-family:'Bricolage Grotesque';text-transform:uppercase;font-size:15px}.order-group .gh span{font-family:'JetBrains Mono';font-size:12px;color:var(--lime)}.toggle{display:inline-flex;align-items:center;gap:10px;cursor:pointer}.switch{width:52px;height:28px;border-radius:30px;background:var(--line);position:relative;transition:.2s;flex-shrink:0}.switch::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:.2s}.switch.on{background:linear-gradient(135deg,var(--accent),var(--accent2))}.switch.on::after{left:27px}.heart{position:absolute;top:9px;right:9px;width:34px;height:34px;border-radius:50%;border:none;background:rgba(7,6,14,.7);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;font-size:15px;display:grid;place-items:center;cursor:pointer;z-index:3;transition:.15s}.heart:hover{transform:scale(1.12)}.heart.on{color:var(--hot)}.cart-pill{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--line);color:var(--ink);font-family:'JetBrains Mono';font-size:12px;font-weight:700;padding:6px 11px;border-radius:30px;cursor:pointer}.cart-pill:hover{border-color:var(--accent);color:var(--accent)}.cart-pill .cc{background:var(--accent);color:#04161c;border-radius:30px;padding:1px 7px;font-size:11px}.stars{display:inline-flex;gap:1px;color:var(--yellow);font-size:13px;letter-spacing:1px}.stars .e{color:var(--line)}.rate-line{display:flex;align-items:center;gap:7px;font-family:'JetBrains Mono';font-size:11px;color:var(--muted);margin-top:2px}.rate-line a{color:var(--cyan);cursor:pointer}.cart-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);text-align:left}.cart-item .ci-t{flex:1;min-width:0}.cart-item .ci-t b{font-family:'Bricolage Grotesque';font-size:14px;display:block;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cart-item .ci-t span{font-family:'JetBrains Mono';font-size:11px;color:var(--muted)}.cart-item .rm{background:none;border:none;color:var(--hot);cursor:pointer;font-size:18px}.review{text-align:left;background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:11px 13px;margin-bottom:9px}.review .rh{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.review .rh b{font-family:'JetBrains Mono';font-size:12px;text-transform:uppercase}.review p{font-size:13px;color:var(--muted)}.star-pick{display:inline-flex;gap:3px;font-size:24px;cursor:pointer;color:var(--line)}.star-pick span.on{color:var(--yellow)}.profile-head{display:block;margin-bottom:30px}.profile-head .pa{width:84px;height:84px;border-radius:50%;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;display:grid;place-items:center;color:#04161c;font-family:'Bricolage Grotesque';font-weight:800;font-size:34px;flex-shrink:0}.profile-head .pi h2{font-size:clamp(26px,5vw,40px);text-transform:uppercase}.profile-head .pi .pstats{font-family:'JetBrains Mono';font-size:12px;color:var(--muted);margin-top:6px}.mod-msg{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);text-align:left}.mod-msg .mm{flex:1;min-width:0}.mod-msg .mm b{font-family:'JetBrains Mono';font-size:11px;text-transform:uppercase;color:var(--accent)}.mod-msg .mm p{font-size:13px;color:var(--ink)}.mod-msg button{background:none;border:1px solid var(--line);color:var(--hot);border-radius:5px;padding:4px 9px;font-size:14px;cursor:pointer}footer{border-top:1px solid var(--line);padding:28px 22px;text-align:center;color:var(--muted);font-family:'JetBrains Mono';font-size:11px;letter-spacing:.05em;text-transform:uppercase}.overlay{position:fixed;inset:0;background:rgba(4,3,9,.85);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10050;display:none;align-items:center;justify-content:center;padding:20px}.overlay.open{display:flex}.modal{background:var(--panel);border:1px solid var(--line);border-radius:10px;max-width:460px;width:100%;padding:28px;text-align:center;max-height:90vh;overflow-y:auto}.modal .ico{width:58px;height:58px;border-radius:50%;background:rgba(24,182,216,.15);display:grid;place-items:center;margin:0 auto 16px;font-size:25px}.modal h3{font-size:23px;margin-bottom:10px;text-transform:uppercase}.modal p{color:var(--muted);font-size:14px;margin-bottom:20px;line-height:1.6}.modal .modal-acts{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.pro-card{text-align:center}.pro-card .pro-badge{display:inline-block;font-family:'JetBrains Mono';font-weight:800;font-size:11px;letter-spacing:.12em;color:#04161c;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;padding:4px 12px;border-radius:999px;margin-bottom:12px}.pro-card h3{font-size:23px;text-transform:uppercase;margin-bottom:8px}.pro-card>p{color:var(--muted);font-size:14px;line-height:1.6;margin-bottom:18px}.pro-feats{list-style:none;margin:0 0 18px;padding:0;text-align:left;display:grid;gap:9px}.pro-feats li{position:relative;padding:10px 12px 10px 38px;background:rgba(25,227,194,.06);border:1px solid var(--line);border-radius:9px;font-size:13.5px;color:var(--ink)}.pro-feats li::before{content:'\2713';position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--lime);font-weight:800}.pro-feats li.pro-locked{opacity:.55;filter:grayscale(.35)}.pro-feats li.pro-locked::before{content:'\1F512';color:var(--muted)}.pro-price{font-family:'Bricolage Grotesque';font-weight:800;font-size:30px;color:var(--accent);line-height:1.1;margin-bottom:16px}.pro-price span{display:block;font-family:'JetBrains Mono';font-weight:400;font-size:11px;letter-spacing:.04em;color:var(--muted);text-transform:uppercase;margin-top:5px}.pro-locked{opacity:.85}.urow .pro-badge{display:inline-flex;align-items:center;font-family:'JetBrains Mono';font-weight:800;font-size:9px;letter-spacing:.1em;color:#04161c;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;padding:2px 8px;border-radius:999px}.cbody .pro-badge,.lr-main .pro-badge,.profile-head .pro-badge{display:inline-block;font-family:'JetBrains Mono';font-weight:800;font-size:8px;letter-spacing:.08em;color:#04161c;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;padding:1px 6px;border-radius:999px;margin-left:6px;vertical-align:middle}.profile-head .pro-badge{font-size:10px;padding:3px 9px}
.sc-badge{display:inline-flex;align-items:center;gap:3px;font-family:'JetBrains Mono',monospace;font-weight:800;font-size:9px;letter-spacing:.05em;color:#0b1a24;background:linear-gradient(120deg,#ff8a3d,#ff5500);padding:2px 8px;border-radius:999px;margin-left:6px;vertical-align:middle;text-decoration:none}
.profile-head .sc-badge{font-size:10px;padding:3px 9px}.card.pro-featured{border-color:rgba(25,227,194,.55);box-shadow:0 0 0 1px rgba(25,227,194,.22)}.card.is-featured{border-color:rgba(255,210,63,.5)}.listen-row.feat{border-color:rgba(255,210,63,.55);box-shadow:0 0 0 1px rgba(255,210,63,.18)}.dacc{border:1px solid var(--line);border-radius:14px;margin-bottom:18px;overflow:hidden;background:rgba(6,23,28,.45)}.dacc-h{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;background:transparent;border:none;color:inherit;padding:15px 18px;font-family:inherit;font-weight:800;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;font-size:15px;text-align:left;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;outline:none}.dacc-h .ar{color:var(--cyan);transition:transform .2s;font-size:14px;font-family:'JetBrains Mono',monospace;line-height:1}.dacc.open .dacc-h .ar{transform:rotate(90deg)}.dacc-b{display:none;padding:14px 18px 18px;border-top:1px solid var(--line)}.dacc.open .dacc-b{display:block}.admtabs{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:2px 0 16px;scrollbar-width:none}.admtabs::-webkit-scrollbar{display:none}.admtabs button{position:relative;flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:9px 15px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--muted);font-family:inherit;font-weight:700;font-size:13px;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:background .15s,color .15s,border-color .15s}.admtabs button.active{background:linear-gradient(120deg,#5ad9ff,#1de0c0);color:#04161c;border-color:transparent;box-shadow:0 0 16px -6px rgba(90,217,255,.6)}.role-tag{box-shadow:0 0 0 1px rgba(255,255,255,.06) inset}.urow .avatar{box-shadow:0 0 0 2px rgba(255,255,255,.08)}.dm-pres,.urow .dm-dot{box-shadow:0 0 6px currentColor}#onlinePanel{border-color:rgba(43,217,160,.3)}#onlinePanel h4{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.adm-search{transition:border-color .18s,box-shadow .18s}.adm-search:focus{box-shadow:0 0 0 3px rgba(24,182,216,.14)}.rowlist .lrow,.rowlist .urow{transition:border-color .15s,transform .15s}.rowlist .lrow:hover,.rowlist .urow:hover{border-color:var(--cyan);transform:translateX(2px)}#view-admin .dacc,#view-mod .dacc,#view-artist .dacc{border-radius:14px}#view-admin .dacc-h span:first-child,#view-mod .dacc-h span:first-child{font-size:15px;letter-spacing:.02em}.status.pending{box-shadow:0 0 10px -3px rgba(255,210,77,.4)}.status.approved{box-shadow:0 0 10px -3px rgba(60,232,143,.4)}.status.rejected{box-shadow:0 0 10px -3px rgba(255,59,107,.4)}
@media(max-width:759px){.dash-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:6px;-webkit-overflow-scrolling:touch}.dash-grid::-webkit-scrollbar{display:none}.metric{flex:0 0 46vw;scroll-snap-align:start}#admTabs,#modTabs{display:flex;overflow-x:auto;gap:6px;scrollbar-width:none}#admTabs::-webkit-scrollbar,#modTabs::-webkit-scrollbar{display:none}#admTabs button,#modTabs button{flex:0 0 auto}}
@media(min-width:960px){#view-admin .wrap,#view-mod .wrap{max-width:1320px}#view-admin>.wrap,#view-mod>.wrap{display:grid;grid-template-columns:220px 1fr;gap:26px;align-items:start}#view-admin .shead,#view-mod .shead{grid-column:1/-1}#admTabs,#modTabs{position:sticky;top:84px;display:flex;flex-direction:column;gap:4px;overflow:visible;padding:0}#admTabs button,#modTabs button{justify-content:flex-start;text-align:left;border-radius:10px;padding:11px 14px}#admTabs button.active,#modTabs button.active{box-shadow:0 4px 16px -6px rgba(90,217,255,.5)}#view-admin>.wrap>div:not(#admTabs):not(.shead),#view-mod>.wrap>div:not(#modTabs):not(.shead){min-width:0}}
#view-admin .dacc-h{display:none}#view-admin .dacc{border:none!important;background:none!important;margin:0!important;box-shadow:none!important;border-radius:0;overflow:visible}#view-admin .dacc-b{border-top:none;padding:2px 0 8px}#view-admin h3{text-transform:none!important;letter-spacing:0!important;font-size:17px!important}#view-admin #adm-maint>h3{margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}#view-admin #adm-maint>h3:first-of-type{margin-top:4px;padding-top:0;border-top:none}#view-mod .dacc-h{display:none}#view-mod .dacc{border:none!important;background:none!important;margin:0!important;box-shadow:none!important;border-radius:0;overflow:visible}#view-mod .dacc-b{border-top:none;padding:2px 0 8px}#view-mod h3{text-transform:none!important;letter-spacing:0!important;font-size:17px!important}body.is-mod .adm-admin-only{display:none!important}#view-artist .dacc-h{display:none}#view-artist .dacc{border:none!important;background:none!important;margin:0!important;box-shadow:none!important;border-radius:0;overflow:visible}#view-artist .dacc-b{border-top:none;padding:2px 0 8px}#view-artist h3{text-transform:none!important;letter-spacing:0!important;font-size:17px!important}.card .new-ribbon{position:absolute;left:9px;bottom:9px;z-index:3;font-family:'JetBrains Mono';font-weight:800;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#04161c;background:linear-gradient(120deg,#19e3c2,#5ad9ff);padding:3px 8px;border-radius:999px;box-shadow:0 4px 14px -6px rgba(0,0,0,.9)}.feat-ribbon{position:absolute;top:9px;left:9px;z-index:3;font-family:'JetBrains Mono';font-weight:800;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#04161c;background:linear-gradient(120deg,#ffd23f,#ff9f1c);padding:3px 8px;border-radius:999px}.ap-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start;margin-top:16px}.ap-preview{position:sticky;top:90px}.ap-preview-tag{display:inline-block;font-family:'JetBrains Mono';font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.ap-preview .profile-head{margin:0}.pro-status-card{border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-bottom:18px;background:var(--card)}.pro-status-card.is-pro{border-color:rgba(25,227,194,.4)}.pro-status-card .psc-head{display:flex;align-items:center;gap:10px;font-size:16px;margin-bottom:10px}.pro-status-card .psc-rows{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:8px}.pro-status-card .psc-rows>div{display:flex;flex-direction:column}.pro-status-card .psc-rows span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.pro-status-card .psc-rows b{font-size:15px;color:var(--ink)}.pro-lock-field{opacity:.7}.pro-lock-field .lock{font-size:12px}@media(max-width:760px){.ap-grid{grid-template-columns:1fr}.ap-preview{position:static}}.pl-sec{margin-top:22px}.pl-sec-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.pl-sec-head h3{margin:0}.pl-card{border:1px solid var(--line);border-radius:12px;margin-bottom:12px;overflow:hidden;background:var(--card)}.pl-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;cursor:pointer}.pl-head b{font-size:15px}.pl-count{color:var(--muted);font-size:12px;margin-left:10px}.pl-caret{color:var(--muted)}.pl-actions{display:flex;gap:8px;padding:0 16px 12px}.pl-tracks{padding:4px 12px 10px;border-top:1px solid var(--line)}.pl-pick{display:flex;flex-direction:column;gap:6px;max-height:240px;overflow:auto}.pl-pick-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:8px}.btn-donate{color:#ff7aa8!important;border-color:rgba(255,122,168,.4)!important}.link-btn{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px;text-decoration:underline;padding:0;font-family:inherit}.donate-wrap{max-width:560px;margin:26px auto;text-align:center}.donate-wrap h2{margin:6px 0 10px}.donate-wrap .field{text-align:left;margin-top:14px}.don-intro{color:var(--muted);margin-bottom:6px}.don-amts{display:flex;gap:10px;flex-wrap:wrap}.don-amt{flex:1;min-width:64px;padding:12px 0;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font-weight:800;font-family:'Bricolage Grotesque',sans-serif;font-size:16px;cursor:pointer;transition:.15s}.don-amt:hover{border-color:var(--accent)}.don-amt.on{border-color:var(--accent);background:rgba(25,227,194,.12);color:var(--accent)}.radio-bar.collapsed .radio-inner{display:none}.radio-bar.collapsed .radio-fab{display:block}.radio-meta b{font-size:13px;color:var(--accent);white-space:nowrap;line-height:1.2}.radio-bar.playing .radio-btn{box-shadow:0 0 0 4px rgba(25,227,194,.2)}@media(max-width:560px){.radio-meta b{font-size:12px}}.pro-blur{filter:blur(5px);opacity:.55;pointer-events:none;user-select:none}.profile-banner{flex-basis:100%;width:100%;height:120px;border-radius:14px;background:var(--rainbow);background-size:200% auto;animation:hue 12s linear infinite;margin-bottom:6px}.pro-socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.pro-socials .soc-link{font-family:'JetBrains Mono';font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);border:1px solid var(--line);border-radius:999px;padding:5px 12px;text-decoration:none;transition:background .15s,border-color .15s}.pro-socials .soc-link:hover{background:rgba(25,227,194,.1);border-color:var(--accent)}#artistDash .pro-badge{display:inline-block;font-family:'JetBrains Mono';font-weight:800;font-size:9px;letter-spacing:.08em;color:#04161c;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;padding:2px 7px;border-radius:999px;margin-left:6px;vertical-align:middle}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,170%);background:var(--ink);color:#15100c;padding:13px 22px;border-radius:5px;font-family:'JetBrains Mono';font-weight:800;font-size:13px;letter-spacing:.03em;z-index:300;transition:.4s cubic-bezier(.2,1.3,.3,1);box-shadow:0 12px 30px rgba(0,0,0,.5);max-width:90vw;text-align:center;text-transform:uppercase;visibility:hidden}
.toast{z-index:10600}.toast.show{animation:toastAuto 2.3s cubic-bezier(.2,1.3,.3,1) forwards;pointer-events:none}@keyframes toastAuto{0%{transform:translate(-50%,170%);opacity:1;visibility:visible}9%{transform:translate(-50%,0)}88%{transform:translate(-50%,0);opacity:1;visibility:visible}100%{transform:translate(-50%,140%);opacity:0;visibility:hidden}}.toast.ok{background:var(--lime);color:#16200a}.toast.err{background:var(--hot);color:#fff}.wz-prog{font-family:'JetBrains Mono';font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:14px}
.wz-cur{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:11px 14px;border-radius:12px;background:linear-gradient(160deg,rgba(16,42,52,.6),rgba(8,20,26,.65));border:1px solid var(--glass-bd)}
.wz-cur .wz-cur-k{font-family:'JetBrains Mono';font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan)}
.wz-cur b{font-family:'Bricolage Grotesque';font-size:16px;line-height:1.15;word-break:break-word;flex:1;min-width:0}
.wz-cur .wz-cur-q{font-family:'JetBrains Mono';font-size:10.5px;color:var(--muted);white-space:nowrap}.wz-bar{height:6px;background:var(--bg2);border-radius:4px;margin-top:7px;overflow:hidden}.wz-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .3s}.wz-step{min-height:120px}.wz-h{font-size:16px;margin-bottom:6px;color:var(--ink)}.wz-lbl{display:block;font-weight:700;color:var(--ink);margin:8px 0 4px;font-size:14px}.wz-est{font-size:13px;color:var(--lime,#2bd9a0);margin-top:6px}.wz-info{font-size:13px;color:var(--ok,#2bd9a0);margin-top:8px}.wz-nav{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.wz-mode{display:flex;gap:10px;margin:6px 0 4px;flex-wrap:wrap}.wz-mode-btn{flex:1;min-width:140px;background:var(--bg2);border:1px solid var(--line);color:var(--ink);font-weight:700;font-size:14px;padding:14px 12px;border-radius:10px;cursor:pointer;transition:.15s}.wz-mode-btn:hover{border-color:var(--accent)}.wz-mode-btn.on{background:linear-gradient(135deg,var(--accent),var(--accent2));border-color:transparent;color:#04161c}.msg{max-width:82%;padding:8px 11px;border-radius:10px;font-size:13px;line-height:1.45;background:var(--bg2);border:1px solid var(--line);align-self:flex-start}.msg .who-line{font-family:'JetBrains Mono';font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px;color:var(--accent)}.msg.me{align-self:flex-end;background:linear-gradient(135deg,rgba(24,182,216,.22),rgba(20,160,178,.22));border-color:var(--accent2)}.msg.me .who-line{color:var(--cyan)}.dm-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;min-height:0}.dm-hint{padding:12px 14px;color:var(--muted);font-size:12px;border-bottom:1px solid var(--line);line-height:1.4}.dm-dot{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;border:2px solid var(--panel);background:#7b8a90}.dm-dot.on{background:#2bd9a0}.dm-role{font-family:'JetBrains Mono';font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.dm-unread{background:#ff2d55;color:#fff;border-radius:10px;font-size:11px;font-weight:800;padding:1px 7px;flex-shrink:0}@media(max-width:640px){nav{flex-wrap:wrap;gap:9px}.nav-links{order:3;width:100%;justify-content:center}.row2{grid-template-columns:1fr}}.up-progress{display:none;margin:12px 0;background:#08222b;border:1px solid var(--line);border-radius:9px;padding:4px;position:relative;height:26px}.up-phase{display:none;font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;color:var(--accent,#19e3c2);text-align:center;margin:12px 0 -4px}.up-progress .up-bar{height:100%;width:0;border-radius:6px;background:linear-gradient(120deg,var(--accent,#19e3c2),var(--accent2,#23b6e6));transition:width .2s ease}.up-progress .up-pct{position:absolute;top:0;left:0;right:0;line-height:26px;text-align:center;font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;color:var(--ink)}.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#2bd9a0;box-shadow:0 0 7px #2bd9a0;margin-right:7px;vertical-align:middle;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.45}}.pw-hint{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0 2px}.pw-chip{font-family:'JetBrains Mono',monospace;font-size:10px;padding:3px 7px;border-radius:20px;border:1px solid var(--line);color:var(--muted)}.pw-chip.ok{background:rgba(43,217,160,.15);color:#2bd9a0;border-color:transparent}.lang-switch{display:flex;gap:3px;align-items:center;margin:0 6px}.lang-inline{display:none}.lang-btn{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.04em;padding:5px 8px;border-radius:7px;border:1px solid var(--line,#16414e);background:transparent;color:var(--muted,#80a8b2);cursor:pointer;transition:.15s}.lang-btn:hover{color:var(--ink,#e9fbff);border-color:var(--accent,#19e3c2)}.lang-btn.active{background:linear-gradient(120deg,var(--accent,#19e3c2),var(--accent2,#23b6e6));color:#04181a;border-color:transparent}@media(max-width:560px){.lang-switch{margin:0 2px}.lang-btn{padding:4px 6px;font-size:10px}}.prev-tab.active{background:rgba(25,227,194,.15);color:var(--accent,#19e3c2);border-color:var(--accent,#19e3c2)}.sc-embed iframe{border-radius:8px;display:block}
#scBar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:132;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(155deg,rgba(16,16,30,.94),rgba(8,8,16,.97));-webkit-backdrop-filter:blur(24px) saturate(1.6);backdrop-filter:blur(24px) saturate(1.6);border-radius:22px 22px 0 0;box-shadow:0 -24px 60px -28px #000,0 0 40px -14px rgba(155,108,255,.5),inset 0 1px 0 rgba(255,255,255,.10)}
#scBar.on{display:block}
#scBar .scb-head{display:flex;align-items:center;gap:10px;margin-bottom:8px;min-width:0}
#scBar .scb-tt{flex:1;min-width:0;font-size:13px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#scBar .scb-ar{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#scBar .scb-x{flex:0 0 auto;background:none;border:1px solid var(--line);color:var(--muted);border-radius:8px;width:30px;height:30px;font-size:15px;cursor:pointer}
#scBar .scb-x:hover{color:var(--ink);border-color:rgba(255,255,255,.35)}
#scBar iframe{width:100%;height:120px;border:0;border-radius:10px;display:block}.range{display:flex;gap:5px;background:rgba(8,34,43,.7);border:1px solid var(--line,#16414e);border-radius:11px;padding:4px}.range button{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;border:none;background:transparent;color:var(--muted,#80a8b2);padding:6px 12px;border-radius:8px;cursor:pointer;transition:.15s}.range button.on{background:linear-gradient(120deg,var(--accent,#19e3c2),var(--accent2,#23b6e6));color:#04181a}.range button:not(.on):hover{color:var(--ink,#e9fbff)}#artistDash .kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:18px 0}#artistDash .kpi{background:rgba(13,40,50,.72);border:1px solid var(--line,#16414e);border-radius:15px;padding:16px 17px;position:relative;overflow:hidden}#artistDash .kpi .lbl{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted,#80a8b2)}#artistDash .kpi .val{font-family:'Bricolage Grotesque','Hanken Grotesk',sans-serif;font-weight:800;font-size:26px;line-height:1.05;margin:8px 0 4px}#artistDash .kpi .val.grad{background:linear-gradient(120deg,var(--accent,#19e3c2),var(--accent2,#23b6e6));-webkit-background-clip:text;background-clip:text;color:transparent}#artistDash .chg{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;color:var(--muted,#80a8b2)}#artistDash .chg.up{color:var(--ok,#2bd9a0)}#artistDash .chg.down{color:var(--hot,#ff3b6b)}#artistDash .cols{display:grid;grid-template-columns:1.55fr 1fr;gap:13px}#artistDash .card{background:rgba(13,40,50,.72);border:1px solid var(--line,#16414e);border-radius:15px;padding:18px}#artistDash .card h2{font-family:'Bricolage Grotesque','Hanken Grotesk',sans-serif;font-weight:800;font-size:15px;margin:0 0 3px}#artistDash .card .cap{color:var(--muted,#80a8b2);font-size:12px;margin:0 0 14px}#artistDash .chart{display:flex;align-items:flex-end;gap:5px;height:150px;padding-top:6px}#artistDash .bar{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end}#artistDash .bar .b{width:100%;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,var(--accent,#19e3c2),var(--accent2,#23b6e6));min-height:3px}#artistDash .bar .b:hover{filter:brightness(1.15)}#artistDash .bar .dd{font-family:'JetBrains Mono',monospace;font-size:8.5px;color:var(--muted,#80a8b2)}#artistDash .donut-wrap{display:flex;align-items:center;gap:16px}#artistDash .legend{display:flex;flex-direction:column;gap:8px;flex:1}#artistDash .legend .row{display:flex;align-items:center;gap:8px;font-size:13px}#artistDash .legend .dot{width:11px;height:11px;border-radius:3px;flex-shrink:0}#artistDash .legend .pc{margin-left:auto;font-family:'JetBrains Mono',monospace;font-weight:700;font-size:12px;color:var(--muted,#80a8b2)}#artistDash .trow{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line,#16414e)}#artistDash .trow:last-child{border-bottom:none}#artistDash .trow .meta{flex:1;min-width:0}#artistDash .trow .meta b{font-size:14px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#artistDash .trow .meta span{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted,#80a8b2)}#artistDash .trow .rev{font-family:'Bricolage Grotesque','Hanken Grotesk',sans-serif;font-weight:800;font-size:16px;color:var(--accent,#19e3c2)}#artistDash .grow{display:flex;align-items:center;gap:9px;margin-bottom:11px;font-size:13px}#artistDash .grow .flag{font-size:16px}.grow .cc{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted,#80a8b2);width:20px}#artistDash .meterw{flex:1;height:8px;background:#08222b;border-radius:6px;overflow:hidden}#artistDash .meter{height:100%;border-radius:6px;background:linear-gradient(90deg,var(--accent,#19e3c2),var(--accent2,#23b6e6))}#artistDash .grow .pc{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;color:var(--muted,#80a8b2);width:30px;text-align:right}#artistDash .funnel .step{display:flex;justify-content:space-between;font-size:12.5px;margin-bottom:5px;color:var(--muted,#80a8b2)}#artistDash .funnel .step b{color:var(--ink,#e9fbff)}#artistDash .funnel .fbar{height:9px;border-radius:6px;margin-bottom:13px;background:linear-gradient(90deg,var(--accent2,#23b6e6),var(--accent,#19e3c2))}#artistDash .payout{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:linear-gradient(120deg,rgba(25,227,194,.12),rgba(35,182,230,.08));border:1px solid rgba(25,227,194,.3);border-radius:15px;padding:17px 21px;margin-top:14px}#artistDash .payout .l{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--accent,#19e3c2)}#artistDash .payout .v{font-family:'Bricolage Grotesque','Hanken Grotesk',sans-serif;font-weight:800;font-size:25px;margin-top:3px}#artistDash .payout .note{color:var(--muted,#80a8b2);font-size:12px;margin-top:3px}#artistDash .payout button{font-family:'Bricolage Grotesque','Hanken Grotesk',sans-serif;font-weight:800;font-size:14px;border:none;cursor:pointer;padding:11px 20px;border-radius:11px;background:linear-gradient(120deg,var(--accent,#19e3c2),var(--accent2,#23b6e6));color:#04181a}#artistDash .dash-foot{color:var(--muted,#80a8b2);font-size:12px;text-align:center;margin-top:16px}@media(max-width:760px){#artistDash .kpis{grid-template-columns:repeat(2,1fr)}#artistDash .cols{grid-template-columns:1fr}}.stat-refresh{font-size:15px!important;padding:6px 10px!important}.stat-refresh.spin{animation:scspin .7s linear infinite}@keyframes scspin{to{transform:rotate(360deg)}}.clip-ui{margin-top:12px}.clip-wrap{position:relative;width:100%;height:90px;background:#06171c;border:1px solid var(--line,#16414e);border-radius:10px;overflow:hidden;touch-action:none;cursor:crosshair;user-select:none}.clip-canvas{display:block;position:absolute;inset:0}.clip-sel{position:absolute;top:0;bottom:0;left:0;width:30%;background:rgba(25,227,194,.18);border:2px solid var(--accent,#19e3c2);border-radius:6px;cursor:grab;box-shadow:0 0 14px rgba(25,227,194,.35)}.clip-sel:active{cursor:grabbing}.trim-region{position:absolute;top:0;bottom:0;background:rgba(124,140,255,.16);border-top:2px solid #7c8cff;border-bottom:2px solid #7c8cff;pointer-events:none}
.trim-cursor{position:absolute;top:0;bottom:0;width:2px;background:#fff;opacity:0;pointer-events:none;box-shadow:0 0 6px #fff;transition:opacity .12s;z-index:3}.trim-h{position:absolute;top:0;bottom:0;width:14px;margin-left:-7px;background:#7c8cff;border-radius:4px;cursor:ew-resize;box-shadow:0 0 12px rgba(124,140,255,.6);touch-action:none}.trim-h::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:40%;background:rgba(255,255,255,.7);box-shadow:3px 0 rgba(255,255,255,.7),-3px 0 rgba(255,255,255,.7)}.alp-drop{border:2px dashed rgba(25,227,194,.5);border-radius:24px;padding:54px 20px;text-align:center;cursor:pointer;transition:.25s;background:linear-gradient(180deg,rgba(25,227,194,.06),rgba(124,140,255,.03));backdrop-filter:blur(8px)}.alp-drop.drag,.alp-drop:hover{background:linear-gradient(180deg,rgba(25,227,194,.16),rgba(124,140,255,.06));border-color:var(--cyan,#5ad9ff);transform:translateY(-2px);box-shadow:0 16px 40px -20px rgba(25,227,194,.5)}.alp-drop-ic{font-size:52px;margin-bottom:12px;filter:drop-shadow(0 4px 14px rgba(25,227,194,.4))}.alp-drop-t{font-family:'Bricolage Grotesque';font-size:20px;font-weight:800;color:var(--ink)}.alp-drop-s{font-family:'JetBrains Mono';font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-top:6px}.alp-card{position:relative;border:1px solid rgba(255,255,255,.08);border-radius:24px;overflow:hidden;background:linear-gradient(160deg,rgba(16,52,64,.7),rgba(8,22,28,.85));backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 30px 80px -30px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.06)}.alp-card::before{content:'';position:absolute;top:-40%;left:50%;transform:translateX(-50%);width:140%;height:60%;background:radial-gradient(closest-side,rgba(25,227,194,.22),transparent 70%);pointer-events:none;animation:alpGlow 6s ease-in-out infinite}@keyframes alpGlow{0%,100%{opacity:.5;transform:translateX(-50%) scale(1)}50%{opacity:.9;transform:translateX(-50%) scale(1.15)}}.alp-canvas{display:block;width:100%;height:320px;background:radial-gradient(130% 130% at 50% 0%,#0c2c38,#051116);position:relative;z-index:1}.alp-info{padding:18px 20px 4px;display:flex;flex-direction:column;gap:4px;position:relative;z-index:1}.alp-info b{font-family:'Bricolage Grotesque';font-size:19px;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em}.alp-info span{font-family:'JetBrains Mono';font-size:12px;color:var(--accent);letter-spacing:.03em}.alp-bar{position:relative;height:10px;margin:16px 20px 0;background:rgba(255,255,255,.09);border-radius:8px;cursor:pointer;touch-action:none}.alp-bar-fill{position:absolute;top:0;left:0;bottom:0;width:0;background:linear-gradient(90deg,var(--accent,#19e3c2),var(--cyan,#5ad9ff));border-radius:6px;box-shadow:0 0 12px rgba(25,227,194,.6)}.alp-bar-fill::after{content:'';position:absolute;right:-6px;top:50%;transform:translateY(-50%);width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 10px rgba(255,255,255,.8)}.alp-times{display:flex;justify-content:space-between;padding:8px 20px 0;font-family:'JetBrains Mono';font-size:11px;color:var(--muted)}.alp-ctl{display:flex;align-items:center;justify-content:center;gap:13px;padding:16px 18px 22px}.alp-btn{width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:var(--ink);font-size:18px;cursor:pointer;display:grid;place-items:center;transition:.18s;backdrop-filter:blur(6px)}.alp-btn:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px);box-shadow:0 6px 18px -8px rgba(25,227,194,.5)}.alp-btn:active{transform:translateY(0)}.alp-btn.alp-main{width:64px;height:64px;font-size:25px;background:linear-gradient(135deg,var(--accent),var(--accent2,#7ef9d2));color:#06171c;border:none;box-shadow:0 10px 28px -8px rgba(25,227,194,.7)}.alp-btn.alp-main:hover{transform:translateY(-2px) scale(1.04)}#alpViz{background:linear-gradient(135deg,rgba(124,140,255,.18),rgba(25,227,194,.12));border-color:rgba(124,140,255,.35)}@media(max-width:640px){.alp-canvas{height:250px}.alp-btn{width:44px;height:44px;font-size:16px}.alp-btn.alp-main{width:56px;height:56px;font-size:22px}.alp-ctl{gap:10px}}.clip-cursor{position:absolute;top:0;bottom:0;width:2px;background:#fff;opacity:0;pointer-events:none;box-shadow:0 0 6px #fff}.player .pv-label{flex:1;font-family:'JetBrains Mono';font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 4px}.player.pv-playing .pv-label{color:var(--accent)}.player.pv-playing{border-color:var(--neon,rgba(90,217,255,.55))}.clip-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.clip-time{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;color:var(--accent,#19e3c2)}.maint-gate{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(1000px 600px at 50% -10%,rgba(25,227,194,.12),transparent 60%),linear-gradient(160deg,#05141a,#06171c 50%,#07202a)}.maint-card{max-width:440px;width:100%;text-align:center;background:rgba(13,40,50,.86);border:1px solid var(--line,#16414e);border-radius:18px;padding:36px 28px;box-shadow:0 24px 70px rgba(0,0,0,.5)}.maint-icon{font-size:46px;margin-bottom:8px}.maint-card h2{font-family:'Bricolage Grotesque','Hanken Grotesk',sans-serif;font-weight:800;font-size:24px;margin:0 0 10px}.maint-card p{color:var(--muted,#80a8b2);font-size:14.5px;line-height:1.6;margin:0 0 14px}.maint-card .field{text-align:left;margin-bottom:12px}.maint-badge{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;padding:9px 13px;border-radius:9px;display:inline-block}.maint-badge.on{background:rgba(255,59,107,.14);color:#ff6b8b;border:1px solid rgba(255,59,107,.4)}.maint-badge.off{background:rgba(43,217,160,.14);color:#2bd9a0;border:1px solid rgba(43,217,160,.4)}.maint-section{margin-bottom:32px}.maint-sh{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent,#2bd9a0);padding:0 0 10px;margin:0 0 14px;border-bottom:1px solid var(--line,#16414e);display:flex;align-items:center;gap:8px}.maint-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.maint-grid .panel{margin:0!important}.maint-grid .maint-full{grid-column:1/-1}@media(max-width:700px){.maint-grid{grid-template-columns:1fr}}.cart-totals{margin:6px 0 16px;border-top:1px solid var(--line,#16414e);padding-top:10px}.cart-totals .mini{display:flex;justify-content:space-between;font-size:13.5px;color:var(--muted,#80a8b2);padding:3px 0}.cart-totals .mini.tot{font-size:18px;font-weight:800;color:var(--ink,#e9fbff);border-top:1px solid var(--line,#16414e);margin-top:6px;padding-top:8px}.profile-head{display:block;margin-bottom:30px}.profile-head .pa{width:88px;height:88px;border-radius:50%;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;display:grid;place-items:center;color:#04161c;font-family:'Bricolage Grotesque';font-weight:800;font-size:32px;flex-shrink:0;overflow:hidden}.profile-head .pinfo h2{font-family:'Bricolage Grotesque','Hanken Grotesk',sans-serif;font-weight:800;font-size:30px;margin:2px 0 8px}.profile-head .pstats{display:flex;gap:18px;color:var(--muted,#80a8b2);font-size:14px;align-items:center}.profile-head .pstats b{color:var(--ink,#e9fbff)}.nav-badge{position:absolute;top:-7px;right:-7px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--hot,#ff3b6b);color:#fff;font-size:11px;font-weight:800;font-family:'JetBrains Mono',monospace;display:inline-flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 2px 6px rgba(255,59,107,.5);pointer-events:none}.notif-btn{position:relative}#navLinks button,.dacc-h{position:relative;overflow:visible}.dacc-h .nav-badge{position:absolute;right:46px;top:50%;transform:translateY(-50%)}.lrow-wrap{background:rgba(255,255,255,.02);border:1px solid var(--line,#173842);border-radius:14px;margin-bottom:10px}.lrow-wrap .lrow{margin-bottom:0;border:none;background:none}.lrow-preview{padding:0 14px 14px}.lrow-preview .player{margin-top:0}.lrow-preview.mod-listen-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.lrow-preview .mod-listen-note{font-family:'JetBrains Mono';font-size:11px;color:var(--muted)}#bubbleTab{position:fixed;right:0;top:50%;transform:translateY(-50%);bottom:auto;z-index:125;width:30px;height:54px;border:1px solid rgba(150,160,255,.4);border-right:none;border-radius:10px 0 0 10px;background:conic-gradient(from 200deg,#19e3c2,#5ad9ff,#9b6cff,#ff5cc8,#19e3c2);color:#fff;line-height:1;cursor:pointer;box-shadow:0 8px 22px -8px rgba(0,0,0,.7),0 0 18px -4px rgba(155,108,255,.7);display:flex;align-items:center;justify-content:flex-start;padding:0 0 0 6px;overflow:hidden;white-space:nowrap;transition:width .28s ease,top .2s ease,bottom .2s ease}body.lp-on:not(.lp-fullopen):not(.car-mode):not(.lp-reduced) #carTab{top:auto;bottom:var(--right-tabs-bottom,200px);transform:none}body.lp-on:not(.lp-fullopen):not(.car-mode):not(.lp-reduced) #animTab{top:auto;bottom:calc(var(--right-tabs-bottom,200px) + 66px);transform:none}body.lp-on:not(.lp-fullopen):not(.car-mode):not(.lp-reduced) #bubbleTab{top:auto;bottom:calc(var(--right-tabs-bottom,200px) + 132px);transform:none}#rightTabsBtn{display:none;position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:126;width:40px;height:40px;padding:0;box-sizing:border-box;font-size:16px;border:1px solid rgba(150,160,255,.4);border-right:none;border-radius:10px 0 0 10px;background:conic-gradient(from 200deg,#19e3c2,#5ad9ff,#9b6cff,#ff5cc8,#19e3c2);color:#fff;font-weight:800;cursor:pointer;place-items:center;box-shadow:0 8px 22px -8px rgba(0,0,0,.7),0 0 18px -4px rgba(155,108,255,.7)}#rightTabsPop{position:fixed;z-index:134;display:flex;flex-direction:column;gap:6px;padding:10px;max-height:calc(100vh - 24px);overflow:auto;background:rgba(8,12,22,.96);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(150,160,255,.3);border-radius:14px;box-shadow:0 16px 40px -12px #000}#rightTabsPop[hidden]{display:none}#rightTabsPop>button{background:rgba(255,255,255,.06);border:1px solid rgba(150,160,255,.2);color:#dfe6ff;border-radius:9px;padding:8px 14px;font-size:13px;font-weight:700;cursor:pointer;text-align:left;white-space:nowrap}#rightTabsPop>button:hover{background:rgba(255,255,255,.12)}body:not(.car-mode) #bubbleTab,body:not(.car-mode) #animTab,body:not(.car-mode) #carTab{display:none!important}body:not(.car-mode) #rightTabsBtn{display:grid}body:not(.car-mode).lp-on:not(.lp-reduced) #rightTabsBtn{top:auto;bottom:var(--right-tabs-bottom,200px);transform:none}#animTab{position:fixed;right:0;top:calc(50% + 66px);transform:translateY(-50%);z-index:125;width:30px;height:54px;border:1px solid rgba(150,160,255,.4);border-right:none;border-radius:10px 0 0 10px;background:conic-gradient(from 20deg,#9b6cff,#ff5cc8,#19e3c2,#5ad9ff,#9b6cff);color:#fff;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:flex-start;padding:0 0 0 6px;overflow:hidden;white-space:nowrap;transition:width .28s ease;box-shadow:0 8px 22px -8px rgba(0,0,0,.7),0 0 18px -4px rgba(155,108,255,.7)}#bubbleTab .ct-ico,#animTab .ct-ico{font-size:17px;flex:0 0 auto}#bubbleTab .ct-lbl,#animTab .ct-lbl{font-size:12px;font-weight:700;opacity:0;margin-left:6px;transition:opacity .2s ease .05s}#bubbleTab.open,#animTab.open{width:200px}#bubbleTab.open .ct-lbl,#animTab.open .ct-lbl{opacity:1}body.nav-open #animTab{opacity:0;pointer-events:none;transition:opacity .15s}body.bubbles-hidden body.bubbles-hidden .listen-list{display:flex;flex-direction:column;gap:8px}.listen-row{display:flex;gap:12px;align-items:center;background:rgba(255,255,255,.02);border:1px solid var(--line,#173842);border-radius:10px;padding:8px 12px;margin-bottom:10px}.listen-row.playing{border-color:var(--cyan);background:rgba(25,227,194,.08);box-shadow:0 0 0 1px var(--cyan) inset}.listen-row .lr-cover{width:48px;height:48px;border-radius:8px;overflow:hidden;flex-shrink:0;position:relative;cursor:pointer}.listen-row .lr-cover img{width:100%;height:100%;object-fit:cover;display:block}.listen-row .lr-cover .noimg{width:100%;height:100%;display:grid;place-items:center;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;color:#04161c;font-size:20px}.lr-playo{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:15px;background:rgba(4,12,16,.32);transition:.15s}.listen-row .lr-cover:hover .lr-playo{background:rgba(4,12,16,.6)}.lsel{display:inline-flex;gap:3px;padding:3px;margin:0 0 16px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.02)}.lsel button{-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;font:700 11px/1 'JetBrains Mono',monospace;letter-spacing:1px;padding:8px 14px;border:none;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer;transition:.15s}.lsel button.on{color:#04161c;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite}.lr-eq{display:none;align-items:flex-end;gap:2px;height:16px;width:20px;flex:none}.listen-row.playing .lr-eq{display:flex}.lr-eq i{width:3px;background:var(--cyan);border-radius:2px;animation:lveq 1s ease-in-out infinite}.lr-eq i:nth-child(2){animation-delay:.25s}.lr-eq i:nth-child(3){animation-delay:.5s}@keyframes lveq{0%,100%{height:4px}50%{height:14px}}.lchips{display:flex;gap:7px;overflow-x:auto;padding:0 1px 14px;-webkit-overflow-scrolling:touch}.lchips::-webkit-scrollbar{display:none}.lchip{-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;flex:none;font:700 11px/1 'JetBrains Mono',monospace;letter-spacing:1px;padding:8px 13px;border-radius:999px;border:1px solid var(--line);color:var(--muted);background:rgba(255,255,255,.02);cursor:pointer;transition:.15s}.lchip.on{color:#04161c;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;border-color:transparent}.lhero{position:relative;border-radius:18px;overflow:hidden;margin-bottom:20px;border:1px solid var(--line);background:#0e1822}.lhero-cv{position:relative;width:100%;aspect-ratio:16/9;cursor:pointer}.lhero-cv img{width:100%;height:100%;object-fit:cover;display:block}.lhero-cv .noimg{width:100%;height:100%;display:grid;place-items:center;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;color:#04161c;font-size:46px}.lhero-play{position:absolute;right:14px;bottom:14px;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:#04161c;font-size:19px;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;box-shadow:0 10px 26px -8px rgba(155,108,255,.75)}.lhero.playing .lhero-cv::after{content:'';position:absolute;inset:0;box-shadow:0 0 0 2px var(--cyan) inset}.lhero-info{padding:14px 16px 16px}.lhero-info .eyebrow{font:700 10px/1 'JetBrains Mono',monospace;letter-spacing:2px;color:var(--cyan);text-transform:uppercase}.lhero-t{display:block;font:800 19px/1.15 inherit;margin:7px 0 3px}.lhero-a{display:block;font:600 12px/1.2 'JetBrains Mono',monospace;color:var(--muted);cursor:pointer}.lhero-act{margin-top:12px}.lrail-h{font:700 11px/1 'JetBrains Mono',monospace;letter-spacing:2px;color:var(--cyan);text-transform:uppercase;margin:0 0 10px}.lrail{display:flex;gap:11px;overflow-x:auto;padding:0 1px 18px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.lrail::-webkit-scrollbar{display:none}.lrcard{flex:0 0 116px;min-width:0;max-width:116px;scroll-snap-align:start;cursor:pointer}.lrcard-cv{position:relative;width:116px;height:116px;border-radius:12px;overflow:hidden}.lrcard-cv img{width:100%;height:100%;object-fit:cover;display:block}.lrcard-cv .noimg{width:100%;height:100%;display:grid;place-items:center;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;color:#04161c;font-size:24px}.lrcard-play{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:18px;background:rgba(4,12,16,.28);opacity:0;transition:.15s}.lrcard:hover .lrcard-play,.lrcard.playing .lrcard-play{opacity:1}.lrcard.playing .lrcard-cv{box-shadow:0 0 0 2px var(--cyan) inset}.lrcard-t{display:block;max-width:116px;font:800 12px/1.2 inherit;margin:7px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lrcard-a{display:block;max-width:116px;font:600 10px/1.1 'JetBrains Mono',monospace;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.lp-tinted .lp{border-top-color:hsla(var(--lp-h,186),var(--lp-s,70%),var(--lp-l,58%),.55)!important;box-shadow:0 -24px 60px -28px #000,0 0 54px -16px hsla(var(--lp-h,186),var(--lp-s,70%),var(--lp-l,58%),.5),inset 0 1px 0 rgba(255,255,255,.10)}body.lp-tinted #lpCoverImg{box-shadow:0 0 26px -8px hsla(var(--lp-h,186),var(--lp-s,70%),var(--lp-l,58%),.75)}body.lp-tinted #lpMiniBar{border-top-color:hsla(var(--lp-h,186),var(--lp-s,70%),var(--lp-l,58%),.45)}body.lp-tinted #lpBar .lp-title{text-shadow:0 0 22px hsla(var(--lp-h,186),var(--lp-s,70%),var(--lp-l,58%),.45)}#lpToolsPop #lpFadeBtn.on{color:var(--cyan);box-shadow:inset 0 0 0 1px rgba(25,227,194,.45)}.lp{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;background:linear-gradient(155deg,rgba(16,16,30,.88),rgba(8,8,16,.93));-webkit-backdrop-filter:blur(24px) saturate(1.6);backdrop-filter:blur(24px) saturate(1.6);border:1px solid transparent;border-radius:22px 22px 0 0;padding:14px 18px;position:fixed;left:0;right:0;bottom:0;z-index:130;box-shadow:0 -24px 60px -28px #000,0 0 40px -14px rgba(155,108,255,.5),inset 0 1px 0 rgba(255,255,255,.10);padding-bottom:calc(18px + env(safe-area-inset-bottom))}.lp::before{content:'';position:absolute;inset:0;border-radius:22px 22px 0 0;padding:1px;background:linear-gradient(120deg,rgba(90,217,255,.3),rgba(155,108,255,.32),rgba(255,92,200,.28));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.55}@keyframes lpAurora{0%{background-position:0% 0}100%{background-position:300% 0}}@keyframes lpHoloBg{0%{background-position:0% 0,0 0}100%{background-position:320% 0,0 0}}@keyframes lpHoloBtn{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}@property --lpA{syntax:'<angle>';inherits:false;initial-value:0deg}@keyframes lpSpin{to{transform:rotate(360deg)}}.lp::after{content:'';position:absolute;left:50%;top:-46px;transform:translateX(-50%);width:62%;height:64px;background:radial-gradient(closest-side,rgba(155,108,255,.28),rgba(90,217,255,.16),transparent 80%);filter:blur(10px);pointer-events:none;opacity:.85}.lp-rim{position:absolute;inset:0;border-radius:22px 22px 0 0;overflow:hidden;pointer-events:none;z-index:-1}.lp-rim::before{content:'';position:absolute;inset:0;border-radius:22px 22px 0 0;padding:2px;background:conic-gradient(from 0deg,#19e3c2,#5ad9ff,#9b6cff,#ff5cc8,#19e3c2);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;transform-origin:center;animation:lpSpin 7s linear infinite}.lp-close{position:absolute;top:-29px;right:18px;background:linear-gradient(150deg,rgba(20,52,64,.72),rgba(10,20,34,.82));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(120,230,255,.22);border-bottom:none;border-radius:12px 12px 0 0;color:var(--muted);font-family:'JetBrains Mono';font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:7px 14px;cursor:pointer;line-height:1;box-shadow:0 -8px 18px -10px rgba(0,0,0,.6)}.lp-close:hover{color:var(--ink)}.lp-expand{position:absolute;top:-29px;left:18px;background:linear-gradient(150deg,rgba(20,52,64,.72),rgba(10,20,34,.82));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(150,160,255,.3);border-bottom:none;border-radius:12px 12px 0 0;color:#9fd8ff;font-size:13px;font-weight:800;padding:6px 15px;cursor:pointer;line-height:1;box-shadow:0 -8px 18px -10px rgba(0,0,0,.6)}.lp-expand:hover{color:#fff}.lp-min{position:absolute;top:-29px;left:64px;background:linear-gradient(150deg,rgba(20,52,64,.72),rgba(10,20,34,.82));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(150,160,255,.3);border-bottom:none;border-radius:12px 12px 0 0;color:#9fd8ff;font-size:13px;font-weight:800;padding:6px 11px;cursor:pointer;line-height:1;box-shadow:0 -8px 18px -10px rgba(0,0,0,.6);z-index:3}.lp-min:hover{color:#fff}.lp.lp-full .lp-min{display:none}body.lp-reduced #lpBar{display:none!important}#gsOverlay{position:fixed;inset:0;z-index:200;background:rgba(4,8,14,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:flex-start;padding:8vh 14px 14px}#gsOverlay[hidden]{display:none}.gs-box{width:min(620px,100%);background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 30px 80px -30px #000;display:flex;flex-direction:column;max-height:78vh}.gs-head{display:flex;gap:8px;padding:12px;border-bottom:1px solid var(--line)}.gs-head input{flex:1;background:var(--bg);border:1px solid var(--line);border-radius:8px;color:var(--ink);padding:12px 14px;font-size:15px}.gs-body{overflow:auto;-webkit-overflow-scrolling:touch;padding:6px}.gs-sec{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:10px 10px 6px}.gs-it{display:flex;gap:10px;align-items:center;width:100%;background:none;border:0;color:var(--ink);text-align:left;padding:9px 10px;border-radius:9px;cursor:pointer}.gs-it:hover,.gs-it.sel{background:rgba(25,227,194,.10)}.gs-it img,.gs-it .gs-ph{width:38px;height:38px;border-radius:7px;object-fit:cover;flex:0 0 38px;background:var(--bg);display:grid;place-items:center;color:var(--muted);font-size:15px}.gs-it b{display:block;font-size:14px;font-weight:700;line-height:1.25}.gs-it small{color:var(--muted);font-size:11.5px;font-family:'JetBrains Mono',monospace}.gs-empty{color:var(--muted);font-size:13px;padding:20px 12px;text-align:center}.gs-recent{display:flex;flex-wrap:wrap;gap:6px;padding:4px 10px 12px}.gs-recent button{background:var(--bg);border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:6px 11px;font-size:12px;cursor:pointer}.filters{position:sticky;top:0;z-index:6;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:10px 0;margin-bottom:18px;background:linear-gradient(180deg,var(--bg) 72%,transparent)}.filters::-webkit-scrollbar{display:none}.filters .chip{flex:0 0 auto;white-space:nowrap}@keyframes skPulse{0%,100%{opacity:.35}50%{opacity:.7}}.sk-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel)}.sk-card .sk-cov{aspect-ratio:1;background:linear-gradient(110deg,rgba(255,255,255,.05),rgba(255,255,255,.12),rgba(255,255,255,.05));animation:skPulse 1.3s ease-in-out infinite}.sk-card .sk-l{height:11px;margin:12px 14px;border-radius:4px;background:rgba(255,255,255,.10);animation:skPulse 1.3s ease-in-out infinite}.sk-card .sk-l.s{width:52%;margin:0 14px 14px}#tabBar{display:none}@media(max-width:760px){#tabBar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:128;background:linear-gradient(180deg,rgba(10,16,24,.94),rgba(5,9,14,.99));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}#tabBar button{background:none;border:0;color:var(--muted);font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;padding:7px 2px 8px;display:flex;flex-direction:column;align-items:center;gap:3px;cursor:pointer;-webkit-tap-highlight-color:transparent}#tabBar .tb-i{font-size:17px;line-height:1}#tabBar button.on{color:var(--cyan)}#tabBar button.on .tb-i{filter:drop-shadow(0 0 7px rgba(25,227,194,.75))}#tabBar button:active{transform:scale(.94)}body{padding-bottom:calc(60px + env(safe-area-inset-bottom))}body.nav-open #tabBar,body.lp-on:not(.lp-reduced) #tabBar{display:none}body.lp-reduced.lp-on #lpMiniBar{bottom:calc(59px + env(safe-area-inset-bottom))}}#lpMiniBar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:134;height:56px;align-items:center;gap:10px;padding:0 12px;box-sizing:border-box;background:linear-gradient(180deg,rgba(10,16,24,.92),rgba(6,10,16,.98));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(150,160,255,.35);box-shadow:0 -6px 20px -8px rgba(0,0,0,.7),0 0 24px -8px rgba(155,108,255,.5);cursor:pointer}body.lp-reduced.lp-on #lpMiniBar{display:flex}#lpMiniBar .lpmb-cov{width:38px;height:38px;border-radius:7px;overflow:hidden;flex:0 0 38px;background:#0b1620;display:grid;place-items:center;border:1px solid rgba(150,160,255,.25)}#lpMiniBar .lpmb-cov img{width:100%;height:100%;object-fit:cover}#lpMiniBar .lpmb-cov .noimg{color:#5ad9ff;font-size:18px}#lpMiniBar .lpmb-meta{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;justify-content:center;line-height:1.15}#lpMiniBar .lpmb-meta b{font-size:13.5px;color:#eaf2ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#lpMiniBar .lpmb-meta span{font-size:11.5px;color:#8aa0c0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#lpMiniBar .lpmb-play{flex:0 0 auto;width:40px;height:40px;border-radius:50%;border:1px solid rgba(150,160,255,.4);background:conic-gradient(from 90deg,#19e3c2,#5ad9ff,#9b6cff,#ff5cc8,#19e3c2);color:#04121a;font-size:16px;display:grid;place-items:center;cursor:pointer;padding:0}#lpMiniBar .lpmb-up{flex:0 0 auto;width:34px;height:40px;border:none;background:none;color:#9fb2d6;font-size:16px;cursor:pointer;padding:0}body.lp-reduced.lp-on #carPlayerTab,body.lp-reduced.lp-on #lpReTab{display:none!important}body.lp-reduced.lp-on{padding-bottom:56px}#lpReTab{position:fixed;right:0;top:calc(50% + 132px);transform:translateY(-50%);bottom:auto;z-index:125;width:32px;height:58px;border:1px solid rgba(150,160,255,.4);border-right:none;border-radius:10px 0 0 10px;background:conic-gradient(from 90deg,#19e3c2,#5ad9ff,#9b6cff,#ff5cc8,#19e3c2);color:#fff;font-size:17px;line-height:1;cursor:pointer;display:none;place-items:center;padding:0;box-shadow:0 8px 22px -8px rgba(0,0,0,.7),0 0 18px -4px rgba(155,108,255,.7)}#carTab{position:fixed;right:0;top:calc(50% + 132px);transform:translateY(-50%);bottom:auto;z-index:125;height:54px;width:30px;border:1px solid rgba(150,160,255,.4);border-right:none;border-radius:10px 0 0 10px;background:conic-gradient(from 280deg,#5ad9ff,#19e3c2,#9b6cff,#ff5cc8,#5ad9ff);color:#fff;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:flex-start;padding:0 0 0 6px;overflow:hidden;white-space:nowrap;box-shadow:0 8px 22px -8px rgba(0,0,0,.7),0 0 18px -4px rgba(155,108,255,.7);transition:width .28s ease,top .2s ease}body:not(.car-mode) #lpBar:not(.lp-full) #lpExpand,body:not(.car-mode) #lpBar:not(.lp-full) #lpMin,body:not(.car-mode) #lpBar:not(.lp-full) .lp-skin,body:not(.car-mode) #lpBar:not(.lp-full) #lpClose{display:none!important}#lpToolsTab{display:none;position:fixed;left:0;bottom:var(--right-tabs-bottom,200px);z-index:133;background:conic-gradient(from 90deg,#19e3c2,#5ad9ff,#9b6cff,#ff5cc8,#19e3c2);border:1px solid rgba(150,160,255,.4);border-left:none;border-radius:0 12px 12px 0;color:#fff;font-size:16px;font-weight:800;width:40px;height:40px;padding:0;box-sizing:border-box;cursor:pointer;line-height:1;place-items:center;box-shadow:0 8px 22px -8px rgba(0,0,0,.7),0 0 18px -4px rgba(155,108,255,.7)}body.lp-on:not(.car-mode):not(.lp-fullopen) #lpToolsTab{display:grid}body.nav-open #lpToolsTab{opacity:0;pointer-events:none}#lpToolsPop{position:fixed;left:56px;top:auto;bottom:auto;z-index:134;display:flex;flex-direction:column;gap:6px;padding:10px;max-height:calc(100vh - 24px);overflow:auto;background:rgba(8,12,22,.96);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(150,160,255,.3);border-radius:14px;box-shadow:0 16px 40px -12px #000}#lpToolsPop[hidden]{display:none}#lpToolsPop>button{background:rgba(255,255,255,.06);border:1px solid rgba(150,160,255,.2);color:#dfe6ff;border-radius:9px;padding:8px 14px;font-size:13px;font-weight:700;cursor:pointer;text-align:left;white-space:nowrap}#lpToolsPop>button:hover{background:rgba(255,255,255,.12)}.lp-tools-themes{display:flex;gap:6px}.lp-tools-themes button{flex:1;text-align:center;padding:8px 0;background:rgba(255,255,255,.06);border:1px solid rgba(150,160,255,.2);color:#9fd8ff;border-radius:9px;font-weight:800;cursor:pointer;font-family:'JetBrains Mono'}.lp-tools-themes button.on{color:#fff;border-color:rgba(155,108,255,.85);box-shadow:0 0 12px -3px rgba(155,108,255,.85)}body.lp-reduced #carTab{top:calc(50% + 132px)}#carTab .ct-ico{font-size:17px;flex:0 0 auto}#carTab .ct-lbl{font-size:12px;font-weight:700;opacity:0;margin-left:6px;transition:opacity .2s ease .05s}#carTab.open{width:200px}#carTab.open .ct-lbl{opacity:1}body.nav-open #carTab{opacity:0;pointer-events:none;transition:opacity .15s}body.car-mode .topbar,body.car-mode>footer,body.car-mode #bubbleTab,body.car-mode #animTab,body.car-mode #carTab,body.car-mode #homeCtaInstall{display:none!important}body.car-mode .view:not(#view-listen){display:none!important}body.car-mode #view-listen{display:block!important;padding-top:76px;padding-bottom:160px}body.car-mode.lp-on #lpBar{display:flex!important;position:fixed!important;left:0;right:0;bottom:0;top:auto!important;z-index:131}body.car-mode.lp-reduced #lpBar{display:none!important}body.car-mode #lpReTab{display:none!important}#carPlayerTab{display:none;position:fixed;left:0;bottom:var(--car-tab-bottom,270px);z-index:133;background:conic-gradient(from 90deg,#19e3c2,#5ad9ff,#9b6cff,#ff5cc8,#19e3c2);border:1px solid rgba(150,160,255,.4);border-left:none;border-radius:0 12px 12px 0;color:#fff;font-size:16px;font-weight:800;padding:9px 14px;cursor:pointer;line-height:1;box-shadow:0 8px 22px -8px rgba(0,0,0,.7),0 0 18px -4px rgba(155,108,255,.7)}body.car-mode.lp-on #carPlayerTab{display:block}body.car-mode.lp-reduced #carPlayerTab{display:none!important}body.lp-reduced #carPlayerTab,body.lp-reduced #lpReTab,body.lp-reduced #lpToolsTab,body.lp-reduced #lpToolsPop{display:none!important}body.car-mode #carBanner{display:flex!important}body.car-mode #view-listen .shead,body.car-mode #view-listen .hint,body.car-mode #listenLayoutSel,body.car-mode #listenRadioBtn,body.car-mode #listenPlaylistsBtn,body.car-mode #view-listen .lchips{display:none!important}body.car-mode #carBanner .cb-mark{display:flex;align-items:center;flex:0 0 auto}body.car-mode #carBanner .cb-txt{display:flex;flex-direction:column;line-height:1.15;flex:1 1 auto;min-width:0}body.car-mode #carBanner .cb-txt b{font-size:16px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.car-mode #carBanner .cb-txt small{font-size:11px;font-weight:700;opacity:.85;letter-spacing:.02em}#carBanner{display:none;position:fixed;top:0;left:0;right:0;z-index:130;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:linear-gradient(90deg,#19e3c2,#9b6cff);color:#04161c;box-shadow:0 6px 22px -8px rgba(0,0,0,.8)}#carBanner button{background:rgba(0,0,0,.25);color:#fff;border:none;border-radius:8px;padding:8px 14px;font-weight:800;font-size:14px;cursor:pointer}body.car-mode .lp,body.car-mode .player-bar,body.car-mode #lpBar{font-size:1.05em}body.car-mode .ticker,body.car-mode #ticker{display:none!important}body.car-mode .lp-rpt,body.car-mode #lpVizBtn,body.car-mode #lpQBtn,body.car-mode #lpAirBtn,body.car-mode #lpCastBtn,body.car-mode .lp-skin,body.car-mode #lpClose,body.car-mode #lpExpand,body.car-mode #lpMin,body.car-mode .lp-cmt-area,body.car-mode #lpCmtListBtn{display:none!important}body.car-mode #carBanner button{min-width:96px}body.lp-reduced #lpReTab{display:none!important}body.nav-open #lpReTab{opacity:0;pointer-events:none}@keyframes lpUnfold{0%{transform:scale(.18);opacity:0}55%{opacity:1}100%{transform:scale(1);opacity:1}}#lpBar.lp-unfold{animation:lpUnfold .36s cubic-bezier(.2,.85,.25,1) both;transform-origin:100% 100%}@media (prefers-reduced-motion:reduce){#lpBar.lp-unfold{animation:none}}body.lp-fullopen{overflow:hidden}.lp.lp-full{top:0!important;height:100dvh;flex-direction:column;flex-wrap:nowrap;justify-content:center;align-items:center;gap:16px;border-radius:0;padding:calc(env(safe-area-inset-top) + 64px) 24px calc(env(safe-area-inset-bottom) + 28px)}.lp.lp-full .lp-rim,.lp.lp-full .lp-rim::before,.lp.lp-full::before{border-radius:0}.lp.lp-full .lp-cover{position:relative!important;top:auto;left:auto;order:0;width:min(52vw,232px);height:min(52vw,232px);border-radius:26px;z-index:1}.lp.lp-full .lp-mid{order:1;display:flex!important;flex-direction:column;flex:0 0 auto;width:100%;max-width:440px;margin:0;align-items:stretch}.lp.lp-full .lp-meta{flex-direction:column;align-items:center;text-align:center;gap:4px;padding-left:0;min-height:0;white-space:normal;margin:0 0 4px}.lp.lp-full .lp-meta b{font-size:22px;white-space:normal}.lp.lp-full .lp-meta span{font-size:14px}.lp.lp-full .lp-viz{height:112px;margin:8px 0}.lp.lp-full .lp-seek{height:16px;margin:8px 12px}.lp.lp-full .lp-time{font-size:12px}.lp.lp-full .lp-ctrls{order:2;flex:0 0 auto;margin:0;justify-content:center;flex-wrap:wrap;gap:14px}.lp.lp-full .lp-q{width:48px;height:48px;font-size:18px}.lp.lp-full #lpPlay2{width:66px!important;height:66px!important;font-size:26px}.lp.lp-full .lp-close{top:calc(env(safe-area-inset-top) + 12px);right:16px;border-radius:12px;border-bottom:1px solid rgba(120,230,255,.22)}.lp.lp-full .lp-expand{top:calc(env(safe-area-inset-top) + 12px);left:16px;border-radius:12px;border-bottom:1px solid rgba(150,160,255,.3)}.lp-skin{position:absolute;top:-29px;background:linear-gradient(150deg,rgba(20,52,64,.72),rgba(10,20,34,.82));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(150,160,255,.3);border-bottom:none;border-radius:12px 12px 0 0;color:#9fd8ff;font-family:'JetBrains Mono';font-size:12px;font-weight:800;width:30px;height:27px;display:grid;place-items:center;cursor:pointer;line-height:1;box-shadow:0 -8px 18px -10px rgba(0,0,0,.6)}#lpTh1{right:220px}#lpTh2{right:186px}#lpTh3{right:152px}#lpTh4{right:118px}.lp-skin.on{color:#fff;border-color:rgba(155,108,255,.85);box-shadow:0 0 14px -3px rgba(155,108,255,.85)}.lp.lp-full .lp-skin{display:none!important}.lp.lp-th1{background:linear-gradient(150deg,rgba(20,52,64,.6),rgba(10,20,34,.72));border-color:rgba(120,230,255,.22);box-shadow:0 -24px 60px -28px #000,0 0 50px -16px rgba(25,227,194,.35),inset 0 1px 0 rgba(255,255,255,.14)}.lp.lp-th1 .lp-rim::before{padding:1px;background:linear-gradient(120deg,transparent,rgba(90,217,255,.85),rgba(155,108,255,.75),rgba(25,227,194,.7),transparent);background-size:300% 100%;animation:lpAurora 7s linear infinite}.lp.lp-th1 #lpPlay2{background:linear-gradient(135deg,#19e3c2,#5ad9ff)!important;color:#04161c!important;box-shadow:0 0 20px -3px rgba(90,217,255,.8),0 1px 0 rgba(255,255,255,.4) inset!important}.lp.lp-th1 .lp-seek-fill{background:linear-gradient(90deg,#19e3c2,#5ad9ff);box-shadow:0 0 12px rgba(25,227,194,.7)}.lp.lp-th2{background:linear-gradient(120deg,rgba(90,217,255,.20),rgba(155,108,255,.22),rgba(255,120,200,.18),rgba(25,227,194,.20),rgba(90,217,255,.20)),linear-gradient(150deg,rgba(18,28,50,.74),rgba(10,15,28,.82));background-size:320% 100%,100% 100%;animation:lpHoloBg 12s linear infinite;border-color:rgba(150,160,255,.26)}.lp.lp-th2 .lp-rim::before{background:linear-gradient(120deg,transparent,rgba(90,217,255,.9),rgba(155,108,255,.9),rgba(255,120,200,.85),rgba(25,227,194,.8),transparent);background-size:300% 100%;animation:lpAurora 7s linear infinite;opacity:.9}.lp.lp-th2 #lpPlay2{background:linear-gradient(135deg,#19e3c2,#5ad9ff,#9b6cff,#ff78c8)!important;background-size:200% 200%!important;animation:lpHoloBtn 6s linear infinite!important;color:#fff!important}.lp.lp-th2 .lp-seek-fill{background:linear-gradient(90deg,#19e3c2,#5ad9ff,#9b6cff,#ff78c8);box-shadow:0 0 8px rgba(155,108,255,.55)}.lp.lp-th4{background:rgba(8,12,22,.82);border-color:rgba(180,200,255,.18);box-shadow:0 -24px 60px -30px #000,inset 0 1px 0 rgba(255,255,255,.16)}.lp.lp-th4 .lp-rim::before{inset:-40%;border-radius:0;padding:0;-webkit-mask:none;mask:none;background:conic-gradient(from 0deg,#19e3c2,#5ad9ff,#9b6cff,#ff5dbb,#ffd27a,#19e3c2);filter:blur(30px) saturate(1.5);opacity:.5;animation:lpSpin 9s linear infinite}.lp.lp-th4 #lpPlay2{background:linear-gradient(135deg,#eef7ff,#9ec9ff 50%,#b79bff)!important;color:#0a1020!important;box-shadow:0 0 24px -3px rgba(150,200,255,.9),0 1px 2px rgba(255,255,255,.8) inset!important}.lp.lp-th4 .lp-seek-fill{background:linear-gradient(90deg,#fff,#5ad9ff,#9b6cff)}.lp.lp-th4 .lp-q{color:#dff3ff}@media (orientation:landscape) and (max-height:600px){.lp.lp-full{flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;align-content:center;gap:12px 22px;padding:calc(env(safe-area-inset-top) + 58px) max(22px,env(safe-area-inset-right)) calc(env(safe-area-inset-bottom) + 26px) max(22px,env(safe-area-inset-left))}.lp.lp-full .lp-cover{width:min(42vh,176px);height:min(42vh,176px);order:0;border-radius:20px}.lp.lp-full .lp-mid{order:1;flex:1 1 300px;max-width:560px;align-items:stretch;margin:0}.lp.lp-full .lp-meta{flex:0 0 auto;flex-direction:column;align-items:flex-start;text-align:left;gap:2px;margin:0 0 4px}.lp.lp-full .lp-meta b{font-size:18px}.lp.lp-full .lp-meta span{font-size:13px}.lp.lp-full .lp-viz{flex:0 0 auto;height:74px;margin:4px 0}.lp.lp-full .lp-seek{flex:0 0 auto;height:14px}.lp.lp-full .lp-time{flex:0 0 auto}.lp.lp-full .lp-time{flex-wrap:nowrap!important;gap:0 12px;justify-content:flex-start;align-items:center}.lp.lp-full .lp-time #lpCur{order:1;flex:0 0 auto}.lp.lp-full .lp-time .lp-cmt-area{order:2;flex:1 1 auto;min-width:0}.lp.lp-full .lp-time #lpDur{order:3;flex:0 0 auto}.lp.lp-full .lp-ctrls{order:2;flex:1 1 100%;justify-content:center;gap:10px;margin:2px 0 0}.lp.lp-full .lp-q{width:42px;height:42px;font-size:16px}.lp.lp-full #lpPlay2{width:54px!important;height:54px!important;font-size:21px}}body.lp-on{padding-bottom:188px}body.lp-on .lp-cover{width:60px;height:60px;border-radius:14px;overflow:hidden;flex-shrink:0;position:relative;cursor:pointer;background:linear-gradient(140deg,#19e3c2,#9b6cff);box-shadow:0 0 0 1px rgba(255,255,255,.15),0 6px 18px -6px rgba(155,108,255,.6)}.lp-cover-img{width:100%;height:100%}.lp-cover img{width:100%;height:100%;object-fit:cover}.lp-cover .noimg{width:100%;height:100%;display:grid;place-items:center;color:#fff;font-size:24px}.lp-mid{flex:1 1 100%;order:5;min-width:0;width:100%}.lp-meta{display:flex;gap:8px;align-items:baseline;white-space:nowrap;overflow:hidden}.lp-meta b{font-family:'Bricolage Grotesque';font-size:15px;color:var(--ink);overflow:hidden;text-overflow:ellipsis}.lp-meta span{font-size:12px;color:#9aa3c0;white-space:nowrap}.lp-viz{width:100%;height:54px;display:block;margin:6px 0 4px}.lp-seek{position:relative;height:14px;background:rgba(255,255,255,.08);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.12);border-radius:10px;cursor:pointer;margin:8px 10px;touch-action:none;box-shadow:0 1px 3px rgba(0,0,0,.4) inset}.lp-cmt-area{display:flex;flex-direction:column;gap:4px;margin:0;padding:0 2px}.lp-cmt-bubble{display:none;position:absolute;left:48px;right:48px;bottom:calc(100% + 12px);top:auto;transform:none;max-width:none;flex-direction:row;align-items:center;gap:8px;padding:7px 12px;background:rgba(6,9,15,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(150,160,255,.3);border-radius:11px;font-size:12.5px;color:#c8d0ff;min-width:0;overflow:hidden;white-space:nowrap;z-index:9;pointer-events:auto;box-shadow:0 8px 22px -8px rgba(0,0,0,.85)}.lp-cmt-bubble b{color:var(--accent,#19e3c2);white-space:nowrap;flex-shrink:0;max-width:28%;overflow:hidden;text-overflow:ellipsis}.lp-cmt-bubble span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lp-cmt-bubble button{background:none;border:none;color:var(--muted,#7a8caa);cursor:pointer;font-size:13px;padding:0 3px;flex-shrink:0;flex-shrink:0;line-height:1}.lp-cmt-bubble button:hover{color:#fff}.lp-cmt-row{display:none;align-items:center;gap:6px}.lp-cmt-row input{flex:1;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:5px 10px;font-size:16px;color:#e0e5ff;outline:none;min-width:0}.lp-cmt-row input::placeholder{color:var(--muted,#7a8caa);font-size:11px}.lp-cmt-row input:focus{border-color:rgba(25,227,194,.4);background:rgba(255,255,255,.09)}.lp-cmt-row button{background:var(--accent,#19e3c2);color:#04161c;border:none;border-radius:8px;padding:5px 12px;font-size:13px;font-weight:800;cursor:pointer;white-space:nowrap;flex-shrink:0}.lp-cmt-markers{position:absolute;left:0;right:0;top:0;bottom:0;pointer-events:none;z-index:6}.lp-cmt-markers .cmk{position:absolute;top:50%;width:18px;height:18px;margin-left:-9px;margin-top:-9px;border-radius:50%;overflow:hidden;border:1.5px solid rgba(255,255,255,.85);box-shadow:0 1px 4px rgba(0,0,0,.6);pointer-events:auto;cursor:pointer;background:var(--accent2,#5ad9ff);transition:transform .12s ease;z-index:6}.lp-cmt-markers .cmk img{width:100%;height:100%;object-fit:cover;display:block}.lp-cmt-markers .cmk:hover,.lp-cmt-markers .cmk.on{transform:scale(1.35);z-index:8}.lp-cmt-markers .cmk .cmk-bub{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);min-width:80px;max-width:200px;width:max-content;background:rgba(12,18,28,.97);color:#eaf2ff;border:1px solid rgba(150,160,255,.4);border-radius:9px;padding:6px 9px;font-size:11.5px;line-height:1.35;text-align:left;opacity:0;visibility:hidden;transition:opacity .12s;pointer-events:none;box-shadow:0 6px 18px -6px rgba(0,0,0,.8);z-index:10}.lp-cmt-markers .cmk .cmk-bub b{display:block;font-size:11px;color:#9fb2ff;margin-bottom:2px}.lp-cmt-markers .cmk:hover .cmk-bub,.lp-cmt-markers .cmk.on .cmk-bub{opacity:1;visibility:visible}.lp-cmt-listbtn{background:rgba(255,255,255,.06);border:1px solid rgba(150,160,255,.22);color:#c8d0ff;border-radius:20px;padding:2px 10px;font-size:11px;font-weight:700;cursor:pointer;line-height:1.6}.lp-cmt-listbtn:hover{background:rgba(255,255,255,.12);color:#fff}.cmt-list-item{display:flex;gap:10px;padding:10px 2px;border-bottom:1px solid rgba(255,255,255,.06);text-align:left}.cmt-list-item .cmt-tc{color:var(--accent,#19e3c2);font-family:'JetBrains Mono';font-size:12px;font-weight:700;flex-shrink:0;cursor:pointer;min-width:42px}.cmt-list-item .cmt-main{flex:1;min-width:0}.cmt-list-item .cmt-au{font-weight:700;font-size:13px;color:#e0e5ff}.cmt-list-item .cmt-bd{font-size:13px;color:#c8d0ff;word-break:break-word}.cmt-list-item .cmt-acts{display:flex;gap:8px;margin-top:3px}.cmt-list-item .cmt-acts button{background:none;border:none;color:var(--muted,#7a8caa);font-size:11px;cursor:pointer;padding:0}.cmt-list-item .cmt-acts button:hover{color:#fff}.lp-seek-fill{position:absolute;top:0;left:0;bottom:0;width:0;background:linear-gradient(90deg,#19e3c2,#9b6cff,#ff5cc8);border-radius:6px;box-shadow:0 0 10px rgba(155,108,255,.6);pointer-events:none}.lp-seek-fill::after{content:'';position:absolute;right:-9px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 0 10px rgba(255,255,255,.9),0 2px 6px rgba(0,0,0,.5)}.lp-v2wave{display:none;position:absolute;inset:0;align-items:center;justify-content:space-between;gap:0;pointer-events:none;padding:0 1px}.lp-v2wave i{flex:0 0 4px;width:4px;height:30%;border-radius:2px;background:rgba(150,160,255,.22);transition:background .15s;position:relative;z-index:1}@keyframes lpRibbon{0%{transform:translateX(-55%)}100%{transform:translateX(165%)}}body.lp-v2 #lpBar:not(.lp-full) .lp-v2wave::after{content:'';position:absolute;top:-6px;bottom:-6px;left:0;width:42%;border-radius:12px;pointer-events:none;opacity:0;background:linear-gradient(90deg,transparent,rgba(130,190,255,.55),rgba(180,150,255,.5),transparent);z-index:2}html body.lp-v2.lp-loading #lpBar:not(.lp-full) .lp-v2wave::after{opacity:1;animation:lpRibbon 1.05s linear infinite!important}html.anim-off body.lp-v2.lp-loading #lpBar:not(.lp-full) .lp-v2wave::after{animation:lpRibbon 1.05s linear infinite!important}.lp-v2wave i.p{background:linear-gradient(180deg,#5ad9ff,#9b6cff);box-shadow:0 0 6px rgba(155,108,255,.55)}body.lp-v2 #lpBar:not(.lp-full) #lpCover{width:84px;height:84px;border-radius:50%;flex:none!important;position:relative!important;top:auto!important;left:auto!important;overflow:hidden;background:repeating-radial-gradient(circle at 50% 50%,#0a0d16 0 3px,#0f131d 3px 5px);box-shadow:0 0 0 1px rgba(255,255,255,.06),0 10px 26px -10px #000,0 0 24px -6px rgba(155,108,255,.55);z-index:2}body.lp-v2 #lpBar:not(.lp-full) #lpCoverImg{position:absolute;inset:0;border-radius:50%;overflow:hidden}body.lp-v2 #lpBar:not(.lp-full) #lpCoverImg img{width:100%;height:100%;object-fit:cover}body.lp-v2 #lpBar:not(.lp-full) #lpCoverImg .noimg{width:100%;height:100%;display:grid;place-items:center}body.lp-v2 #lpBar:not(.lp-full) #lpCover::after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:13px;height:13px;border-radius:50%;background:#05070d;border:2px solid rgba(255,255,255,.4);z-index:3;box-shadow:0 0 0 3px rgba(0,0,0,.35)}@media(max-width:640px){body.lp-v2 #lpBar:not(.lp-full) #lpCover{position:absolute!important;top:14px!important;left:10px!important;width:78px!important;height:78px!important}body.lp-v2 #lpBar:not(.lp-full) .lp-meta{padding-left:96px;min-height:80px;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;margin:0 0 4px;white-space:normal}body.lp-v2 #lpBar:not(.lp-full) #lpTitle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}}body.lp-v2.lp-playing #lpBar:not(.lp-full) #lpCover{animation:lpV2Spin 4.5s linear infinite}@keyframes lpV2Spin{to{transform:rotate(360deg)}}body.lp-v2 #lpBar:not(.lp-full) .lp-mid{position:relative}body.lp-v2 #lpBar:not(.lp-full) #lpViz{position:absolute;inset:-6px -4px;width:calc(100% + 8px);height:calc(100% + 12px);z-index:0;border-radius:14px;pointer-events:none}body.lp-v2 #lpBar:not(.lp-full) .lp-meta,body.lp-v2 #lpBar:not(.lp-full) .lp-seek,body.lp-v2 #lpBar:not(.lp-full) .lp-time{position:relative;z-index:1}body.lp-v2 #lpBar:not(.lp-full) .lp-seek{height:34px;background:transparent;border:none;box-shadow:none;border-radius:0;margin:8px 10px}body.lp-v2 #lpBar:not(.lp-full) #lpSeekFill{background:transparent;box-shadow:none}body.lp-v2 #lpBar:not(.lp-full) #lpSeekFill::after{display:none}body.lp-v2 #lpBar:not(.lp-full) .lp-v2wave{display:flex}body.lp-v2 #lpBar .lp-rim::before{animation:none!important}html.anim-off body.lp-v2.lp-playing #lpBar:not(.lp-full) #lpCover{animation:lpV2Spin 4.5s linear infinite!important}body.lp-v2 #lpToolsPop .lp-tools-themes,body.lp-v2 #lpVizBtn{display:none!important}.lp-mid{max-width:1100px;margin:0 auto}.lp-time{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 8px;font-family:'JetBrains Mono';font-size:10px;color:var(--muted);position:relative}.lp-time #lpCur{order:1}.lp-time #lpDur{order:2}.lp-time .lp-cmt-area{order:3;flex:1 1 100%}.lp-side{display:flex;flex-direction:column;align-items:center;gap:8px;flex-shrink:0}.lp-play{position:absolute;inset:0;width:100%;height:100%;border:none;border-radius:8px;cursor:pointer;background:rgba(4,12,16,.42);color:#fff;font-size:22px;display:grid;place-items:center;transition:.15s}.lp-cover:hover .lp-play{background:rgba(4,12,16,.62)}.lp-vol{display:flex;align-items:center;gap:6px}.lp-vol input[type=range]{width:84px;accent-color:var(--accent)}#lpVolBtn{position:relative;overflow:visible}html.dev-mobile #lpVolBtn{display:none!important}.lp-volpop{position:absolute;bottom:calc(100% + 10px);right:-4px;left:auto;background:linear-gradient(150deg,rgba(20,52,64,.92),rgba(10,20,34,.95));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(150,160,255,.3);border-radius:14px;padding:14px 12px;box-shadow:0 12px 30px -10px rgba(0,0,0,.7);z-index:20;display:flex;align-items:center;justify-content:center}.lp-volpop[hidden]{display:none}.lp-volpop input[type=range]{writing-mode:vertical-lr;direction:rtl;width:8px;height:110px;accent-color:var(--accent);cursor:pointer}.lp-volpop input[type=range]::-webkit-slider-thumb{cursor:pointer}.dm-b{max-width:78%;padding:9px 14px;border-radius:18px;font-size:15.5px;line-height:1.45;word-break:break-word;box-shadow:0 1px 4px rgba(0,0,0,.25);animation:dmIn .18s ease}@keyframes dmIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.dm-b.me{align-self:flex-end;background:linear-gradient(135deg,#19e3c2,#7a4fd6);color:#04121a;font-weight:500;border-bottom-right-radius:5px}.dm-b.them{align-self:flex-start;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.06);border-bottom-left-radius:5px}.dm-rd{display:block;font-size:9.5px;opacity:.8;text-align:right;margin-top:3px}.dm-media-img{max-width:230px;max-height:280px;border-radius:14px;display:block;cursor:pointer;object-fit:cover}.dm-media-audio{width:230px;max-width:100%;height:38px;display:block}.dm-media-cap{display:block;font-size:10.5px;opacity:.75;margin-top:4px}.dm-expired{font-style:italic;opacity:.6;font-size:13px}.dm-upbar{height:4px;border-radius:2px;background:rgba(255,255,255,.15);margin:6px 14px 0;overflow:hidden;display:none}.dm-upbar.on{display:block}.dm-upbar i{display:block;height:100%;width:0%;background:linear-gradient(90deg,#19e3c2,#7a4fd6);transition:width .2s}.am-attach{border:none;border-radius:11px;background:rgba(255,255,255,.09);color:var(--ink);width:44px;font-size:18px;cursor:pointer;flex-shrink:0}.am-attach:hover{background:rgba(255,255,255,.16)}.push-banner{position:fixed;left:50%;bottom:18px;transform:translate(-50%,160%);z-index:206;display:flex;align-items:center;gap:11px;max-width:min(520px,92vw);background:linear-gradient(135deg,rgba(18,46,56,.98),rgba(9,21,27,.99));border:1px solid var(--neon,var(--line));border-radius:14px;padding:12px 14px;box-shadow:0 22px 54px -18px rgba(0,0,0,.8),0 0 30px -12px rgba(25,227,194,.35);transition:transform .32s cubic-bezier(.4,0,.2,1)}.push-banner.show{transform:translate(-50%,0)}.pb-ico{font-size:20px;flex-shrink:0}.pb-txt{flex:1;font-size:13px;color:var(--ink);line-height:1.35}.pb-act{border:none;border-radius:9px;background:linear-gradient(135deg,var(--accent,#19e3c2),var(--accent2,#7a4fd6));color:#04161c;font-weight:700;padding:8px 14px;font-size:13px;cursor:pointer;white-space:nowrap;flex-shrink:0}.pb-x{background:rgba(255,255,255,.08);border:none;color:var(--ink);width:28px;height:28px;border-radius:8px;font-size:13px;cursor:pointer;flex-shrink:0}@media(max-width:560px){.push-banner{left:12px;right:12px;bottom:12px;transform:translateY(160%);max-width:none}.push-banner.show{transform:translateY(0)}}#msgBubbleHost{position:fixed;right:16px;bottom:16px;z-index:205;display:flex;flex-direction:column-reverse;gap:10px;pointer-events:none;max-width:min(340px,88vw)}.msg-bubble{pointer-events:auto;display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,rgba(18,46,56,.98),rgba(9,21,27,.99));border:1px solid var(--neon,var(--line));border-radius:16px;padding:10px 12px;box-shadow:0 22px 54px -18px rgba(0,0,0,.8),0 0 30px -12px rgba(25,227,194,.35);cursor:pointer;transform:translateX(120%) scale(.9);opacity:0;transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .25s}.msg-bubble.show{transform:translateX(0) scale(1);opacity:1}.msg-bubble .am-avwrap{flex-shrink:0}.msg-bubble .mb-txt{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}.msg-bubble .mb-txt b{font-size:13.5px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.msg-bubble .mb-txt span{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px}.msg-bubble .mb-x{flex-shrink:0;background:rgba(255,255,255,.08);border:none;color:var(--ink);width:24px;height:24px;border-radius:50%;font-size:11px;cursor:pointer}.msg-bubble .mb-x:hover{background:rgba(255,255,255,.16)}@media(max-width:560px){#msgBubbleHost{left:12px;right:12px;bottom:12px;max-width:none}.msg-bubble{transform:translateY(120%) scale(.95)}.msg-bubble.show{transform:translateY(0) scale(1)}}.am-app{position:fixed;inset:0;z-index:210;display:none;background:rgba(4,3,9,.6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);justify-content:flex-end;align-items:stretch}
html.am-lock,html.am-lock body{overflow:hidden}
html.am-lock body{position:fixed;left:0;right:0;width:100%}.am-app.open{display:flex}.am-shell{display:flex;flex-direction:column;width:400px;max-width:100%;height:100%;background:linear-gradient(160deg,rgba(18,46,56,.96),rgba(9,21,27,.98));border-left:1px solid var(--neon,var(--line));border-radius:18px 0 0 18px;overflow:hidden;box-shadow:-24px 0 60px -20px rgba(0,0,0,.7),0 0 40px -14px rgba(25,227,194,.3);animation:amSlide .26s cubic-bezier(.4,0,.2,1)}@keyframes amSlide{from{transform:translateX(100%)}to{transform:translateX(0)}}.am-side{flex:1;display:flex;flex-direction:column;min-height:0}.am-side-head{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 13px;border-bottom:1px solid var(--line)}.am-side-head b{font-size:17px;text-transform:uppercase;letter-spacing:.02em}.am-x{background:rgba(255,255,255,.08);border:none;color:var(--ink);width:30px;height:30px;border-radius:8px;font-size:15px;cursor:pointer}.am-threads{flex:1;overflow-y:auto;min-height:0}.am-settings{border-bottom:1px solid var(--line);background:rgba(8,18,26,.5);padding:12px 16px}.am-set-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13.5px;color:var(--ink);cursor:pointer}.am-set-row input{width:20px;height:20px;flex-shrink:0;accent-color:var(--accent,#19e3c2);cursor:pointer}.am-switch{position:relative;display:inline-block;width:48px;height:29px;flex-shrink:0}
.nav-push-sw{display:inline-flex;align-items:center;gap:7px;padding:5px 10px 5px 12px;border:1px solid var(--line);border-radius:999px;cursor:pointer;vertical-align:middle}
.nav-push-sw .nps-ico{font-size:15px;line-height:1}
.nav-push-sw .am-switch{width:40px;height:24px}
.nav-push-sw .am-slider::before{width:18px;height:18px;left:3px;top:3px}
.nav-push-sw .am-switch input:checked+.am-slider::before{transform:translateX(16px)}
.nav-push-sw.nps-off{opacity:.5}
.nav-push-sw.nps-checking{opacity:.55;cursor:progress}
.nav-push-sw.nps-checking .am-switch{cursor:progress}
.nav-push-sw.nps-checking .am-slider{background:#3a4250;animation:npsPulse 1s ease-in-out infinite}
@keyframes npsPulse{0%,100%{opacity:.6}50%{opacity:1}}.am-switch input{position:absolute;opacity:0;width:0;height:0;margin:0}.am-slider{position:absolute;inset:0;background:#3a4250;border-radius:999px;transition:background .2s;cursor:pointer}.am-slider::before{content:'';position:absolute;width:23px;height:23px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.45)}.am-switch input:checked+.am-slider{background:#34c759}.am-switch input:checked+.am-slider::before{transform:translateX(19px)}.am-switch input:focus-visible+.am-slider{outline:2px solid var(--accent,#19e3c2);outline-offset:2px}.am-set-hint{font-size:11.5px;color:var(--muted);margin:8px 0 0;line-height:1.4}.am-sect{font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);padding:12px 16px 5px}.am-trow{display:flex;gap:11px;align-items:center;padding:11px 15px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.04);transition:.12s}.am-trow:hover{background:rgba(255,255,255,.04)}.am-trow.active{background:linear-gradient(90deg,rgba(25,227,194,.16),transparent)}.am-av{width:46px;height:46px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;background:var(--rainbow);color:#04161c;font-weight:800;font-family:'Bricolage Grotesque';font-size:16px;overflow:hidden}.am-av img{width:100%;height:100%;object-fit:cover}.am-avwrap{position:relative;flex-shrink:0;display:inline-block;line-height:0}.am-pres{position:absolute;bottom:1px;right:1px;width:12px;height:12px;border-radius:50%;border:2px solid #0b1c24;background:#6b7280}.am-pres.on{background:#2ecc71;box-shadow:0 0 6px rgba(46,204,113,.75)}.am-pres.off{background:#6b7280}.am-tmain{flex:1;min-width:0}.am-tmain b{display:block;font-size:14px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.am-rtag{font-size:11px;font-weight:400;font-style:italic;text-transform:none;letter-spacing:0;color:var(--muted);background:none;padding:0;vertical-align:baseline}.am-pres-txt{display:block;font-size:11px;color:var(--muted);margin-top:1px}.am-srchbox{display:flex;gap:6px;align-items:center;padding:8px 10px 6px}.am-srchbox input{flex:1;min-width:0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:inherit;font:inherit;font-size:13px;padding:7px 10px;outline:none}.am-srchbox input:focus{border-color:rgba(122,79,214,.6)}.am-attach.rec{color:#ff5470;animation:pulse 1.2s ease-in-out infinite}#amMicBtn{-webkit-user-select:none;user-select:none;touch-action:none;-webkit-touch-callout:none}.am-recbar[hidden]{display:none}.am-recbar{display:flex;align-items:center;gap:10px;padding:8px 14px;background:rgba(255,84,112,.12);border-top:1px solid rgba(255,84,112,.35);font-size:12px;color:#ff8fa3;font-variant-numeric:tabular-nums}.am-recdot{width:10px;height:10px;border-radius:50%;background:#ff5470;box-shadow:0 0 8px #ff5470;animation:pulse 1s ease-in-out infinite}.am-receq{display:flex;align-items:flex-end;gap:2px;height:16px}.am-receq b{width:3px;background:linear-gradient(180deg,#ff5470,#7a4fd6);border-radius:2px;animation:amRecEq 1s ease-in-out infinite}.am-receq b:nth-child(1){animation-delay:0s}.am-receq b:nth-child(2){animation-delay:.15s}.am-receq b:nth-child(3){animation-delay:.3s}.am-receq b:nth-child(4){animation-delay:.45s}.am-receq b:nth-child(5){animation-delay:.6s}@keyframes amRecEq{0%,100%{height:4px}50%{height:16px}}.am-rechint{opacity:.75;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1;text-align:right}.am-dirbtn.on{background:rgba(122,79,214,.35)}.am-presdot-on{color:#2ecc71;font-size:9px}.am-lightbox{position:fixed;inset:0;z-index:400;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;cursor:zoom-out}.am-lightbox img{max-width:96vw;max-height:92vh;border-radius:10px}.am-lb-x{position:absolute;top:16px;right:20px;font-size:22px;color:#fff;opacity:.8}.am-eq{display:flex;gap:2px;align-items:flex-end;height:14px;flex-shrink:0;margin-left:6px}.am-eq b{width:3px;background:#7a4fd6;border-radius:1px;animation:ameqb 1s ease-in-out infinite alternate}.am-eq b:nth-child(2){animation-delay:.2s}.am-eq b:nth-child(3){animation-delay:.4s}@keyframes ameqb{from{height:30%}to{height:100%}}.am-tmain b .am-rtag{display:inline}.am-rtag:not(:empty)::before{content:'- '}.am-tmain span{display:block;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.am-cc{background:linear-gradient(135deg,#2563c9,#7a4fd6);color:#fff;font-size:10.5px;font-weight:800;min-width:18px;height:18px;border-radius:9px;display:inline-grid;place-items:center;padding:0 5px}.am-pa{display:flex;gap:6px;padding:0 15px 11px}.am-main{flex:1;display:none;flex-direction:column;min-width:0;min-height:0}.am-app.am-show-chat .am-side{display:none}.am-app.am-show-chat .am-main{display:flex}.am-empty{flex:1;display:grid;place-items:center;color:var(--muted);font-size:14px;text-align:center;padding:24px}.am-conv{display:flex;flex-direction:column;height:100%;min-height:0}.am-conv-head{display:flex;align-items:center;gap:11px;padding:13px 16px;border-bottom:1px solid var(--line);background:#0b1a24;position:sticky;top:0;z-index:6;flex:0 0 auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.am-conv-head b{font-size:16px}.am-conv-head .am-role{font-size:11px;color:var(--muted);font-weight:500}.am-app,.am-app input,.am-app button{font-family:'SF Mono',ui-monospace,Menlo,Consolas,monospace}.am-status-on{color:#19e3c2;font-size:11px}.dm-time{display:block;font-size:9.5px;opacity:.6;margin-top:4px}
.am-eph-note{padding:8px 14px;background:rgba(199,125,255,.12);border-bottom:1px solid var(--line);font-family:'JetBrains Mono',monospace;font-size:11.5px;color:#d9b8ff;text-align:center}
.dm-eph{display:inline-flex;align-items:center;gap:3px;font-family:'JetBrains Mono',monospace;font-size:9.5px;opacity:.9;margin-left:6px}
.dm-reacts{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}
.dm-react-pill{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:999px;background:rgba(8,20,28,.55);border:1px solid rgba(255,255,255,.14);font-size:13px;line-height:1.35}
.dm-react-pill b{font-size:11px;font-weight:700;opacity:.85}
.dm-b.me .dm-react-pill{background:rgba(0,0,0,.28);border-color:rgba(255,255,255,.22)}
.dm-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}
.dm-chip{display:inline-flex;align-items:center;gap:3px;font-size:12px;line-height:1;padding:3px 7px;border-radius:11px;background:rgba(255,255,255,.09);cursor:pointer;user-select:none}
.dm-chip:hover{background:rgba(255,255,255,.16)}
.dm-b{position:relative}
.dm-react-btn{position:absolute;top:-9px;right:-9px;width:26px;height:26px;border:0;border-radius:50%;background:#1c2f3a;box-shadow:0 2px 8px rgba(0,0,0,.4);color:#cfe;opacity:.6;font-size:15px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .12s}
.dm-b:hover .dm-react-btn,.dm-react-btn:focus{opacity:1}
.dm-react-btn.has{opacity:1;background:#243a47;font-size:16px}
.dm-react-menu{position:fixed;left:50%;bottom:96px;transform:translateX(-50%);display:flex;gap:6px;padding:8px 10px;border-radius:14px;background:#12222b;box-shadow:0 8px 30px rgba(0,0,0,.5);z-index:9999}
.dm-react-menu button{border:0;background:transparent;font-size:22px;line-height:1;cursor:pointer;padding:2px}
.dm-react-menu button:hover{transform:scale(1.25)}.dm-audcard{align-self:stretch;max-width:100%;background:rgba(10,16,24,.85);border:1px solid #7a4fd6;border-radius:14px;padding:11px 14px;display:flex;gap:12px;align-items:center;animation:dmIn .18s ease}
.dm-dl{order:9;flex:0 0 auto;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#cfe6ff;font-size:13px;text-decoration:none;line-height:1;opacity:.8;transition:.15s}
.dm-dl:hover{opacity:1;border-color:#5ad9ff;color:#fff;background:rgba(90,217,255,.18)}
.shop-card{cursor:pointer}
.shop-img{width:100%;aspect-ratio:1;background:linear-gradient(140deg,rgba(90,217,255,.14),rgba(155,108,255,.14));background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;font-size:44px;border-radius:10px 10px 0 0}
.shop-price{font-weight:900;font-size:17px;margin-top:6px}
.shop-out{margin-top:6px;font-size:12px;color:#ff6b81;font-weight:700}
.shop-cart{display:flex;flex-direction:column;gap:8px;margin:12px 0;text-align:left}
.shop-crow{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:9px 12px}
.shop-crow b{display:block;font-size:14px}
.shop-crow span{font-size:12px;color:var(--muted)}
.shop-cr{display:flex;align-items:center;gap:8px;font-weight:800;white-space:nowrap}
.shop-cr button{border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:15px}
.shop-tot{display:flex;justify-content:space-between;font-size:13.5px;padding:4px 2px;color:var(--muted)}
.shop-tot b{color:var(--ink,#eef4ff)}
.shop-tot-b{font-size:16px;border-top:1px solid var(--line);margin-top:4px;padding-top:9px}
.cart-sec{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin:16px 0 2px;padding-top:12px;border-top:1px solid var(--line)}
.cart-sec:first-of-type{border-top:none;padding-top:0;margin-top:12px}
.sa-row{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:11px;padding:9px 11px;margin-bottom:7px}
.sa-th{width:44px;height:44px;flex:0 0 auto;border-radius:8px;background:rgba(255,255,255,.06);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center}
.sa-i{flex:1;min-width:0}
.sa-i b{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sa-i span{font-size:11.5px;color:var(--muted)}
.sa-dr{font-size:10px;letter-spacing:1px;text-transform:uppercase;padding:2px 6px;border-radius:5px;border:1px solid rgba(255,202,106,.4);color:#ffca6a}
.sa-vrow{display:flex;gap:6px;margin-bottom:6px;flex-wrap:wrap}
.sa-vrow input{flex:1;min-width:74px;background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:8px;color:inherit;padding:8px 9px;font-size:13px}
.sa-vrow button{border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:15px}
.so-card{border:1px solid var(--line);border-radius:12px;padding:11px 13px;margin-bottom:8px;text-align:left}
.so-h{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;font-weight:700}
.so-ad{font-size:12px;color:var(--muted);margin:6px 0;white-space:pre-line}
.so-it{font-size:12.5px;color:var(--muted)}
.so-card.so-demo{border-color:rgba(90,217,255,.45);background:rgba(90,217,255,.04)}
.sa-step{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin:12px 0 6px;text-align:left}
.sa-bar{height:4px;border-radius:99px;background:rgba(255,255,255,.09);overflow:hidden}
.sa-bar i{display:block;height:100%;background:linear-gradient(90deg,#5ad9ff,#9b6cff);transition:width .25s ease}
.sa-hello{text-align:left;border:1px solid var(--line);border-radius:12px;padding:10px 13px;margin-top:12px;background:rgba(255,255,255,.03)}
.sa-hello b{display:block;font-size:14.5px}
.sa-hello span{font-size:12px;color:var(--muted)}
.sa-empty{text-align:center;padding:22px 10px;color:var(--muted)}
.sa-emoji{font-size:40px;margin-bottom:6px}
.sa-empty b{display:block;color:#eef4ff;font-size:15px;margin-bottom:6px}
.sa-empty p{font-size:13px;line-height:1.55;max-width:340px;margin:0 auto}
.sa-demo{font-size:10px;letter-spacing:1px;text-transform:uppercase;padding:2px 6px;border-radius:5px;border:1px solid rgba(90,217,255,.45);color:#5ad9ff}
.sa-big{width:150px;height:150px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}
.sa-nopic{width:150px;height:150px;border-radius:12px;border:1.5px dashed var(--line);display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:38px;color:var(--muted)}
.sa-nopic span{font-size:12px}
.sa-hint{font-size:13px;color:var(--muted);min-height:18px;margin:2px 0 6px}
.sa-vhead{display:flex;gap:6px;font-size:10.5px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);padding:0 2px 4px}
.sa-vhead span{flex:1}
.sa-vhead span:nth-child(3),.sa-vhead span:nth-child(4){flex:0 0 62px}
.sa-vhead span:last-child{flex:0 0 24px}
.sa-vrow input:nth-child(3),.sa-vrow input:nth-child(4){flex:0 0 62px;min-width:0}
.sa-recap{display:flex;gap:12px;align-items:center;text-align:left}
.sa-rimg{width:88px;height:88px;flex:0 0 auto;object-fit:cover;border-radius:10px;font-size:30px}
.sa-rinfo{min-width:0}
.sa-rinfo b{display:block;font-size:15px}
.sa-rinfo span{display:block;font-size:12px;color:var(--muted)}
.sa-rprice{font-size:19px;font-weight:900;margin:4px 0}
.sa-rvars{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}
.sa-rvars span{font-size:11.5px;border:1px solid var(--line);border-radius:99px;padding:3px 9px;color:var(--muted)}
.sa-rvars .sa-warn{color:#ff6b81;border-color:rgba(255,107,129,.45)}
.sa-page{border:1px solid var(--line);border-radius:16px;padding:18px;background:rgba(255,255,255,.025)}
.sa-page h3{margin:0 0 4px;font-size:17px}
.sa-page .modal-acts{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.sa-page [style*="max-height"]{max-height:none!important;overflow:visible!important}
@media(min-width:900px){.sa-page{padding:24px}}.dm-play{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#19e3c2,#7a4fd6);border:none;color:#04121a;font-size:14px;cursor:pointer;flex-shrink:0}.dm-wv{flex:1;display:flex;align-items:center;gap:2px;height:30px;cursor:pointer;min-width:0}.dm-wv b{flex:1;background:#7a4fd6;border-radius:1.5px;min-height:3px;opacity:.85}.dm-wv b.done{background:#19e3c2}.dm-audmeta{font-size:10px;color:var(--muted);flex-shrink:0;max-width:90px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.am-back{display:grid;background:rgba(255,255,255,.08);border:none;color:var(--ink);width:32px;height:32px;border-radius:8px;font-size:20px;line-height:1;cursor:pointer;flex-shrink:0;place-items:center}.am-msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:6px;min-height:0}.am-typing{height:18px;font-size:11.5px;color:var(--muted);padding:0 16px}.am-blocked-note{margin:0;padding:9px 16px;font-size:12px;color:#ffd0d8;background:rgba(255,59,92,.12);border-bottom:1px solid rgba(255,59,92,.25);line-height:1.35}.am-foot{display:flex;align-items:center;gap:9px;padding:12px 14px;border-top:1px solid var(--line);box-sizing:border-box;max-width:100%}
#amInput{flex:1;min-width:0;box-sizing:border-box}
.am-send{flex-shrink:0;width:48px;height:44px;display:flex;align-items:center;justify-content:center;border:none;border-radius:11px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;padding:0;font-size:17px;cursor:pointer}.am-foot input{flex:1;padding:11px 13px;border-radius:11px;border:1px solid var(--line);background:var(--bg,rgba(0,0,0,.2));color:inherit;font-size:16px}.am-foot input:focus{outline:none;border-color:var(--accent)}.am-foot .am-send{border:none;border-radius:11px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-size:17px;cursor:pointer}@media(max-width:560px){.am-shell{width:100%;border-radius:0;border-left:none}}@media(max-width:640px){.lp{flex-wrap:wrap;gap:10px 0;padding:12px 8px;padding-bottom:calc(14px + env(safe-area-inset-bottom));bottom:0;left:0;right:0;border-radius:22px 22px 0 0}.lp-cover{position:absolute;top:12px;left:8px;width:40px;height:40px;flex:none;z-index:2}.lp-mid{order:1;flex:1 1 100%;min-width:0;margin:0;display:flex;flex-direction:column}.lp-meta{min-height:40px;padding-left:52px;margin-bottom:8px;display:flex;align-items:center;gap:8px}.lp-meta b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lp-viz{width:100%}.lp-ctrls{order:2;flex:1 1 100%;display:flex;flex-wrap:nowrap;align-items:center;justify-content:center;gap:16px}.lp-q{width:38px;height:38px;font-size:15px;flex:0 0 auto}#lpPlay2{width:44px!important;height:44px!important;font-size:17px}body.lp-on{padding-bottom:200px}@media(orientation:landscape) and (max-height:700px){.lp{align-items:flex-start;padding-top:14px!important}.lp-cover{position:static!important;width:48px;height:48px;flex:none;order:0}.lp-ctrls{order:2;flex:0 0 auto;margin-left:auto;align-self:center}.lp-mid{order:3;flex:1 1 100%;min-width:0;width:100%;display:contents}.lp-viz{order:3;width:100%;flex:1 1 100%}.lp-seek{order:4;flex:1 1 100%}.lp-time{order:5;flex:1 1 100%}}.listen-row .lr-main{flex:1;min-width:0}.lr-title{display:block;font-family:'Bricolage Grotesque','Hanken Grotesk',sans-serif;font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lr-artist{display:block;font-size:12px;color:var(--accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.listen-row .lr-act{flex-shrink:0;display:flex;align-items:center;flex-wrap:wrap;gap:8px}@media(max-width:560px){.listen-row{flex-wrap:wrap}.listen-row .lr-main{flex:1 1 0;min-width:0}.listen-row .lr-act{flex-basis:100%;display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.listen-row .lr-act>*{flex:1 1 auto;white-space:nowrap}}.profile-bio{margin-top:14px;padding:14px 16px;background:rgba(255,255,255,.03);border:1px solid var(--line,#173842);border-radius:12px;color:var(--ink,#eaf6f8);font-size:14px;line-height:1.65;white-space:normal}.pf-sel{margin-bottom:20px}.pf-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.pf-hero .profile-banner{height:160px;margin-bottom:0;border-radius:16px}.pf-hero-row{display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap;position:relative;z-index:2;padding:0 4px}.pf-hero .pa{width:96px;height:96px;border-radius:50%;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;display:grid;place-items:center;color:#04161c;font-family:'Bricolage Grotesque';font-weight:800;font-size:36px;flex-shrink:0;border:4px solid #0a0f16;overflow:hidden;margin-top:-48px}.pf-hero .pinfo{flex:1;min-width:200px;padding-top:16px}.pf-hero .pinfo .label{font-family:'JetBrains Mono';font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.pf-hero .pinfo h2{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:clamp(28px,5vw,44px);text-transform:uppercase;margin:2px 0 8px;line-height:1}.pf-hero .pstats{display:flex;flex-wrap:wrap;gap:16px;font-family:'JetBrains Mono';font-size:12px;color:var(--muted)}.pf-hero .pstats b{color:var(--ink)}.pf-hero .profile-bio{margin-top:18px}.pf-edito{display:grid;grid-template-columns:264px 1fr;gap:28px;align-items:start}.pf-side{position:sticky;top:84px;display:flex;flex-direction:column;gap:12px;border-right:1px solid var(--line);padding-right:24px}.pf-side .pa{width:76px;height:76px;border-radius:18px;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;display:grid;place-items:center;color:#04161c;font-family:'Bricolage Grotesque';font-weight:800;font-size:30px;overflow:hidden}.pf-side .pa img{width:100%;height:100%;object-fit:cover;border-radius:18px;display:block}.pf-side h2{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:24px;text-transform:uppercase;line-height:1.05;margin:0}.pf-side .label{font-family:'JetBrains Mono';font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.pf-side-stats{display:flex;flex-direction:column;gap:7px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;font-family:'JetBrains Mono';font-size:12px;color:var(--muted)}.pf-side-stats b{color:var(--accent);font-size:16px;margin-right:5px}.pf-disco-h{font-family:'JetBrains Mono';font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}@media(max-width:760px){.pf-edito{grid-template-columns:1fr;gap:18px}.pf-side{position:static;border-right:none;border-bottom:1px solid var(--line);padding-right:0;padding-bottom:18px}.pf-hero .profile-banner{height:110px;margin-bottom:0}.pf-hero .pa{width:78px;height:78px;font-size:28px;margin-top:-40px}}.artists-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(244px,1fr));gap:16px;margin-top:4px}.artist-card{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;cursor:pointer;transition:border-color .15s,transform .15s}.artist-card:hover{border-color:var(--accent);transform:translateY(-2px)}.artist-card .ac-banner{height:74px;background:var(--rainbow);background-size:200% auto;animation:hue 10s linear infinite}.artist-card .ac-av{width:62px;height:62px;border-radius:50%;border:3px solid var(--panel);background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;display:grid;place-items:center;color:#04161c;font-family:'Bricolage Grotesque';font-weight:800;font-size:22px;margin:-34px 0 0 16px;position:relative;z-index:2;overflow:hidden}.artist-card .ac-av img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.artist-card .ac-body{padding:6px 16px 16px}.artist-card .ac-name{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:18px;text-transform:uppercase;line-height:1.1;margin-top:6px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.artist-card .ac-genre{font-family:'JetBrains Mono';font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-top:5px}.artist-card .ac-bio{font-size:12.5px;color:var(--muted);line-height:1.55;margin-top:9px;min-height:38px}.artist-card .ac-foot{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:11px;border-top:1px solid var(--line);font-family:'JetBrains Mono';font-size:11px;color:var(--muted)}.artist-card .ac-foot .ac-view{color:var(--accent);font-weight:700}.ev-mng{display:flex;flex-direction:column;gap:10px;margin-top:14px}.ev-mrow{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px}.ev-mthumb{width:64px;height:64px;border-radius:8px;background:linear-gradient(135deg,#18b6d8,#7b6cff);background-size:cover!important;background-position:center!important;flex-shrink:0}.ev-minfo{min-width:0}.ev-mtitle{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:16px;text-transform:uppercase;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ev-mmeta{font-family:'JetBrains Mono';font-size:11px;color:var(--muted);margin-top:5px}.ev-mrej{font-size:11.5px;color:#ff8da0;margin-top:6px;line-height:1.4}.ev-macts{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}@media(max-width:560px){.ev-mrow{grid-template-columns:54px 1fr}.ev-mthumb{width:54px;height:54px}.ev-macts{grid-column:1/-1;justify-content:flex-start;margin-top:6px}}
}
.evw{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;margin-top:14px}.evw-step{font-family:'JetBrains Mono';font-size:11px;letter-spacing:.06em;color:var(--muted);text-transform:uppercase;margin-top:6px}.evw-bar{height:5px;background:#13242c;border-radius:3px;margin:8px 0 16px;overflow:hidden}.evw-bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#7b6cff);transition:width .25s}.evw-body{margin-bottom:14px}.evw-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:560px){.evw-grid2{grid-template-columns:1fr}}.evw-poster{margin-top:10px;border:1px dashed var(--line);border-radius:10px;padding:10px;min-height:80px;display:flex;align-items:center;justify-content:center}.evw-poster img{max-width:100%;max-height:220px;border-radius:8px;display:block}.evw-tickets{display:flex;flex-direction:column;gap:8px}.evw-trow{display:grid;grid-template-columns:1fr 100px 100px 40px;gap:8px;align-items:center;background:#0d1620;border:1px solid var(--line);border-radius:10px;padding:8px 10px}.evw-trow input{background:transparent;border:1px solid var(--line);border-radius:6px;padding:7px 9px;color:var(--ink);font-family:inherit;font-size:12.5px;outline:none}.evw-trow input:focus{border-color:var(--accent)}.evw-tdel{background:transparent;border:1px solid var(--line);border-radius:6px;color:#ff5b6e;cursor:pointer;font-weight:700;height:32px}@media(max-width:560px){.evw-trow{grid-template-columns:1fr 70px 70px 32px;max-width:100%}
.evw-trow input{min-width:0}}.evw-free{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px;color:var(--ink);cursor:pointer}.evw-nav{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.evw-recap{display:grid;grid-template-columns:160px 1fr;gap:16px;align-items:start}.evw-rposter{background:#0a141b;border:1px solid var(--line);border-radius:10px;overflow:hidden;min-height:160px;display:flex;align-items:center;justify-content:center;padding:10px}.evw-rposter img{max-width:100%;max-height:200px;border-radius:6px;display:block}.evw-rinfo h3{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;text-transform:uppercase;margin:0 0 4px}@media(max-width:560px){.evw-recap{grid-template-columns:1fr}}.events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin-top:6px}.ev-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;cursor:pointer;transition:border-color .15s,transform .15s}.ev-card:hover{border-color:var(--accent);transform:translateY(-2px)}.evc-poster{height:110px;position:relative;background-size:cover!important;background-position:center!important}.evc-date{position:absolute;top:8px;left:8px;background:rgba(4,18,28,.8);color:#fff;font-family:'JetBrains Mono';font-size:10px;font-weight:700;padding:4px 8px;border-radius:6px;text-align:center;line-height:1.1}.evc-body{padding:11px 14px 14px}.evc-title{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:16px;text-transform:uppercase;line-height:1.12}.evc-coll{font-family:'JetBrains Mono';font-size:10.5px;letter-spacing:.05em;color:var(--accent);margin-top:4px;text-transform:uppercase}.evc-loc{font-size:11.5px;color:var(--muted);margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.evc-foot{display:flex;align-items:center;justify-content:space-between;margin-top:11px;padding-top:10px;border-top:1px solid var(--line);font-family:'JetBrains Mono';font-size:11px;color:var(--muted)}.evc-foot b{color:var(--ink)}.evc-free{color:#7bdc9f;font-weight:700}.evc-cta{color:var(--accent);font-weight:700}.evd-banner{height:140px;margin:-4px -4px 0;border-radius:10px;background-size:cover!important;background-position:center!important}.evd-body{padding:14px 2px 2px}.evd-title{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:22px;text-transform:uppercase;margin:0}.evd-coll{font-family:'JetBrains Mono';font-size:11px;color:var(--accent);margin-top:3px;text-transform:uppercase}.evd-meta{font-size:12.5px;color:#cfe;margin-top:8px}.evd-desc{font-size:13px;color:var(--muted);line-height:1.6;margin:12px 0 0;white-space:pre-line}.evd-sec{margin-top:16px}.evd-h{font-family:'JetBrains Mono';font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.evd-lineup{font-size:13px;color:#cfe;line-height:1.6;white-space:pre-line}.evd-tk{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}.evd-tk b{color:var(--accent)}.evd-tk-free{color:#7bdc9f;font-weight:700;font-size:14px}.evd-soon{margin-top:12px;text-align:center;font-size:12px;font-weight:700;border:1px dashed var(--line);color:var(--muted);padding:11px;border-radius:8px}.evb-list{display:flex;flex-direction:column;gap:8px;margin-top:4px}.evb-row{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#0d1620;border:1px solid var(--line);border-radius:10px;padding:9px 12px}.evb-lab{font-size:13px;display:flex;flex-direction:column}.evb-lab span{color:var(--accent);font-weight:700;font-size:12px;margin-top:2px}.evb-qty{width:62px;background:transparent;border:1px solid var(--line);border-radius:6px;padding:7px;color:var(--ink);font-family:inherit;text-align:center;outline:none}.evb-qty:focus{border-color:var(--accent)}.evb-out{font-size:11px;font-weight:700;color:#ff5b6e}.evcoll-onboard{display:flex;align-items:center;gap:14px;justify-content:space-between;flex-wrap:wrap;background:rgba(90,217,255,.07);border:1px solid rgba(90,217,255,.25);border-radius:12px;padding:13px 16px;margin:14px 0 4px;font-size:13px;color:#cfe;line-height:1.45}.tk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-bottom:8px}.tk-card{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px;cursor:pointer;transition:border-color .15s,transform .15s}.tk-card:hover{border-color:var(--accent);transform:translateY(-2px)}.tk-card.tk-used{opacity:.55}.tk-info{min-width:0;flex:1}.tk-title{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:15px;text-transform:uppercase;line-height:1.12;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tk-label{font-size:11.5px;color:var(--accent);margin-top:3px}.tk-meta{font-size:11px;color:var(--muted);margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tk-qrmini{width:72px;height:72px;flex-shrink:0;background:#fff;border-radius:6px;padding:3px;box-sizing:border-box}.tk-qrmini svg{display:block;width:100%;height:100%}.tk-qrbig{width:240px;max-width:80%;margin:0 auto;background:#fff;border-radius:10px;padding:10px;box-sizing:border-box}.tk-qrbig svg{display:block;width:100%;height:auto}.tk-code{text-align:center;font-family:'JetBrains Mono';font-size:15px;letter-spacing:.12em;color:var(--ink);margin-top:12px;font-weight:700}.scan-cam{background:#000;border-radius:12px;overflow:hidden;aspect-ratio:1/1;max-width:300px;margin:14px auto 0;display:flex;align-items:center;justify-content:center}.scan-cam video{width:100%;height:100%;object-fit:cover}.scan-result{min-height:24px;text-align:center;margin:14px auto 0;font-weight:700;font-size:15px;border-radius:10px;padding:0;max-width:300px;transition:background .15s}.scan-result span{display:block;font-weight:500;font-size:12.5px;margin-top:4px;opacity:.9}.scan-result.sc-ok{background:rgba(60,232,143,.16);color:#7bdc9f;padding:12px}.scan-result.sc-warn{background:rgba(255,210,63,.16);color:#ffd86b;padding:12px}.scan-result.sc-bad{background:rgba(255,91,110,.16);color:#ff8da0;padding:12px}.scan-manual{display:flex;gap:8px;max-width:300px;margin:14px auto 0}.scan-manual input{flex:1;background:#0d1620;border:1px solid var(--line);border-radius:8px;padding:9px 12px;color:var(--ink);font-family:'JetBrains Mono';font-size:13px;outline:none;text-transform:uppercase}.scan-manual input:focus{border-color:var(--accent)}.cw-types{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0}.cw-types button{background:var(--panel2);border:1px solid var(--line);border-radius:999px;padding:9px 16px;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer;transition:all .15s}.cw-types button:hover{border-color:var(--accent);color:#fff}.cw-types button.on{background:rgba(90,217,255,.15);border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.pending-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#ff5a7a;box-shadow:0 0 7px #ff5a7a;vertical-align:middle;margin-left:2px;animation:pdot 1.4s ease-in-out infinite}@keyframes pdot{0%,100%{opacity:1}50%{opacity:.4}}#collPage{position:fixed;inset:0;z-index:4000;display:none;overflow-y:auto;background:#07070f;color:#eef0ff;--c1:#19e3c2;--c2:#5ad9ff;--c3:#9b6cff;--c4:#ff5cc8;--c5:#ffb443;--cl:rgba(160,170,255,.18);--mu:#9aa0c4}#collPage.open{display:block}#collPage .cp-aurora{position:fixed;inset:-30vh -20vw;z-index:0;filter:blur(80px);opacity:.5;pointer-events:none}#collPage .cp-aurora i{position:absolute;width:46vw;height:46vw;border-radius:50%;mix-blend-mode:screen;animation:cpFloat 18s ease-in-out infinite}#collPage .cp-aurora i:nth-child(1){background:var(--c3);top:-6%;left:-4%}#collPage .cp-aurora i:nth-child(2){background:var(--c2);top:-10%;right:-6%;animation-delay:-4s;animation-duration:22s}#collPage .cp-aurora i:nth-child(3){background:var(--c4);top:30%;left:30%;animation-delay:-8s;animation-duration:26s}#collPage .cp-aurora i:nth-child(4){background:var(--c1);bottom:-10%;right:10%;animation-delay:-12s;animation-duration:20s}@keyframes cpFloat{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(6vw,4vh) scale(1.15)}66%{transform:translate(-5vw,-3vh) scale(.9)}}#collPage .cp-wrap{max-width:1060px;margin:0 auto;padding:0 20px;position:relative;z-index:2}#collPage .cp-close{position:fixed;top:14px;right:14px;z-index:10;width:42px;height:42px;border-radius:50%;border:1px solid var(--cl);background:rgba(20,22,40,.7);backdrop-filter:blur(10px);color:#fff;font-size:18px;cursor:pointer}#collPage .cp-badge{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:7px 14px;border-radius:999px;border:1px solid var(--cl);background:rgba(90,217,255,.07);color:var(--c2)}#collPage .cp-badge .d{width:7px;height:7px;border-radius:50%;background:var(--c1);box-shadow:0 0 10px var(--c1);animation:cpPulse 1.6s infinite}@keyframes cpPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.5}}#collPage .cp-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border-radius:13px;font-weight:700;font-size:14px;cursor:pointer;border:1px solid var(--cl);color:#eef0ff;background:rgba(22,24,44,.55);backdrop-filter:blur(10px);transition:.2s;text-decoration:none}#collPage .cp-btn:hover{transform:translateY(-2px)}#collPage .cp-btn.p{border:0;color:#04161c;background:linear-gradient(120deg,var(--c1),var(--c2),var(--c3));background-size:200% 100%;animation:cpSlide 4s linear infinite}@keyframes cpSlide{to{background-position:200% 0}}#collPage header{padding:60px 0 24px}#collPage .cp-logo{width:112px;height:112px;border-radius:30px;background:conic-gradient(from 0deg,var(--c1),var(--c2),var(--c3),var(--c4),var(--c5),var(--c1));display:grid;place-items:center;font-weight:800;font-size:36px;color:#05121a;box-shadow:0 0 60px -10px var(--c3);background-size:cover;background-position:center;overflow:hidden;flex:none}#collPage .cp-logo.spin{animation:cpSpin 14s linear infinite}#collPage .cp-logo{animation:cpBob 3.2s ease-in-out infinite,cpGlow 4s ease-in-out infinite}#collPage .cp-logo.spin{animation:cpSpin 14s linear infinite,cpGlow 4s ease-in-out infinite}#collPage .cp-logo:hover{animation-play-state:paused;transform:scale(1.07) rotate(-4deg)}@keyframes cpBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-11px)}}@keyframes cpGlow{0%,100%{box-shadow:0 0 60px -12px var(--c3)}50%{box-shadow:0 0 95px -4px var(--c2)}}@keyframes cpRevUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes cpFloatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}#collPage header .cp-wrap>*{animation:cpRevUp .7s both}#collPage header .cp-wrap>*:nth-child(2){animation-delay:.09s}#collPage header .cp-wrap>*:nth-child(3){animation-delay:.18s}#collPage header .cp-wrap>*:nth-child(4){animation-delay:.27s}#collPage .cp-blk{animation:cpRevUp .8s both}#collPage .cp-stat{transition:.25s;animation:cpFloatY 5s ease-in-out infinite}#collPage .cp-stat:nth-child(2){animation-delay:-1.2s}#collPage .cp-stat:nth-child(3){animation-delay:-2.4s}#collPage .cp-stat:nth-child(4){animation-delay:-3.6s}#collPage .cp-stat:hover{transform:translateY(-5px) scale(1.04);border-color:var(--c2);box-shadow:0 12px 32px -14px var(--c2);animation-play-state:paused}#collPage .cp-card{transition:.3s}#collPage .cp-card:hover{border-color:rgba(90,217,255,.42);box-shadow:0 16px 44px -20px var(--c3);transform:translateY(-3px)}#collPage .cp-res .a{transition:.3s}#collPage .cp-res .p:hover .a{transform:rotate(8deg) scale(1.1);box-shadow:0 0 26px -4px var(--c2)}#collPage .cp-sect::after{animation:cpLine 3s ease-in-out infinite}@keyframes cpLine{0%,100%{opacity:.45}50%{opacity:1}}#collPage .cp-badge{animation:cpGlowB 3s ease-in-out infinite}@keyframes cpGlowB{0%,100%{box-shadow:0 0 0 rgba(90,217,255,0)}50%{box-shadow:0 0 18px -4px var(--c2)}}#collPage .cp-ev:hover b{color:var(--c2);text-shadow:0 0 10px rgba(90,217,255,.5);transition:.25s}@keyframes cpSpin{to{transform:rotate(360deg)}}#collPage .cp-logo{animation:cpBob2 3.4s ease-in-out infinite,cpGlow 4s ease-in-out infinite,cpWobble 7s ease-in-out infinite;position:relative;overflow:hidden}#collPage .cp-logo.spin{animation:cpSpin2 11s linear infinite,cpBob2 3.4s ease-in-out infinite,cpGlow 4s ease-in-out infinite}@keyframes cpSpin2{to{rotate:360deg}}@keyframes cpBob2{0%,100%{translate:0 0}50%{translate:0 -12px}}@keyframes cpWobble{0%,100%{rotate:-5deg}50%{rotate:5deg}}#collPage .cp-logo::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 32%,rgba(255,255,255,.55) 50%,transparent 68%);transform:translateX(-130%);animation:cpShine 3.8s ease-in-out infinite;pointer-events:none}@keyframes cpShine{0%,55%{transform:translateX(-130%)}80%,100%{transform:translateX(130%)}}#collPage header .cp-wrap>h1.cp-title{animation:cpShim 6s linear infinite,cpBreath 5.5s ease-in-out infinite;transform-origin:left center}@keyframes cpBreath{0%,100%{transform:scale(1)}50%{transform:scale(1.018)}}#collPage .cp-stat b{animation:cpNum 3.4s ease-in-out infinite}@keyframes cpNum{0%,100%{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 10px rgba(90,217,255,.6))}}#collPage .cp-card{position:relative;overflow:hidden}#collPage .cp-card::before{content:"";position:absolute;top:0;left:0;width:55%;height:100%;background:linear-gradient(120deg,transparent,rgba(90,217,255,.12),transparent);transform:translateX(-170%) skewX(-18deg);transition:.7s ease;pointer-events:none}#collPage .cp-card:hover::before{transform:translateX(280%) skewX(-18deg)}#collPage .cp-res .p{animation:cpFloatY 4.6s ease-in-out infinite}#collPage .cp-res .p:nth-child(2){animation-delay:-.9s}#collPage .cp-res .p:nth-child(3){animation-delay:-1.8s}#collPage .cp-res .p:nth-child(4){animation-delay:-2.7s}#collPage .cp-res .p:nth-child(5){animation-delay:-3.6s}#collPage .cp-res .p:hover{animation-play-state:paused}#collPage .cp-res .a{animation:cpGlowA 3.6s ease-in-out infinite}@keyframes cpGlowA{0%,100%{box-shadow:0 0 0 transparent}50%{box-shadow:0 0 20px -4px var(--c2)}}#collPage .cp-btn.p{position:relative;overflow:hidden}#collPage .cp-btn.p::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.45) 50%,transparent 65%);transform:translateX(-130%);animation:cpShine 3s ease-in-out infinite;pointer-events:none}#collPage .cp-aurora{animation:cpHue 18s linear infinite}@keyframes cpHue{to{filter:blur(80px) hue-rotate(360deg)}}#collPage .cp-tl::before{background-size:100% 220%;animation:cpTlFlow 3s linear infinite}@keyframes cpTlFlow{to{background-position:0 -220%}}@media(prefers-reduced-motion:reduce){#collPage *,#collPage .cp-aurora i{animation:none!important}}#collPage .cp-banner{height:170px;border-radius:0 0 24px 24px;margin:0 0 -34px;background-size:cover;background-position:center;position:relative;z-index:1}#collPage .cp-banner-empty{display:flex;align-items:center;justify-content:center;border:2px dashed rgba(90,217,255,.4);background:rgba(90,217,255,.05);color:var(--c2);font-weight:700;cursor:pointer;height:130px}#collPage .cp-pick{cursor:pointer}#collPage .cp-pick:hover{outline:2px solid var(--c2);outline-offset:2px}#collPage .cpub[data-theme="liquid"]{--c1:#19e3c2;--c2:#5ad9ff;--c3:#7b5cff;--c4:#ff5ca8;--c5:#ffd36b}#collPage .cpub[data-theme="liquid"] .cp-logo{border-radius:50%}#collPage .cpub[data-theme="magazine"]{--c1:#8f8cff;--c2:#5ad9ff;--c3:#9b6cff;--c4:#ff8fe0;--c5:#ffd36b}#collPage .cpub[data-theme="magazine"] .cp-title{font-style:italic;letter-spacing:-.04em}#collPage .cpub[data-theme="magazine"] .cp-logo,#collPage .cpub[data-theme="magazine"] .cp-logo.spin{border-radius:18px;animation:cpFlip3d 6s ease-in-out infinite!important}@keyframes cpFlip3d{0%,100%{transform:rotateY(-20deg)}50%{transform:rotateY(20deg)}}#collPage .cpub[data-theme="terminal"]{--c1:#2dffaa;--c2:#2dffaa;--c3:#3bd8ff;--c4:#2dffaa;--c5:#3bd8ff;--mu:#7fceb4}#collPage .cpub[data-theme="terminal"] .cp-logo,#collPage .cpub[data-theme="terminal"] .cp-logo.spin{border-radius:14px;background:rgba(45,255,170,.06)!important;border:2px solid #2dffaa;color:#2dffaa;box-shadow:0 0 22px rgba(45,255,170,.4);animation:cpGlow 3s ease-in-out infinite!important}#collPage .cpub[data-theme="terminal"] .cp-aurora{opacity:.22}#collPage .cpub[data-theme="terminal"]::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.3;background:linear-gradient(rgba(45,255,170,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(45,255,170,.06) 1px,transparent 1px);background-size:32px 32px}#collPage .cp-edbar{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 14px;background:rgba(8,8,16,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--cl)}#collPage .cp-edthemes{display:flex;gap:6px;flex-wrap:wrap;align-items:center}#collPage .cp-edlbl{font-size:12px;color:var(--mu);text-transform:uppercase;letter-spacing:.1em;margin-right:2px}#collPage .cp-thbtn{background:rgba(255,255,255,.05);border:1px solid var(--cl);color:#eef0ff;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:700;cursor:pointer}#collPage .cp-thbtn.on{background:linear-gradient(120deg,var(--c1),var(--c2));color:#05121a;border-color:transparent}#collPage .cp-edact{display:flex;gap:8px}#collPage .cp-edsave{background:linear-gradient(120deg,var(--c1),var(--c2));color:#05121a;border:0;padding:9px 16px;border-radius:10px;font-weight:800;cursor:pointer}#collPage .cp-edquit{background:transparent;border:1px solid var(--cl);color:#eef0ff;padding:9px 14px;border-radius:10px;cursor:pointer}#collPage .cp-edhint{position:fixed;top:56px;left:0;right:0;z-index:19;text-align:center;font-size:12px;color:var(--mu);padding:6px;background:rgba(8,8,16,.6)}#collPage .cpub[data-edit] header{padding-top:130px}#collPage .cpub[data-edit] .cp-banner{margin-top:90px}#collPage [data-edit] [contenteditable]{outline:1px dashed rgba(90,217,255,.45);outline-offset:2px;border-radius:6px;min-width:30px;transition:.15s}#collPage [data-edit] [contenteditable]:focus{outline:2px solid var(--c2);background:rgba(90,217,255,.08)}#collPage [data-edit] [contenteditable]:empty::before{content:attr(data-ph);color:var(--mu);opacity:.5;pointer-events:none}#collPage .cp-edrow{margin:8px 0}#collPage .cp-edrow label{display:block;font-size:12px;color:var(--mu);margin-bottom:4px}#collPage .cp-edinp,#collPage .cp-edsel{background:rgba(255,255,255,.05);border:1px solid var(--cl);color:#eef0ff;border-radius:10px;padding:9px 12px;font-size:14px}#collPage .cp-edinp{width:100%;max-width:440px}#collPage .cp-edsel{margin-top:6px}#collPage .cp-edcard{position:relative}#collPage .cp-eddel{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;border:0;background:#ff5a7a;color:#fff;font-size:11px;cursor:pointer;z-index:2}#collPage .cp-edadd{background:rgba(90,217,255,.1);border:1px dashed var(--c2);color:var(--c2);border-radius:14px;padding:10px 16px;font-weight:700;cursor:pointer;align-self:center}#collPage .cp-edlinks{width:100%}#collPage h1.cp-title{font-size:clamp(42px,10vw,100px);line-height:.85;font-weight:800;letter-spacing:-.03em;margin:18px 0 6px;background:linear-gradient(110deg,#fff,var(--c2),var(--c3),var(--c4),#fff);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:cpShim 6s linear infinite}@keyframes cpShim{to{background-position:250% 0}}#collPage .cp-sub{font-size:18px;color:var(--mu);max-width:640px}#collPage .cp-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}#collPage .cp-marq{margin:26px 0;border-top:1px solid rgba(90,217,255,.45);border-bottom:1px solid rgba(90,217,255,.45);background:rgba(90,217,255,.06);box-shadow:0 0 22px rgba(90,217,255,.2) inset;overflow:hidden;white-space:nowrap;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}#collPage .cp-marq div{display:inline-block;padding:14px 0;animation:cpScroll 18s linear infinite}#collPage .cp-marq span{font-weight:800;font-size:22px;margin:0 22px;color:var(--c2);text-shadow:0 0 12px rgba(90,217,255,.55)}#collPage .cp-marq span::after{content:"\2022";margin-left:22px;color:var(--c3);text-shadow:0 0 10px var(--c3)}@keyframes cpScroll{to{transform:translateX(-50%)}}#collPage .cp-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:8px 0}#collPage .cp-stat{background:rgba(22,24,44,.55);border:1px solid var(--cl);border-radius:18px;padding:16px;backdrop-filter:blur(12px)}#collPage .cp-stat b{font-size:28px;display:block;background:linear-gradient(120deg,var(--c1),var(--c3));-webkit-background-clip:text;background-clip:text;color:transparent}#collPage .cp-blk{padding:24px 0}#collPage .cp-sect{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--c2);margin-bottom:14px;display:flex;align-items:center;gap:10px}#collPage .cp-sect::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--cl),transparent)}#collPage .cp-card{background:rgba(22,24,44,.55);border:1px solid var(--cl);border-radius:22px;padding:24px;backdrop-filter:blur(14px)}#collPage .cp-lead{font-size:21px;font-weight:600;line-height:1.45}#collPage .cp-grid2{display:grid;gap:18px}#collPage .cp-res{display:flex;gap:14px;flex-wrap:wrap}#collPage .cp-res .p{display:flex;flex-direction:column;align-items:center;gap:8px;width:100px;text-align:center;transition:.25s}#collPage .cp-res .p:hover{transform:translateY(-5px)}#collPage .cp-res .a{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;font-weight:800;color:#05121a;font-size:18px;background:linear-gradient(135deg,var(--c2),var(--c3))}#collPage .cp-tl{position:relative;padding-left:24px}#collPage .cp-tl::before{content:"";position:absolute;left:6px;top:6px;bottom:6px;width:2px;background:linear-gradient(180deg,var(--c2),var(--c3),var(--c4))}#collPage .cp-ev{position:relative;padding:11px 0}#collPage .cp-ev::before{content:"";position:absolute;left:-22px;top:17px;width:11px;height:11px;border-radius:50%;background:var(--c2);box-shadow:0 0 0 4px rgba(90,217,255,.15);animation:cpPulse 2s infinite}#collPage .cp-links{display:flex;gap:10px;flex-wrap:wrap}#collPage .cp-mu{color:var(--mu)}@media(min-width:720px){#collPage .cp-stats{grid-template-columns:repeat(4,1fr)}#collPage .cp-grid2{grid-template-columns:1.5fr 1fr}}@keyframes spin{to{transform:rotate(360deg)}}.cvt-notice{background:rgba(24,182,216,.08);border:1px solid var(--line);border-radius:8px;padding:12px 14px;font-size:13px;color:var(--muted);line-height:1.5;margin-bottom:14px}.cvt-notice b{color:var(--ink)}.cvt-engine{display:flex;align-items:center;gap:9px;font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--muted);margin-bottom:14px}.cvt-dot{width:9px;height:9px;border-radius:50%;background:var(--muted)}.cvt-dot.load{background:var(--yellow);animation:cvtpulse 1s infinite}.cvt-dot.ready{background:var(--lime)}.cvt-dot.fail{background:var(--hot)}@keyframes cvtpulse{50%{opacity:.3}}.cvt-drop{border:2px dashed var(--line);border-radius:10px;padding:30px 18px;text-align:center;cursor:pointer;transition:.2s;background:var(--panel);margin-bottom:16px}.cvt-drop:hover,.cvt-drop.over{border-color:var(--accent2);background:rgba(29,224,192,.05)}.cvt-di{font-size:2.4rem;margin-bottom:10px}.cvt-fm{font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--muted);margin-top:8px}.cvt-layout{display:grid;grid-template-columns:1fr 320px;gap:16px;align-items:start}@media(max-width:840px){.cvt-layout{grid-template-columns:1fr}.dacc-b{overflow-x:hidden}#studioBody,.cvt-layout,.cvt-side,.cvt-queue,.cvt-item,.cvt-drop{max-width:100%;min-width:0}.cvt-item{flex-wrap:wrap}.cvt-item *{min-width:0;word-break:break-word}.cvt-seg button{flex:1 1 auto}}.cvt-pane{padding:18px}.cvt-h{display:flex;align-items:center;gap:8px;font-size:15px;margin-bottom:14px;text-transform:uppercase}.cvt-n{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--accent2);background:rgba(29,224,192,.1);padding:2px 7px;border-radius:5px}.cvt-queue{display:flex;flex-direction:column;gap:9px}.cvt-qempty{color:var(--muted);text-align:center;padding:22px;font-size:13.5px}.cvt-item{display:flex;align-items:center;gap:11px;background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:10px 12px}.cvt-ic{width:34px;height:34px;border-radius:7px;background:var(--bg2);display:grid;place-items:center;font-size:1rem;flex-shrink:0}.cvt-meta{flex:1;min-width:0}.cvt-meta b{display:block;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cvt-meta span{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted)}.cvt-st{font-family:'JetBrains Mono',monospace;font-size:11px;padding:3px 8px;border-radius:5px;white-space:nowrap}.cvt-st.wait{background:var(--bg2);color:var(--muted)}.cvt-st.work{background:rgba(24,182,216,.16);color:var(--accent)}.cvt-st.done{background:rgba(60,232,143,.16);color:var(--lime)}.cvt-st.err{background:rgba(255,93,114,.16);color:var(--hot)}.cvt-rm{background:none;border:none;color:var(--muted);cursor:pointer;font-size:1.1rem;line-height:1;padding:0 2px}.cvt-rm:hover{color:var(--hot)}.cvt-dl{background:var(--lime);color:#04231d;border:none;border-radius:6px;padding:6px 11px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:'JetBrains Mono',monospace}.cvt-field{margin-bottom:16px}.cvt-field>label{display:block;font-family:'JetBrains Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:8px}.cvt-seg{display:flex;flex-wrap:wrap;gap:6px}.cvt-seg button{flex:1;min-width:52px;background:var(--panel2);border:1px solid var(--line);color:var(--ink);cursor:pointer;font-family:'JetBrains Mono',monospace;font-size:12px;padding:9px 6px;border-radius:6px;transition:.14s;text-transform:uppercase}.cvt-seg button:hover{border-color:var(--accent)}.cvt-seg button.on{background:var(--accent2);color:#04231d;border-color:var(--accent2);font-weight:700}.cvt-field select{width:100%;background:var(--panel2);border:1px solid var(--line);color:var(--ink);padding:9px 11px;border-radius:6px;font-family:'JetBrains Mono',monospace;font-size:12.5px;cursor:pointer}#nzMode option,#nzLufs option,.cvt-field select option{color:#0b1220;background:#fff}.cvt-range{display:flex;align-items:center;gap:11px}.cvt-range input{flex:1;accent-color:var(--accent2)}.cvt-rv{font-family:'JetBrains Mono',monospace;font-size:12.5px;min-width:52px;text-align:right;color:var(--accent2)}.cvt-hint2{font-size:11.5px;color:var(--muted);margin-top:7px;line-height:1.4}.cvt-prog{margin-top:14px}.cvt-bar{height:7px;background:var(--bg2);border-radius:999px;overflow:hidden}.cvt-bar i{display:block;height:100%;width:0;background:var(--rainbow);background-size:200% auto;animation:hue 6s linear infinite;transition:width .25s}.cvt-bar.indet{position:relative}.cvt-bar.indet i{width:38%!important;transition:none;animation:hue 6s linear infinite,cvtslide 1.05s ease-in-out infinite}@keyframes cvtslide{0%{transform:translateX(-110%)}100%{transform:translateX(330%)}}#nzProgFill.indet{width:40%!important;animation:nzslide 1.1s ease-in-out infinite}@keyframes nzslide{0%{transform:translateX(-110%)}100%{transform:translateX(300%)}}.cvt-pstat{display:flex;justify-content:space-between;font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--muted);margin-top:7px}.cvt-rowwrap{display:flex;flex-direction:column;min-width:0}.cvt-waves{margin:6px 0 2px;display:flex;flex-direction:column;gap:6px;padding:9px 11px;background:var(--bg2);border:1px solid var(--line);border-radius:8px;overflow:hidden}.cvt-wrow{display:flex;align-items:center;gap:10px;min-width:0}.cvt-wlab{font-family:'JetBrains Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);min-width:50px}.cvt-wc{flex:1;min-width:0;max-width:100%;height:40px;width:100%;display:block}.cvt-wmsg{font-size:11px;color:var(--muted)}.cvt-tabs{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap}.cvt-tabs button{flex:1;min-width:90px;background:var(--panel2);border:1px solid var(--line);color:var(--ink);cursor:pointer;font-family:'JetBrains Mono',monospace;font-size:12px;padding:10px;border-radius:6px;text-transform:uppercase}.cvt-tabs button.on{background:var(--accent2);color:#04231d;border-color:var(--accent2);font-weight:700}.loud-big{font-family:'Sora',sans-serif;font-size:2.4rem;font-weight:800;color:var(--accent2);text-align:center;margin-top:4px}.loud-sub{text-align:center;font-family:'JetBrains Mono',monospace;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:16px}.loud-grid{display:flex;gap:10px;margin-bottom:16px}.loud-grid>div{flex:1;background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:11px;text-align:center}.loud-grid span{display:block;font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--muted);text-transform:uppercase;margin-bottom:5px}.loud-grid b{font-size:1.05rem;color:var(--ink)}.loud-th{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--muted);text-transform:uppercase;margin-bottom:6px}.loud-row{display:flex;justify-content:space-between;padding:7px 0;border-top:1px solid var(--line);font-size:13px}.loud-row b{font-family:'JetBrains Mono',monospace;color:var(--accent2)}.spec-cv{width:100%;height:240px;display:block;min-width:0;max-width:100%;background:var(--bg2);border-radius:8px}.spec-legend{display:flex;justify-content:space-between;font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--muted);margin-top:6px}.pro-promo{position:relative;margin:56px auto;padding:48px 26px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(160deg,rgba(255,255,255,.035),rgba(255,255,255,.008));overflow:hidden}.pp-glow{position:absolute;top:-40%;left:50%;width:80%;height:200%;transform:translateX(-50%);background:radial-gradient(ellipse at center,rgba(60,232,143,.10),transparent 60%);pointer-events:none;animation:ppfloat 9s ease-in-out infinite}@keyframes ppfloat{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(22px)}}.pp-head{position:relative;z-index:1;text-align:center;margin-bottom:32px}.pp-badge{margin-bottom:14px}.pp-head h2{font-size:clamp(24px,4vw,38px);margin-bottom:10px}.pp-head p{color:var(--muted);max-width:560px;margin:0 auto;line-height:1.6}.pp-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;max-width:980px;margin:0 auto}.pp-card{background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:22px;opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease,border-color .3s}.pp-card.in{opacity:1;transform:none}.pp-card:hover{border-color:var(--accent2);transform:translateY(-4px)}.pp-ico{display:block;font-size:30px;margin-bottom:12px;animation:ppbob 4s ease-in-out infinite}.pp-card:nth-child(2n) .pp-ico{animation-delay:.6s}.pp-card:nth-child(3n) .pp-ico{animation-delay:1.2s}@keyframes ppbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}.pp-card h3{font-size:16px;margin-bottom:6px;text-transform:uppercase;letter-spacing:.02em}.pp-card p{color:var(--muted);font-size:13px;line-height:1.55}.pp-cta-row{position:relative;z-index:1;text-align:center;margin-top:32px}.pp-cta{font-size:16px;padding:14px 32px;position:relative;overflow:hidden}.pp-cta::after{content:'';position:absolute;top:0;left:-150%;width:60%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);animation:ppshine 3.2s ease-in-out infinite}@keyframes ppshine{0%{left:-150%}55%,100%{left:150%}}.pp-note{display:block;margin-top:12px;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}@media(prefers-reduced-motion:reduce){.pp-glow,.pp-ico,.pp-cta::after{animation:none}.pp-card{opacity:1;transform:none}}.pp-badge-cli{display:inline-block;font-family:'JetBrains Mono',monospace;font-weight:800;font-size:11px;letter-spacing:.12em;color:#04231d;background:#2bd4e8;padding:4px 12px;border-radius:999px;margin-bottom:14px}.pp-only{display:inline-block;margin-top:10px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);padding:3px 10px;border-radius:999px}#clientPromo .pp-glow{background:radial-gradient(ellipse at center,rgba(43,212,232,.10),transparent 60%)}a,button,label,.card,.chip,.pill,[onclick],[role="button"]{transition:transform .15s cubic-bezier(.2,.7,.3,1),opacity .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease,filter .2s ease}a:not(.btn):hover{opacity:.82}button:active,.btn:active,a:not(.btn):active,.card:active,.pp-card:active,.chip:active,.pill:active,.lang-btn:active,.heart:active,.soc-link:active,.don-amt:active,.pass-toggle:active,.cart-pill:active,.dm-contact:active,.wz-mode-btn:active,.prev-tab:active,.tabs button:active,.cvt-tabs button:active,[role="button"]:active{transform:scale(.96)}a:focus-visible,button:focus-visible,.btn:focus-visible,[role="button"]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}@media (prefers-reduced-motion:reduce){a,button,label,.card,.chip,.pill,[onclick],[role="button"]{transition:color .2s ease,background-color .2s ease,border-color .2s ease}button:active,.btn:active,a:active,.card:active,.pp-card:active,.chip:active,.pill:active,.lang-btn:active,.heart:active,.soc-link:active,.don-amt:active,.pass-toggle:active,.cart-pill:active,.dm-contact:active,.wz-mode-btn:active,.prev-tab:active,.tabs button:active,.cvt-tabs button:active,[role="button"]:active{transform:none}}@keyframes viewIn{from{opacity:0;transform:perspective(1200px) translateY(22px) scale(.975) rotateX(4deg)}to{opacity:1;transform:none}}@keyframes viewOut{from{opacity:1;transform:none}to{opacity:0;transform:perspective(1200px) translateY(-10px) scale(.99) rotateX(-3deg)}}.view.leaving{display:block;animation:viewOut .16s ease both}@media(prefers-reduced-motion:reduce){.view.show,.view.leaving,.view.anim-in{animation:none}}@keyframes cascadeIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes glowPulse{0%{box-shadow:0 0 10px rgba(43,212,232,.3)}50%{box-shadow:0 0 25px rgba(43,212,232,.6)}100%{box-shadow:0 0 10px rgba(43,212,232,.3)}}@keyframes glowPulseWarm{0%{box-shadow:0 0 10px rgba(252,163,17,.3)}50%{box-shadow:0 0 25px rgba(252,163,17,.6)}100%{box-shadow:0 0 10px rgba(252,163,17,.3)}}@keyframes bgGradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}@keyframes parallaxFloat{0%{transform:translateY(0px)}100%{transform:translateY(-8px)}}@keyframes glitchFlicker{0%,100%{text-shadow:0 0 0 transparent}20%{text-shadow:-2px 0 #2bd4e8,2px 0 #ff00ff}40%{text-shadow:2px 0 #2bd4e8,-2px 0 #ff00ff}60%{text-shadow:0 0 0 transparent}}@keyframes shimmerWave{0%{background-position:-1000px 0}100%{background-position:1000px 0}}@keyframes floatIn{0%{opacity:0;transform:translateY(30px) rotateX(90deg)}100%{opacity:1;transform:none}}@keyframes spinGlow{0%{opacity:.3;transform:scale(.8) rotate(0deg)}100%{opacity:1;transform:scale(1) rotate(360deg)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}100%{opacity:1;transform:none}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}100%{opacity:1;transform:none}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.6}}@keyframes jiggle{0%,100%{transform:translateX(0)}25%{transform:translateX(-1px)}75%{transform:translateX(1px)}}.cascade-in{animation:cascadeIn .45s cubic-bezier(.2,.6,.3,1) both;animation-delay:calc(var(--index,0) * 40ms);backface-visibility:hidden}.glow-pulse{animation:glowPulse 2.5s ease-in-out infinite}.glow-warm{animation:glowPulseWarm 2.5s ease-in-out infinite}.parallax-scroll{will-change:transform}.stagger-item{opacity:0;animation:cascadeIn .6s cubic-bezier(.2,.6,.3,1) forwards;animation-delay:calc(var(--i,0) * 50ms)}.shimmer{background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.2) 50%,rgba(255,255,255,0) 100%);background-size:1000px 100%;animation:shimmerWave 3s infinite}.float-in{animation:floatIn .7s cubic-bezier(.34,.1,.68,.55) both}.spin-glow{animation:spinGlow 1.2s ease-out}.glitch-text{animation:glitchFlicker .4s infinite}.pulse-subtle{animation:pulse 3s ease-in-out infinite}.jiggle{animation:jiggle .3s ease-in-out}.view{perspective:1200px;transform-origin:center top}.view.anim-in{animation:viewIn .42s cubic-bezier(.2,.7,.3,1) both}@keyframes viewInR{from{opacity:0;transform:translateX(26px)}to{opacity:1;transform:none}}@keyframes viewInL{from{opacity:0;transform:translateX(-26px)}to{opacity:1;transform:none}}@media(max-width:760px){.view.anim-in.from-right{animation:viewInR .34s cubic-bezier(.22,.7,.3,1) both}.view.anim-in.from-left{animation:viewInL .34s cubic-bezier(.22,.7,.3,1) both}}.view.leaving{animation:viewOut .16s ease both;transform-origin:center;perspective:1000px}.hero-glow{background:linear-gradient(-45deg,#1a1a2e,#16213e,#0f3460);background-size:400% 400%;animation:bgGradientShift 15s ease infinite}.section-gradient{background:linear-gradient(135deg,rgba(43,212,232,.08) 0%,rgba(252,163,17,.05) 100%);border-radius:16px;padding:32px 24px}.btn-primary{position:relative;overflow:hidden}.btn-primary::before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(255,255,255,.18),transparent);transform:translateX(-100%);animation:shimmerWave 3.4s ease-in-out infinite;pointer-events:none}button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px rgba(43,212,232,.25)}button:active{transform:scale(.97)}.card:not(.minimal){position:relative;transition:transform .25s cubic-bezier(.2,.6,.3,1),box-shadow .25s ease,border-color .2s ease}.card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(43,212,232,.2)}.pp-card{position:relative;overflow:hidden}.pp-card::after{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:radial-gradient(circle,rgba(43,212,232,.1) 0%,transparent 70%);transition:left .4s ease}.pp-card:hover::after{left:100%}.reveal-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.reveal-on-scroll.visible{opacity:1;transform:translateY(0)}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent2);outline-offset:3px;animation:glowPulse .8s ease-out}@media(prefers-reduced-motion:reduce){.cascade-in,.stagger-item,.float-in,.spin-glow,.glitch-text,.pulse-subtle,.jiggle,.glow-pulse,.glow-warm,.shimmer,.btn-primary::before,#fxBg,.view.show,.view.leaving,.view.anim-in,.hero .glow,.ticker{animation:none!important}button:hover:not(:disabled),.card:hover,.pp-card:hover{transform:none!important;box-shadow:none}.parallax-scroll{transform:none!important}}html{background:var(--bg)}body{background:transparent}#fxBg{position:fixed;inset:-12%;z-index:-1;pointer-events:none;opacity:.5;filter:blur(40px);background:radial-gradient(38% 42% at 18% 12%,rgba(24,182,216,.38),transparent 70%),radial-gradient(34% 40% at 84% 18%,rgba(29,224,192,.28),transparent 70%),radial-gradient(46% 50% at 60% 92%,rgba(60,232,143,.16),transparent 70%);animation:fxBgDrift 32s ease-in-out infinite alternate;will-change:transform;transform:translateZ(0);backface-visibility:hidden}@keyframes fxBgDrift{0%{transform:translate3d(-2%,-1%,0) scale(1.02)}100%{transform:translate3d(2%,2%,0) scale(1.05)}}@media(prefers-reduced-motion:reduce){#fxBg{animation:none}}:root{--glass:linear-gradient(150deg,rgba(255,255,255,.06),rgba(255,255,255,.015));--glass-bd:rgba(255,255,255,.12);--neon:rgba(155,108,255,.5)}.card{background:linear-gradient(160deg,rgba(18,48,57,.55),rgba(10,26,32,.62))!important;-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);border:1px solid var(--glass-bd)!important;box-shadow:0 6px 26px -16px rgba(0,0,0,.7),0 1px 0 rgba(255,255,255,.06) inset}.card:hover{border-color:var(--neon)!important;box-shadow:0 20px 50px -22px rgba(25,227,194,.5),0 0 30px -10px rgba(90,217,255,.45),0 1px 0 rgba(255,255,255,.12) inset!important}.btn-primary{background:linear-gradient(135deg,var(--accent2,#1de0c0),var(--cyan,#5ad9ff))!important;color:#04161c!important;box-shadow:0 6px 20px -8px rgba(25,227,194,.6),0 0 16px -4px rgba(90,217,255,.5)}.btn-primary:hover{box-shadow:0 10px 28px -8px rgba(25,227,194,.85),0 0 22px -2px rgba(90,217,255,.8)!important;filter:brightness(1.05)}.btn-ghost{background:var(--glass)!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--glass-bd)!important}.btn-ghost:hover{border-color:var(--neon)!important;color:#fff!important;box-shadow:0 6px 18px -8px rgba(25,227,194,.5),0 0 14px -3px rgba(90,217,255,.5);transform:translateY(-1px)}.field input,.field select,.field textarea,.catalog-search input{background:rgba(255,255,255,.05)!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--glass-bd)!important}.field input:focus,.field select:focus,.field textarea:focus,.catalog-search input:focus{border-color:var(--neon)!important;box-shadow:0 0 0 3px rgba(90,217,255,.16),0 0 16px -4px rgba(25,227,194,.5)!important}.chip{background:var(--glass)!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--glass-bd)!important}.chip:hover{border-color:var(--neon)!important;color:var(--ink)!important}.chip.on,.chip.active{background:linear-gradient(135deg,rgba(25,227,194,.25),rgba(90,217,255,.18))!important;border-color:var(--neon)!important;color:#fff!important;box-shadow:0 0 16px -4px rgba(90,217,255,.5)}.metric{background:linear-gradient(160deg,rgba(18,48,57,.6),rgba(10,26,32,.66))!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--glass-bd)!important;box-shadow:0 4px 18px -12px rgba(0,0,0,.6),0 1px 0 rgba(255,255,255,.06) inset}.metric.hl{border-color:var(--neon)!important;box-shadow:0 0 24px -8px rgba(25,227,194,.5),0 1px 0 rgba(255,255,255,.1) inset!important}.dacc{background:linear-gradient(160deg,rgba(16,42,52,.5),rgba(8,20,26,.55))!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--glass-bd)!important;box-shadow:0 4px 18px -14px rgba(0,0,0,.6)}.dacc.open{border-color:var(--neon)!important;box-shadow:0 0 22px -10px rgba(90,217,255,.45)!important}.modal{background:linear-gradient(160deg,rgba(18,46,56,.82),rgba(9,21,27,.88))!important;-webkit-backdrop-filter:blur(26px) saturate(1.5);backdrop-filter:blur(26px) saturate(1.5);border:1px solid var(--neon)!important;box-shadow:0 30px 80px -30px rgba(0,0,0,.85),0 0 40px -12px rgba(25,227,194,.35),0 1px 0 rgba(255,255,255,.1) inset!important}nav{background:linear-gradient(180deg,rgba(10,22,28,.97),rgba(7,16,20,.97))!important;border-bottom:1px solid var(--neon)!important;box-shadow:0 4px 24px -16px rgba(0,0,0,.7)}.stat{background:linear-gradient(160deg,rgba(18,48,57,.55),rgba(10,26,32,.6))!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-bd)!important}body.theme-neon::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;-webkit-transform:translateZ(0);transform:translateZ(0);will-change:transform;background:radial-gradient(60vw 42vw at 50% -8%,rgba(24,182,216,.16),transparent 70%),radial-gradient(48vw 40vw at 88% 6%,rgba(29,224,192,.12),transparent 70%),radial-gradient(46vw 40vw at 10% 32%,rgba(155,108,255,.1),transparent 70%)}body.theme-neon .brand .mark{box-shadow:0 0 26px rgba(91,217,255,.8),0 0 52px rgba(25,227,194,.45)}body.theme-neon .brand .slogan{text-shadow:0 0 12px rgba(60,232,143,.6)}body.theme-neon .ticker{box-shadow:0 0 28px rgba(91,217,255,.4)}body.theme-neon .label{text-shadow:0 0 14px rgba(91,217,255,.6)}body.theme-neon .hero .glow{background:radial-gradient(closest-side at 18% 36%,rgba(24,182,216,.5),transparent),radial-gradient(closest-side at 50% 22%,rgba(29,224,192,.34),transparent),radial-gradient(closest-side at 82% 32%,rgba(91,108,255,.32),transparent),radial-gradient(closest-side at 60% 80%,rgba(29,224,192,.22),transparent);filter:blur(40px)}body.theme-neon h1 .grad,body.theme-neon .grad{filter:drop-shadow(0 0 26px rgba(91,217,255,.55))}body.theme-neon .stat{border-color:rgba(91,217,255,.22)}body.theme-neon .stat::before{box-shadow:0 0 16px rgba(91,217,255,.7)}body.theme-neon .price{text-shadow:0 0 16px rgba(91,217,255,.55)}body.theme-neon .btn-primary{box-shadow:0 0 30px rgba(91,217,255,.6)}body.theme-neon .btn-primary:hover{box-shadow:0 0 46px rgba(91,217,255,.9)}body.theme-neon .card:hover{border-color:var(--neon);box-shadow:0 20px 50px -22px rgba(25,227,194,.55),0 0 36px -8px rgba(90,217,255,.6),0 1px 0 rgba(255,255,255,.12) inset}@keyframes eqbar{0%,100%{height:18%}50%{height:100%}}.theme-spectrum #view-home .hero-inner{text-align:center;margin-left:auto;margin-right:auto}.theme-spectrum #view-home .hero-cta,.theme-spectrum #view-home .stats{justify-content:center}.theme-eq{display:flex;align-items:flex-end;justify-content:center;gap:5px;height:120px;margin:30px 0 4px}.theme-eq i{width:13px;border-radius:4px 4px 0 0;background:var(--rainbow);background-size:100% 200%;animation:eqbar 1.1s ease-in-out infinite,hue 6s linear infinite;box-shadow:0 0 16px rgba(91,217,255,.4)}.theme-spotlight #view-home .hero-inner{border:1px solid rgba(91,217,255,.25);border-radius:20px;padding:32px;background:linear-gradient(160deg,rgba(18,48,57,.42),rgba(10,26,32,.52));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 0 60px -24px rgba(90,217,255,.6)}body.theme-spotlight .hero .glow{animation:none}html.anim-off *:not(#toast):not(.animx):not(.animx *),html.anim-off *:not(.animx):not(.animx *)::before,html.anim-off *:not(.animx):not(.animx *)::after{animation:none!important}html.anim-off *:not(.animx):not(.animx *){transition:none!important;scroll-behavior:auto!important}html.anim-off #ticker .lv-track{animation:lvscroll 18s linear infinite!important}.theme-wave{display:flex;align-items:flex-end;gap:3px;height:46px;margin:22px 0 2px;max-width:520px}.theme-wave i{flex:1;border-radius:3px;background:var(--rainbow);background-size:100% 200%;animation:eqbar 1s ease-in-out infinite,hue 6s linear infinite}body.theme-nocturne::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(58% 48% at 12% -4%,rgba(94,234,212,.12),transparent 60%),radial-gradient(56% 50% at 92% 2%,rgba(167,139,250,.13),transparent 60%);filter:blur(18px)}#themeAurora{position:fixed;inset:-22% -12% auto -12%;height:95vh;z-index:-1;filter:blur(72px);opacity:.62;pointer-events:none;overflow:hidden}#themeAurora i{position:absolute;border-radius:50%;mix-blend-mode:screen;display:block}#themeAurora .au1{width:55vw;height:55vw;left:-6vw;top:-8vh;background:radial-gradient(circle,#5eead4,transparent 62%)}#themeAurora .au2{width:50vw;height:50vw;right:-4vw;top:-12vh;background:radial-gradient(circle,#a78bfa,transparent 62%);animation-delay:-7s}#themeAurora .au3{width:46vw;height:46vw;left:30vw;top:4vh;background:radial-gradient(circle,#f0abfc,transparent 60%);animation-delay:-13s}@keyframes nocturneDrift{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(6vw,4vh) scale(1.12)}66%{transform:translate(-5vw,-3vh) scale(.95)}}@media(prefers-reduced-motion:reduce){#themeAurora i{animation:none}}body.theme-nocturne h1 .grad,body.theme-nocturne .grad{background-image:linear-gradient(120deg,#5eead4,#a78bfa,#f0abfc)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent;color:transparent}body.theme-nocturne .label{color:#5eead4}body.theme-nocturne .stat{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.10);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:18px}body.theme-nocturne .card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.10);border-radius:18px}body.theme-nocturne .price{color:#a78bfa;text-shadow:0 0 16px rgba(167,139,250,.4)}body.theme-nocturne .btn-primary{background:linear-gradient(135deg,#5eead4,#60a5fa);color:#06121a;box-shadow:0 10px 30px -10px rgba(96,165,250,.6)}body.theme-nocturne nav{border-bottom:1px solid rgba(167,139,250,.25)}.cookie-note{position:fixed;left:12px;right:12px;bottom:12px;z-index:200;display:none;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;background:rgba(13,15,28,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:12px;padding:13px 16px;box-shadow:0 14px 44px -18px rgba(0,0,0,.85)}.cookie-note span{font-size:13px;line-height:1.45;color:var(--muted);max-width:780px}.cookie-note .btn{flex:0 0 auto}#bootSplash{position:fixed;inset:0;z-index:99999;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;transition:opacity .42s ease}#bootSplash.off{opacity:0;pointer-events:none}#bootSplash .bs-logo{width:72px;height:72px;border-radius:18px;background:linear-gradient(135deg,#19e3c2,#7b5cff);display:flex;align-items:center;justify-content:center;box-shadow:0 0 44px rgba(25,227,194,.4)}#bootSplash .bs-name{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:22px;letter-spacing:.05em;color:var(--ink)}#bootSplash .bs-bar{width:120px;height:3px;border-radius:3px;background:var(--line);overflow:hidden;position:relative}.dm-b{position:relative}.dm-del,.dm-audcard .dm-del{position:absolute;top:-8px;right:-8px;width:22px;height:22px;border-radius:50%;border:none;background:#c0392b;color:#fff;font-size:14px;line-height:22px;text-align:center;cursor:pointer;padding:0;opacity:0;transition:opacity .15s;box-shadow:0 2px 6px -1px rgba(0,0,0,.5);z-index:3}.dm-b:hover .dm-del,.dm-audcard:hover .dm-del,.dm-del:focus{opacity:1}.dm-audcard{position:relative}@media(hover:none){.dm-del{opacity:.9}}.dm-del-msg .dm-expired{font-style:italic;opacity:.7}#ptrInd .ptr-spin{width:18px;height:18px;border-radius:50%;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff}#ptrInd.ready .ptr-spin{border-top-color:#04161c}#ptrInd.spin .ptr-spin{animation:ptrSpin .7s linear infinite}@keyframes ptrSpin{to{transform:rotate(360deg)}}#bootSplash .bs-bar::after{content:'';position:absolute;top:0;bottom:0;left:-40%;width:40%;background:linear-gradient(90deg,#19e3c2,#7b5cff);border-radius:3px;animation:bsSlide 1.1s ease-in-out infinite}@keyframes bsSlide{0%{left:-40%}100%{left:100%}}
/* ===== STAFF PILOTAGE — refonte ===== */
#view-admin>.wrap{max-width:1340px}
@media(min-width:960px){
#view-admin>.wrap{display:grid;grid-template-columns:230px 1fr;gap:28px;align-items:start}
#view-admin>.wrap>.shead,#view-admin>.wrap>#stfHero{grid-column:1/-1}
#admTabs{position:sticky;top:84px}
#view-admin>.wrap>*:not(#admTabs):not(.shead):not(#stfHero){min-width:0}
}
#stfHero{margin:2px 0 22px;padding:22px 24px;border-radius:20px;position:relative;overflow:hidden;
 background:linear-gradient(150deg,rgba(25,227,194,.12),rgba(90,217,255,.08),rgba(155,108,255,.10));
 border:1px solid var(--glass-bd)}
#stfHero::after{content:"";position:absolute;right:-40px;top:-40px;width:180px;height:180px;border-radius:50%;
 background:radial-gradient(closest-side,rgba(90,217,255,.35),transparent);pointer-events:none}
#stfHero .sh-k{font-family:'JetBrains Mono';font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan)}
#stfHero h2{font-size:clamp(28px,5vw,44px);text-transform:uppercase;letter-spacing:-.02em;margin:6px 0 14px}
#stfHero .sh-kpis{display:flex;gap:12px;flex-wrap:wrap}
#stfHero .sh-kpi{flex:1 1 130px;min-width:120px;background:rgba(6,14,18,.5);border:1px solid var(--glass-bd);
 border-radius:14px;padding:12px 14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
#stfHero .sh-kpi .k{font-family:'JetBrains Mono';font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
#stfHero .sh-kpi .v{font-family:'Bricolage Grotesque';font-weight:800;font-size:26px;line-height:1.05;margin-top:4px}
#stfHero .sh-kpi.warn .v{color:var(--yellow)}
#admTabs button[data-tab]{position:relative}
.stf-filter{width:100%;margin:0 0 10px;font-size:12.5px}
#stfHeroMod{margin:2px 0 20px}
#stfHeroMod .sh-kpis{display:flex;gap:10px;flex-wrap:wrap}
#stfHeroMod .sh-kpi{flex:1 1 120px;min-width:110px;padding:12px 14px;border-radius:14px;background:linear-gradient(160deg,rgba(16,42,52,.55),rgba(8,20,26,.6));border:1px solid var(--glass-bd)}
#stfHeroMod .sh-kpi .k{font-family:'JetBrains Mono';font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
#stfHeroMod .sh-kpi .v{font-family:'Bricolage Grotesque';font-weight:800;font-size:24px;line-height:1.05;margin-top:4px}
#stfHeroMod .sh-kpi.warn .v{color:var(--yellow)}
/* ===== Console staff : hub → détail ===== */
#admTabs{display:none!important}
#view-admin>.wrap{display:block!important;max-width:960px!important}
#view-admin .stf-group{display:none}
#view-admin.stf-detail .stf-group.stf-cur{display:block}
#view-admin.stf-detail .stf-group.stf-cur>.stf-gh{display:none}
#view-admin.stf-detail .stf-group.stf-cur .dacc{display:none}
#view-admin.stf-detail .stf-group.stf-cur .dacc.stf-cur{display:block;margin-bottom:0}
#view-admin.stf-detail .dacc.stf-cur>.dacc-h{pointer-events:none}
#view-admin.stf-detail .dacc.stf-cur>.dacc-h .ar{display:none}
#view-admin.stf-detail #stfHero,#view-admin.stf-detail #stfHub{display:none}
.stf-back{display:none;align-items:center;gap:12px;margin:2px 0 14px}
#view-admin.stf-detail .stf-back{display:flex}
.stf-back b{font-family:'Bricolage Grotesque';font-size:17px;text-transform:uppercase;letter-spacing:.02em}
.stf-hgroup{margin:0 0 18px}
.stf-hgroup .stf-gh{font-family:'JetBrains Mono';font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);margin:0 0 9px;display:flex;align-items:center;gap:9px}
.stf-hgroup .stf-gh:before{content:"";width:26px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--mint),var(--violet))}
.stf-menu{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.stf-mi{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px 14px 12px;border-radius:16px;cursor:pointer;text-align:left;
 background:linear-gradient(160deg,rgba(16,42,52,.55),rgba(8,20,26,.6));border:1px solid var(--glass-bd);color:var(--ink);
 -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 6px 20px -16px rgba(0,0,0,.7);transition:border-color .15s,transform .15s}
.stf-mi:hover,.stf-mi:active{border-color:var(--cyan);transform:translateY(-2px)}
.stf-mi .mi-ic{font-size:22px;line-height:1}
.stf-mi .mi-lb{font-family:'Bricolage Grotesque';font-weight:700;font-size:13.5px;text-transform:uppercase;letter-spacing:.03em}
.stf-mi .mi-badge{position:absolute;top:10px;right:10px;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--hot);color:#fff;font-family:'JetBrains Mono';font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}
@media(max-width:520px){.stf-menu{grid-template-columns:repeat(2,1fr)}}
/* Dashboard artiste : hub → détail */
#artTabs{display:none!important}
#view-artist>.wrap{display:block!important;max-width:1100px!important}
#view-artist .dacc{display:none}
#view-artist.stf-detail .dacc{display:none}
#view-artist.stf-detail .dacc.stf-cur{display:block}
#view-artist.stf-detail .dacc.stf-cur>.dacc-h{pointer-events:none}
#view-artist.stf-detail .dacc.stf-cur>.dacc-h .ar{display:none}
#view-artist.stf-detail #artHub{display:none}
#view-artist .shead .range{display:none}
#view-artist.stf-detail.stf-stats .shead .range{display:flex}
#view-artist.stf-detail .stf-back{display:flex}
#view-admin .lrow-wrap{background:linear-gradient(160deg,rgba(16,42,52,.5),rgba(8,20,26,.55));border:1px solid var(--glass-bd);border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 6px 20px -16px rgba(0,0,0,.7);transition:border-color .15s,transform .15s}
#view-admin .lrow-wrap:hover{border-color:var(--cyan);transform:translateY(-1px)}
#view-admin .lrow .thumb{width:62px;height:62px;border-radius:10px;border:1px solid var(--line)}
#view-admin .lrow{padding:13px 15px;gap:14px}
#view-admin .lrow .meta b{font-size:15.5px}
#view-admin .lrow-preview{padding:0 15px 15px}
#view-mod .dacc{background:linear-gradient(160deg,rgba(16,42,52,.55),rgba(8,20,26,.6))!important;border:1px solid var(--glass-bd)!important;border-radius:16px!important;overflow:hidden;margin-bottom:12px!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 6px 22px -16px rgba(0,0,0,.7)}
#view-mod .dacc.open{border-color:var(--neon)!important;box-shadow:0 0 26px -12px rgba(90,217,255,.5)!important}
.stf-group{margin-bottom:8px}
.stf-group>.stf-gh{display:flex;align-items:center;gap:9px;font-family:'JetBrains Mono';font-size:11px;
 letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);margin:26px 2px 12px}
.stf-group>.stf-gh::before{content:"";width:20px;height:2px;border-radius:2px;background:var(--rainbow)}
.stf-group:first-of-type>.stf-gh{margin-top:4px}
#view-admin .dacc{background:linear-gradient(160deg,rgba(16,42,52,.55),rgba(8,20,26,.6))!important;
 border:1px solid var(--glass-bd)!important;border-radius:16px!important;overflow:hidden;margin-bottom:12px!important;
 -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 6px 22px -16px rgba(0,0,0,.7)}
#view-admin .dacc.open{border-color:var(--neon)!important;box-shadow:0 0 26px -12px rgba(90,217,255,.5)!important}
#view-admin .dacc-h{display:flex!important;justify-content:space-between;align-items:center;gap:10px;
 padding:15px 18px!important;font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:14px!important;
 cursor:pointer;background:transparent;border:none;width:100%;color:inherit;text-align:left}
#view-admin .dacc-h .ar{color:var(--cyan);transition:transform .2s;font-family:'JetBrains Mono'}
#view-admin .dacc.open .dacc-h .ar{transform:rotate(90deg)}
#view-admin .dacc-b{display:none;padding:16px 18px 18px!important;border-top:1px solid var(--line)}
#view-admin .dacc.open .dacc-b{display:block}
#view-admin h3{text-transform:none!important;letter-spacing:0!important;font-size:17px!important}
[data-sumup-id="widget__container"]{background:transparent;color:var(--ink);font-family:inherit}
[data-sumup-id="card_number_input"],[data-sumup-id="card_expiry_date_input"],[data-sumup-id="card_cvv_input"],[data-sumup-id="card_holder_name_input"],[data-sumup-id="email_input"]{background:var(--panel2)!important;border:1px solid var(--line)!important;border-radius:var(--rad)!important;color:var(--ink)!important}
[data-sumup-id="widget__container"] label{color:var(--muted)!important}
[data-sumup-id="submit_button"]{background:linear-gradient(90deg,var(--accent2),var(--accent))!important;color:#08080f!important;border-radius:var(--rad)!important;font-weight:800!important;border:none!important}

/* Empreinte visuelle du morceau, sous la pochette */
.cwave{position:absolute;left:0;right:0;bottom:0;height:26px;pointer-events:none;background:linear-gradient(180deg,rgba(4,10,16,0),rgba(4,10,16,.72));display:flex;align-items:flex-end;padding:0 8px 5px;box-sizing:border-box}
.cwave svg{width:100%;height:18px;display:block;opacity:.85}
.cwave rect{fill:rgba(255,255,255,.72)}
.card:hover .cwave rect,.card.is-featured .cwave rect{fill:hsla(var(--lp-h,186),80%,66%,.95)}
@media(max-width:520px){.cwave{height:22px}.cwave svg{height:14px}}

/* ===== Ouverture du site : transition entre l'écran de chargement et l'application =====
   Le logo se contracte puis libère une onde de choc qui balaie l'écran, pendant que
   l'interface se met en place. Purement décoratif : le calque est inerte au clic et
   se supprime de lui-même. Respecte prefers-reduced-motion. */
#bootReveal{position:fixed;inset:0;z-index:99998;pointer-events:none;opacity:0;overflow:hidden;
 display:grid;place-items:center;contain:strict}
#bootReveal.run{opacity:1}
#bootReveal .rv-core{position:absolute;width:120px;height:120px;border-radius:50%;
 background:radial-gradient(circle,#eafffb 0%,#19e3c2 38%,#7b5cff 70%,rgba(123,92,255,0) 72%);
 transform:scale(0);opacity:0;filter:blur(2px)}
#bootReveal .rv-ring{position:absolute;width:140px;height:140px;border-radius:50%;
 border:2px solid rgba(25,227,194,.85);transform:scale(0);opacity:0;
 box-shadow:0 0 40px rgba(25,227,194,.5),inset 0 0 30px rgba(90,217,255,.35)}
#bootReveal .rv-ring.r2{border-color:rgba(155,108,255,.75);box-shadow:0 0 46px rgba(155,108,255,.45)}
#bootReveal .rv-shard{position:absolute;width:2px;height:34vmax;transform-origin:50% 0;
 background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(25,227,194,.5) 30%,rgba(123,92,255,0));
 opacity:0;filter:blur(.4px)}
#bootReveal .rv-shard.s1{transform:rotate(18deg) scaleY(0)}
#bootReveal .rv-shard.s2{transform:rotate(104deg) scaleY(0)}
#bootReveal .rv-shard.s3{transform:rotate(196deg) scaleY(0)}
#bootReveal .rv-shard.s4{transform:rotate(288deg) scaleY(0)}
#bootReveal .rv-sweep{position:absolute;inset:-20% -60%;
 background:linear-gradient(100deg,rgba(0,0,0,0) 42%,rgba(25,227,194,.16) 48%,rgba(255,255,255,.30) 51%,rgba(155,108,255,.16) 54%,rgba(0,0,0,0) 60%);
 transform:translateX(-120%);opacity:0}
#bootReveal .rv-flash{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(234,255,251,.85),rgba(234,255,251,0) 60%);opacity:0}

#bootReveal.run .rv-core{animation:rvCore .95s cubic-bezier(.16,.9,.28,1) both}
#bootReveal.run .rv-ring{animation:rvRing 1.05s cubic-bezier(.12,.85,.24,1) .06s both}
#bootReveal.run .rv-ring.r2{animation-delay:.19s;animation-duration:1.15s}
#bootReveal.run .rv-shard{animation:rvShard .78s cubic-bezier(.2,.85,.3,1) .12s both}
#bootReveal.run .rv-shard.s2{animation-delay:.16s}
#bootReveal.run .rv-shard.s3{animation-delay:.2s}
#bootReveal.run .rv-shard.s4{animation-delay:.14s}
#bootReveal.run .rv-sweep{animation:rvSweep .85s cubic-bezier(.3,.7,.2,1) .18s both}
#bootReveal.run .rv-flash{animation:rvFlash .5s ease-out .06s both}

@keyframes rvCore{0%{transform:scale(0);opacity:0}18%{transform:scale(.5);opacity:1}
 55%{transform:scale(3.2);opacity:.55}100%{transform:scale(9);opacity:0}}
@keyframes rvRing{0%{transform:scale(.2);opacity:0}12%{opacity:1}
 100%{transform:scale(16);opacity:0}}
@keyframes rvShard{0%{transform-origin:50% 0;opacity:0}
 22%{opacity:.9}100%{opacity:0}}
#bootReveal.run .rv-shard.s1{animation-name:rvShard1}
#bootReveal.run .rv-shard.s2{animation-name:rvShard2}
#bootReveal.run .rv-shard.s3{animation-name:rvShard3}
#bootReveal.run .rv-shard.s4{animation-name:rvShard4}
@keyframes rvShard1{0%{transform:rotate(18deg) scaleY(0);opacity:0}25%{opacity:.95}100%{transform:rotate(18deg) scaleY(1);opacity:0}}
@keyframes rvShard2{0%{transform:rotate(104deg) scaleY(0);opacity:0}25%{opacity:.95}100%{transform:rotate(104deg) scaleY(1);opacity:0}}
@keyframes rvShard3{0%{transform:rotate(196deg) scaleY(0);opacity:0}25%{opacity:.95}100%{transform:rotate(196deg) scaleY(1);opacity:0}}
@keyframes rvShard4{0%{transform:rotate(288deg) scaleY(0);opacity:0}25%{opacity:.95}100%{transform:rotate(288deg) scaleY(1);opacity:0}}
@keyframes rvSweep{0%{transform:translateX(-120%);opacity:0}20%{opacity:1}100%{transform:translateX(120%);opacity:0}}
@keyframes rvFlash{0%{opacity:0}25%{opacity:.55}100%{opacity:0}}

/* Le logo du splash se comprime juste avant l'explosion */
#bootSplash.burst .bs-logo{animation:bsBurst .42s cubic-bezier(.5,-0.4,.3,1) both}
#bootSplash.burst .bs-name,#bootSplash.burst .bs-bar{animation:bsFadeAway .3s ease both}
@keyframes bsBurst{0%{transform:scale(1)}45%{transform:scale(.72) rotate(-6deg)}100%{transform:scale(2.6);opacity:0}}
@keyframes bsFadeAway{to{opacity:0;transform:translateY(8px)}}

/* L'interface se met en place derrière l'onde */
body.app-enter header{animation:appHeader .6s cubic-bezier(.2,.8,.25,1) both}
body.app-enter .view.show{animation:appBody .7s cubic-bezier(.2,.8,.25,1) .08s both}
body.app-enter #tabBar{animation:appTabs .5s cubic-bezier(.2,.8,.25,1) .26s both}
@keyframes appHeader{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
@keyframes appBody{from{opacity:0;transform:translateY(22px) scale(.985)}to{opacity:1;transform:none}}
@keyframes appTabs{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}

@media(prefers-reduced-motion:reduce){
 #bootReveal{display:none!important}
 #bootSplash.burst .bs-logo,#bootSplash.burst .bs-name,#bootSplash.burst .bs-bar{animation:none!important}
 body.app-enter header,body.app-enter .view.show,body.app-enter #tabBar{animation:none!important}
}

/* Etat d'une sortie (album, EP, single) */
.rel-chip{display:inline-block;font-family:'JetBrains Mono',monospace;font-size:9.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:999px;vertical-align:middle}
.rel-chip.rc-ok{background:rgba(60,232,143,.16);color:#3ce88f}
.rel-chip.rc-warn{background:rgba(255,210,63,.16);color:#ffd23f}
.rel-chip.rc-err{background:rgba(255,90,122,.16);color:#ff5a7a}
#relProfileBox ol{color:var(--muted);font-size:13.5px}
#relProfileBox ol a{color:var(--ink);text-decoration:none}
#relProfileBox ol a:hover{color:var(--cyan)}

/* ===== En-tête sur grand écran : deux rangées nettes =====
   Les liens occupent leur propre ligne, alignés à droite ; la langue, le nom du
   compte, la cloche et les actions suivent sur la ligne du dessous, alignés à
   droite eux aussi. Evite que la cloche se retrouve isolée en fin de première ligne. */
@media(min-width:761px){
  .topbar nav{align-items:flex-start}
  .nav-menu{align-items:flex-end;row-gap:8px;column-gap:12px}
  #navLinks{width:100%;justify-content:flex-end;flex-wrap:wrap;row-gap:4px}
  .nav-menu>.lang-switch{margin-left:0;order:1}
  .nav-menu>.who{order:2;flex-wrap:wrap;justify-content:flex-end;align-items:center;row-gap:6px}
  .nav-menu>.who .notif-btn{order:-1}
  .nav-menu>.who #navPushBtn{order:-2;flex:0 0 auto}
  /* La loupe est deplacee dans la rangee du compte, juste avant FR/EN/ES */
  .topbar nav>#gsBtn{position:absolute;opacity:0;pointer-events:none}
  .nav-menu>#gsBtn{position:static!important;opacity:1!important;pointer-events:auto!important;
    display:grid!important;order:0;margin-left:auto;margin-right:4px;
    width:38px;height:34px;font-size:15px;flex:0 0 auto;align-self:center}
}


/* ==================================================================
   LECTEUR V3 — refonte visuelle
   Portée par la classe body.lp-v3, ajoutée au démarrage : retirer la
   classe suffit à revenir intégralement à l'ancien habillage.
   Aucune règle existante n'est supprimée, tout passe par surcharge.
   ================================================================== */

/* --- Barre plein format : colonne centrée, pochette dominante --- */
body.lp-v3 .lp{
  padding:16px 16px calc(16px + env(safe-area-inset-bottom));
  gap:0 12px;
  background:
    radial-gradient(120% 78% at 50% 0%,hsla(var(--lp-h,186),var(--lp-s,70%),22%,.55),transparent 72%),
    linear-gradient(160deg,rgba(14,18,28,.94),rgba(6,9,15,.97));
}
body.lp-v3 .lp-cover{
  width:min(46vw,190px);height:min(46vw,190px);border-radius:22px;margin:2px auto 0;
  box-shadow:0 26px 54px -26px hsla(var(--lp-h,186),90%,45%,.85),0 0 0 1px rgba(255,255,255,.10);
}
body.lp-v3 .lp-cover::after{
  content:"";position:absolute;inset:-12px;border-radius:30px;pointer-events:none;
  border:1px solid hsla(var(--lp-h,186),80%,60%,.32);
}
body.lp-v3 .lp-meta{align-items:center;text-align:center;gap:4px;margin:14px 0 0}
body.lp-v3 .lp-meta b{font-family:'Bricolage Grotesque',sans-serif;font-size:18px;letter-spacing:-.01em}
body.lp-v3 .lp-meta span{color:hsla(var(--lp-h,186),82%,66%,1);font-size:11px;letter-spacing:.1em;text-transform:uppercase}

/* --- L'onde devient l'objet central --- */
body.lp-v3 .lp-seek{height:34px;margin:16px 4px 0;border-radius:8px}
body.lp-v3 .lp-seek{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.06)}
body.lp-v3 .lp-seek-fill{background:linear-gradient(90deg,hsla(var(--lp-h,186),85%,52%,.85),hsla(var(--lp-h,186),90%,68%,.95));border-radius:8px}
body.lp-v3 .lp-v2wave{opacity:.95}
body.lp-v3 .lp-time{font-size:10.5px;letter-spacing:.06em;color:var(--muted);padding:0 6px;margin-top:4px}

/* Pastilles de commentaires posées sur l'onde */
body.lp-v3 .lp-cmt-markers .cmk{
  width:16px;height:16px;margin-left:-8px;top:0;margin-top:-6px;
  border-color:hsla(var(--lp-h,186),80%,62%,.9);
  box-shadow:0 3px 10px -3px rgba(0,0,0,.85);
}

/* --- Commandes : lecture dominante, secondaires en rack --- */
body.lp-v3 .lp-ctrls{
  order:2;width:100%;justify-content:center;align-items:center;gap:14px;margin:14px 0 0;flex-wrap:wrap;
}
body.lp-v3 #lpPlay2{
  width:60px;height:60px;border-radius:50%;font-size:21px;color:#04161C;border:0;
  background:conic-gradient(from 210deg,var(--cyan),var(--accent2,#5ad9ff),#9b6cff,#ff5cc8,var(--cyan));
  box-shadow:0 12px 32px -10px hsla(var(--lp-h,186),90%,55%,.9);
  order:2;
}
body.lp-v3 #lpPrev{order:1}
body.lp-v3 #lpNext{order:3}
/* Les commandes secondaires passent sur une seconde ligne, en pastilles */
body.lp-v3 #lpRepeatBtn,body.lp-v3 #lpVizBtn,body.lp-v3 #lpQBtn,
body.lp-v3 #lpAirBtn,body.lp-v3 #lpVolBtn{
  order:5;width:auto;min-width:38px;height:32px;padding:0 12px;border-radius:99px;
  border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--muted);font-size:14px;
}
body.lp-v3 #lpRepeatBtn.on,body.lp-v3 #lpQBtn.on,body.lp-v3 #lpVizBtn.on{
  color:hsla(var(--lp-h,186),82%,66%,1);border-color:hsla(var(--lp-h,186),80%,60%,.5);
}
body.lp-v3 .lp-ctrls::before{content:"";flex-basis:100%;order:4;height:2px}

/* Habillages 1-4 : discrets, en pied de lecteur */
body.lp-v3 .lp-skin{width:22px;height:22px;font-size:10px;opacity:.5}
body.lp-v3 .lp-skin:hover,body.lp-v3 .lp-skin.on{opacity:1}

/* --- Zone commentaire : capsule, alignée sur l'instant courant --- */
body.lp-v3 .lp-cmt-area{width:100%;margin-top:10px}
body.lp-v3 .lp-cmt-row{
  border:1px solid var(--line);border-radius:14px;padding:7px 10px;gap:8px;
  background:rgba(255,255,255,.03);
}
body.lp-v3 #lpCmtInp{font-size:12px}

/* --- Mini-lecteur : liseré teinté + progression en pied --- */
body.lp-v3 #lpMiniBar{
  border-radius:16px;left:10px;right:10px;height:58px;
  border:1px solid hsla(var(--lp-h,186),70%,55%,.38);
  background:rgba(9,14,20,.93);
}
body.lp-v3 #lpMiniCov{border-radius:10px}
body.lp-v3 #lpMiniProg{
  position:absolute;left:10px;right:10px;bottom:5px;height:2px;border-radius:2px;
  background:rgba(255,255,255,.14);overflow:hidden;pointer-events:none;
}
body.lp-v3 #lpMiniProg i{display:block;height:100%;width:0;border-radius:2px;
  background:hsla(var(--lp-h,186),85%,60%,1);transition:width .25s linear}

/* --- Grand écran : trois colonnes, l'onde au centre --- */
@media(min-width:900px){
  body.lp-v3 .lp:not(.lp-fullopen){
    display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:0 22px;
    padding:12px 20px calc(12px + env(safe-area-inset-bottom));
  }
  body.lp-v3 .lp:not(.lp-fullopen) .lp-cover{width:58px;height:58px;border-radius:12px;margin:0}
  body.lp-v3 .lp:not(.lp-fullopen) .lp-cover::after{inset:-6px;border-radius:18px}
  body.lp-v3 .lp:not(.lp-fullopen) .lp-mid{max-width:none;margin:0}
  body.lp-v3 .lp:not(.lp-fullopen) .lp-meta{align-items:flex-start;text-align:left;margin:0 0 6px}
  body.lp-v3 .lp:not(.lp-fullopen) .lp-meta b{font-size:15px}
  body.lp-v3 .lp:not(.lp-fullopen) .lp-seek{margin:0;height:30px}
  body.lp-v3 .lp:not(.lp-fullopen) .lp-ctrls{width:auto;margin:0;flex-wrap:nowrap}
  body.lp-v3 .lp:not(.lp-fullopen) .lp-ctrls::before{display:none}
  body.lp-v3 .lp:not(.lp-fullopen) #lpPlay2{width:46px;height:46px;font-size:17px}
  body.lp-v3 .lp:not(.lp-fullopen) #lpRepeatBtn,
  body.lp-v3 .lp:not(.lp-fullopen) #lpVizBtn,
  body.lp-v3 .lp:not(.lp-fullopen) #lpQBtn,
  body.lp-v3 .lp:not(.lp-fullopen) #lpAirBtn,
  body.lp-v3 .lp:not(.lp-fullopen) #lpVolBtn{order:6;height:30px;padding:0 10px}
}


/* ===== LECTEUR V3 — deuxième passe de finition =====
   Hiérarchie : pochette → titre → onde → transport → secondaires → commentaire.
   Le champ de commentaire descend sous les commandes : c'est une action
   secondaire, elle ne doit pas couper le geste principal. */
body.lp-v3 .lp-mid{gap:0}
body.lp-v3 .lp-cmt-area{order:6;margin-top:12px}
body.lp-v3 .lp-ctrls{order:5}

/* Titre sur deux lignes plutôt que tronqué au tiers */
body.lp-v3 .lp-meta b{
  white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  overflow:hidden;line-height:1.2;max-width:22ch;
}
body.lp-v3 .lp-meta span{opacity:.9}

/* Pochette : plus présente, et le halo devient une vraie source lumineuse */
body.lp-v3 .lp-cover{
  width:min(52vw,214px);height:min(52vw,214px);margin-top:6px;
  box-shadow:0 30px 64px -26px hsla(var(--lp-h,186),90%,45%,.9),0 0 0 1px rgba(255,255,255,.12);
}
body.lp-v3 .lp::before{
  content:"";position:absolute;left:50%;top:-10%;width:min(70vw,300px);height:min(70vw,300px);
  transform:translateX(-50%);border-radius:50%;pointer-events:none;z-index:0;
  background:radial-gradient(circle,hsla(var(--lp-h,186),90%,55%,.20),transparent 68%);
  filter:blur(18px);
}
body.lp-v3 .lp-cover,body.lp-v3 .lp-mid,body.lp-v3 .lp-ctrls{position:relative;z-index:1}

/* Poignée de fermeture, en tête du lecteur */
body.lp-v3 .lp-rim::after{
  content:"";position:absolute;left:50%;top:7px;transform:translateX(-50%);
  width:40px;height:4px;border-radius:99px;background:rgba(255,255,255,.22);
}

/* Onde : plus haute, coins nets, chiffres alignés dessous */
body.lp-v3 .lp-seek{height:44px;margin:18px 2px 0;border-radius:10px}
body.lp-v3 .lp-time{margin-top:7px;font-size:11px;font-weight:700;color:rgba(233,238,246,.55)}

/* Transport : le trio respire, les secondaires s'effacent d'un cran */
body.lp-v3 .lp-ctrls{gap:18px;margin-top:18px}
body.lp-v3 #lpPrev,body.lp-v3 #lpNext{
  width:48px;height:48px;border-radius:50%;font-size:17px;
  border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:var(--ink);
}
body.lp-v3 #lpPlay2{width:68px;height:68px;font-size:23px}
body.lp-v3 .lp-ctrls::before{height:6px}
body.lp-v3 #lpRepeatBtn,body.lp-v3 #lpVizBtn,body.lp-v3 #lpQBtn,
body.lp-v3 #lpAirBtn,body.lp-v3 #lpVolBtn{
  height:36px;min-width:44px;opacity:.75;transition:opacity .15s,border-color .15s,color .15s;
}
body.lp-v3 #lpRepeatBtn:hover,body.lp-v3 #lpVizBtn:hover,body.lp-v3 #lpQBtn:hover,
body.lp-v3 #lpAirBtn:hover,body.lp-v3 #lpVolBtn:hover{opacity:1}

/* Commentaire : capsule sobre, l'envoi ne prend la teinte qu'une fois rempli */
body.lp-v3 .lp-cmt-row{padding:6px 8px;border-radius:16px;background:rgba(255,255,255,.04)}
body.lp-v3 #lpCmtInp{background:none;border:0;padding:8px 4px}
body.lp-v3 #lpCmtSend,body.lp-v3 #lpCmtListBtn{
  border-radius:12px;height:36px;min-width:44px;border:1px solid var(--line);
  background:rgba(255,255,255,.04);color:var(--muted);box-shadow:none;
}
body.lp-v3 #lpCmtSend{color:hsla(var(--lp-h,186),82%,66%,1);border-color:hsla(var(--lp-h,186),80%,60%,.45)}

/* Écran court : on compresse la pochette plutôt que de faire défiler */
@media(max-height:720px){
  body.lp-v3 .lp-cover{width:min(38vw,150px);height:min(38vw,150px)}
  body.lp-v3 .lp-seek{height:36px;margin-top:12px}
  body.lp-v3 .lp-ctrls{margin-top:12px;gap:14px}
  body.lp-v3 #lpPlay2{width:60px;height:60px}
}

/* Grand écran : la finition ne doit pas défaire la grille à trois colonnes */
@media(min-width:900px){
  body.lp-v3 .lp:not(.lp-fullopen)::before{display:none}
  body.lp-v3 .lp:not(.lp-fullopen) .lp-rim::after{display:none}
  body.lp-v3 .lp:not(.lp-fullopen) .lp-cmt-area{order:3;margin-top:6px}
  body.lp-v3 .lp:not(.lp-fullopen) .lp-seek{height:32px;margin:0}
  body.lp-v3 .lp:not(.lp-fullopen) .lp-meta b{-webkit-line-clamp:1;max-width:34ch}
  body.lp-v3 .lp:not(.lp-fullopen) #lpPrev,
  body.lp-v3 .lp:not(.lp-fullopen) #lpNext{width:40px;height:40px;font-size:15px}
  body.lp-v3 .lp:not(.lp-fullopen) #lpPlay2{width:50px;height:50px;font-size:18px}
}


/* ===== Transport sur une seule ligne =====
   Le séparateur qui renvoyait les commandes secondaires à la ligne est retiré :
   les huit boutons tiennent désormais sur une rangée unique, la lecture restant
   dominante par la taille. Les dimensions se calent sur la largeur disponible
   pour éviter tout débordement sur petit écran. */
body.lp-v3 .lp-ctrls{flex-wrap:nowrap;gap:clamp(5px,2.4vw,12px);justify-content:center}
body.lp-v3 .lp-ctrls::before{display:none}
body.lp-v3 #lpPrev,body.lp-v3 #lpNext{
  width:clamp(38px,11vw,46px);height:clamp(38px,11vw,46px);font-size:clamp(13px,3.6vw,16px);flex:0 0 auto;
}
body.lp-v3 #lpPlay2{
  width:clamp(52px,15vw,64px);height:clamp(52px,15vw,64px);font-size:clamp(17px,4.6vw,21px);flex:0 0 auto;
}
body.lp-v3 #lpRepeatBtn,body.lp-v3 #lpVizBtn,body.lp-v3 #lpQBtn,
body.lp-v3 #lpAirBtn,body.lp-v3 #lpVolBtn{
  order:5;flex:0 0 auto;width:clamp(32px,9vw,40px);min-width:0;height:clamp(32px,9vw,40px);
  padding:0;border-radius:50%;font-size:clamp(12px,3.2vw,15px);display:grid;place-items:center;
}
body.lp-v3 #lpVolBtn #lpVolIcon{font-size:clamp(12px,3.2vw,15px)!important}
body.lp-v3 #lpVizBtn svg{width:15px;height:15px}


/* Rapport d'authenticité (Studio PRO) */
.auth-verdict{border-radius:12px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--line)}
.auth-verdict b{font-family:'Bricolage Grotesque',sans-serif;font-size:16px;display:block;margin-bottom:5px}
.auth-verdict p{margin:0;font-size:12.5px;line-height:1.6;color:var(--muted)}
.auth-verdict.av-ok{background:rgba(60,232,143,.10);border-color:rgba(60,232,143,.35)}
.auth-verdict.av-ok b{color:#3ce88f}
.auth-verdict.av-warn{background:rgba(255,210,63,.10);border-color:rgba(255,210,63,.35)}
.auth-verdict.av-warn b{color:#ffd23f}
.auth-verdict.av-err{background:rgba(255,90,122,.10);border-color:rgba(255,90,122,.35)}
.auth-verdict.av-err b{color:#ff5a7a}
.auth-tab{width:100%;border-collapse:collapse;font-size:12.5px}
.auth-tab th{text-align:left;font-weight:400;color:var(--muted);padding:7px 0;width:42%;
  font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.04em}
.auth-tab td{padding:7px 0;border-bottom:1px solid var(--line);word-break:break-word}
.auth-tab tr:last-child td{border-bottom:0}


/* Préparation Rekordbox (Studio) */
.rbx-it{border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:10px}
.rbx-hd{display:flex;gap:10px;align-items:center;justify-content:space-between}
.rbx-hd b{font-size:13px;word-break:break-all}
.rbx-tags{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 10px}
.rbx-tags span{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.06em;
  border:1px solid var(--line);border-radius:99px;padding:4px 10px;color:var(--cyan)}
.rbx-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-bottom:10px}
.rbx-fields input{background:var(--bg);border:1px solid var(--line);border-radius:8px;
  color:var(--ink);padding:8px 10px;font-size:12.5px;font-family:'JetBrains Mono',monospace}


/* Analyse Rekordbox : forme d'onde et progression */
.rbx-wave{width:100%;height:70px;display:block;margin:10px 0 8px;border-radius:8px;
  background:rgba(255,255,255,.03);border:1px solid var(--line)}
.rbx-pb{height:5px;border-radius:99px;background:rgba(255,255,255,.10);overflow:hidden}
.rbx-pb i{display:block;height:100%;width:0;border-radius:99px;
  background:linear-gradient(90deg,var(--cyan),#5ad9ff,#9b6cff);transition:width .18s linear}
.rbx-pb.rbx-global{height:7px;margin-top:14px}
.rbx-st{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--muted);margin:6px 0 8px;letter-spacing:.05em}
.rbx-tags span.rbx-warn{color:#ffd23f;border-color:rgba(255,210,63,.45)}


/* ==================================================================
   MESSAGERIE — refonte visuelle
   Tout est préfixé par #amApp : plus spécifique que les règles d'origine,
   donc aucune n'a été supprimée et le retour arrière reste possible.
   ================================================================== */

/* --- Coque et respiration générale --- */
#amApp .am-shell{
  background:
    radial-gradient(90% 40% at 50% 0%,rgba(25,227,194,.10),transparent 60%),
    linear-gradient(165deg,rgba(13,26,34,.97),rgba(6,11,16,.99));
}
#amApp .am-msgs{gap:3px;padding:18px 14px 10px;scroll-behavior:smooth}
#amApp .am-msgs::-webkit-scrollbar,#amApp .am-threads::-webkit-scrollbar{width:6px}
#amApp .am-msgs::-webkit-scrollbar-thumb,#amApp .am-threads::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.14);border-radius:99px}

/* --- En-têtes : plus aérés, titre lisible --- */
#amApp .am-side-head{padding:18px 16px 14px;
  background:linear-gradient(180deg,rgba(255,255,255,.04),transparent)}
#amApp .am-conv-head{padding:12px 14px;background:rgba(9,17,24,.86);
  border-bottom:1px solid rgba(255,255,255,.08)}
#amApp .am-back{width:36px;height:36px;border-radius:12px;font-size:19px;
  background:rgba(255,255,255,.06);transition:background .15s}
#amApp .am-back:hover{background:rgba(255,255,255,.13)}

/* --- Recherche : champ en capsule, toujours accessible --- */
#amApp .am-srchbox{padding:0 14px 12px}
#amApp .am-srchbox input{
  width:100%;box-sizing:border-box;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.10);border-radius:99px;color:var(--ink);
  padding:11px 16px;font-size:13.5px;transition:border-color .15s,background .15s}
#amApp .am-srchbox input:focus{outline:none;background:rgba(255,255,255,.08);
  border-color:rgba(25,227,194,.55);box-shadow:0 0 0 3px rgba(25,227,194,.12)}

/* --- Liste des conversations : lignes cliquables franches --- */
#amApp .am-threads{padding:6px 8px 12px}
#amApp .am-trow{
  gap:13px;padding:11px 12px;border-bottom:0;border-radius:14px;margin-bottom:3px;
  align-items:center;transition:background .14s,transform .1s;position:relative;
}
#amApp .am-trow:hover{background:rgba(255,255,255,.05)}
#amApp .am-trow:active{transform:scale(.985)}
#amApp .am-trow.active{
  background:linear-gradient(90deg,rgba(25,227,194,.16),rgba(25,227,194,.03));
  box-shadow:inset 3px 0 0 var(--cyan);
}
#amApp .am-tmain b{font-size:14px;font-weight:700;display:flex;align-items:center;gap:6px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#amApp .am-tmain>span{
  display:block;font-size:12.5px;color:var(--muted);margin-top:2px;line-height:1.35;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
#amApp .am-rtag{font-size:9px;letter-spacing:.08em;padding:2px 7px;border-radius:99px;
  background:rgba(255,255,255,.08);color:var(--muted);flex:0 0 auto}
#amApp .am-pres-txt{font-size:11px;color:rgba(139,151,168,.8);margin-top:1px}

/* Conversation non lue : nom en clair, pastille pleine */
#amApp .am-trow:has(.am-cc) .am-tmain b{color:#fff}
#amApp .am-trow:has(.am-cc) .am-tmain>span{color:rgba(233,238,246,.85);font-weight:600}
#amApp .am-cc{
  min-width:20px;height:20px;border-radius:99px;font-size:11px;
  background:linear-gradient(135deg,var(--cyan),#5ad9ff);color:#04161c;
  box-shadow:0 4px 14px -4px rgba(25,227,194,.9);flex:0 0 auto}

/* --- Avatars : anneau de présence lisible d'un coup d'œil --- */
#amApp .am-avwrap{position:relative;flex:0 0 auto}
#amApp .am-av{width:46px;height:46px;border-radius:14px;object-fit:cover}
#amApp .am-pres{
  position:absolute;right:-2px;bottom:-2px;width:13px;height:13px;border-radius:50%;
  border:2.5px solid #0b141b;background:#5a6675}
#amApp .am-status-on,#amApp .am-pres.on{background:#3ce88f;box-shadow:0 0 10px rgba(60,232,143,.8)}

/* --- Bulles : asymétriques, lisibles, hiérarchisées --- */
#amApp .msg{
  max-width:78%;padding:10px 14px;border-radius:18px 18px 18px 6px;font-size:13.5px;
  line-height:1.5;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.07);
  box-shadow:0 2px 10px -6px rgba(0,0,0,.7);margin-bottom:3px;
}
#amApp .msg.me{
  border-radius:18px 18px 6px 18px;
  background:linear-gradient(135deg,rgba(25,227,194,.24),rgba(90,217,255,.16));
  border-color:rgba(25,227,194,.35);
}
/* Messages consécutifs du même auteur : on colle les bulles */
#amApp .msg+.msg{border-radius:6px 18px 18px 6px}
#amApp .msg.me+.msg.me{border-radius:18px 6px 6px 18px}
#amApp .msg time,#amApp .msg .am-time{
  display:block;font-size:10px;color:rgba(233,238,246,.45);margin-top:4px;text-align:right;
  font-family:'JetBrains Mono',monospace}

/* --- Zone de saisie : capsule, envoi mis en avant --- */
#amApp .am-foot{
  padding:12px 12px calc(12px + env(safe-area-inset-bottom));gap:8px;
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.25));
  border-top:1px solid rgba(255,255,255,.08);
}
#amApp .am-foot input[type=text],#amApp .am-foot textarea{
  flex:1;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);
  border-radius:22px;color:var(--ink);padding:12px 16px;font-size:14px;
  transition:border-color .15s,background .15s;min-height:44px}
#amApp .am-foot input[type=text]:focus,#amApp .am-foot textarea:focus{
  outline:none;background:rgba(255,255,255,.09);border-color:rgba(25,227,194,.5);
  box-shadow:0 0 0 3px rgba(25,227,194,.12)}
#amApp .am-send{
  width:46px;height:46px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;
  border:0;color:#04161c;font-size:17px;cursor:pointer;
  background:conic-gradient(from 210deg,var(--cyan),#5ad9ff,#9b6cff,#ff5cc8,var(--cyan));
  box-shadow:0 8px 22px -8px rgba(25,227,194,.9);transition:transform .12s}
#amApp .am-send:active{transform:scale(.92)}
#amApp .am-attach{
  width:42px;height:42px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);color:var(--muted);
  cursor:pointer;transition:background .15s,color .15s}
#amApp .am-attach:hover{background:rgba(255,255,255,.12);color:var(--ink)}

/* --- Frappe en cours : trois points animés plutôt qu'une ligne de texte --- */
#amApp .am-typing{padding:2px 18px 8px;font-size:11.5px;color:var(--cyan);height:auto;min-height:16px}

/* --- États vides : moins secs --- */
#amApp .am-empty{
  display:grid;place-items:center;text-align:center;gap:8px;padding:44px 24px;
  color:var(--muted);font-size:13px;line-height:1.6}
#amApp .am-empty::before{content:"✉";font-size:34px;opacity:.35}

/* --- Sections de la liste (demandes, envoyées) --- */
#amApp .am-sect{
  font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--muted);padding:16px 12px 7px}

@media(max-width:520px){
  #amApp .am-av{width:44px;height:44px}
  #amApp .msg{max-width:85%}
}


/* ==================================================================
   THÈME AURORA — habillage épuré, sélectionnable
   Activé par body.aurora. L'essentiel passe par les variables du thème,
   le reste par surcharges ciblées. Retirer la classe restaure l'original.
   ================================================================== */
html.pre-aurora body,body.aurora{
  --bg:#05070B; --bg2:#080C12; --panel:#0B1017; --panel2:#111823;
  --line:rgba(255,255,255,.07); --ink:#EEF2F8; --muted:#7E8B9E;
  --accent:#5AD9FF; --accent2:#19E3C2; --cyan:#5AD9FF;
  --rad:18px;
  background:var(--bg);
}

/* --- Une seule source lumineuse, très lente, jamais au premier plan --- */
body.aurora::before{
  content:"";position:fixed;left:50%;top:-22vh;width:140vw;height:70vh;transform:translateX(-50%);
  background:radial-gradient(46% 50% at 40% 50%,rgba(25,227,194,.16),transparent 70%),
             radial-gradient(44% 48% at 68% 46%,rgba(155,108,255,.16),transparent 70%);
  filter:blur(40px);pointer-events:none;z-index:0;
  animation:auroraDrift 22s ease-in-out infinite alternate;
}
@keyframes auroraDrift{from{transform:translate(-52%,-10px) scale(1)}to{transform:translate(-46%,14px) scale(1.08)}}
/* L'aurore de fond est en position fixe : le contenu doit passer au-dessus.
   La barre supérieure, elle, garde impérativement son ancrage collant. */
body.aurora header,body.aurora main,body.aurora footer{position:relative;z-index:1}
body.aurora .topbar{position:sticky;top:0;z-index:60}

/* --- Le bandeau défilant disparaît : 40 px permanents que personne ne relit.
       Exception : quand un live est en cours, la banderole rouge doit rester
       visible — c'est une information, pas une accroche décorative. --- */
/* Au repos, le bandeau devient un simple trait d'aurore : il marque la limite
   entre l'en-tête et le contenu sans voler de hauteur ni de lecture. */
body.aurora .ticker:not(.lv-on){
  height:2px;overflow:hidden;border-bottom:0;padding:0;background:transparent;position:relative;
}
body.aurora .ticker:not(.lv-on) .move{display:none}
body.aurora .ticker:not(.lv-on)::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,#19E3C2 18%,#5AD9FF 38%,#9B6CFF 62%,#FF5CC8 82%,transparent);
  background-size:200% 100%;opacity:.85;
  animation:auroraLine 9s linear infinite;
}
/* Halo très doux sous le trait, pour asseoir l'en-tête sur le contenu */
body.aurora .ticker:not(.lv-on)::after{
  content:"";position:absolute;left:0;right:0;top:100%;height:60px;pointer-events:none;
  background:radial-gradient(70% 100% at 50% 0%,rgba(90,217,255,.10),transparent 72%);
}
@keyframes auroraLine{from{background-position:0% 50%}to{background-position:200% 50%}}
body.aurora .ticker.lv-on{display:block}
@media(prefers-reduced-motion:reduce){
  body.aurora .ticker:not(.lv-on)::before{animation:none}
}

/* L'en-tête n'a plus besoin de compenser la hauteur du bandeau */
body.aurora header{padding-top:34px}
@media(max-width:760px){body.aurora header{padding-top:26px}}

/* --- En-tête sobre : plus de barre pleine, un simple filet --- */
body.aurora .topbar{background:rgba(5,7,11,.82);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  border-bottom:1px solid var(--line)}
body.aurora .brand .mark{border-radius:11px}
body.aurora .nav-links button{color:var(--muted);letter-spacing:.06em}
body.aurora .nav-links button[data-nav].active,body.aurora .nav-links button.active{color:var(--accent2)}

/* --- Surfaces : aplats sourds, filets fins, une seule ombre --- */
body.aurora .panel,body.aurora .card,body.aurora .dacc,body.aurora .st{
  background:var(--panel);border:1px solid var(--line);border-radius:var(--rad);
  box-shadow:0 18px 40px -34px #000;
}
body.aurora .card{overflow:hidden;transition:transform .25s ease,border-color .25s}
body.aurora .card:hover{transform:translateY(-3px);border-color:rgba(90,217,255,.28)}
/* Entrée en cascade des cartes du catalogue */
body.aurora .grid>.card{animation:auroraRise .55s cubic-bezier(.2,.8,.25,1) both}
body.aurora .grid>.card:nth-child(2){animation-delay:.06s}
body.aurora .grid>.card:nth-child(3){animation-delay:.12s}
body.aurora .grid>.card:nth-child(4){animation-delay:.18s}
body.aurora .grid>.card:nth-child(5){animation-delay:.24s}
body.aurora .grid>.card:nth-child(n+6){animation-delay:.3s}
@keyframes auroraRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* --- Boutons : capsule, l'accent réservé à l'action principale --- */
body.aurora .btn{border-radius:999px;padding:11px 17px;border:1px solid var(--line);
  background:rgba(255,255,255,.04);color:var(--ink);transition:transform .15s,background .15s}
body.aurora .btn:hover{transform:translateY(-1px);background:rgba(255,255,255,.08)}
body.aurora .btn-primary{
  background:linear-gradient(115deg,#19E3C2,#5AD9FF 34%,#9B6CFF 68%,#FF5CC8);
  color:#04161C;border:0;font-weight:700;box-shadow:0 10px 28px -14px rgba(25,227,194,.9)}
body.aurora .btn-ghost{background:rgba(255,255,255,.03)}

/* --- Filtres en capsules --- */
body.aurora .chip{border-radius:999px;padding:8px 14px;background:rgba(255,255,255,.03);font-size:11px}
body.aurora .chip.active{color:#04161C;border:0;font-weight:700;
  background:linear-gradient(115deg,#19E3C2,#5AD9FF 40%,#9B6CFF)}

/* --- Titrage : le dégradé se mérite, il ne sert qu'aux accroches --- */
body.aurora .label{color:var(--accent2);letter-spacing:.2em;font-size:10.5px}
body.aurora .hero h1,body.aurora .shead h2{letter-spacing:-.03em}

/* --- Barre d'onglets : sobre, l'actif seul est coloré --- */
body.aurora #tabBar{background:rgba(5,7,11,.94);border-top:1px solid var(--line)}
body.aurora #tabBar button.on{color:var(--accent2)}

/* --- Lecteur : inchangé sous Aurora. Le thème habille le site, pas le lecteur,
       qui garde exactement la forme validée précédemment. --- */

/* --- Messagerie : cohérente avec le reste --- */
body.aurora #amApp .am-shell{background:linear-gradient(165deg,rgba(11,16,23,.97),rgba(5,7,11,.99))}
body.aurora #amApp .am-trow{border-radius:16px}
body.aurora #amApp .msg{border-radius:18px 18px 18px 6px}
body.aurora #amApp .msg.me{border-radius:18px 18px 6px 18px}

/* --- Accessoires flottants : on n'en garde aucun --- */
body.aurora #animTab,body.aurora #bubbleTab,body.aurora #carTab{opacity:.35;transition:opacity .2s}
body.aurora #animTab:hover,body.aurora #bubbleTab:hover,body.aurora #carTab:hover{opacity:1}

/* Le bouton de bascule a été retiré : Aurora est l'habillage unique. */
#themeBtn{display:none!important}

@media(prefers-reduced-motion:reduce){
  body.aurora::before,body.aurora .grid>.card{animation:none!important}
}

html.pre-aurora body{background:#05070B}

#lpToolsPop #lpJingleBtn.on{color:var(--cyan);box-shadow:inset 0 0 0 1px rgba(25,227,194,.45)}




/* Dates d'artiste : flyers en grille sur la page publique */
.gig-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}
.gig-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--panel);
  display:flex;flex-direction:column;transition:transform .25s,border-color .25s}
.gig-card:hover{transform:translateY(-3px);border-color:rgba(90,217,255,.3)}
.gig-card img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}
.gig-bd{padding:11px 12px 13px;display:flex;flex-direction:column;gap:5px}
.gig-date{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan)}
.gig-bd b{font-size:13.5px;line-height:1.25}
.gig-loc,.gig-lineup{font-size:11.5px;color:var(--muted);line-height:1.4}
.gig-lineup{font-family:'JetBrains Mono',monospace;font-size:10.5px}
.gig-bd .btn{margin-top:6px;text-align:center;text-decoration:none}

.gig-artist{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.06em;color:var(--cyan);text-decoration:none}
.gig-artist:hover{text-decoration:underline}


/* ===== Barre supérieure toujours visible =====
   Logo, nom du site, loupe et burger restent accrochés en haut de l'écran
   pendant tout le défilement, sur un fond dépoli qui garde le texte lisible
   quel que soit le contenu qui passe dessous. */
body.aurora .topbar{
  position:sticky!important;top:0;z-index:120;
  background:rgba(5,7,11,.86);
  -webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);
}
/* Le trait d'aurore suit la barre : il en devient le pied */
body.aurora .topbar .ticker{position:relative;z-index:1}
body.aurora .topbar nav{padding-top:10px;padding-bottom:8px}
@media(max-width:760px){
  body.aurora .topbar nav{padding-top:8px;padding-bottom:6px}
  body.aurora header{padding-top:20px}
}


/* ===== Bouton d'options intégré à la barre du haut =====
   Il quitte le marque-page fixe de droite pour s'aligner avec la loupe et le
   burger : même gabarit, même style, plus rien qui flotte au-dessus du contenu. */
#rightTabsBtn.rt-inline{
  position:static!important;transform:none!important;
  width:44px!important;height:40px!important;
  border-radius:12px!important;border:1px solid var(--line)!important;
  background:rgba(255,255,255,.04)!important;color:var(--muted)!important;
  box-shadow:none!important;font-weight:400;
  display:grid!important;place-items:center;
  z-index:auto;margin:0 6px 0 0;
}
#rightTabsBtn.rt-inline:hover{color:var(--ink)!important;background:rgba(255,255,255,.09)!important}
/* Le marque-page flottant n'a plus lieu d'être */
body.aurora #bubbleTab,body.aurora #animTab,body.aurora #carTab{display:none!important}


/* La barre d'onglets du bas est retirée : la navigation passe par le burger. */
#tabBar{display:none!important}
body{padding-bottom:0}
body.lp-reduced.lp-on #lpMiniBar{bottom:0}


/* ==================================================================
   PAGE STREAMING — refonte visuelle (thème Aurora)
   Trois intentions : une affiche d'ouverture qui donne envie d'appuyer,
   des rails qui se parcourent au pouce, et une identification immédiate
   de ce qui joue. Aucune classe n'est renommée : tout est surcharge.
   ================================================================== */

/* --- En-tête de page : titre, actions et recherche dans un même bloc --- */
body.aurora #view-listen .shead{align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:6px}
body.aurora #view-listen .shead h2{font-size:clamp(26px,7vw,38px);letter-spacing:-.03em;margin:6px 0 0}
body.aurora #view-listen .shead .btn{border-radius:999px}

/* Recherche : capsule pleine largeur, collante sous la barre du haut */
body.aurora #view-listen .catalog-search{
  position:sticky;top:calc(var(--topbar-h,58px));z-index:20;
  display:flex;gap:8px;align-items:center;padding:10px 0 12px;margin:0 0 4px;
  background:linear-gradient(180deg,var(--bg) 68%,transparent);
}
body.aurora #view-listen .catalog-search input{
  flex:1;background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:999px;
  color:var(--ink);padding:13px 18px;font-size:14px;transition:border-color .18s,background .18s}
body.aurora #view-listen .catalog-search input:focus{
  outline:none;background:rgba(255,255,255,.08);border-color:rgba(25,227,194,.5);
  box-shadow:0 0 0 3px rgba(25,227,194,.12)}
body.aurora #view-listen .catalog-search .btn{border-radius:999px;padding:11px 15px;flex:0 0 auto}

/* Sélecteur vitrine / compact : segment épuré */
body.aurora #view-listen .lsel{
  display:inline-flex;gap:4px;padding:4px;border-radius:999px;
  background:rgba(255,255,255,.04);border:1px solid var(--line);margin-bottom:18px}
body.aurora #view-listen .lsel button{
  border:0;background:none;color:var(--muted);border-radius:999px;padding:8px 16px;
  font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase}
body.aurora #view-listen .lsel button.on{
  color:#04161C;font-weight:700;background:linear-gradient(115deg,#19E3C2,#5AD9FF 40%,#9B6CFF)}

/* --- L'affiche d'ouverture : la pochette devient le décor --- */
body.aurora .lhero{
  position:relative;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;
  padding:20px;border-radius:24px;overflow:hidden;margin-bottom:28px;
  background:linear-gradient(155deg,rgba(17,24,35,.92),rgba(8,11,16,.96));
  border:1px solid var(--line);box-shadow:0 26px 60px -38px #000;
}
body.aurora .lhero::before{
  content:"";position:absolute;inset:-40% -10% auto -10%;height:180%;pointer-events:none;
  background:radial-gradient(45% 45% at 22% 30%,rgba(25,227,194,.22),transparent 70%),
             radial-gradient(45% 45% at 72% 40%,rgba(155,108,255,.20),transparent 70%);
  filter:blur(26px);animation:auroraDrift 20s ease-in-out infinite alternate}
body.aurora .lhero>*{position:relative;z-index:1}
body.aurora .lhero-cv{
  width:min(38vw,150px);aspect-ratio:1;border-radius:18px;overflow:hidden;position:relative;cursor:pointer;
  box-shadow:0 22px 44px -22px rgba(25,227,194,.6),0 0 0 1px rgba(255,255,255,.10)}
body.aurora .lhero-cv img{width:100%;height:100%;object-fit:cover;display:block}
/* Le bouton de lecture reste visible en permanence : au doigt, il n'y a pas de
   survol, et un bouton qui n'apparaît qu'au toucher ne s'utilise jamais. */
body.aurora .lhero-play{
  position:absolute;right:10px;bottom:10px;inset:auto 10px 10px auto;
  width:54px;height:54px;border-radius:50%;display:grid;place-items:center;
  font-size:20px;color:#04161C;opacity:1;background:linear-gradient(115deg,#19E3C2,#5AD9FF 45%,#9B6CFF);
  box-shadow:0 14px 32px -10px rgba(25,227,194,.95),0 0 0 4px rgba(5,7,11,.55);
  transition:transform .16s}
body.aurora .lhero-cv:active .lhero-play{transform:scale(.92)}
body.aurora .lhero-info{display:flex;flex-direction:column;gap:6px;min-width:0}
body.aurora .lhero .eyebrow{
  font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--accent2)}
body.aurora .lhero-t{font-family:'Bricolage Grotesque',sans-serif;font-size:clamp(19px,5.2vw,26px);
  line-height:1.1;letter-spacing:-.02em}
body.aurora .lhero-info .owned,body.aurora .lhero-info .price{align-self:flex-start}

/* --- Rails : parcours au pouce, arrêt net sur chaque carte --- */
body.aurora .lrail-h{
  font-family:'Bricolage Grotesque',sans-serif;font-size:16px;letter-spacing:-.01em;
  margin:26px 0 12px;display:flex;align-items:center;gap:9px}
body.aurora .lrail-h::before{
  content:"";width:16px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,#19E3C2,#9B6CFF)}
body.aurora .lrail{
  display:flex;gap:12px;overflow-x:auto;padding:2px 0 10px;margin:0 -16px;padding-left:16px;padding-right:16px;
  scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
body.aurora .lrail::-webkit-scrollbar{display:none}
body.aurora .lrcard{
  flex:0 0 132px;scroll-snap-align:start;cursor:pointer;
  display:flex;flex-direction:column;gap:6px;transition:transform .22s}
body.aurora .lrcard:hover{transform:translateY(-4px)}
body.aurora .lrcard-cv{
  position:relative;aspect-ratio:1;border-radius:14px;overflow:hidden;
  border:1px solid var(--line);box-shadow:0 14px 30px -20px #000}
body.aurora .lrcard-cv img{width:100%;height:100%;object-fit:cover;display:block}
body.aurora .lrcard-play{
  position:absolute;inset:auto 7px 7px auto;width:34px;height:34px;border-radius:50%;
  display:grid;place-items:center;font-size:13px;color:#04161C;background:linear-gradient(115deg,#19E3C2,#5AD9FF);
  opacity:1;transform:none;box-shadow:0 8px 20px -8px #000,0 0 0 3px rgba(5,7,11,.5);
  transition:transform .16s}
body.aurora .lrcard:active .lrcard-play{transform:scale(.9)}
body.aurora .lrcard-t{font-size:12.5px;font-weight:600;line-height:1.25;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body.aurora .lrcard-a{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.06em;
  color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* --- Ce qui joue se voit immédiatement --- */
body.aurora .lrcard.playing .lrcard-cv,body.aurora .lhero.playing .lhero-cv{
  box-shadow:0 0 0 2px var(--accent2),0 16px 34px -18px rgba(25,227,194,.9)}
body.aurora .lrcard.playing .lrcard-t{color:var(--accent2)}
body.aurora .lrcard.playing .lrcard-play,body.aurora .lhero.playing .lhero-play{
  background:linear-gradient(115deg,#9B6CFF,#FF5CC8);animation:auroraPulse 2.6s ease-in-out infinite}
@keyframes auroraPulse{50%{box-shadow:0 14px 36px -8px rgba(255,92,200,.95),0 0 0 4px rgba(5,7,11,.55)}}

/* --- Vue compacte : lignes cliquables, chips défilants --- */
body.aurora #view-listen .lchips{
  display:flex;gap:7px;overflow-x:auto;padding:0 0 14px;scrollbar-width:none}
body.aurora #view-listen .lchips::-webkit-scrollbar{display:none}
body.aurora #view-listen .lchip{
  flex:0 0 auto;border-radius:999px;padding:8px 14px;border:1px solid var(--line);
  background:rgba(255,255,255,.03);color:var(--muted);
  font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
body.aurora #view-listen .lchip.on{
  color:#04161C;border:0;font-weight:700;background:linear-gradient(115deg,#19E3C2,#5AD9FF 40%,#9B6CFF)}
body.aurora #view-listen .lrow,body.aurora #view-listen .listen-row{
  display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:16px;
  border:1px solid var(--line);background:var(--panel);margin-bottom:8px;transition:background .16s,transform .1s}
body.aurora #view-listen .lrow:hover,body.aurora #view-listen .listen-row:hover{background:var(--panel2)}
body.aurora #view-listen .lrow:active,body.aurora #view-listen .listen-row:active{transform:scale(.99)}
body.aurora #view-listen .lrow.playing,body.aurora #view-listen .listen-row.playing{border-color:rgba(25,227,194,.5);
  background:linear-gradient(90deg,rgba(25,227,194,.12),transparent)}

@media(min-width:900px){
  body.aurora .lhero{grid-template-columns:auto 1fr;padding:26px;gap:26px}
  body.aurora .lhero-cv{width:190px}
  body.aurora .lrcard{flex:0 0 158px}
}
@media(prefers-reduced-motion:reduce){
  body.aurora .lhero::before{animation:none}
}


/* ===== Streaming : finitions =====
   Métadonnées en pastilles sous le titre mis en avant, rails annotés,
   et repères de lecture plus francs. */
body.aurora .lhero-info .lh-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
body.aurora .lhero-info .lh-meta span{
  font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;
  padding:5px 10px;border-radius:999px;border:1px solid var(--line);color:var(--muted)}
body.aurora .lrail-h{justify-content:space-between}
body.aurora .lrail-h .lr-count{
  font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.1em;color:var(--muted);
  margin-left:auto;font-weight:400}
/* Un dégradé en fin de rail signale qu'il reste des titres à droite */
body.aurora .lrail{position:relative;-webkit-mask-image:linear-gradient(90deg,#000 0,#000 92%,transparent);
  mask-image:linear-gradient(90deg,#000 0,#000 92%,transparent)}
body.aurora .lrcard.playing{transform:translateY(-3px)}
body.aurora .lhero.playing{border-color:rgba(25,227,194,.45)}


/* ===== Streaming : carrousel, ligne d'outils, recherche escamotable ===== */

/* Le carrousel superpose ses vues et n'en révèle qu'une : pas de défilement
   horizontal à gérer, et la hauteur reste stable d'un titre à l'autre. */
/* Défilement continu : toutes les vues sont côte à côte dans une piste que l'on
   translate. Le mouvement est ainsi réellement glissé, et non un fondu. */
body.aurora .lcar{position:relative;margin-bottom:28px;overflow:hidden;border-radius:24px;touch-action:pan-y}
body.aurora .lcar-track{display:flex;width:100%;
  transition:transform .72s cubic-bezier(.22,.72,.2,1);will-change:transform}
body.aurora .lcar-slide{flex:0 0 100%;min-width:100%;opacity:.55;
  transform:scale(.965);transition:opacity .6s ease,transform .6s cubic-bezier(.22,.72,.2,1)}
body.aurora .lcar-slide.on{opacity:1;transform:none}
body.aurora .lcar .lhero{margin-bottom:0;height:100%}
@keyframes lcarIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
body.aurora .lcar-dots{display:flex;gap:7px;justify-content:center;margin-top:12px}
body.aurora .lcar-dot{
  width:7px;height:7px;padding:0;border-radius:99px;border:0;cursor:pointer;
  background:rgba(255,255,255,.22);transition:width .25s,background .25s}
body.aurora .lcar-dot.on{width:22px;background:linear-gradient(90deg,#19E3C2,#9B6CFF)}

/* Ligne d'outils : disposition, recherche et aléatoire alignés */
body.aurora #listenTools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:20px}
body.aurora #listenTools .lsel{margin-bottom:0}
body.aurora .lt-btn{
  display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 14px;border-radius:999px;
  border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--muted);cursor:pointer;
  font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;
  transition:background .16s,color .16s,transform .12s}
body.aurora .lt-btn:hover{background:rgba(255,255,255,.09);color:var(--ink)}
body.aurora .lt-btn:active{transform:scale(.95)}
body.aurora #listenSearchBtn{width:44px;padding:0;justify-content:center;font-size:15px}
body.aurora .lt-btn.on{
  color:#04161C;border:0;font-weight:700;background:linear-gradient(115deg,#19E3C2,#5AD9FF 45%,#9B6CFF)}

/* La recherche reste repliée tant qu'on ne la demande pas */
body.aurora #view-listen .catalog-search{
  display:none;position:static;padding:0;margin:0 0 16px;background:none}
body.aurora #view-listen .catalog-search.open{
  display:flex;animation:lcarIn .28s ease both}

@media(max-width:520px){
  body.aurora #listenTools{gap:6px}
  body.aurora .lt-btn{height:38px;padding:0 12px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){
  body.aurora .lcar-slide.on,body.aurora #view-listen .catalog-search.open{animation:none}
}


/* Le carrousel présente du contenu : il continue de tourner même lorsque les
   animations décoratives sont désactivées dans les réglages. */
html.anim-off body.aurora .lcar-track{transition:transform .72s cubic-bezier(.22,.72,.2,1)!important}
html.anim-off body.aurora .lcar-slide{transition:opacity .6s ease,transform .6s ease!important}
html.anim-off body.aurora .lcar-dot{transition:width .25s,background .25s!important}


/* ===== Carrousel : hauteur stable quel que soit le titre =====
   Un nom de piste très long faisait gonfler la carte et écrasait la pochette.
   On borne le titre à trois lignes et on fixe une hauteur commune : toutes les
   vues du carrousel se ressemblent, la pochette garde sa taille. */
body.aurora .lcar-slide .lhero{
  min-height:270px;align-content:center;
}
body.aurora .lcar-slide .lhero-t{
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
  font-size:clamp(17px,4.4vw,23px);line-height:1.12;word-break:break-word;hyphens:auto;
}
body.aurora .lcar-slide .lhero-a{
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  font-size:12.5px;line-height:1.35}
/* Les pastilles restent sur une seule ligne, en défilement si besoin */
body.aurora .lcar-slide .lh-meta{
  flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
body.aurora .lcar-slide .lh-meta::-webkit-scrollbar{display:none}
body.aurora .lcar-slide .lh-meta span{flex:0 0 auto}
/* La pochette ne se laisse plus comprimer par un texte trop long */
body.aurora .lcar-slide .lhero-cv{
  width:min(40vw,158px);flex:0 0 auto;align-self:center}
body.aurora .lcar-slide .lhero-info{justify-content:center}

@media(max-width:400px){
  body.aurora .lcar-slide .lhero{min-height:250px;gap:14px;padding:16px}
  body.aurora .lcar-slide .lhero-cv{width:min(36vw,128px)}
  body.aurora .lcar-slide .lhero-t{-webkit-line-clamp:3;font-size:16.5px}
}
@media(min-width:900px){
  body.aurora .lcar-slide .lhero{min-height:230px}
  body.aurora .lcar-slide .lhero-cv{width:190px}
}


/* Repli : si les vues ne sont pas dans leur piste (script plus ancien encore en
   cache), elles s'empileraient les unes sous les autres. On n'affiche alors que
   la vue active, comme avant le passage au défilement glissé. */
body.aurora .lcar>.lcar-slide{display:none}
body.aurora .lcar>.lcar-slide.on{display:block}
body.aurora .lcar-track{display:flex!important;flex-wrap:nowrap!important}
body.aurora .lcar-track>.lcar-slide{display:block!important;flex:0 0 100%!important;min-width:100%!important}


/* Ligne d'actions : radio et playlists côte à côte sous le titre */
body.aurora #view-listen .shead{margin-bottom:14px}
/* Les deux actions tiennent sur une seule ligne : elles se partagent la largeur
   et leur libellé se réduit plutôt que de passer à la ligne. */
body.aurora #view-listen .lactions{
  display:flex;gap:8px;flex-wrap:nowrap;margin:0 0 18px;align-items:stretch}
body.aurora #view-listen .lactions .btn{
  border-radius:999px;flex:1 1 0;min-width:0;justify-content:center;text-align:center;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  padding-left:12px;padding-right:12px;font-size:clamp(9px,2.7vw,11px);letter-spacing:.06em}
@media(max-width:430px){
  body.aurora #view-listen .lactions{gap:6px}
  body.aurora #view-listen .lactions .btn{padding-left:9px;padding-right:9px;letter-spacing:.03em}
}
/* Le sélecteur de disposition disparaît : la vitrine est la seule vue */
body.aurora #listenLayoutSel{display:none!important}


/* ==================================================================
   MESSAGERIE — seconde passe : matière, rythme et animations
   Les animations d'interface de la messagerie sont considérées comme du
   retour d'action (un message part, arrive, se lit) et non comme de la
   décoration : elles restent donc actives même réglage animations coupé.
   ================================================================== */

/* --- Coque : verre teinté, ouverture élastique --- */
#amApp .am-shell{
  border-radius:22px 0 0 22px;
  border-left:1px solid rgba(90,217,255,.22);
  background:
    radial-gradient(80% 30% at 50% 0%,rgba(25,227,194,.10),transparent 62%),
    linear-gradient(165deg,rgba(13,26,34,.97),rgba(6,11,16,.99));
  box-shadow:-30px 0 80px -30px #000,0 0 60px -26px rgba(25,227,194,.35);
  animation:amShellIn .42s cubic-bezier(.22,.9,.24,1) both!important;
}
@keyframes amShellIn{from{transform:translateX(28px);opacity:0}to{transform:none;opacity:1}}

/* --- Liste : entrée en cascade, la conversation active se détache --- */
/* La cascade ne joue qu'à l'ouverture (classe posée une seule fois) */
#amApp .am-anim .am-trow{animation:amRowIn .34s cubic-bezier(.2,.8,.25,1) both!important}
#amApp .am-anim .am-trow:nth-child(2){animation-delay:.04s!important}
#amApp .am-anim .am-trow:nth-child(3){animation-delay:.08s!important}
#amApp .am-anim .am-trow:nth-child(4){animation-delay:.12s!important}
#amApp .am-anim .am-trow:nth-child(n+5){animation-delay:.16s!important}
@keyframes amRowIn{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
#amApp .am-trow.active{
  background:linear-gradient(90deg,rgba(25,227,194,.18),rgba(155,108,255,.06));
  box-shadow:inset 3px 0 0 var(--cyan),0 10px 26px -20px #000}

/* Pastille de non-lus : elle respire pour attirer l'œil sans clignoter */
#amApp .am-cc{animation:amPing 2.8s ease-in-out infinite!important}
@keyframes amPing{0%,100%{box-shadow:0 4px 14px -4px rgba(25,227,194,.9)}
  50%{box-shadow:0 4px 22px -2px rgba(25,227,194,1),0 0 0 4px rgba(25,227,194,.14)}}

/* Présence : l'anneau vert pulse doucement quand la personne est connectée */
#amApp .am-status-on,#amApp .am-pres.on{animation:amLive 2.4s ease-in-out infinite!important}
@keyframes amLive{50%{box-shadow:0 0 0 4px rgba(60,232,143,.18),0 0 12px rgba(60,232,143,.9)}}

/* --- En-tête de conversation : verre, et retour arrière franc --- */
#amApp .am-conv-head{
  background:rgba(8,14,20,.72);border-bottom:1px solid rgba(255,255,255,.07);
  -webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);
  animation:amHeadIn .3s ease both!important}
@keyframes amHeadIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* --- Fil : les messages arrivent, ils n'apparaissent pas --- */
#amApp .msg{animation:amMsgIn .32s cubic-bezier(.2,.85,.28,1) both!important;transform-origin:left bottom}
#amApp .msg.me{transform-origin:right bottom;animation-name:amMsgInMe!important}
@keyframes amMsgIn{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
@keyframes amMsgInMe{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
/* Le dernier message reçu se signale une fois, discrètement */
#amApp .am-msgs .msg:last-child:not(.me){box-shadow:0 0 0 1px rgba(90,217,255,.18),0 4px 18px -12px #000}

/* --- « en train d'écrire » : trois points animés --- */
#amApp .am-typing{display:flex;align-items:center;gap:7px;color:var(--cyan)}
#amApp .am-typing:not(:empty)::before{
  content:"";width:34px;height:12px;flex:0 0 auto;border-radius:99px;
  background:
    radial-gradient(circle 3px at 7px 6px,currentColor 96%,transparent),
    radial-gradient(circle 3px at 17px 6px,currentColor 96%,transparent),
    radial-gradient(circle 3px at 27px 6px,currentColor 96%,transparent);
  animation:amDots 1.25s ease-in-out infinite!important}
@keyframes amDots{0%,100%{opacity:.35}50%{opacity:1}}

/* --- Zone de saisie : la capsule s'ouvre, l'envoi répond --- */
#amApp .am-foot{
  gap:8px;padding:12px 12px calc(12px + env(safe-area-inset-bottom));
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.32));
  border-top:1px solid rgba(255,255,255,.07)}
#amApp .am-foot input[type=text]:focus,#amApp .am-foot textarea:focus{
  animation:amFieldIn .22s ease both!important}
@keyframes amFieldIn{from{box-shadow:0 0 0 0 rgba(25,227,194,.28)}to{box-shadow:0 0 0 3px rgba(25,227,194,.14)}}
#amApp .am-send{transition:transform .14s cubic-bezier(.3,1.4,.5,1),filter .16s}
#amApp .am-send:active{transform:scale(.88) rotate(-8deg)}
#amApp .am-send:hover{filter:brightness(1.08)}

/* --- Pièces jointes et vocaux : mise en avant du contenu --- */
#amApp .am-attach{transition:transform .16s,background .16s,color .16s}
#amApp .am-attach:active{transform:scale(.9)}
#amApp .am-recbar{border-radius:16px;animation:amRecIn .24s ease both!important}
@keyframes amRecIn{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
#amApp .am-recdot{animation:amRecPulse 1s ease-in-out infinite!important}
@keyframes amRecPulse{50%{opacity:.35;transform:scale(.85)}}

/* --- Les animations de la messagerie survivent au réglage « animations off » ---
   Elles signalent un état (message parti, arrivé, personne en ligne) : les
   couper reviendrait à supprimer de l'information, pas de la décoration. */
html.anim-off #amApp,html.anim-off #amApp *{animation-play-state:running!important}
html.anim-off #amApp .am-send,html.anim-off #amApp .am-attach,
html.anim-off #amApp .am-trow{transition-duration:.16s!important}

/* Accessibilité système : là, on respecte le choix de la personne */
@media(prefers-reduced-motion:reduce){
  #amApp .am-shell,#amApp .am-trow,#amApp .msg,#amApp .am-cc,#amApp .am-conv-head,
  #amApp .am-typing::before,#amApp .am-recdot,#amApp .am-status-on,#amApp .am-pres.on{
    animation:none!important}
}


/* ==================================================================
   MESSAGERIE — troisième passe : matière, couleur, profondeur
   Nouveau parti pris chromatique : l'interlocuteur reste dans l'encre du site,
   tes propres messages prennent l'aurore. La conversation se lit donc comme un
   dialogue à deux voix, sans avoir à chercher qui parle.
   ================================================================== */
#amApp{
  --am-me1:#19E3C2; --am-me2:#5AD9FF; --am-me3:#9B6CFF;
  --am-you:rgba(255,255,255,.055);
  --am-glass:rgba(255,255,255,.07);
}

/* --- Coque : deux aurores lentes en fond, jamais au premier plan --- */
#amApp .am-shell{position:relative;isolation:isolate}
#amApp .am-shell::before{
  content:"";position:absolute;inset:-30% -20% auto -20%;height:70%;z-index:-1;pointer-events:none;
  background:radial-gradient(42% 44% at 26% 34%,rgba(25,227,194,.20),transparent 70%),
             radial-gradient(40% 42% at 74% 26%,rgba(155,108,255,.18),transparent 70%);
  filter:blur(34px);animation:amAurora 19s ease-in-out infinite alternate!important}
#amApp .am-shell::after{
  content:"";position:absolute;left:0;right:0;bottom:-24%;height:52%;z-index:-1;pointer-events:none;
  background:radial-gradient(48% 60% at 62% 100%,rgba(255,92,200,.13),transparent 72%);
  filter:blur(38px);animation:amAurora 23s ease-in-out infinite alternate-reverse!important}
@keyframes amAurora{from{transform:translate(-3%,-6px) scale(1)}to{transform:translate(4%,10px) scale(1.12)}}

/* --- Bulles : deux voix, deux matières --- */
#amApp .msg{
  background:var(--am-you);border:1px solid rgba(255,255,255,.08);
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  box-shadow:0 8px 20px -16px #000}
#amApp .msg.me{
  color:#04161C;border:0;
  background:linear-gradient(135deg,var(--am-me1),var(--am-me2) 52%,var(--am-me3));
  box-shadow:0 10px 26px -14px rgba(25,227,194,.85)}
#amApp .msg.me a{color:#04161C;text-decoration:underline}
#amApp .msg.me .t,#amApp .msg.me time{color:rgba(4,22,28,.62)}
/* Liseré supérieur nacré : donne du relief sans ombre lourde */
#amApp .msg{position:relative;overflow:hidden}
#amApp .msg::before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent)}
/* Reflet qui balaie une fois la bulle à son arrivée */
#amApp .am-msgs.am-anim .msg:last-child::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.22) 50%,transparent 62%);
  transform:translateX(-120%);animation:amSheen .9s ease-out .12s 1 forwards!important}
@keyframes amSheen{to{transform:translateX(120%)}}

/* --- Avatars : anneau dégradé, halo au survol --- */
#amApp .am-avwrap::before{
  content:"";position:absolute;inset:-2px;border-radius:16px;z-index:-1;
  background:conic-gradient(from 140deg,var(--am-me1),var(--am-me2),var(--am-me3),#FF5CC8,var(--am-me1));
  opacity:.5;transition:opacity .25s}
#amApp .am-trow:hover .am-avwrap::before,#amApp .am-trow.active .am-avwrap::before{opacity:1}
#amApp .am-avwrap{position:relative;isolation:isolate}

/* --- Liste : lueur qui suit la conversation active --- */
#amApp .am-trow{position:relative;overflow:hidden}
#amApp .am-trow::after{
  content:"";position:absolute;left:-40%;top:0;bottom:0;width:40%;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(90,217,255,.10),transparent);
  transform:translateX(0);transition:transform .5s ease}
#amApp .am-trow:hover::after{transform:translateX(350%)}
#amApp .am-trow.active{
  background:linear-gradient(90deg,rgba(25,227,194,.20),rgba(155,108,255,.07) 60%,transparent)}

/* --- En-tête : filet d'aurore en pied --- */
#amApp .am-conv-head{position:relative}
#amApp .am-conv-head::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent,var(--am-me1) 22%,var(--am-me2) 50%,var(--am-me3) 78%,transparent);
  opacity:.65}

/* --- Zone de saisie : capsule qui s'illumine au focus --- */
#amApp .am-foot{position:relative}
#amApp .am-foot::before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent)}
#amApp .am-foot input[type=text],#amApp .am-foot textarea{
  background:var(--am-glass);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
#amApp .am-foot input[type=text]:focus,#amApp .am-foot textarea:focus{
  border-color:transparent;
  box-shadow:0 0 0 1px rgba(25,227,194,.55),0 0 0 4px rgba(25,227,194,.12),0 8px 24px -18px #000}
#amApp .am-send{
  background:conic-gradient(from 210deg,var(--am-me1),var(--am-me2),var(--am-me3),#FF5CC8,var(--am-me1));
  box-shadow:0 10px 26px -10px rgba(25,227,194,.9)}
#amApp .am-send::after{
  content:"";position:absolute;inset:-4px;border-radius:50%;pointer-events:none;
  border:1px solid rgba(90,217,255,.45);opacity:0;transform:scale(.9)}
#amApp .am-send:active::after{animation:amSendRing .45s ease-out 1!important}
@keyframes amSendRing{0%{opacity:.9;transform:scale(.9)}100%{opacity:0;transform:scale(1.5)}}
#amApp .am-send{position:relative}

/* --- Pastille de non-lus : halo double --- */
#amApp .am-cc{
  background:linear-gradient(135deg,var(--am-me1),var(--am-me2));
  color:#04161C;font-weight:800}

/* --- États vides : l'enveloppe respire --- */
#amApp .am-empty::before{animation:amFloat 5s ease-in-out infinite!important}
@keyframes amFloat{50%{transform:translateY(-6px);opacity:.5}}

/* --- Barre de défilement discrète, teintée --- */
#amApp .am-msgs::-webkit-scrollbar-thumb,#amApp .am-threads::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,rgba(25,227,194,.45),rgba(155,108,255,.45))}

@media(prefers-reduced-motion:reduce){
  #amApp .am-shell::before,#amApp .am-shell::after,#amApp .am-msgs .msg:last-child::after,
  #amApp .am-empty::before{animation:none!important}
  #amApp .am-trow::after{display:none}
}


/* ===== Messagerie : stabilité visuelle =====
   Les effets qui provoquaient des recompositions permanentes (verre dépoli sur
   chaque bulle, aurores de fond en mouvement continu) sont allégés : sur mobile
   ils faisaient scintiller la liste à chaque cycle de rafraîchissement. */
#amApp .msg{backdrop-filter:none;-webkit-backdrop-filter:none}
#amApp .am-shell::before,#amApp .am-shell::after{animation:none!important}
#amApp .am-shell::before{opacity:.85}
/* La lueur de survol ne s'anime que sur les appareils à pointeur */
@media(hover:none){#amApp .am-trow::after{display:none}}
/* Le halo de la pastille et l'anneau de présence restent, ils portent une info */


/* ==================================================================
   MESSAGERIE — ouverture en tiroir et retours d'action
   Le panneau glisse depuis la droite, le voile s'assombrit derrière lui,
   puis la liste se pose. Chaque geste répond : ligne enfoncée, bascule vers
   la conversation, retour vers la liste.
   ================================================================== */

/* --- Le voile arrive avant le tiroir : la profondeur se lit tout de suite --- */
#amApp.open{animation:amVeil .3s ease both!important}
@keyframes amVeil{from{background:rgba(4,3,9,0);backdrop-filter:blur(0)}
  to{background:rgba(4,3,9,.6);backdrop-filter:blur(3px)}}

/* --- Le tiroir : sortie franche depuis la droite, arrivée amortie --- */
#amApp .am-shell{
  animation:amDrawer .46s cubic-bezier(.16,.84,.22,1) both!important;
  transform-origin:right center}
@keyframes amDrawer{
  0%{transform:translateX(100%) scale(.98);opacity:.4}
  62%{transform:translateX(-1.5%) scale(1);opacity:1}
  100%{transform:none;opacity:1}}

/* --- Le contenu du tiroir suit avec un léger retard --- */
#amApp .am-side-head{animation:amDrawerIn .38s cubic-bezier(.2,.8,.25,1) .1s both!important}
#amApp .am-srchbox{animation:amDrawerIn .38s cubic-bezier(.2,.8,.25,1) .15s both!important}
#amApp .am-anim .am-trow{animation:amDrawerIn .34s cubic-bezier(.2,.8,.25,1) both!important}
#amApp .am-anim .am-trow:nth-child(1){animation-delay:.18s!important}
#amApp .am-anim .am-trow:nth-child(2){animation-delay:.22s!important}
#amApp .am-anim .am-trow:nth-child(3){animation-delay:.26s!important}
#amApp .am-anim .am-trow:nth-child(4){animation-delay:.3s!important}
#amApp .am-anim .am-trow:nth-child(n+5){animation-delay:.34s!important}
@keyframes amDrawerIn{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}

/* --- Bascule liste → conversation : la conversation entre par la droite --- */
#amApp.am-show-chat .am-main{animation:amPanelIn .34s cubic-bezier(.2,.85,.24,1) both!important}
@keyframes amPanelIn{from{opacity:0;transform:translateX(26px)}to{opacity:1;transform:none}}
/* Retour vers la liste : elle revient par la gauche, le sens du geste est respecté */
#amApp:not(.am-show-chat) .am-side{animation:amPanelBack .32s cubic-bezier(.2,.85,.24,1) both!important}
@keyframes amPanelBack{from{opacity:0;transform:translateX(-22px)}to{opacity:1;transform:none}}

/* --- Chaque ligne répond au doigt : enfoncement puis onde qui part du contact --- */
#amApp .am-trow{transition:transform .13s cubic-bezier(.3,1.3,.5,1),background .16s}
#amApp .am-trow:active{transform:scale(.975)}
#amApp .am-trow::before{
  content:"";position:absolute;left:50%;top:50%;width:12px;height:12px;border-radius:50%;
  transform:translate(-50%,-50%) scale(0);pointer-events:none;
  background:radial-gradient(circle,rgba(90,217,255,.34),transparent 70%)}
#amApp .am-trow:active::before{animation:amRipple .5s ease-out 1!important}
@keyframes amRipple{from{transform:translate(-50%,-50%) scale(0);opacity:.9}
  to{transform:translate(-50%,-50%) scale(26);opacity:0}}

/* --- Bulles : légère bascule à l'appui, pour signaler qu'elles sont actives --- */
#amApp .msg{transition:transform .14s cubic-bezier(.3,1.3,.5,1)}
#amApp .msg:active{transform:scale(.985)}

/* --- Boutons de l'en-tête : rotation courte, jamais gratuite --- */
#amApp .am-back{transition:transform .16s cubic-bezier(.3,1.3,.5,1),background .16s}
#amApp .am-back:active{transform:translateX(-3px) scale(.92)}
#amApp .am-x,#amApp .am-cog{transition:transform .2s}
#amApp .am-x:active{transform:rotate(90deg) scale(.9)}
#amApp .am-cog:active{transform:rotate(60deg) scale(.92)}

/* --- Avatars : léger relief à l'appui --- */
#amApp .am-avwrap{transition:transform .16s cubic-bezier(.3,1.3,.5,1)}
#amApp .am-trow:active .am-avwrap{transform:scale(1.06)}

/* --- Fermeture : le tiroir repart d'où il est venu --- */
#amApp.am-closing .am-shell{animation:amDrawerOut .26s cubic-bezier(.4,0,.9,.3) both!important}
#amApp.am-closing{animation:amVeilOut .26s ease both!important}
@keyframes amDrawerOut{to{transform:translateX(100%);opacity:.35}}
@keyframes amVeilOut{to{background:rgba(4,3,9,0);backdrop-filter:blur(0)}}

@media(prefers-reduced-motion:reduce){
  #amApp.open,#amApp .am-shell,#amApp .am-side-head,#amApp .am-srchbox,
  #amApp .am-anim .am-trow,#amApp.am-show-chat .am-main,
  #amApp:not(.am-show-chat) .am-side,#amApp .am-trow:active::before{animation:none!important}
}


/* Le halo diffus en tête de panneau brouillait le titre : on le supprime.
   Le fond redevient net, seule la teinte de base subsiste. */
#amApp .am-shell::before,#amApp .am-shell::after{display:none!important}
#amApp .am-shell{
  background:linear-gradient(165deg,rgba(13,26,34,.98),rgba(6,11,16,.99))}
#amApp .am-side-head{
  background:none;-webkit-backdrop-filter:none;backdrop-filter:none}
#amApp .am-conv-head{
  background:rgba(8,14,20,.96);-webkit-backdrop-filter:none;backdrop-filter:none}


/* ==================================================================
   MENU MOBILE — tout tient à l'écran
   Une entrée par ligne obligeait à faire défiler pour atteindre Admin. On passe
   à deux colonnes : mêmes repères visuels, hauteur divisée par deux.
   ================================================================== */
@media(max-width:760px){
  body.aurora .nav-menu{
    background:linear-gradient(180deg,rgba(11,17,25,.99),rgba(6,10,15,.99));
    padding:10px 12px 14px;gap:8px;border-bottom:1px solid rgba(255,255,255,.10);
    max-height:calc(100dvh - 68px)}
  body.aurora .nav-menu .nav-links{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;
    width:100%;max-width:100%;min-width:0;box-sizing:border-box;align-items:stretch}
  body.aurora .nav-menu .nav-links button{
    display:flex;align-items:center;gap:8px;width:100%;min-width:0;
    min-height:44px;padding:0 11px;border-radius:13px;
    font-size:11.5px;letter-spacing:.03em;font-weight:700;line-height:1.15;
    color:var(--ink);background:rgba(255,255,255,.055);
    border:1px solid rgba(255,255,255,.09);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    transition:background .16s,transform .12s,border-color .16s}
  body.aurora .nav-menu .nav-links button:active{transform:scale(.97)}
  /* L'entrée courante occupe la largeur entière : elle reste le repère principal */
  /* La page courante remonte toujours en tête du menu, sur toute la largeur :
     la grille en dessous reste ainsi parfaitement régulière, quelle que soit
     la page où l'on se trouve. */
  body.aurora .nav-menu .nav-links button.active{
    order:-1;grid-column:1/-1;min-height:50px;font-size:13px;color:#04161C;
    border-color:transparent;font-weight:800;letter-spacing:.05em;
    background:linear-gradient(115deg,#19E3C2,#5AD9FF 45%,#9B6CFF);
    box-shadow:0 10px 24px -16px rgba(25,227,194,.9)}

  /* Ligne du compte : mêmes capsules, réparties sur la largeur */
  body.aurora .nav-menu .who{
    display:grid;grid-template-columns:1fr 1fr;gap:7px;width:100%;
    margin-top:2px;padding-top:9px;border-top:1px solid rgba(255,255,255,.08)}
  body.aurora .nav-menu .who .cart-pill,
  body.aurora .nav-menu .who .btn{
    min-height:42px;border-radius:13px;font-size:11.5px;justify-content:center;
    background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);color:var(--ink)}
  body.aurora .nav-menu .who .notif-btn{grid-column:auto}

  /* Langue, notifications et recherche : une seule rangée compacte */
  body.aurora .nav-menu .lang-switch{
    display:grid;grid-template-columns:repeat(3,1fr);gap:6px;width:100%;margin-top:2px}
  body.aurora .nav-menu .lang-switch button{min-height:38px;border-radius:11px;font-size:11px}
  /* Notifications : pleine largeur, l'état est écrit en toutes lettres */
  body.aurora .nav-menu #navPushBtn{
    min-height:46px;border-radius:13px;justify-content:flex-start;margin:0;
    width:100%!important;flex:1 1 100%;padding:0 14px;
    background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);color:var(--ink);
    font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.03em;gap:10px}
  body.aurora .nav-menu #navPushBtn.on{
    border-color:rgba(60,232,143,.42);background:rgba(60,232,143,.10)}
  body.aurora .nav-menu #gsBtn{
    min-height:46px;border-radius:13px;justify-content:center;margin:0;
    width:100%!important;flex:1 1 100%;
    background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);color:var(--ink);
    font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.03em;gap:8px}
  body.aurora .nav-menu #navPushBtn .nps-ico{font-size:15px}
  body.aurora .nav-menu #navPushBtn::after{
    content:attr(data-label);font-weight:700;white-space:nowrap;
    overflow:hidden;text-overflow:ellipsis;min-width:0}
  body.aurora .nav-menu.open{display:flex;flex-wrap:wrap;align-items:stretch;box-sizing:border-box;max-width:100vw;overflow-x:hidden}
  body.aurora .nav-menu>#gsBtn{order:3}
  body.aurora .nav-menu>#navPushBtn{order:4}
  body.aurora .nav-menu>.lang-switch{order:5;flex:1 1 100%}
  body.aurora .nav-menu>.who{order:6;flex:1 1 100%}
  body.aurora .nav-menu>.nav-links{order:2;flex:1 1 100%}

  /* Le sélecteur de langue de la rangée compte fait doublon avec celui du haut */
  body.aurora .nav-menu .who .lang-inline{display:none!important}
}

/* Écrans courts : on resserre encore pour éviter tout défilement */
@media(max-width:760px) and (max-height:780px){
  body.aurora .nav-menu{gap:6px;padding:8px 10px 12px}
  body.aurora .nav-menu .nav-links{gap:6px}
  body.aurora .nav-menu .nav-links button{min-height:40px;font-size:11px;padding:0 9px;border-radius:12px}
  body.aurora .nav-menu .nav-links button.active{min-height:44px;font-size:12px}
  body.aurora .nav-menu .who .cart-pill,body.aurora .nav-menu .who .btn{min-height:38px;font-size:11px}
  body.aurora .nav-menu .lang-switch button{min-height:34px}
  body.aurora .nav-menu #navPushBtn,body.aurora .nav-menu #gsBtn{min-height:38px}
}


/* Le voile lumineux en tête de page se superposait au logo une fois l'animation
   d'ouverture terminée : on le supprime, le fond reste uni. */
body.aurora::before{display:none!important}
html.pre-aurora body::before{display:none!important}


/* Notifications : la capsule remplit la largeur du menu, le libellé s'affiche
   en entier et l'interrupteur reste calé à gauche derrière la cloche. */
@media(max-width:760px){
  body.aurora .nav-menu #navPushBtn,
  body.aurora .nav-menu .nav-links #navPushBtn{
    grid-column:1/-1;order:99;
    flex:1 1 100%!important;width:100%!important;max-width:100%;
    justify-content:flex-start;gap:12px;padding:0 16px}
  body.aurora .nav-menu #navPushBtn::after{
    flex:1 1 auto;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    font-size:11.5px;line-height:1.2}
  body.aurora .nav-menu #gsBtn,
  body.aurora .nav-menu .nav-links #gsBtn{
    grid-column:1/-1;order:98;flex:1 1 100%!important;width:100%!important}
}


/* La barre du haut devient opaque : le verre dépoli floutait tout ce qui
   défilait dessous, y compris derrière le logo et le titre. */
body.aurora .topbar{
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  background:#05070B!important}
body.aurora .topbar nav{background:transparent}


/* ==================================================================
   MESSAGERIE — quatrième passe : lisibilité d'usage et effets marquants
   Objectif : comprendre l'état d'une conversation sans lire, et sentir
   que chaque geste est pris en compte.
   ================================================================== */

/* --- Séparation nette entre l'action principale et le reste --- */
#amApp .am-side-head{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:16px 16px 12px}
#amApp .am-side-head b{
  font-family:'Bricolage Grotesque',sans-serif;font-size:17px;letter-spacing:-.01em;
  display:flex;align-items:center;gap:9px}
/* Le compteur global de non-lus, collé au titre */
#amApp .am-side-head b::after{
  content:attr(data-unread);
  font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:800;
  padding:3px 8px;border-radius:999px;color:#04161C;
  background:linear-gradient(135deg,#19E3C2,#5AD9FF);
  box-shadow:0 4px 14px -5px rgba(25,227,194,.9)}
#amApp .am-side-head b:not([data-unread])::after,
#amApp .am-side-head b[data-unread=""]::after,
#amApp .am-side-head b[data-unread="0"]::after{display:none}

/* --- Ligne de conversation : hiérarchie franche --- */
#amApp .am-trow{padding:12px 12px;gap:12px;align-items:center}
#amApp .am-tmain b{font-size:14.5px}
#amApp .am-tmain>span{font-size:12.5px}
/* Une conversation non lue se distingue par une barre latérale, pas seulement
   par le gras : c'est repérable en diagonale, sans lire. */
#amApp .am-trow:has(.am-cc){
  background:linear-gradient(90deg,rgba(25,227,194,.10),transparent 55%)}
#amApp .am-trow:has(.am-cc)::after{
  content:"";position:absolute;left:0;top:14%;bottom:14%;width:3px;border-radius:0 3px 3px 0;
  background:linear-gradient(180deg,#19E3C2,#9B6CFF);transform:none;opacity:1}

/* --- Horodatage discret aligné à droite de chaque ligne --- */
#amApp .am-trow .am-ttime{
  font-family:'JetBrains Mono',monospace;font-size:9.5px;color:var(--muted);
  margin-left:auto;flex:0 0 auto;align-self:flex-start;padding-top:2px}

/* --- Bulles : coins, densité, et lien vers l'action --- */
#amApp .am-msgs{padding:16px 14px 8px;gap:2px}
#amApp .msg{padding:11px 15px;font-size:14px;line-height:1.5;max-width:80%}
/* Le regroupement par auteur se lit à l'espacement, pas à un séparateur */
#amApp .msg+.msg{margin-top:2px}
#amApp .msg.me+.msg:not(.me),#amApp .msg:not(.me)+.msg.me{margin-top:12px}
/* Une pointe discrète relie la dernière bulle d'un groupe à son côté */
#amApp .msg:not(.me):last-child::before,
#amApp .msg.me:last-child::before{height:0}
#amApp .msg.me{color:#04161C}
#amApp .msg.me::selection,#amApp .msg.me *::selection{background:rgba(4,22,28,.25)}

/* --- Accusés de lecture lisibles d'un coup d'œil --- */
#amApp .msg.me .t::after{content:"";display:inline-block;width:0}
#amApp .am-msgs .msg.me:last-child{
  box-shadow:0 10px 30px -14px rgba(25,227,194,.95)}

/* --- Barre de saisie : elle se soulève à la frappe --- */
#amApp .am-foot{transition:box-shadow .2s}
#amApp .am-foot:focus-within{
  box-shadow:0 -16px 40px -30px rgba(25,227,194,.8)}
#amApp .am-foot:focus-within::before{
  background:linear-gradient(90deg,transparent,rgba(25,227,194,.5),transparent)}
/* Le bouton d'envoi ne s'active visuellement que s'il y a quelque chose à envoyer */
#amApp .am-send{opacity:.55;transition:opacity .18s,transform .14s cubic-bezier(.3,1.4,.5,1),filter .16s}
#amApp .am-foot:focus-within .am-send{opacity:1}

/* --- Le fil se met en avant pendant la frappe --- */
#amApp .am-conv:focus-within .am-msgs{filter:none}

/* --- Effets percutants, mais brefs --- */
/* Onde qui traverse la conversation ouverte, une seule fois */
#amApp.am-show-chat .am-conv-head::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(100deg,transparent 34%,rgba(90,217,255,.20) 50%,transparent 66%);
  transform:translateX(-110%);animation:amHeadSheen .8s ease-out .1s 1 forwards!important}
@keyframes amHeadSheen{to{transform:translateX(110%)}}
/* Le compteur de non-lus disparaît en s'envolant quand on ouvre la conversation */
#amApp .am-trow.active .am-cc{animation:amCcOut .3s ease forwards!important}
@keyframes amCcOut{to{opacity:0;transform:translateY(-8px) scale(.7)}}

/* --- Repères d'usage : ce qui est cliquable le montre --- */
#amApp .am-trow,#amApp .am-send,#amApp .am-attach,#amApp .am-back,
#amApp .am-avwrap{cursor:pointer}
#amApp .am-trow:focus-visible,#amApp .am-send:focus-visible{
  outline:2px solid rgba(90,217,255,.8);outline-offset:2px}

/* --- Écran vide : on propose au lieu de constater --- */
#amApp .am-empty{gap:10px;font-size:13.5px}
#amApp .am-empty::before{font-size:40px;opacity:.4}

@media(prefers-reduced-motion:reduce){
  #amApp.am-show-chat .am-conv-head::before,#amApp .am-trow.active .am-cc{animation:none!important}
}


/* ===== Rail : l'anneau de lecture n'est plus rogné =====
   Le rail défile en overflow-x, ce qui coupe aussi verticalement : l'ombre
   portée de 2 px autour de la pochette active débordait de la zone visible.
   On dégage de la place en haut et en bas, et l'anneau est doublé en interne
   pour rester complet même si un conteneur venait à le rogner. */
body.aurora .lrail{
  padding-top:8px;padding-bottom:16px;margin-top:-6px}
body.aurora .lrcard.playing{transform:translateY(-2px)}
body.aurora .lrcard.playing .lrcard-cv,
body.aurora .lhero.playing .lhero-cv{
  box-shadow:0 0 0 2px var(--accent2) inset,0 0 0 2px var(--accent2),
             0 16px 34px -18px rgba(25,227,194,.9)}
/* Le fondu de fin de rail ne doit pas manger la carte en cours de lecture */
body.aurora .lrail{
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 96%,transparent);
  mask-image:linear-gradient(90deg,#000 0,#000 96%,transparent)}


/* Bouton d'options sur grand écran : il vit dans la rangée du compte, aligné
   avec la loupe, et ne chevauche donc plus le nom du site. */
@media(min-width:761px){
  .nav-menu>#rightTabsBtn{
    order:-1;align-self:center;margin:0 6px 0 0;
    width:38px!important;height:34px!important;border-radius:12px!important}
  .topbar nav>#rightTabsBtn{display:none!important}
}





/* Ajout à une playlist depuis la page Streaming */
.lrcard-cv,.lhero-cv{position:relative}
.lrcard-pl{position:absolute;left:7px;bottom:7px;width:30px;height:30px;border-radius:50%;
  display:grid;place-items:center;font-size:16px;font-weight:700;line-height:1;cursor:pointer;
  color:#04161C;background:rgba(238,242,248,.92);border:0;
  box-shadow:0 6px 16px -8px #000,0 0 0 3px rgba(5,7,11,.5);transition:transform .16s,background .16s}.lrcard-dl{position:absolute;left:7px;top:7px;width:30px;height:30px;border-radius:50%;
  display:grid;place-items:center;font-size:16px;font-weight:700;line-height:1;cursor:pointer;
  color:#04161C;background:linear-gradient(135deg,#5eead4,#38bdf8);border:0;
  box-shadow:0 6px 16px -8px #000,0 0 0 3px rgba(5,7,11,.5);transition:transform .16s,background .16s}.lrcard-dl:active{transform:scale(.9)}
.lrcard-pl:active{transform:scale(.9)}
.lrcard-pl:hover{background:#fff}
.lhero-pl{left:10px;bottom:10px;width:38px;height:38px;font-size:19px}


/* Édition d'un titre : rappel que déposer un fichier remplace l'existant */
.fmt-replace{color:var(--muted);opacity:.85;font-size:10.5px;letter-spacing:.02em}


/* Bouton de partage sur les cartes de titre */
.tc-share{position:absolute;top:8px;right:8px;z-index:3;width:30px;height:30px;border-radius:50%;
  display:grid;place-items:center;font-size:15px;cursor:pointer;color:#EEF2F8;
  background:rgba(5,7,11,.55);border:1px solid rgba(255,255,255,.14);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:transform .16s,background .16s}
.tc-share:hover{background:rgba(25,227,194,.9);color:#04161C;border-color:transparent}
.tc-share:active{transform:scale(.9)}
.cover .heart+.tc-share{right:8px}
.cover .heart{left:8px;right:auto}


/* Les pastilles de format partageaient le coin haut-gauche avec le cœur : le
   second format se retrouvait caché derrière. On leur réserve la bande entre
   le cœur (à gauche) et le partage (à droite). */
.cover .fmt-tags{left:46px;right:46px;top:9px;flex-wrap:wrap;row-gap:4px;justify-content:flex-start}
.cover:has(.feat-ribbon) .fmt-tags{top:34px;left:9px}
.cover .heart{z-index:4}
.cover .tc-share{z-index:4}


/* Le rail déborde de 16 px de chaque côté et rattrape par un padding de 16 px :
   la première carte commence donc pile au bord de l'écran, et l'anneau de 2 px
   de la piste en cours se faisait rogner. On élargit le rattrapage. */
body.aurora .lrail{padding-left:20px;padding-right:20px}


/* L'anneau de la piste en cours était tracé à l'extérieur de la pochette : sur
   la première carte du rail, ce trait tombait hors de la zone de défilement et
   n'apparaissait qu'une fois la liste tirée. On le trace désormais à
   l'intérieur, il ne peut donc plus être rogné, quel que soit le défilement. */
body.aurora .lrcard.playing .lrcard-cv,
body.aurora .lhero.playing .lhero-cv{
  box-shadow:inset 0 0 0 2px var(--accent2),0 16px 34px -18px rgba(25,227,194,.55)}
body.aurora .lrcard.playing .lrcard-cv{border-radius:14px;overflow:hidden}


/* Vocaux : progression sur la forme d'onde et bouton de vitesse */
#amApp .dm-wv b{transition:background .12s,opacity .12s}
#amApp .dm-wv b.on{background:linear-gradient(180deg,#5AD9FF,#19E3C2);opacity:1}
#amApp .dm-rate{
  position:absolute;right:10px;bottom:10px;z-index:3;
  font-family:'JetBrains Mono',monospace;font-size:10.5px;font-weight:700;
  padding:4px 9px;border-radius:999px;cursor:pointer;
  color:var(--cyan);background:rgba(255,255,255,.06);border:1px solid rgba(25,227,194,.35)}
#amApp .dm-rate:active{transform:scale(.92)}
#amApp .dm-audcard{position:relative}


/* Import SoundCloud : note explicative dans la fenêtre d'édition */
.sc-edit-note{
  border:1px solid rgba(255,138,31,.35);background:rgba(255,138,31,.08);
  border-radius:12px;padding:11px 13px;margin:4px 0 14px;line-height:1.6}
