
:root{
  --void:#080B18;
  --void-rgb:8,11,24;
  --night:#111832;
  --night-rgb:17,24,50;
  --night-2:#182047;
  --night2-rgb:24,32,71;
  --panel-border:rgba(160,180,255,.14);
  --moonlight:#EEF3FF;
  --muted:#8E9BC4;
  --muted-dim:#66709A;
  --azul:#2B5AED;
  --azul-soft:rgba(43,90,237,.16);
  --celeste:#3BA7E0;
  --celeste-soft:rgba(59,167,224,.16);
  --frost:#C9CFFF;
  --frost-soft:rgba(201,207,255,.14);
  --danger:#F05C72;
  --success:#4ED18B;
  --display:'Fraunces',serif;
  --body-font:'Manrope',sans-serif;
  --mono:'JetBrains Mono',monospace;
  --maxw:1120px;
}

*{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  background:var(--void);
  color:var(--moonlight);
  font-family:var(--body-font);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

body.menu-open{
  overflow:hidden;
}

img,
svg{
  max-width:100%;
  display:block;
}

a{
  color:inherit;
}

button,
input,
textarea,
select{
  font:inherit;
}

button{
  -webkit-tap-highlight-color:transparent;
}

::selection{
  background:var(--azul);
  color:#fff;
}

.wrap{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 24px;
}

.stars{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(1.5px 1.5px at 20% 30%,rgba(255,255,255,.9),transparent),
    radial-gradient(1.5px 1.5px at 68% 12%,rgba(255,255,255,.7),transparent),
    radial-gradient(1px 1px at 85% 55%,rgba(255,255,255,.8),transparent);
  background-size:600px 600px;
  opacity:.6;
  animation:drift 90s linear infinite;
}

@keyframes drift{
  from{
    background-position:0 0;
  }

  to{
    background-position:-600px 300px;
  }
}

/* =========================
   DECORACIÓN POR TEMPORADA
========================= */
/*
  Sistema genérico de "temporada": el <body> lleva un atributo
  data-temporada="primavera" (ver más abajo, antes de </body>).
  El HTML de la decoración (.temporada-banner, .temporada-decor)
  no cambia entre temporadas — para sumar una nueva (verano,
  halloween, etc.) solo hay que agregar un bloque
  body[data-temporada="nombre"]{...} con sus propios colores e
  imágenes en assets/, y cambiar el valor del atributo.
  Sin atributo (o temporada desconocida), todo queda oculto y
  el sitio se ve exactamente como antes.
*/

body[data-temporada="primavera"]{
  /* Fondo: de noche azulada a noche cálida "ciruela/sakura". */
  --void:#170F14;
  --void-rgb:23,15,20;
  --night:#271923;
  --night-rgb:39,25,35;
  --night-2:#382337;
  --night2-rgb:56,35,55;
  --panel-border:rgba(255,182,214,.20);

  /* Acentos: de azul/celeste a rosa sakura + dorado primaveral.
     Se eligen distintos del verde de --success y del rojo de
     --danger para que ningún estado se confunda con el acento. */
  --azul:#FF6FA0;
  --azul-soft:rgba(255,111,160,.16);
  --celeste:#FFC46B;
  --celeste-soft:rgba(255,196,107,.16);
  --frost:#FFD9E8;
  --frost-soft:rgba(255,217,232,.14);
  --spring-leaf:#9CCB82;
  --spring-leaf-soft:rgba(156,203,130,.12);

  /* Texto secundario: de gris-azulado a gris-malva, para que no
     choque con el nuevo fondo cálido. El texto principal
     (--moonlight) casi no se toca para no arriesgar contraste. */
  --moonlight:#FBEFF3;
  --muted:#CDA8BE;
  --muted-dim:#9C7690;
}

.temporada-banner{
  display:none;
}

body[data-temporada] .temporada-banner{
  display:flex;
  justify-content:center;
  padding:14px 20px;
  background:linear-gradient(180deg,var(--azul-soft),transparent);
  border-bottom:1px solid var(--panel-border);
  position:relative;
  z-index:1;
}

.temporada-banner img{
  max-width:340px;
  width:100%;
  height:auto;
  border-radius:14px;
  box-shadow:0 8px 30px rgba(0,0,0,.35);
}

.temporada-decor{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
}

.decor-corner{
  position:absolute;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  pointer-events:none;
  user-select:none;
}

.decor-corner--tr{
  top:-10px;
  right:-18px;
  width:300px;
  height:190px;
  opacity:.20;
  background-image:url('assets/decor-primavera-tr.png');
  filter:saturate(.82) blur(.15px);
}

.decor-corner--bl{
  bottom:-22px;
  left:-48px;
  width:145px;
  height:120px;
  opacity:.075;
  background-image:url('assets/decor-primavera-bl.png');
  filter:saturate(.78) blur(.25px);
}

/* Pequeños símbolos de temporada: sustituyen el efecto de "pegatina" de
   las decoraciones grandes y acompañan al contenido sin taparlo. */
.season-symbols{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:16px;
  margin-bottom:12px;
  color:var(--celeste);
  font-family:Georgia,serif;
  font-size:.9rem;
  letter-spacing:.16em;
  opacity:.9;
}

.season-symbols span:nth-child(2){
  color:#F4A8C5;
  font-size:1rem;
}

.season-symbols span:nth-child(3){
  color:#FFD9E8;
}

@media(max-width:640px){
  .decor-corner--tr{
    top:0;
    right:-32px;
    width:190px;
    height:125px;
    opacity:.16;
  }

  .decor-corner--bl{
    bottom:-18px;
    left:-52px;
    width:105px;
    height:90px;
    opacity:.06;
  }

  .season-symbols{
    gap:12px;
    margin-bottom:10px;
    font-size:.78rem;
  }
}

/* =========================
   NAVEGACIÓN
========================= */

header.nav{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(var(--void-rgb),.92);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--panel-border);
}

.nav-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:16px 24px;
  max-width:var(--maxw);
  margin:0 auto;
}

.brand{
  display:flex;
  align-items:center;
  gap:10px;
  font-family:var(--display);
  font-weight:600;
  font-size:1.15rem;
  text-decoration:none;
  white-space:nowrap;
}

.brand img{
  width:30px;
  height:30px;
  border-radius:50%;
  box-shadow:0 0 14px rgba(59,167,224,.55);
}

nav.links{
  display:flex;
  align-items:center;
  gap:24px;
}

nav.links a{
  color:var(--muted);
  font-size:.92rem;
  font-weight:600;
  text-decoration:none;
  transition:color .2s ease;
}

nav.links a:hover{
  color:var(--moonlight);
}

.nav-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:9px 16px;
  border-radius:999px;
  background:var(--celeste);
  color:#06111f !important;
  font-weight:700;
  font-size:.88rem;
  text-decoration:none;
  border:none;
  cursor:pointer;
}

.btn-discord{
  background:#5865F2 !important;
  color:#fff !important;
}

.btn-invite{
  background:linear-gradient(135deg,var(--azul),var(--celeste)) !important;
  color:#fff !important;
}

.menu-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  padding:0;
  background:transparent;
  border:1px solid var(--panel-border);
  color:var(--moonlight);
  border-radius:10px;
  font-size:1.2rem;
  cursor:pointer;
}

/* =========================
   HERO
========================= */

.hero{
  position:relative;
  z-index:1;
  padding:96px 24px 88px;
  overflow:hidden;
}

.hero-inner{
  position:relative;
  z-index:1;
  max-width:var(--maxw);
  margin:0 auto;
  text-align:center;
}

.moon-hero{
  width:180px;
  height:180px;
  margin:0 auto 32px;
  border-radius:50%;
  filter:drop-shadow(0 0 40px rgba(59,167,224,.55));
}

.eyebrow{
  margin-bottom:18px;
  color:var(--celeste);
  font-family:var(--mono);
  font-size:.78rem;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.hero h1{
  position:relative;
  max-width:680px;
  margin:0 auto 20px;
  font-family:var(--display);
  font-style:italic;
  font-weight:500;
  font-size:clamp(2.1rem,5.2vw,3.4rem);
  line-height:1.15;
  background:linear-gradient(180deg,#FFF9FB 0%,#FFD5E5 58%,#FFC46B 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.hero p.lede{
  max-width:600px;
  margin:0 auto 40px;
  color:var(--muted);
  font-size:clamp(1.05rem,2vw,1.3rem);
}

.hero-ctas{
  display:flex;
  justify-content:center;
  gap:16px;
  flex-wrap:wrap;
}

.btn-primary,
.btn-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 26px;
  border-radius:999px;
  font-weight:700;
  text-decoration:none;
}

.btn-primary{
  background:linear-gradient(135deg,var(--azul),var(--celeste));
  color:#fff;
  box-shadow:0 10px 30px -8px rgba(43,90,237,.6);
}

.btn-secondary{
  background:rgba(255,255,255,.04);
  border:1px solid var(--panel-border);
  color:var(--moonlight);
}

.hero-stats{
  display:flex;
  justify-content:center;
  gap:48px;
  margin-top:72px;
  flex-wrap:wrap;
}

.hero-stat .n{
  font-family:var(--display);
  font-size:2.1rem;
  font-weight:600;
}

.hero-stat .l{
  margin-top:4px;
  color:var(--muted-dim);
  font-size:.82rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* =========================
   SECCIONES
========================= */

section{
  position:relative;
  z-index:1;
  max-width:var(--maxw);
  margin:0 auto;
  padding:90px 24px;
}

.section-head{
  max-width:640px;
  margin:0 auto 56px;
  text-align:center;
}

.section-head h2{
  margin:0 0 16px;
  font-family:var(--display);
  font-weight:500;
  font-size:clamp(2rem,4vw,2.7rem);
}

.section-head p{
  margin:0;
  color:var(--muted);
  font-size:1.05rem;
}

/* =========================
   PLANES (GRATIS VS PLATINUM)
========================= */

.planes-table-wrap{
  max-width:820px;
  margin:0 auto;
  padding:0 24px;
  overflow-x:auto;
}

.planes-table{
  width:100%;
  border-collapse:collapse;
  background:rgba(255,255,255,.02);
  border:1px solid var(--panel-border);
  border-radius:16px;
  overflow:hidden;
}

.planes-table th,
.planes-table td{
  padding:16px 18px;
  text-align:left;
  border-bottom:1px solid var(--panel-border);
  white-space:nowrap;
}

.planes-table tr:last-child td{
  border-bottom:none;
}

.planes-table thead th{
  color:var(--muted-dim);
  font-size:.78rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  background:rgba(255,255,255,.03);
}

.planes-table thead th:nth-child(2),
.planes-table thead th:nth-child(3),
.planes-table td:nth-child(2),
.planes-table td:nth-child(3){
  text-align:center;
  white-space:normal;
}

.planes-table tbody td:first-child{
  color:var(--moonlight);
  white-space:normal;
}

.planes-table thead th:nth-child(3),
.planes-table tbody td:nth-child(3){
  color:var(--celeste);
  font-weight:700;
  background:rgba(120,190,255,.05);
}

.planes-cta{
  display:flex;
  justify-content:center;
  margin-top:36px;
}

/* =========================
   PANEL WEB
========================= */

.dashboard-container{
  padding:32px;
  margin-bottom:60px;
  background:linear-gradient(180deg,var(--night),var(--night-2));
  border:1px solid var(--panel-border);
  border-radius:24px;
}

.login-prompt{
  padding:40px 20px;
  text-align:center;
}

.login-prompt h3{
  margin:0 0 10px;
  font-family:var(--display);
  font-size:1.5rem;
}

.login-prompt p{
  max-width:500px;
  margin:0 auto 20px;
  color:var(--muted);
}

.dashboard-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
  padding-bottom:20px;
  margin-bottom:28px;
  border-bottom:1px solid var(--panel-border);
}

.dashboard-user{
  display:flex;
  align-items:center;
  gap:12px;
}

.dashboard-user-avatar{
  width:42px;
  height:42px;
  border-radius:50%;
  object-fit:cover;
  background:var(--void);
  border:1px solid var(--panel-border);
}

.dashboard-user-name{
  font-size:.9rem;
  font-weight:700;
}

.dashboard-user-status{
  color:var(--celeste);
  font-size:.78rem;
}

.dashboard-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

.guild-selector{
  width:100%;
  min-width:250px;
  max-width:340px;
  padding:12px 16px;
  background:var(--void);
  border:1px solid var(--panel-border);
  border-radius:10px;
  color:var(--moonlight);
  font-size:.95rem;
  outline:none;
}

.guild-selector:focus{
  border-color:var(--celeste);
}

.logout-btn{
  padding:9px 14px;
  background:transparent;
  color:var(--muted);
  border:1px solid var(--panel-border);
  border-radius:8px;
  font-weight:700;
  cursor:pointer;
}

.logout-btn:hover{
  color:var(--moonlight);
  border-color:var(--muted);
}

.config-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:20px;
}

.config-card{
  padding:20px;
  background:rgba(var(--void-rgb),.5);
  border:1px solid var(--panel-border);
  border-radius:16px;
}

.config-card.full-width{
  grid-column:1 / -1;
}

.config-card h3{
  margin:0 0 12px;
  font-family:var(--display);
  font-size:1.15rem;
}

.config-card label{
  display:block;
  margin-bottom:6px;
  color:var(--muted);
  font-size:.82rem;
  font-weight:600;
}

.config-card input[type="text"],
.config-card input[type="number"],
.config-card select,
.config-card textarea{
  width:100%;
  padding:10px 14px;
  margin-bottom:16px;
  background:var(--void);
  border:1px solid var(--panel-border);
  border-radius:8px;
  color:var(--moonlight);
  outline:none;
}

.config-card input:focus,
.config-card select:focus,
.config-card textarea:focus{
  border-color:var(--celeste);
}

.config-card textarea{
  min-height:100px;
  resize:vertical;
}

.config-save-btn{
  padding:10px 18px;
  background:var(--azul);
  color:#fff;
  border:none;
  border-radius:8px;
  font-weight:700;
  cursor:pointer;
  transition:transform .15s ease,background .2s ease;
}

.config-save-btn:hover{
  background:var(--celeste);
  color:#06111f;
}

.config-save-btn:active{
  transform:scale(.97);
}

.config-save-btn:disabled{
  opacity:.6;
  cursor:not-allowed;
}

.config-help{
  margin:-8px 0 14px;
  color:var(--muted-dim);
  font-size:.78rem;
}

/* =========================
   EDITOR DE CATEGORÍAS/NIVELES
========================= */

.categoria-card{
  padding:14px;
  margin-bottom:14px;
  background:var(--void);
  border:1px solid var(--panel-border);
  border-radius:12px;
}

.categoria-head{
  display:flex;
  gap:10px;
  align-items:center;
  margin-bottom:10px;
}

.categoria-nombre{
  flex:1;
  padding:8px 12px;
  background:rgba(var(--void-rgb),.5);
  border:1px solid var(--panel-border);
  border-radius:8px;
  color:var(--moonlight);
  outline:none;
}

.categoria-nombre:focus{
  border-color:var(--celeste);
}

.categoria-del-btn,
.nivel-del-btn{
  padding:8px 12px;
  background:transparent;
  border:1px solid var(--panel-border);
  border-radius:8px;
  color:var(--muted);
  font-size:.78rem;
  font-weight:600;
  cursor:pointer;
  white-space:nowrap;
}

.categoria-del-btn:hover,
.nivel-del-btn:hover{
  border-color:#e5484d;
  color:#e5484d;
}

.niveles-list{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.nivel-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}

.nivel-badge{
  padding:6px 10px;
  background:rgba(var(--void-rgb),.5);
  border-radius:6px;
  color:var(--muted);
  font-size:.75rem;
  font-weight:700;
  white-space:nowrap;
}

.nivel-row select,
.nivel-row input[type="text"],
.nivel-row input[type="number"]{
  padding:8px 10px;
  background:rgba(var(--void-rgb),.5);
  border:1px solid var(--panel-border);
  border-radius:8px;
  color:var(--moonlight);
  outline:none;
}

.nivel-row select{
  flex:0 0 auto;
}

.nivel-row input[type="number"]{
  width:90px;
}

.nivel-row input[type="text"]{
  flex:1;
  min-width:140px;
}

.nivel-row select:focus,
.nivel-row input:focus{
  border-color:var(--celeste);
}

.nivel-add-btn,
.categoria-add-btn{
  padding:8px 14px;
  background:transparent;
  border:1px dashed var(--panel-border);
  border-radius:8px;
  color:var(--celeste);
  font-weight:700;
  font-size:.82rem;
  cursor:pointer;
}

.nivel-add-btn:hover,
.categoria-add-btn:hover{
  border-color:var(--celeste);
  background:rgba(120,190,255,.08);
}

.nivel-add-btn:disabled,
.categoria-add-btn:disabled{
  opacity:.5;
  cursor:not-allowed;
}

.categoria-add-btn{
  margin-bottom:8px;
}

/* =========================
   VISTA PREVIA ESTILO DISCORD
========================= */

.discord-preview-box{
  padding:14px 16px;
  margin-bottom:14px;
  background:#313338;
  border:1px solid var(--panel-border);
  border-radius:10px;
  color:#dbdee1;
  font-family:"gg sans",Segoe UI,Helvetica,Arial,sans-serif;
  font-size:.9rem;
  line-height:1.45;
  white-space:pre-wrap;
  word-break:break-word;
}

.discord-mention{
  padding:0 2px;
  background:rgba(88,101,242,.3);
  color:#c9cdfb;
  border-radius:3px;
  font-weight:500;
  white-space:nowrap;
}

.registro-channel-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
  margin-top:10px;
}

.registro-channel-item{
  padding:12px;
  background:rgba(255,255,255,.025);
  border:1px solid var(--panel-border);
  border-radius:12px;
}

.registro-channel-item label{
  margin-bottom:7px;
}

.registro-status{
  display:flex;
  align-items:center;
  gap:8px;
  margin:4px 0 16px;
  color:var(--muted);
  font-size:.86rem;
}

.registro-status-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:#6b7280;
}

.registro-status-dot.active{
  background:#35d07f;
  box-shadow:0 0 12px rgba(53,208,127,.55);
}

.parametros-box{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:8px 0 16px;
}

.parametro-chip{
  padding:5px 9px;
  background:rgba(255,255,255,.05);
  border:1px solid var(--panel-border);
  border-radius:999px;
  color:var(--muted);
  font-family:monospace;
  font-size:.78rem;
}

/* =========================
   MENSAJES DEL PANEL
========================= */

.panel-message{
  display:none;
  align-items:center;
  gap:10px;
  padding:12px 16px;
  margin-bottom:20px;
  border-radius:10px;
  font-size:.88rem;
}

.panel-message.show{
  display:flex;
}

.panel-message.success{
  background:rgba(78,209,139,.12);
  border:1px solid rgba(78,209,139,.3);
  color:#8EF0B9;
}

.panel-message.error{
  background:rgba(240,92,114,.12);
  border:1px solid rgba(240,92,114,.3);
  color:#FF9CAA;
}

.panel-message.info{
  background:rgba(59,167,224,.12);
  border:1px solid rgba(59,167,224,.3);
  color:#8DD7FF;
}

.empty-guilds{
  padding:28px;
  text-align:center;
  color:var(--muted);
  background:rgba(var(--void-rgb),.4);
  border:1px dashed var(--panel-border);
  border-radius:12px;
}

/* =========================
   SWITCHES
========================= */

.switch-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}

.switch-info{
  flex:1;
}

.switch-title{
  display:block;
  margin-bottom:3px;
  color:var(--moonlight);
  font-size:.92rem;
  font-weight:700;
}

.switch-description{
  color:var(--muted-dim);
  font-size:.78rem;
}

.switch{
  position:relative;
  width:46px;
  height:25px;
  flex-shrink:0;
}

.switch input{
  width:0;
  height:0;
  opacity:0;
}

.slider{
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.12);
  border:1px solid var(--panel-border);
  border-radius:999px;
  cursor:pointer;
  transition:.2s ease;
}

.slider::before{
  content:'';
  position:absolute;
  width:17px;
  height:17px;
  left:3px;
  top:3px;
  border-radius:50%;
  background:var(--moonlight);
  transition:.2s ease;
}

.switch input:checked + .slider{
  background:var(--azul);
  border-color:var(--azul);
}

.switch input:checked + .slider::before{
  transform:translateX(20px);
}

/* =========================
   COMANDOS
========================= */

.commands-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:18px;
}

.command-card{
  padding:22px;
  background:linear-gradient(
    145deg,
    rgba(var(--night2-rgb),.75),
    rgba(var(--void-rgb),.7)
  );
  border:1px solid var(--panel-border);
  border-radius:16px;
}

.command-card h3{
  margin:0 0 8px;
  font-family:var(--display);
  font-size:1.15rem;
}

.command-card p{
  margin:0 0 16px;
  color:var(--muted);
  font-size:.88rem;
}

.command-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.command{
  padding:6px 10px;
  background:var(--azul-soft);
  border:1px solid rgba(43,90,237,.25);
  border-radius:7px;
  color:#B8C9FF;
  font-family:var(--mono);
  font-size:.73rem;
}


/* Configuración UX: separar títulos y descripciones para evitar que el texto quede pegado. */
.setting-block-heading > div {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.setting-block-heading strong {
  display: block;
  line-height: 1.25;
}
.setting-block-heading span {
  display: block;
  line-height: 1.5;
  color: var(--muted);
}
.moderation-guide {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 18px 0 22px;
}
.moderation-guide > div {
  display: grid;
  grid-template-columns: 30px 1fr;
  column-gap: 9px;
  align-items: center;
  padding: 12px 13px;
  border: 1px solid rgba(255,182,214,.11);
  border-radius: 13px;
  background: rgba(255,255,255,.018);
}
.moderation-guide > div > span {
  grid-row: 1 / span 2;
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(255,120,168,.10);
  color: #ffd0df;
  font-weight: 700;
}
.moderation-guide strong { display:block; line-height:1.25; }
.moderation-guide small { display:block; margin-top:2px; color:var(--muted); line-height:1.35; }
.role-manager-row { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:10px; }
.role-manager-row select { flex:1 1 220px; min-width:0; }
.role-manager-list { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
@media (max-width: 640px) {
  .moderation-guide { grid-template-columns: 1fr; }
  .setting-block-heading > div { gap: 4px; }
  .role-manager-row { align-items:stretch; }
  .role-manager-row .categoria-add-btn { width:100%; }
}

/* =========================
   FEATURES
========================= */

.features-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:20px;
}

.feature-card{
  padding:26px;
  background:rgba(var(--night-rgb),.65);
  border:1px solid var(--panel-border);
  border-radius:18px;
  transition:transform .2s ease,border-color .2s ease;
}

.feature-card:hover{
  transform:translateY(-3px);
  border-color:rgba(59,167,224,.45);
}

.feature-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  margin-bottom:18px;
  background:var(--celeste-soft);
  border-radius:14px;
  font-size:1.35rem;
}

.feature-icon svg{
  width:29px;
  height:29px;
  display:block;
  overflow:visible;
}

.feature-icon--appeals{
  background:linear-gradient(135deg,rgba(255,111,160,.14),rgba(255,196,107,.12));
  border:1px solid rgba(255,182,214,.14);
}

.feature-icon--appeals svg{
  stroke:#FFD9E8;
  filter:drop-shadow(0 0 8px rgba(255,182,214,.22));
}

.feature-card:hover .feature-icon--appeals svg{
  filter:drop-shadow(0 0 12px rgba(255,182,214,.38));
}

.feature-card h3{
  margin:0 0 9px;
  font-family:var(--display);
  font-size:1.2rem;
}

.feature-card p{
  margin:0;
  color:var(--muted);
  font-size:.88rem;
}

/* =========================
   PRIMEROS PASOS
========================= */

.steps{
  display:grid;
  gap:16px;
  max-width:760px;
  margin:0 auto;
}

.step{
  display:flex;
  align-items:flex-start;
  gap:20px;
  padding:22px;
  background:rgba(var(--night-rgb),.65);
  border:1px solid var(--panel-border);
  border-radius:16px;
}

.step-number{
  display:flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  flex-shrink:0;
  border-radius:50%;
  background:linear-gradient(
    135deg,
    var(--azul),
    var(--celeste)
  );
  color:#fff;
  font-family:var(--display);
  font-weight:600;
}

.step-content h3{
  margin:0 0 6px;
  font-size:1rem;
}

.step-content p{
  margin:0;
  color:var(--muted);
  font-size:.88rem;
}

/* =========================
   FOOTER
========================= */

footer{
  position:relative;
  z-index:1;
  padding:45px 24px;
  border-top:1px solid var(--panel-border);
  text-align:center;
}

.footer-brand{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-bottom:12px;
  font-family:var(--display);
  font-size:1.2rem;
}

.footer-brand img{
  width:30px;
  height:30px;
  border-radius:50%;
}

footer p{
  margin:0;
  color:var(--muted-dim);
  font-size:.82rem;
}

/* =========================
   LOADING
========================= */

.loading{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:30px;
  color:var(--muted);
}

.loading-spinner{
  width:20px;
  height:20px;
  border:2px solid rgba(255,255,255,.12);
  border-top-color:var(--celeste);
  border-radius:50%;
  animation:spin .8s linear infinite;
}

@keyframes spin{
  to{
    transform:rotate(360deg);
  }
}

/* =========================
   MOBILE
========================= */

@media(max-width:800px){
  .nav-inner{
    position:relative;
  }

  .menu-toggle{
    display:flex;
  }

  nav.links{
    position:absolute;
    top:100%;
    left:0;
    right:0;
    display:none;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:12px;
    background:rgba(var(--void-rgb),.98);
    border-bottom:1px solid var(--panel-border);
    box-shadow:0 20px 40px rgba(0,0,0,.45);
  }

  nav.links.open{
    display:flex;
  }

  nav.links a{
    display:block;
    padding:13px 14px;
    border-radius:9px;
    color:var(--moonlight);
  }

  nav.links a:hover{
    background:rgba(255,255,255,.05);
  }

  .nav-cta{
    width:100%;
    margin-top:6px;
  }

  .hero{
    padding-top:70px;
  }

  .moon-hero{
    width:140px;
    height:140px;
  }

  .hero-stats{
    gap:26px;
  }

  section{
    padding:65px 20px;
  }

  .dashboard-container{
    padding:20px;
  }

  .dashboard-header{
    align-items:stretch;
  }

  .dashboard-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .guild-selector{
    max-width:none;
  }

  .logout-btn{
    width:100%;
  }

  .config-grid{
    grid-template-columns:1fr;
  }

  .step{
    gap:14px;
    padding:18px;
  }
}

@media(max-width:480px){
  .wrap,
  .nav-inner{
    padding-left:16px;
    padding-right:16px;
  }

  .hero{
    padding-left:16px;
    padding-right:16px;
  }

  section{
    padding-left:16px;
    padding-right:16px;
  }

  .hero-ctas{
    flex-direction:column;
  }

  .btn-primary,
  .btn-secondary{
    width:100%;
  }

  .hero-stats{
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .dashboard-container{
    padding:16px;
    border-radius:18px;
  }

  .config-card{
    padding:16px;
  }
}


/* =========================================================
   LUA SPRING 2026 — VISUAL REDESIGN
========================================================= */
:root{
  --spring-pink:#ff78a8;
  --spring-peach:#ffc477;
  --spring-lilac:#c8a7ff;
  --spring-cream:#fff2df;
  --glass:rgba(20,14,22,.72);
  --glass-strong:rgba(19,14,25,.9);
  --shadow-soft:0 24px 70px rgba(0,0,0,.35);
}

body[data-temporada="primavera"]{
  background:
    radial-gradient(circle at 50% 8%,rgba(255,120,168,.09),transparent 28rem),
    radial-gradient(circle at 10% 45%,rgba(200,167,255,.055),transparent 24rem),
    radial-gradient(circle at 90% 70%,rgba(255,196,119,.055),transparent 24rem),
    radial-gradient(circle at 58% 38%,rgba(156,203,130,.035),transparent 26rem),
    var(--void);
}

.stars{opacity:.38;mix-blend-mode:screen}

.temporada-banner{
  position:relative;
  padding:7px 16px;
  background:linear-gradient(90deg,rgba(255,120,168,.05),rgba(255,196,119,.08),rgba(200,167,255,.05));
}
.temporada-banner::before,.temporada-banner::after{
  content:'✿';position:absolute;top:50%;transform:translateY(-50%);font-size:1rem;color:var(--spring-pink);opacity:.75;
}
.temporada-banner::before{left:24px}.temporada-banner::after{right:24px;color:var(--spring-peach)}
.temporada-banner img{max-width:280px;opacity:.88;border-radius:999px;box-shadow:none}

header.nav{background:rgba(18,11,17,.78);backdrop-filter:blur(18px) saturate(130%);box-shadow:0 10px 35px rgba(0,0,0,.16)}
.nav-inner{padding-top:13px;padding-bottom:13px}
.brand{letter-spacing:.01em}.brand img{box-shadow:0 0 20px rgba(255,120,168,.28)}
nav.links a{position:relative}nav.links a:not(.nav-cta)::after{content:'';position:absolute;left:0;right:0;bottom:-5px;height:1px;background:linear-gradient(90deg,var(--spring-pink),var(--spring-peach));transform:scaleX(0);transform-origin:center;transition:transform .2s ease}nav.links a:not(.nav-cta):hover::after{transform:scaleX(1)}

.hero{padding:72px 24px 82px;min-height:calc(100vh - 120px);display:flex;align-items:center}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 28%,rgba(255,120,168,.10),transparent 42%),linear-gradient(180deg,transparent 70%,rgba(255,196,119,.035));pointer-events:none}
.hero-inner{max-width:1180px;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.88fr);gap:62px;align-items:center;text-align:left}
.moon-hero{width:118px;height:118px;margin:0 0 22px;filter:drop-shadow(0 0 35px rgba(255,120,168,.34))}
.season-symbols{justify-content:flex-start;gap:10px;margin-bottom:14px;color:var(--spring-peach)}
.eyebrow{margin-bottom:13px;color:#e8b5ca;font-size:.7rem;letter-spacing:.26em}
.hero h1{max-width:680px;margin:0 0 18px;font-size:clamp(2.55rem,5.5vw,4.55rem);line-height:1.03;letter-spacing:-.025em}
.hero p.lede{max-width:600px;margin:0 0 28px;font-size:1rem;color:#c9adb9;line-height:1.7}
.hero-ctas{justify-content:flex-start}
.btn-primary{box-shadow:0 14px 34px -12px rgba(255,120,168,.72)}
.btn-secondary{background:rgba(255,255,255,.025);transition:transform .2s ease,border-color .2s ease,background .2s ease}.btn-secondary:hover{transform:translateY(-2px);background:rgba(255,255,255,.055);border-color:rgba(255,182,214,.38)}

.hero-showcase{position:relative;z-index:2;padding:12px}
.hero-showcase::before{content:'';position:absolute;inset:6% -5% 0;background:radial-gradient(circle,rgba(255,120,168,.18),transparent 62%);filter:blur(12px);z-index:-1}
.showcase-window{position:relative;overflow:hidden;border:1px solid rgba(255,182,214,.23);border-radius:24px;background:linear-gradient(145deg,rgba(43,28,39,.96),rgba(13,16,20,.97));box-shadow:var(--shadow-soft),0 0 0 8px rgba(255,255,255,.012);transform:none;transition:transform .35s ease,box-shadow .35s ease}
.showcase-window::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 92% 8%,rgba(156,203,130,.11),transparent 28%),radial-gradient(circle at 12% 92%,rgba(255,120,168,.08),transparent 30%)}
.showcase-window::after{content:'❀';position:absolute;right:22px;bottom:12px;color:rgba(156,203,130,.28);font-size:1.5rem;pointer-events:none;transform:rotate(12deg)}
.showcase-window:hover{transform:translateY(-4px);box-shadow:0 28px 78px rgba(0,0,0,.4),0 0 0 8px rgba(255,255,255,.012)}
.showcase-topbar{height:42px;display:flex;align-items:center;gap:6px;padding:0 16px;border-bottom:1px solid rgba(255,255,255,.07);background:linear-gradient(90deg,rgba(255,255,255,.025),rgba(156,203,130,.035))}.showcase-topbar em{margin-left:auto;color:rgba(156,203,130,.72);font-style:normal;font-size:.8rem}
.showcase-topbar span{width:6px;height:6px;border-radius:50%;background:#77717a}.showcase-topbar small{margin-left:10px;color:#827782;font:600 .58rem var(--mono);letter-spacing:.16em}
.showcase-body{display:grid;grid-template-columns:120px 1fr;min-height:330px}
.showcase-sidebar{padding:18px 12px;border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;gap:7px;color:#9c8e9a;font-size:.68rem;background:linear-gradient(180deg,rgba(156,203,130,.035),transparent 45%)}
.showcase-sidebar span,.showcase-sidebar b{padding:8px 9px;border-radius:8px;font-weight:600}.showcase-sidebar b{background:linear-gradient(90deg,rgba(255,120,168,.16),rgba(156,203,130,.05));color:#f4d8e2;border-left:2px solid var(--spring-leaf)}.showcase-side-logo{width:28px;height:28px;display:grid;place-items:center;border:1px solid rgba(255,182,214,.25);border-radius:9px;margin-bottom:10px;color:var(--spring-peach);background:rgba(255,255,255,.03)}
.showcase-main{padding:32px}.showcase-kicker{color:#877783;font:600 .62rem var(--mono);letter-spacing:.17em}.showcase-main h3{margin:8px 0 22px;font:500 clamp(1.5rem,3vw,2.1rem) var(--display);color:#fff3f6}.showcase-cards{display:grid;gap:10px}.showcase-cards>div{padding:15px 16px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(156,203,130,.025),rgba(255,255,255,.012))}.showcase-cards small{display:block;color:#857783;font-size:.68rem}.showcase-cards strong{display:block;margin-top:2px;font:600 1.25rem var(--display)}.showcase-status{margin-top:18px;color:#b6a3af;font-size:.72rem}.showcase-status i{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#4ed18b;box-shadow:0 0 10px rgba(78,209,139,.7)}

.hero-stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin-top:6px;padding-top:24px;border-top:1px solid rgba(255,182,214,.1)}.hero-stat{text-align:center}.hero-stat .n{font-size:1.75rem;line-height:1}.hero-stat .l{margin-top:7px;font-size:.68rem}

.temporada-decor{inset:0}.decor-corner--tr{top:-2px;right:-4px;width:330px;height:250px;opacity:.23}.decor-corner--bl{bottom:-10px;left:-22px;width:230px;height:165px;opacity:.13}
.spring-branch{position:absolute;z-index:-1;width:390px;height:390px;background:url('/assets/decor-primavera.png') center/contain no-repeat;opacity:.13;filter:saturate(.9)}.spring-branch--left{left:-220px;bottom:-170px;transform:rotate(-8deg)}.spring-branch--right{right:-235px;top:16%;transform:scaleX(-1) rotate(8deg);opacity:.10}
.spring-petals{position:absolute;width:260px;height:180px;opacity:.35;background-image:radial-gradient(ellipse at 20% 30%,rgba(255,151,190,.9) 0 3px,transparent 4px),radial-gradient(ellipse at 42% 70%,rgba(255,204,134,.85) 0 2px,transparent 3px),radial-gradient(ellipse at 78% 45%,rgba(255,151,190,.8) 0 3px,transparent 4px),radial-gradient(ellipse at 60% 15%,rgba(214,182,255,.75) 0 2px,transparent 3px);filter:blur(.15px);animation:petalFloat 8s ease-in-out infinite alternate}.spring-petals--one{left:14%;top:16%}.spring-petals--two{right:8%;bottom:14%;transform:scale(1.2);animation-delay:-3s}
@keyframes petalFloat{from{transform:translate3d(0,0,0) rotate(0)}to{transform:translate3d(0,12px,0) rotate(3deg)}}

section{padding:82px 24px}section:nth-of-type(even)::before{content:'';position:absolute;inset:0 -100vw;background:linear-gradient(180deg,transparent,rgba(255,120,168,.018),transparent);z-index:-1}
.section-head{margin-bottom:44px}.section-head h2{font-size:clamp(2rem,4vw,3rem)}
.features-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.feature-card{position:relative;padding:22px;border-radius:20px;background:linear-gradient(145deg,rgba(47,28,41,.55),rgba(18,14,23,.68));box-shadow:0 14px 35px rgba(0,0,0,.12);transition:transform .22s ease,border-color .22s ease,background .22s ease}.feature-card:hover{transform:translateY(-5px);background:linear-gradient(145deg,rgba(58,32,49,.66),rgba(18,14,23,.76));border-color:rgba(255,182,214,.34)}
.feature-icon{background:linear-gradient(135deg,rgba(255,120,168,.14),rgba(255,196,107,.1));border:1px solid rgba(255,182,214,.1)}

.planes-table-wrap{overflow:hidden;border-radius:20px;border:1px solid var(--panel-border);background:rgba(255,255,255,.018);box-shadow:var(--shadow-soft)}.planes-table th,.planes-table td{padding:16px 18px}.planes-table tbody tr:hover{background:rgba(255,120,168,.035)}
.commands-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.command-card{padding:21px;border-radius:18px;background:rgba(255,255,255,.018)}.command{background:rgba(255,120,168,.08);border-color:rgba(255,120,168,.17);color:#ffd0df}
.steps{max-width:900px}.step{background:rgba(255,255,255,.018);border-radius:18px}.step-number{background:linear-gradient(135deg,var(--spring-pink),var(--spring-peach))}

/* Panel */
.dashboard-container{padding:24px;border-radius:26px;background:linear-gradient(145deg,rgba(38,24,37,.75),rgba(13,13,22,.88));border:1px solid rgba(255,182,214,.18);box-shadow:var(--shadow-soft)}
.dashboard-header{padding-bottom:18px}.dashboard-user-avatar{width:46px;height:46px}.dashboard-user-name{font-size:1rem}.dashboard-user-status{color:#a8929e}.guild-selector,.logout-btn{min-height:42px}.guild-selector{background:rgba(255,255,255,.04)}
.panel-quick-nav{display:flex;align-items:center;gap:7px;overflow-x:auto;padding:10px 2px 14px;margin-bottom:20px;scrollbar-width:none;border-bottom:1px solid rgba(255,255,255,.06)}.panel-quick-nav::-webkit-scrollbar{display:none}.panel-quick-label{flex:0 0 auto;margin-right:4px;color:#806f7b;font:600 .61rem var(--mono);letter-spacing:.14em;text-transform:uppercase}.panel-quick-nav button{flex:0 0 auto;padding:8px 11px;border:1px solid rgba(255,255,255,.07);border-radius:999px;background:rgba(255,255,255,.025);color:#b9a8b3;font-size:.72rem;cursor:pointer;transition:.2s ease}.panel-quick-nav button:hover{border-color:rgba(255,182,214,.25);background:rgba(255,120,168,.07);color:#fff}
.config-grid{gap:14px}.config-card{padding:21px;border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.028),rgba(255,255,255,.012));border-color:rgba(255,182,214,.13);scroll-margin-top:105px}.config-card h3{font-size:1.15rem}.config-save-btn{background:linear-gradient(135deg,rgba(255,120,168,.16),rgba(255,196,107,.1));border-color:rgba(255,182,214,.25);color:#ffe7ef}.config-save-btn:hover{background:linear-gradient(135deg,rgba(255,120,168,.24),rgba(255,196,107,.15))}
.config-help{line-height:1.55}.is-hidden{display:none!important}.mb-8{margin-bottom:8px}.mb-7{margin-bottom:7px}.mt-10{margin-top:10px}.mt-12{margin-top:12px}.mt-4{margin-top:4px}

footer{padding:60px 24px 40px;position:relative;overflow:hidden;background:linear-gradient(180deg,transparent,rgba(255,120,168,.025))}footer::before{content:'';position:absolute;left:50%;bottom:-160px;width:620px;height:280px;transform:translateX(-50%);background:url('/assets/decor-primavera.png') center/contain no-repeat;opacity:.10;pointer-events:none}.footer-brand,footer p{position:relative}

@media(max-width:900px){.hero-inner{grid-template-columns:1fr;gap:42px;text-align:center}.hero-showcase{max-width:700px;width:100%;margin:0 auto}.hero-ctas{justify-content:center}.hero-stats{grid-column:auto;grid-template-columns:repeat(5,minmax(0,1fr));border-top:none;padding-top:0}.features-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.commands-grid{grid-template-columns:1fr}}
@media(max-width:640px){.temporada-banner::before,.temporada-banner::after{display:none}.hero{padding-top:54px;min-height:auto}.hero-inner{text-align:center;gap:30px}.moon-hero{margin:0 auto 18px;width:108px;height:108px}.season-symbols{justify-content:center}.hero h1{font-size:clamp(2.2rem,12vw,3.1rem)}.hero p.lede{font-size:.93rem}.hero-ctas{flex-direction:column;gap:10px}.hero-ctas .btn-primary,.hero-ctas .btn-secondary{width:100%}.hero-stats{gap:24px 14px;display:grid;grid-template-columns:1fr 1fr}.hero-stat:last-child{grid-column:1/-1}.hero-stat .n{font-size:1.55rem}.hero-showcase{padding:0}.showcase-body{grid-template-columns:88px 1fr;min-height:270px}.showcase-sidebar{padding:12px 8px;font-size:.58rem}.showcase-sidebar span,.showcase-sidebar b{padding:7px 6px}.showcase-main{padding:22px 17px}.showcase-main h3{margin-bottom:16px}.features-grid{grid-template-columns:1fr}.feature-card{padding:20px}.decor-corner--tr{width:220px;height:150px;right:-42px;opacity:.14}.decor-corner--bl{width:150px;height:105px;left:-46px;opacity:.08}.spring-branch{width:250px;height:250px}.spring-branch--left{left:-170px;bottom:-120px}.spring-branch--right{right:-175px}.dashboard-container{padding:16px;border-radius:20px}.panel-quick-nav{margin-right:-2px}.config-card{padding:17px}.dashboard-header{gap:12px}.dashboard-actions{gap:8px}}

/* =========================================================
   LUA PANEL 2.0 — PRODUCT-STYLE WORKSPACE
   The existing form components remain intact; this layer only
   changes presentation and navigation.
========================================================= */

.dashboard-container{position:relative;}
.dashboard-shell{position:relative;}
.dashboard-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;margin-bottom:28px;border:1px solid rgba(255,182,214,.16);border-radius:20px;background:linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,111,160,.035));box-shadow:0 18px 55px rgba(0,0,0,.22);backdrop-filter:blur(18px)}
.dashboard-user{display:flex;align-items:center;gap:12px;min-width:0}
.dashboard-user-avatar{width:44px;height:44px;border-radius:14px;object-fit:cover;background:linear-gradient(135deg,var(--azul),var(--celeste));box-shadow:0 0 24px rgba(255,111,160,.2);flex:none}
.dashboard-user-name{font-weight:800;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-user-status{font-size:.76rem;color:var(--muted);display:flex;align-items:center;gap:6px;margin-top:2px}
.dashboard-user-status span{width:7px;height:7px;border-radius:50%;background:var(--success);box-shadow:0 0 10px rgba(78,209,139,.65)}
.logout-btn{border:1px solid var(--panel-border);background:rgba(255,255,255,.025);color:var(--moonlight);border-radius:12px;padding:10px 14px;cursor:pointer;transition:.2s ease}
.logout-btn:hover{border-color:rgba(255,111,160,.4);background:var(--azul-soft);transform:translateY(-1px)}
.dashboard-welcome{display:flex;align-items:end;justify-content:space-between;gap:28px;margin:0 2px 20px}
.dashboard-eyebrow{font-family:var(--mono);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--celeste);margin-bottom:7px}
.dashboard-welcome h3,.category-intro h3{font-family:var(--display);font-size:clamp(1.65rem,4vw,2.3rem);line-height:1.05;margin:0 0 8px;letter-spacing:-.035em}
.dashboard-welcome p,.category-intro p{color:var(--muted);max-width:650px;margin:0;font-size:.92rem}
.dashboard-count{min-width:145px;padding:14px 16px;border:1px solid var(--panel-border);border-radius:16px;background:rgba(255,255,255,.025);text-align:right}
.dashboard-count strong{display:block;font-family:var(--display);font-size:1.6rem;line-height:1}
.dashboard-count span{display:block;color:var(--muted);font-size:.68rem;margin-top:5px}
.server-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.server-card{appearance:none;width:100%;display:flex;align-items:center;gap:13px;text-align:left;color:var(--moonlight);border:1px solid var(--panel-border);border-radius:18px;padding:14px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));cursor:pointer;position:relative;overflow:hidden;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}
.server-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 0 0,rgba(255,111,160,.13),transparent 42%);opacity:0;transition:.2s ease}
.server-card:hover,.server-card:focus-visible{transform:translateY(-3px);border-color:rgba(255,111,160,.42);box-shadow:0 16px 34px rgba(0,0,0,.2);outline:none}
.server-card:hover::before,.server-card:focus-visible::before,.server-card.is-previous::before{opacity:1}
.server-card.is-suggested{border-color:rgba(255,196,107,.23)}
.server-card-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;flex:none;overflow:hidden;background:linear-gradient(135deg,rgba(255,111,160,.2),rgba(255,196,107,.18));border:1px solid rgba(255,255,255,.08);font-family:var(--display);font-size:1.35rem}
.server-card-icon img{width:100%;height:100%;object-fit:cover}
.server-card-body{min-width:0;display:flex;flex-direction:column;position:relative}
.server-card-body strong{font-size:.93rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.server-card-body small{color:var(--muted);font-size:.7rem;margin-top:3px}
.server-card-arrow{margin-left:auto;color:var(--celeste);font-size:1.15rem;position:relative;transition:transform .2s ease}
.server-card:hover .server-card-arrow{transform:translateX(3px)}

.server-workspace{margin-top:34px;padding-top:30px;border-top:1px solid rgba(255,255,255,.08)}
.workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}
.workspace-back{border:1px solid var(--panel-border);background:rgba(255,255,255,.025);color:var(--muted);padding:9px 12px;border-radius:12px;cursor:pointer;transition:.2s ease}
.workspace-back:hover{color:var(--moonlight);border-color:rgba(255,111,160,.35);background:var(--azul-soft)}
.workspace-server{display:flex;align-items:center;gap:10px;margin-left:auto}
.workspace-server-icon{width:40px;height:40px;border-radius:13px;overflow:hidden;display:grid;place-items:center;background:var(--azul-soft);font-family:var(--display)}
.workspace-server-icon img{width:100%;height:100%;object-fit:cover}
.workspace-server div{display:flex;flex-direction:column;text-align:right}
.workspace-server small{font-family:var(--mono);font-size:.57rem;letter-spacing:.14em;color:var(--muted-dim)}
.workspace-server strong{font-size:.83rem;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.category-intro{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px}
.category-hint{font-size:.7rem;color:var(--muted-dim);text-align:right}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.category-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;text-align:left;border:1px solid var(--panel-border);border-radius:18px;padding:16px;color:var(--moonlight);background:rgba(255,255,255,.025);cursor:pointer;transition:.2s ease;min-height:88px}
.category-card:hover,.category-card:focus-visible{transform:translateY(-2px);border-color:rgba(255,111,160,.42);background:linear-gradient(145deg,rgba(255,111,160,.08),rgba(255,255,255,.025));box-shadow:0 15px 30px rgba(0,0,0,.18);outline:none}
.category-icon{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:var(--azul-soft);color:var(--azul);font-size:1.05rem;border:1px solid rgba(255,111,160,.14)}
.category-card:nth-child(2) .category-icon,.category-card:nth-child(6) .category-icon{background:var(--celeste-soft);color:var(--celeste)}
.category-card:nth-child(3) .category-icon{background:rgba(176,125,255,.13);color:#C9A6FF}
.category-card:nth-child(4) .category-icon{background:rgba(91,181,255,.12);color:#8BCBFF}
.category-card:nth-child(5) .category-icon{background:rgba(255,169,210,.12);color:#FFB5D5}
.category-card span:nth-child(2){display:flex;flex-direction:column;min-width:0}
.category-card strong{font-size:.9rem}
.category-card small{color:var(--muted);font-size:.68rem;margin-top:3px}
.category-card>b{color:var(--muted-dim);font-size:1.1rem;font-weight:400}
.category-loading{display:flex;align-items:center;justify-content:center;gap:9px;color:var(--muted);font-size:.75rem;padding:18px 0}
.category-loading .loading-spinner{width:15px;height:15px;border-width:2px}
.category-grid[hidden],.category-intro[hidden]{display:none}
#configWorkspace[hidden]{display:none}
.config-detail-header{display:flex;align-items:flex-start;gap:18px;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.07)}
.config-detail-header>div{flex:1}
.config-detail-header h3{font-family:var(--display);font-size:1.8rem;line-height:1.05;margin:0 0 5px}
.config-detail-header p{color:var(--muted);font-size:.82rem;margin:0}
.config-grid--focused{margin-top:0}
.config-card{border-radius:20px!important;background:linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.018))!important;box-shadow:0 14px 36px rgba(0,0,0,.16)}
.config-card[hidden]{display:none!important}
.login-prompt{position:relative;overflow:hidden;text-align:center;padding:54px 28px;border:1px solid var(--panel-border);border-radius:24px;background:radial-gradient(circle at 50% 0,rgba(255,111,160,.12),transparent 40%),linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));box-shadow:0 20px 60px rgba(0,0,0,.2)}
.login-prompt::before{content:"☾";display:grid;place-items:center;width:64px;height:64px;margin:0 auto 18px;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid var(--panel-border);font-size:1.7rem;color:var(--celeste);box-shadow:0 0 40px rgba(255,196,107,.12)}
.login-prompt h3{font-family:var(--display);font-size:2rem;margin:0 0 8px}
.login-prompt p{max-width:540px;margin:0 auto 22px;color:var(--muted);font-size:.86rem}
.empty-guilds--large{text-align:center;padding:52px 28px!important}
.empty-guilds--large .empty-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 14px;border-radius:18px;background:var(--azul-soft);color:var(--azul);font-size:1.4rem}
.empty-guilds--large h3{font-family:var(--display);font-size:1.65rem;margin:0 0 6px}
.empty-guilds--large p{max-width:520px;margin:0 auto 20px;color:var(--muted)}

@media (max-width:900px){
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:650px){
  .dashboard-topbar{padding:11px 12px;border-radius:16px}
  .dashboard-user-avatar{width:38px;height:38px;border-radius:12px}
  .dashboard-user-name{font-size:.83rem}
  .dashboard-user-status{font-size:.65rem}
  .logout-btn{font-size:.68rem;padding:8px 10px}
  .dashboard-welcome{align-items:stretch;flex-direction:column;gap:12px}
  .dashboard-count{text-align:left;min-width:0}
  .server-grid,.category-grid{grid-template-columns:1fr}
  .server-workspace{margin-top:26px;padding-top:24px}
  .workspace-heading{align-items:flex-start;flex-direction:column}
  .workspace-server{margin-left:0;width:100%}
  .workspace-server div{text-align:left}
  .category-intro{flex-direction:column;align-items:flex-start;gap:6px}
  .category-hint{text-align:left}
  .config-detail-header{flex-direction:column;gap:12px}
  .config-detail-header .workspace-back{align-self:flex-start}
  .login-prompt{padding:42px 18px}
}

/* =========================================================
   LUA PANEL — NAVEGACIÓN Y NIVELES / MOBILE HARDENING
========================================================= */
html,body{max-width:100%;overflow-x:clip}
body{overscroll-behavior-x:none}
.temporada-decor,.stars,.hero-showcase,.showcase-window{max-width:100%}
.server-view{animation:panelEnter .28s ease both}
@keyframes panelEnter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.category-grid--workspace{margin-top:8px}
.server-ready-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid rgba(78,209,139,.16);border-radius:999px;background:rgba(78,209,139,.05);color:#a7d9bc;font-size:.68rem;white-space:nowrap}
.server-ready-pill span{width:7px;height:7px;border-radius:50%;background:var(--success);box-shadow:0 0 10px rgba(78,209,139,.6)}
.server-ready-pill.is-loading{color:var(--muted);border-color:var(--panel-border);background:rgba(255,255,255,.025)}
.server-ready-pill.is-loading span{background:var(--celeste);box-shadow:none;animation:pulseDot 1s infinite ease-in-out}
@keyframes pulseDot{50%{opacity:.3;transform:scale(.75)}}
.category-card:disabled{cursor:wait;opacity:.58;transform:none!important;box-shadow:none!important}
.category-card{min-height:104px}
.category-status{display:inline-flex;align-items:center;width:max-content;margin-top:7px;padding:3px 7px;border-radius:999px;background:rgba(255,255,255,.04);color:var(--muted-dim);font:600 .58rem var(--mono);letter-spacing:.03em}
.category-status--on{background:rgba(78,209,139,.08);color:#8dd9ad}
.category-status--premium{background:rgba(255,196,107,.09);color:#ffd28e}
.server-view-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:30px}
.category-intro--hero{padding:22px;border:1px solid rgba(255,182,214,.1);border-radius:22px;background:radial-gradient(circle at 0 0,rgba(255,111,160,.07),transparent 42%),rgba(255,255,255,.018);margin-bottom:14px}
.config-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:10px}
.config-card-heading h3{margin:0 0 5px}
.config-card-subtitle{max-width:650px;color:var(--muted);font-size:.8rem;margin:0}
.levels-status-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0 20px}
.status-badge{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.04);color:var(--muted);font:600 .62rem var(--mono)}
.status-badge i{width:7px;height:7px;border-radius:50%;background:var(--muted-dim)}
.status-badge--on{color:#9ae0b7;background:rgba(78,209,139,.07)}
.status-badge--on i{background:var(--success);box-shadow:0 0 8px rgba(78,209,139,.55)}
.config-help-inline{color:var(--muted-dim);font-size:.68rem}
.levels-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.levels-setting-block{padding:15px;border:1px solid rgba(255,255,255,.065);border-radius:16px;background:rgba(255,255,255,.018)}
.levels-setting-block--wide{grid-column:1/-1}
.levels-setting-block textarea,.levels-setting-block select{width:100%}
.setting-label-row{display:flex;align-items:center;justify-content:space-between;gap:14px}
.switch--small{transform:scale(.86);transform-origin:right center}
.levels-section-divider{height:1px;margin:24px 0;border-top:1px solid rgba(255,255,255,.065)}
.levels-editor-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.levels-editor-heading h4{margin:0 0 4px;font-size:.95rem}
.levels-editor-heading p{margin:0;color:var(--muted);font-size:.7rem}
.limit-pill{padding:5px 8px;border:1px solid var(--panel-border);border-radius:999px;color:var(--muted);font:600 .6rem var(--mono);white-space:nowrap}
.levels-repeatable-list{display:grid;gap:9px;margin-bottom:10px}
.levels-repeatable-row{padding:11px;border:1px solid rgba(255,255,255,.06);border-radius:14px;background:rgba(255,255,255,.018)}
.levels-row-main{display:grid;grid-template-columns:auto minmax(150px,1fr) minmax(110px,150px) auto;align-items:center;gap:9px}
.levels-row-index{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:rgba(255,111,160,.08);color:var(--spring-pink);font:600 .65rem var(--mono)}
.multiplier-field,.level-number-field{display:flex;align-items:center;gap:7px;margin:0}
.multiplier-field span,.level-number-field span{color:var(--muted-dim);font:600 .57rem var(--mono);text-transform:uppercase}
.multiplier-field input,.level-number-field input{width:100%;min-width:0}
.levels-remove-btn{width:32px;height:32px;border:1px solid rgba(240,92,114,.18);border-radius:10px;background:rgba(240,92,114,.05);color:#ef8c9d;cursor:pointer;font-size:1.1rem}
.levels-empty-row{padding:14px;border:1px dashed rgba(255,255,255,.09);border-radius:14px;color:var(--muted-dim);font-size:.7rem;text-align:center}
.levels-save-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:24px;padding:14px 16px;border:1px solid rgba(255,182,214,.11);border-radius:16px;background:linear-gradient(135deg,rgba(255,111,160,.055),rgba(255,255,255,.018))}
.levels-save-bar>div{display:flex;flex-direction:column;gap:2px}.levels-save-bar strong{font-size:.76rem}.levels-save-bar span{color:var(--muted-dim);font-size:.63rem}
@media(max-width:700px){
  .server-view-topbar{align-items:flex-start;flex-direction:column;gap:12px}
  .workspace-server{margin-left:0;width:100%}
  .workspace-server div{text-align:left}
  .category-intro--hero{padding:18px}
  .category-intro--hero .server-ready-pill{align-self:flex-start}
  .levels-settings-grid{grid-template-columns:1fr}
  .levels-setting-block--wide{grid-column:auto}
  .levels-row-main{grid-template-columns:auto 1fr auto}
  .levels-row-main select{grid-column:2/-1}
  .levels-row-main .multiplier-field,.levels-row-main .level-number-field{grid-column:2}
  .levels-save-bar{align-items:stretch;flex-direction:column}
  .levels-save-bar .config-save-btn{width:100%}
}
@media(max-width:480px){
  .dashboard-container{width:100%;min-width:0;overflow:hidden}
  .server-view,.dashboard-shell{min-width:0;width:100%}
  .category-card{min-height:96px}
  .category-card span:nth-child(2){min-width:0}
  .category-card strong,.category-card small{overflow-wrap:anywhere}
  .levels-row-main{grid-template-columns:1fr auto}
  .levels-row-index{display:none}
  .levels-row-main select,.levels-row-main .multiplier-field,.levels-row-main .level-number-field{grid-column:1}
  .levels-remove-btn{grid-column:2;grid-row:1}
}


/* =========================================================
   LUA — ACABADO VISUAL / DASHBOARD PRODUCTO
========================================================= */
body[data-temporada="primavera"]{
  background:
    radial-gradient(circle at 10% 8%,rgba(255,111,160,.065),transparent 28%),
    radial-gradient(circle at 88% 24%,rgba(255,196,107,.045),transparent 24%),
    linear-gradient(180deg,#170f14 0%,#130d12 58%,#100b10 100%);
}

.hero{isolation:isolate;overflow:hidden}
.hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:-2;
  background:
    radial-gradient(circle at 72% 20%,rgba(255,151,190,.09),transparent 23%),
    radial-gradient(circle at 22% 76%,rgba(255,196,107,.055),transparent 25%);
}
.hero::after{
  content:"";position:absolute;left:50%;bottom:-150px;width:min(900px,120vw);height:330px;
  transform:translateX(-50%);pointer-events:none;z-index:-1;
  background:radial-gradient(ellipse,rgba(255,111,160,.075),transparent 68%);
}

.temporada-banner{
  min-height:74px!important;align-items:center!important;padding:10px 20px!important;
  background:linear-gradient(180deg,rgba(255,111,160,.075),rgba(255,196,107,.025))!important;
}
.temporada-banner img{max-width:360px!important;border:1px solid rgba(255,182,214,.18);box-shadow:0 10px 36px rgba(0,0,0,.28)!important}

.dashboard-container{position:relative;overflow:hidden}
.dashboard-container::before{
  content:"";position:absolute;inset:-40% auto auto 55%;width:420px;height:420px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,111,160,.065),transparent 68%);pointer-events:none
}
.dashboard-shell{position:relative;z-index:1}

.dashboard-topbar{box-shadow:0 16px 42px rgba(0,0,0,.18)!important}
.dashboard-user-status span{animation:statusPulse 2.2s ease-in-out infinite}
@keyframes statusPulse{50%{opacity:.45;transform:scale(.78)}}

.server-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 13px}
.server-search{position:relative;display:flex;align-items:center;gap:9px;width:min(420px,100%);padding:0 13px;border:1px solid rgba(255,255,255,.075);border-radius:14px;background:rgba(255,255,255,.028);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}
.server-search:focus-within{border-color:rgba(255,111,160,.34);background:rgba(255,255,255,.04);box-shadow:0 0 0 4px rgba(255,111,160,.055)}
.server-search>span{color:var(--muted-dim);font-size:1.2rem;line-height:1}
.server-search input{width:100%;border:0;outline:0;background:transparent;color:var(--moonlight);padding:11px 0;font-size:.78rem}
.server-search input::placeholder{color:#796875}
.server-toolbar-hint{font:600 .61rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted-dim)}
.server-card-body small{display:flex;align-items:center;gap:5px}
.server-card-body small i{width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 8px rgba(78,209,139,.5)}
.server-search-empty{display:grid;justify-items:center;gap:4px;padding:30px 18px;border:1px dashed rgba(255,182,214,.15);border-radius:18px;background:rgba(255,255,255,.012);text-align:center}
.server-search-empty[hidden]{display:none}
.server-search-empty>span{font-size:1.5rem;color:var(--celeste)}
.server-search-empty strong{font-size:.86rem}
.server-search-empty small{color:var(--muted);font-size:.7rem}

.server-grid{position:relative}
.server-card{backdrop-filter:blur(10px)}
.server-card::after{content:"";position:absolute;right:-24px;bottom:-42px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,rgba(255,196,107,.075),transparent 68%);pointer-events:none}
.server-card:active{transform:translateY(-1px) scale(.995)}

.category-card{backdrop-filter:blur(10px);min-height:112px}
.category-card .category-icon{transition:transform .25s ease,box-shadow .25s ease}
.category-card:hover .category-icon{transform:scale(1.06) rotate(-2deg);box-shadow:0 8px 24px rgba(255,111,160,.12)}
.category-card strong{letter-spacing:-.015em}
.category-status{font-size:.55rem!important}

.config-detail-header{position:relative;overflow:hidden;padding:6px 0 20px}
.config-detail-header::after{content:"";position:absolute;right:0;bottom:0;width:180px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,182,214,.28))}
.config-detail-header h3{letter-spacing:-.035em}

.config-card{backdrop-filter:blur(12px)!important}
.config-card:hover{border-color:rgba(255,182,214,.25)!important}

@media(max-width:650px){
  .server-toolbar{align-items:stretch;flex-direction:column;gap:8px}
  .server-search{width:100%}
  .server-toolbar-hint{padding-left:2px}
  .server-card{padding:13px}
  .server-card-icon{width:44px;height:44px}
  .category-card{min-height:100px;padding:14px}
  .dashboard-container::before{display:none}
}

@media(prefers-reduced-motion:reduce){
  .dashboard-user-status span,.server-view,.spring-petals{animation:none!important}
  *{scroll-behavior:auto!important;transition-duration:.01ms!important}
}

/* =========================================================
   LUA SPRING 2026 — VISUAL PASS 2
   More structure, calmer hierarchy, stronger nature identity.
========================================================= */

body[data-temporada="primavera"] .hero-inner{
  grid-template-columns:minmax(0,1.04fr) minmax(390px,.96fr);
  grid-template-areas:
    "moon showcase"
    "symbols showcase"
    "eyebrow showcase"
    "title showcase"
    "lede showcase"
    "ctas showcase"
    "stats stats";
  column-gap:clamp(42px,5vw,76px);
  row-gap:0;
  align-items:center;
}
body[data-temporada="primavera"] .moon-hero{grid-area:moon;width:132px;height:132px;margin:0 0 10px;filter:drop-shadow(0 0 34px rgba(255,120,168,.34))}
body[data-temporada="primavera"] .season-symbols{grid-area:symbols;justify-content:flex-start;margin:0 0 7px}
body[data-temporada="primavera"] .eyebrow{grid-area:eyebrow;margin:0 0 13px;text-align:left}
body[data-temporada="primavera"] .hero h1{grid-area:title;margin:0 0 17px;text-align:left;max-width:650px}
body[data-temporada="primavera"] .hero p.lede{grid-area:lede;margin:0 0 25px;text-align:left;max-width:620px}
body[data-temporada="primavera"] .hero-ctas{grid-area:ctas;justify-content:flex-start;margin-bottom:6px}
body[data-temporada="primavera"] .hero-showcase{grid-area:showcase;align-self:center}
body[data-temporada="primavera"] .hero-stats{grid-area:stats}

body[data-temporada="primavera"] .season-symbols span{filter:drop-shadow(0 3px 12px rgba(255,120,168,.25))}
body[data-temporada="primavera"] .season-symbols span:nth-child(2),
body[data-temporada="primavera"] .season-symbols span:nth-child(4){color:var(--spring-leaf)}

body[data-temporada="primavera"] .hero h1{
  text-wrap:balance;
  font-size:clamp(2.55rem,4.7vw,4.2rem);
  line-height:1.04;
}
body[data-temporada="primavera"] .hero p.lede{font-size:1rem;line-height:1.75}
body[data-temporada="primavera"] .hero-ctas .btn-primary{padding-inline:22px}
body[data-temporada="primavera"] .hero-stats{
  width:100%;
  margin-top:42px;
  padding:22px 0 0;
  border-top:1px solid rgba(255,182,214,.11);
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
}
body[data-temporada="primavera"] .hero-stat{
  position:relative;
  padding:7px 10px;
}
body[data-temporada="primavera"] .hero-stat:not(:last-child)::after{
  content:"";position:absolute;right:0;top:15%;height:70%;width:1px;background:rgba(255,255,255,.055)
}
body[data-temporada="primavera"] .hero-stat .n{font-size:1.85rem;color:#fff4f7}
body[data-temporada="primavera"] .hero-stat .l{color:#a9899b;font-size:.62rem}

/* Nature-inspired frame: branches stay in the background, while the UI itself stays clean. */
body[data-temporada="primavera"] .showcase-window{
  border-color:rgba(255,182,214,.19);
  background:linear-gradient(145deg,rgba(45,27,40,.97),rgba(14,14,20,.98));
  box-shadow:0 30px 90px rgba(0,0,0,.34),0 0 0 1px rgba(156,203,130,.035);
}
body[data-temporada="primavera"] .showcase-sidebar b{
  background:linear-gradient(90deg,rgba(255,120,168,.15),rgba(156,203,130,.08));
}
body[data-temporada="primavera"] .showcase-cards>div:first-child{border-color:rgba(255,120,168,.13)}
body[data-temporada="primavera"] .showcase-cards>div:nth-child(2){border-color:rgba(156,203,130,.12)}

/* Landing sections: clearer rhythm between content blocks. */
body[data-temporada="primavera"] main>section:not(.hero){position:relative}
body[data-temporada="primavera"] main>section:not(.hero)::before{
  content:"";position:absolute;left:50%;top:0;width:min(920px,82%);height:1px;transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(255,182,214,.10),rgba(156,203,130,.09),transparent);
}
body[data-temporada="primavera"] .section-head{max-width:760px;margin-bottom:36px}
body[data-temporada="primavera"] .section-head h2{text-wrap:balance;letter-spacing:-.035em}
body[data-temporada="primavera"] .section-head p{max-width:650px}

/* Features: calmer cards, more natural accent instead of equal glow everywhere. */
body[data-temporada="primavera"] .feature-card,
body[data-temporada="primavera"] .command-card,
body[data-temporada="primavera"] .step{
  border-color:rgba(255,182,214,.09);
  backdrop-filter:blur(8px);
}
body[data-temporada="primavera"] .feature-card:nth-child(3n+2){background:linear-gradient(145deg,rgba(156,203,130,.045),rgba(18,14,23,.70))}
body[data-temporada="primavera"] .feature-card:nth-child(3n+2) .feature-icon{background:linear-gradient(135deg,rgba(156,203,130,.12),rgba(255,196,107,.08))}
body[data-temporada="primavera"] .feature-card:nth-child(3n+2):hover{border-color:rgba(156,203,130,.25)}
body[data-temporada="primavera"] .command-card{background:linear-gradient(145deg,rgba(255,255,255,.024),rgba(156,203,130,.018),rgba(255,255,255,.012))}
body[data-temporada="primavera"] .step{position:relative;overflow:hidden}
body[data-temporada="primavera"] .step::after{content:"❀";position:absolute;right:18px;bottom:-4px;color:rgba(156,203,130,.12);font-size:2.1rem;transform:rotate(10deg)}

/* Auth/dashboard: make it feel like an application, not a section embedded in the landing page. */
body[data-temporada="primavera"] #panel{padding-top:88px}
body[data-temporada="primavera"] .dashboard-container{
  background:linear-gradient(145deg,rgba(35,23,34,.86),rgba(13,13,21,.94));
  border-color:rgba(255,182,214,.15);
  box-shadow:0 28px 80px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.025);
}
body[data-temporada="primavera"] .dashboard-header{border-bottom-color:rgba(255,182,214,.10)}
body[data-temporada="primavera"] .dashboard-user-avatar{box-shadow:0 0 0 4px rgba(255,120,168,.045)}
body[data-temporada="primavera"] .guild-selector{border-color:rgba(255,182,214,.13);background:rgba(10,10,17,.55)}
body[data-temporada="primavera"] .logout-btn:hover{border-color:rgba(255,120,168,.32);background:rgba(255,120,168,.05)}
body[data-temporada="primavera"] .dashboard-welcome,
body[data-temporada="primavera"] .category-intro--hero{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
body[data-temporada="primavera"] .category-intro--hero{border-color:rgba(255,182,214,.12)}
body[data-temporada="primavera"] .server-card,
body[data-temporada="primavera"] .category-card{border-color:rgba(255,182,214,.12)}
body[data-temporada="primavera"] .server-card:hover,
body[data-temporada="primavera"] .category-card:hover{border-color:rgba(255,120,168,.34)}

/* Footer gets a subtle garden-at-night finish. */
body[data-temporada="primavera"] footer{border-top:1px solid rgba(255,182,214,.07)}
body[data-temporada="primavera"] footer::after{
  content:"";position:absolute;inset:auto 0 0;height:90px;pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(156,203,130,.035));
}

@media(max-width:900px){
  body[data-temporada="primavera"] .hero-inner{
    grid-template-columns:1fr;
    grid-template-areas:"moon" "symbols" "eyebrow" "title" "lede" "ctas" "showcase" "stats";
    gap:0;
  }
  body[data-temporada="primavera"] .moon-hero{margin:0 auto 12px}
  body[data-temporada="primavera"] .season-symbols{justify-content:center;margin-bottom:7px}
  body[data-temporada="primavera"] .eyebrow,
  body[data-temporada="primavera"] .hero h1,
  body[data-temporada="primavera"] .hero p.lede{text-align:center}
  body[data-temporada="primavera"] .hero-ctas{justify-content:center}
  body[data-temporada="primavera"] .hero-showcase{margin-top:34px}
}

@media(max-width:640px){
  body[data-temporada="primavera"] #panel{padding-top:68px}
  body[data-temporada="primavera"] .hero h1{font-size:clamp(2.25rem,11.5vw,3.05rem)}
  body[data-temporada="primavera"] .hero-stats{grid-template-columns:1fr 1fr;gap:10px;margin-top:32px}
  body[data-temporada="primavera"] .hero-stat{padding:10px 7px}
  body[data-temporada="primavera"] .hero-stat:nth-child(2)::after,
  body[data-temporada="primavera"] .hero-stat:nth-child(4)::after{display:none}
  body[data-temporada="primavera"] .hero-stat:nth-child(3)::after{display:block}
  body[data-temporada="primavera"] .hero-stat:last-child{grid-column:1/-1}
  body[data-temporada="primavera"] .showcase-window{border-radius:20px}
  body[data-temporada="primavera"] .showcase-topbar{height:38px;padding:0 12px}
  body[data-temporada="primavera"] .showcase-body{grid-template-columns:82px 1fr;min-height:255px}
  body[data-temporada="primavera"] .showcase-main{padding:20px 15px}
  body[data-temporada="primavera"] .showcase-main h3{font-size:1.45rem}
  body[data-temporada="primavera"] .dashboard-container{padding:18px;border-radius:22px}
  body[data-temporada="primavera"] .dashboard-header{margin-bottom:22px}
}

/* =========================================================
   ÍCONOS DE FUNCIONES — LÍNEA, SIN EMOJI
   Mismo patrón que .feature-icon--appeals: cada ícono define
   su propio color de trazo y un glow que se intensifica al
   pasar el mouse por la card. Los colores rotan siguiendo el
   mismo ritmo que ya usa .feature-card:nth-child(3n+2) (musgo).
========================================================= */
.feature-icon--mod svg,
.feature-icon--niveles svg,
.feature-icon--partnership svg{
  stroke:var(--spring-peach);
  filter:drop-shadow(0 0 8px rgba(255,196,107,.22));
}
.feature-icon--trivia svg,
.feature-icon--roles svg,
.feature-icon--logs svg{
  stroke:var(--spring-lilac);
  filter:drop-shadow(0 0 8px rgba(200,167,255,.22));
}
.feature-icon--socios svg,
.feature-icon--duelos svg,
.feature-icon--registros svg,
.feature-icon--automation svg{
  stroke:var(--spring-leaf);
  filter:drop-shadow(0 0 8px rgba(156,203,130,.22));
}

.feature-card:hover .feature-icon--mod svg,
.feature-card:hover .feature-icon--niveles svg,
.feature-card:hover .feature-icon--partnership svg{
  filter:drop-shadow(0 0 12px rgba(255,196,107,.38));
}
.feature-card:hover .feature-icon--trivia svg,
.feature-card:hover .feature-icon--roles svg,
.feature-card:hover .feature-icon--logs svg{
  filter:drop-shadow(0 0 12px rgba(200,167,255,.38));
}
.feature-card:hover .feature-icon--socios svg,
.feature-card:hover .feature-icon--duelos svg,
.feature-card:hover .feature-icon--registros svg,
.feature-card:hover .feature-icon--automation svg{
  filter:drop-shadow(0 0 12px rgba(156,203,130,.38));
}

/* =========================================================
   PRIMAVERA 2.1 — CAPA BOTÁNICA
   Más naturaleza, sin convertir la interfaz en un collage.
========================================================= */
body[data-temporada="primavera"]{
  --spring-moss:#7FAE72;
  --spring-moss-soft:rgba(127,174,114,.12);
  --spring-stem:#6F9464;
  --spring-blossom:#F5A9C6;
  --spring-blossom-soft:rgba(245,169,198,.14);
  --spring-sun:#F5C978;
  background:
    radial-gradient(900px 520px at 7% 8%, rgba(127,174,114,.10), transparent 65%),
    radial-gradient(760px 520px at 92% 25%, rgba(245,169,198,.09), transparent 68%),
    radial-gradient(620px 460px at 50% 92%, rgba(245,201,120,.055), transparent 72%),
    var(--void);
}

body[data-temporada="primavera"]::before,
body[data-temporada="primavera"]::after{
  content:"";
  position:fixed;
  z-index:0;
  pointer-events:none;
  width:420px;
  height:620px;
  opacity:.075;
  background:url('assets/decor-primavera.png') center/contain no-repeat;
  filter:saturate(.85) blur(.1px);
}
body[data-temporada="primavera"]::before{
  left:-260px;
  top:24vh;
  transform:rotate(-18deg) scale(.9);
}
body[data-temporada="primavera"]::after{
  right:-285px;
  top:62vh;
  transform:scaleX(-1) rotate(-14deg) scale(.75);
  opacity:.055;
}

body[data-temporada="primavera"] .nav{
  background:linear-gradient(180deg,rgba(23,15,20,.94),rgba(23,15,20,.72));
}
body[data-temporada="primavera"] .nav-inner::after{
  content:"✿  ·  ❀  ·  ✿";
  position:absolute;
  left:50%;
  bottom:-8px;
  transform:translateX(-50%);
  color:var(--spring-leaf);
  font-size:.48rem;
  letter-spacing:.55em;
  opacity:.55;
  white-space:nowrap;
  pointer-events:none;
}

body[data-temporada="primavera"] .hero::before{
  content:"";
  position:absolute;
  inset:18% 8% auto;
  height:240px;
  pointer-events:none;
  background:
    radial-gradient(circle at 15% 45%,var(--spring-blossom-soft) 0 3px,transparent 4px),
    radial-gradient(circle at 28% 18%,var(--spring-moss-soft) 0 4px,transparent 5px),
    radial-gradient(circle at 73% 26%,rgba(245,201,120,.13) 0 3px,transparent 4px),
    radial-gradient(circle at 88% 66%,var(--spring-blossom-soft) 0 4px,transparent 5px);
  opacity:.8;
}

/* Pequeñas hojas alrededor del hero: distintas de la decoración de esquina. */
body[data-temporada="primavera"] .hero-inner::before,
body[data-temporada="primavera"] .hero-inner::after{
  content:"❧";
  position:absolute;
  color:var(--spring-moss);
  font-family:Georgia,serif;
  font-size:4.4rem;
  opacity:.17;
  pointer-events:none;
  filter:drop-shadow(0 8px 18px rgba(127,174,114,.16));
}
body[data-temporada="primavera"] .hero-inner::before{
  left:-24px;
  top:20%;
  transform:rotate(-24deg);
}
body[data-temporada="primavera"] .hero-inner::after{
  right:-22px;
  top:42%;
  transform:scaleX(-1) rotate(-8deg);
  color:var(--spring-blossom);
}

body[data-temporada="primavera"] .eyebrow{
  border-color:rgba(127,174,114,.25);
  background:linear-gradient(90deg,rgba(127,174,114,.08),rgba(245,169,198,.08));
}
body[data-temporada="primavera"] .eyebrow::before{
  content:"🌿";
  margin-right:6px;
}

body[data-temporada="primavera"] .feature-card::before{
  content:"";
  position:absolute;
  width:80px;
  height:80px;
  right:-28px;
  top:-32px;
  border-radius:50%;
  background:radial-gradient(circle,var(--spring-moss-soft),transparent 68%);
  pointer-events:none;
}
body[data-temporada="primavera"] .feature-card:nth-child(3n+1)::after,
body[data-temporada="primavera"] .feature-card:nth-child(3n+3)::after{
  content:"✿";
  position:absolute;
  right:16px;
  bottom:13px;
  color:var(--spring-blossom);
  opacity:.16;
  font-size:1rem;
  pointer-events:none;
}
body[data-temporada="primavera"] .feature-card:nth-child(3n+2)::after{
  content:"❧";
  position:absolute;
  right:15px;
  bottom:10px;
  color:var(--spring-moss);
  opacity:.17;
  font-size:1.2rem;
  pointer-events:none;
}

/* La columna Platinum tenía un resto de celeste "noche" (rgba azulada)
   que no correspondía a la paleta de primavera: se reemplaza por un
   realce dorado, coherente con --spring-peach/--spring-sun. */
body[data-temporada="primavera"] .planes-table-wrap{
  position:relative;
  border:1px solid rgba(255,182,214,.16);
  box-shadow:var(--shadow-soft);
}
body[data-temporada="primavera"] .planes-table thead th:nth-child(3),
body[data-temporada="primavera"] .planes-table tbody td:nth-child(3){
  color:#FFDDA6;
  background:linear-gradient(180deg,rgba(255,196,107,.12),rgba(255,196,107,.04));
}
body[data-temporada="primavera"] .planes-table thead th:nth-child(3){
  position:relative;
  box-shadow:inset 0 2px 0 var(--spring-peach);
}
body[data-temporada="primavera"] .planes-table tbody tr:last-child td:nth-child(3){
  box-shadow:inset 0 -2px 0 rgba(255,196,107,.18);
}

body[data-temporada="primavera"] .section-head h2::after{
  content:"  ❀";
  color:var(--spring-blossom);
  font-size:.48em;
  vertical-align:middle;
  opacity:.7;
}

body[data-temporada="primavera"] .hero-showcase::after{
  content:"❧";
  position:absolute;
  right:-42px;
  bottom:-36px;
  color:var(--spring-moss);
  font-family:Georgia,serif;
  font-size:4.8rem;
  opacity:.16;
  transform:scaleX(-1) rotate(-14deg);
  pointer-events:none;
}

body[data-temporada="primavera"] .hero-stat{
  position:relative;
}
body[data-temporada="primavera"] .hero-stat:not(:last-child)::after{
  content:"";
  position:absolute;
  right:-9px;
  top:10%;
  width:1px;
  height:80%;
  background:linear-gradient(transparent,rgba(127,174,114,.22),transparent);
}

@media(max-width:900px){
  body[data-temporada="primavera"] .hero-inner::before{left:-45px}
  body[data-temporada="primavera"] .hero-inner::after{right:-42px}
}
@media(max-width:640px){
  body[data-temporada="primavera"]::before,
  body[data-temporada="primavera"]::after{width:280px;height:420px;opacity:.045}
  body[data-temporada="primavera"] .nav-inner::after{display:none}
  body[data-temporada="primavera"] .hero-inner::before{left:-72px;top:16%;font-size:3.4rem}
  body[data-temporada="primavera"] .hero-inner::after{right:-70px;top:48%;font-size:3.2rem}
  body[data-temporada="primavera"] .hero-stat:nth-child(2)::after{display:none}
  body[data-temporada="primavera"] .hero-showcase::after{right:-20px;bottom:-24px;font-size:3.5rem}
}

/* ==========================================
   CONFIGURADOR WEB DE TICKETS LUA
   ========================================== */
.tickets-config-shell{display:grid;gap:18px;margin:14px 0 32px}
.tickets-status-card{display:grid;gap:14px}
.tickets-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.tickets-section-title h3{margin:0 0 5px}
.tickets-section-title p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.5}
.tickets-section-title .limit-pill{white-space:nowrap}
.tickets-toggle{display:flex!important;align-items:center;gap:12px;margin:0!important;padding:14px;border:1px solid var(--panel-border);border-radius:12px;background:rgba(255,255,255,.025)}
.tickets-toggle input{width:19px;height:19px;accent-color:var(--celeste);flex:0 0 auto}
.tickets-toggle span{display:grid;gap:3px}
.tickets-toggle small{color:var(--muted);font-weight:500}
.tickets-plan-limits{display:flex;flex-wrap:wrap;gap:9px}
.tickets-plan-limits span{padding:8px 11px;border-radius:9px;background:rgba(255,255,255,.035);border:1px solid var(--panel-border);font-size:.8rem;color:var(--muted)}
.tickets-plan-limits strong{color:var(--moonlight)}
.tickets-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tickets-card{min-width:0}
.tickets-card h3{margin-bottom:14px}
.tickets-card label,.tickets-category-editor label{display:block;color:var(--muted);font-size:.82rem;font-weight:650;margin:10px 0 6px}
.tickets-card input[type="text"],.tickets-card input[type="url"],.tickets-card input[type="color"],.tickets-card select,.tickets-card textarea,.tickets-category-editor input[type="text"],.tickets-category-editor select,.tickets-category-editor textarea{box-sizing:border-box;width:100%;padding:10px 12px;margin:0;background:var(--void);border:1px solid var(--panel-border);border-radius:9px;color:var(--moonlight);outline:none;font:inherit;font-size:.9rem}
.tickets-card input:focus,.tickets-card select:focus,.tickets-card textarea:focus,.tickets-category-editor input:focus,.tickets-category-editor select:focus,.tickets-category-editor textarea:focus{border-color:var(--celeste)}
.tickets-card textarea,.tickets-category-editor textarea{min-height:94px;resize:vertical}
.tickets-card input[type="color"]{min-height:42px;padding:4px}
.tickets-inline-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.tickets-preview{margin-top:16px;display:grid;gap:9px;padding:16px;border:1px solid rgba(182,140,255,.45);border-left:4px solid #B68CFF;border-radius:10px;background:rgba(12,10,19,.65);color:#f5efff}
.tickets-preview-author{font-size:.7rem;letter-spacing:.1em;color:#d1b7ff;font-weight:800}
.tickets-preview strong{font-size:1.05rem}
.tickets-preview p{font-size:.87rem;line-height:1.5;white-space:pre-wrap;margin:0;color:#e5ddf2}
.tickets-preview small{font-size:.72rem;color:#b5a9c7}
.tickets-preview-button{justify-self:start;display:inline-flex;align-items:center;gap:7px;padding:8px 12px;background:#5865f2;color:#fff;border-radius:7px;font-weight:700;font-size:.82rem}
.tickets-categories-card{margin-top:0}
.tickets-category-editor{padding:18px;margin-top:14px;border:1px solid var(--panel-border);border-radius:14px;background:rgba(255,255,255,.018)}
.tickets-category-heading{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.tickets-category-heading>div{display:grid;gap:3px;flex:1;min-width:0}
.tickets-category-heading>div strong{color:var(--moonlight);overflow-wrap:anywhere}
.tickets-category-heading>div small{color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}
.tickets-category-number{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:10px;background:rgba(182,140,255,.13);color:#d6bdff;font-weight:800}
.tickets-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 14px}
.tickets-form-grid .tickets-wide{grid-column:1/-1}
.tickets-questions-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:20px;padding-top:14px;border-top:1px solid var(--panel-border)}
.tickets-questions-head>strong{font-size:.9rem}
.tickets-question{padding:13px;margin-top:10px;border-radius:11px;border:1px solid var(--panel-border);background:rgba(0,0,0,.12)}
.tickets-question-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.7fr) auto auto;align-items:end;gap:10px}
.tickets-question-main label{margin:0}
.tickets-question .tickets-optional{display:flex;align-items:center;gap:7px;white-space:nowrap;padding-bottom:10px}
.tickets-question .tickets-optional input{accent-color:var(--celeste)}
.tickets-add-question,.tickets-add-category{margin-top:14px}
.tickets-empty{padding:24px;text-align:center;border:1px dashed var(--panel-border);border-radius:12px;color:var(--muted)}
.tickets-save-row{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;padding-bottom:20px}
.tickets-save-row .config-save-btn,.tickets-save-row .btn-primary{min-height:42px}
.tickets-detail-header{margin-bottom:15px}
@media(max-width:760px){.tickets-config-grid{grid-template-columns:minmax(0,1fr)}.tickets-form-grid{grid-template-columns:minmax(0,1fr)}.tickets-form-grid .tickets-wide{grid-column:auto}.tickets-question-main{grid-template-columns:minmax(0,1fr)}.tickets-question .tickets-optional{padding-bottom:0}.tickets-save-row{display:grid;grid-template-columns:minmax(0,1fr)}.tickets-save-row button{width:100%}.tickets-section-title{flex-direction:column}.tickets-plan-limits{display:grid;grid-template-columns:minmax(0,1fr)}.tickets-inline-fields{grid-template-columns:minmax(0,1fr)}}

/* Elementos adicionales de la vista previa de tickets */
.tickets-preview-image{display:block;max-width:100%;max-height:170px;object-fit:contain;object-position:left center;border-radius:8px;margin:2px 0}
.tickets-preview-button--secundaria{background:#4b5563}.tickets-preview-button--exito{background:#24864b}


/* Ticket dashboard: navegación compacta y legible en móvil */
.tickets-main-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;padding:6px;border:1px solid var(--border-color,rgba(190,150,220,.22));border-radius:14px;background:rgba(20,14,25,.55)}
.tickets-main-tab{flex:1 1 145px;border:1px solid transparent;border-radius:10px;padding:11px 12px;background:transparent;color:inherit;font:inherit;font-size:.92rem;cursor:pointer;text-align:center}
.tickets-main-tab.is-active{background:rgba(182,140,255,.17);border-color:rgba(182,140,255,.55);color:var(--text-primary,#fff)}
.tickets-tab-panel[hidden]{display:none!important}
.tickets-category-messages{margin:14px 0;padding:14px;border:1px solid rgba(182,140,255,.3);border-radius:12px;background:rgba(182,140,255,.045)}
.tickets-category-messages summary{cursor:pointer;font-weight:650;padding:3px 0}
.tickets-category-messages[open] summary{margin-bottom:12px}
.tickets-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}
.tickets-stats-grid article{display:flex;flex-direction:column;gap:9px}
.tickets-stats-grid small{color:var(--text-muted,#bba9c3)}
.tickets-stats-grid strong{font-size:1.8rem}
.tickets-stat-row{display:flex;align-items:center;justify-content:space-between;padding:11px 2px;border-bottom:1px solid rgba(190,150,220,.16)}
@media(max-width:600px){.tickets-main-tabs{display:grid;grid-template-columns:1fr}.tickets-main-tab{text-align:left}.tickets-stats-grid{grid-template-columns:1fr 1fr}.tickets-config-grid{grid-template-columns:minmax(0,1fr)}}

/* Editors anidados para que cada categoría controle sus propios mensajes. */
.tickets-category-messages{margin:14px 0;padding:14px;border:1px solid rgba(182,140,255,.32);border-radius:13px;background:rgba(182,140,255,.045)}
.tickets-category-messages>summary{font-size:1rem;color:var(--text-primary,#fff);padding:5px 0}
.tickets-message-subeditor{margin:12px 0;padding:12px;border:1px solid rgba(190,150,220,.22);border-radius:10px;background:rgba(10,8,16,.25)}
.tickets-message-subeditor>summary{cursor:pointer;font-weight:650;padding:8px 2px;color:var(--text-primary,#fff)}
.tickets-message-subeditor[open]>summary{margin-bottom:12px;border-bottom:1px solid rgba(190,150,220,.16)}
.tickets-message-subeditor .tickets-form-grid{margin-top:8px}
.tickets-message-subeditor input[type="color"]{width:100%;min-height:42px;padding:4px;border-radius:8px}
.tickets-category-messages .config-help{line-height:1.55}
@media(max-width:600px){.tickets-category-messages{padding:10px}.tickets-message-subeditor{padding:9px}.tickets-message-subeditor .tickets-form-grid{grid-template-columns:minmax(0,1fr)}}

/* ===== Tickets: ayudas didácticas (guía, plantillas, vista previa, avanzadas) ===== */
.tickets-card input[type="number"],.tickets-category-editor input[type="number"]{box-sizing:border-box;width:100%;padding:10px 12px;margin:0;background:var(--void);border:1px solid var(--panel-border);border-radius:9px;color:var(--moonlight);outline:none;font:inherit;font-size:.9rem}
.tickets-card input[type="number"]:focus{border-color:var(--celeste)}
.tickets-adv-toggle{display:inline-flex!important;align-items:center;gap:8px;margin-left:auto!important;padding:8px 12px;border:1px dashed var(--panel-border);border-radius:999px;color:var(--muted);font-size:.82rem;font-weight:650;cursor:pointer;white-space:nowrap}
.tickets-adv-toggle input{width:16px;height:16px;accent-color:var(--celeste)}
.tickets-advanced{margin-top:12px;border:1px dashed var(--panel-border);border-radius:12px;padding:2px 12px 10px;background:rgba(255,255,255,.015)}
.tickets-advanced>summary{cursor:pointer;font-weight:650;font-size:.85rem;color:var(--muted);padding:9px 0}
.tickets-advanced[open]>summary{color:var(--moonlight)}
.tickets-guide .tickets-progress{height:8px;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden;margin:4px 0 14px}
.tickets-guide .tickets-progress span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#B68CFF,#7fe3c5);transition:width .3s ease}
.tickets-steps{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.tickets-steps li{display:flex;align-items:center;gap:12px;padding:11px 12px;border:1px solid var(--panel-border);border-radius:12px;background:rgba(255,255,255,.02)}
.tickets-steps li.is-done{border-color:rgba(127,227,197,.4);background:rgba(127,227,197,.06)}
.tickets-step-mark{flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(182,140,255,.2);font-weight:800;font-size:.85rem}
.is-done .tickets-step-mark{background:#7fe3c5;color:#0b1a15}
.tickets-steps li>div{display:grid;gap:2px;flex:1;min-width:0}
.tickets-steps small,.tickets-tips span{color:var(--muted);font-size:.82rem;font-weight:500}
.tickets-step-go{flex:0 0 auto;padding:6px 12px!important;font-size:.8rem!important}
.tickets-tips{display:grid;gap:8px;margin-top:14px;padding:12px;border-radius:12px;background:rgba(255,200,87,.06);border:1px solid rgba(255,200,87,.25)}
.tickets-tips>div{display:flex;align-items:center;gap:10px;justify-content:space-between}
.tickets-check-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px}
.tickets-check-row small{color:var(--muted)}
.tickets-checks{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px}
.tickets-check{display:flex;gap:10px;padding:9px 12px;border-radius:10px;font-size:.86rem;background:rgba(255,255,255,.03);border:1px solid var(--panel-border)}
.tickets-check--error{border-color:rgba(255,107,107,.5);background:rgba(255,107,107,.07)}
.tickets-check--warn{border-color:rgba(255,200,87,.5);background:rgba(255,200,87,.07)}
.tickets-check--ok{border-color:rgba(127,227,197,.3)}
.tickets-templates{margin:4px 0 16px;padding:14px;border:1px dashed rgba(182,140,255,.45);border-radius:14px;background:rgba(182,140,255,.05)}
.tickets-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:10px}
.tickets-template-btn{display:grid;gap:3px;text-align:left;padding:12px;border-radius:12px;border:1px solid var(--panel-border);background:var(--void);color:var(--moonlight);cursor:pointer;font:inherit;transition:border-color .15s,transform .15s}
.tickets-template-btn:hover{border-color:var(--celeste);transform:translateY(-2px)}
.tickets-template-btn span{font-size:1.4rem}
.tickets-template-btn small{color:var(--muted);font-size:.76rem;line-height:1.3}
.tickets-dirty{margin-right:auto;align-self:center;color:#ffc857;font-weight:700;font-size:.85rem}
.tickets-pv-wrap{margin-top:14px}
.tickets-pv{display:grid;gap:8px;padding:14px;border-radius:12px;background:#313338;color:#dbdee1;font-size:.88rem;font-family:system-ui,sans-serif}
.tickets-pv-caption,.tickets-pv-legend{color:#949ba4;font-size:.74rem}
.tickets-pv-embed{background:#2b2d31;border-left:4px solid #B68CFF;border-radius:6px;padding:10px 14px;max-width:520px}
.tickets-pv-body{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}
.tickets-pv-main{min-width:0;display:grid;gap:6px}
.tickets-pv-title{font-weight:700;color:#fff;word-break:break-word}
.tickets-pv-desc{word-break:break-word;line-height:1.45}
.tickets-pv-author{font-weight:600;font-size:.8rem;margin-bottom:6px;color:#fff}
.tickets-pv-footer{margin-top:8px;font-size:.72rem;color:#949ba4}
.tickets-pv-thumb{width:60px;height:60px;border-radius:8px;object-fit:cover;flex:0 0 auto}
.tickets-pv-thumb--default{display:grid;place-items:center;background:#3b3d44;font-size:1.6rem}
.tickets-pv-image{display:block;max-width:100%;border-radius:6px;margin-top:10px}
.tickets-pv-buttons{display:flex;flex-wrap:wrap;gap:6px}
.tickets-pv-buttons span{padding:5px 11px;border-radius:5px;background:#4e5058;font-size:.8rem;font-weight:600}
.tickets-pv-var{color:#7fe3c5;font-weight:600}
.tickets-pv-mention{background:rgba(88,101,242,.3);color:#c9cdfb;border-radius:3px;padding:0 3px}
.tickets-pv-unknown{background:rgba(255,160,64,.2);color:#ffb74d;border-radius:3px;padding:0 3px;text-decoration:underline wavy}
.tickets-pv-text{max-width:520px}
@media (max-width:640px){.tickets-adv-toggle{margin-left:0!important}.tickets-tips>div{flex-direction:column;align-items:flex-start}}

/* =========================================================
   LUA CELESTIAL BLOOM — REBRAND VISUAL
   Rosa lunar + lavanda, marca oficial, motion ligero y mobile-first.
========================================================= */
:root {
  --void: #0d0917;
  --void-rgb: 13, 9, 23;
  --night: #171124;
  --night-rgb: 23, 17, 36;
  --night-2: #221831;
  --night2-rgb: 34, 24, 49;
  --panel-border: rgba(205, 174, 255, .16);
  --moonlight: #fff4fb;
  --muted: #c6b4d0;
  --muted-dim: #9683a7;
  --azul: #f47cb7;
  --azul-soft: rgba(244, 124, 183, .16);
  --celeste: #bca7ff;
  --celeste-soft: rgba(188, 167, 255, .16);
  --frost: #e7d9ff;
  --frost-soft: rgba(231, 217, 255, .13);
  --spring-pink: #f47cb7;
  --spring-peach: #ffc3df;
  --spring-lilac: #bca7ff;
  --spring-cream: #fff4fb;
  --spring-leaf: #bca7ff;
  --spring-leaf-soft: rgba(188, 167, 255, .12);
  --glass: rgba(20, 14, 29, .74);
  --glass-strong: rgba(17, 11, 25, .94);
  --shadow-soft: 0 28px 80px rgba(0, 0, 0, .35);
  --maxw: 1180px;
}

html { scroll-padding-top: 88px; }
body[data-temporada="primavera"] {
  background:
    radial-gradient(ellipse at 72% 8%, rgba(188, 167, 255, .12), transparent 34rem),
    radial-gradient(ellipse at 10% 32%, rgba(244, 124, 183, .085), transparent 28rem),
    radial-gradient(ellipse at 85% 68%, rgba(126, 93, 190, .075), transparent 30rem),
    var(--void);
}
body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255,255,255,.012), transparent 36%, rgba(188,167,255,.018));
}
.stars { opacity: .32; }

/* Use the supplied logo/avatar without stretching it. */
.temporada-banner { display: none !important; }
.brand img {
  width: 42px;
  height: 42px;
  object-fit: cover;
  border-radius: 14px;
  border: 1px solid rgba(255, 211, 238, .28);
  box-shadow: 0 0 0 4px rgba(244,124,183,.055), 0 7px 24px rgba(244,124,183,.16);
}
.footer-brand img {
  width: 44px;
  height: 44px;
  object-fit: cover;
  border-radius: 15px;
  border: 1px solid rgba(255,211,238,.26);
  box-shadow: 0 0 24px rgba(188,167,255,.15);
}

header.nav {
  background: rgba(13, 9, 23, .79);
  border-bottom-color: rgba(219, 193, 255, .12);
  box-shadow: 0 10px 34px rgba(0,0,0,.16);
  backdrop-filter: blur(22px) saturate(145%);
}
.nav-inner { padding-top: 14px; padding-bottom: 14px; }
.brand { gap: 12px; font-size: 1.2rem; letter-spacing: .01em; }
.brand span { background: linear-gradient(95deg, #fff5fc 20%, #f3c1e0 60%, #c8b7ff); -webkit-background-clip: text; background-clip: text; color: transparent; }
nav.links { gap: clamp(12px, 1.7vw, 24px); }
nav.links a:not(.nav-cta) { transition: color .2s ease, background .2s ease; }
.nav-cta { border-radius: 13px; padding: 10px 16px; }
.btn-invite { background: linear-gradient(110deg, #ed7eb8, #b69aff) !important; box-shadow: 0 8px 22px rgba(201, 119, 201, .19); }
.btn-discord { background: rgba(88,101,242,.16) !important; border: 1px solid rgba(128,139,255,.35); }
.menu-toggle { border-radius: 13px; }

/* Hero: clear copy on the left, official art and brand details on the right. */
.hero { padding-top: 74px; padding-bottom: 70px; min-height: auto; }
.hero::before {
  background:
    radial-gradient(ellipse at 78% 26%, rgba(188,167,255,.12), transparent 36%),
    radial-gradient(ellipse at 20% 62%, rgba(244,124,183,.075), transparent 34%),
    linear-gradient(180deg, transparent 65%, rgba(13,9,23,.28));
}
body[data-temporada="primavera"] .hero-inner {
  grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr);
  column-gap: clamp(34px, 5vw, 72px);
  row-gap: 0;
  max-width: 1180px;
}
body[data-temporada="primavera"] .moon-hero {
  width: 72px;
  height: 72px;
  margin: 0 0 15px;
  object-fit: cover;
  border-radius: 22px;
  border: 1px solid rgba(255, 214, 241, .25);
  box-shadow: 0 10px 34px rgba(244,124,183,.12), 0 0 0 6px rgba(188,167,255,.04);
  filter: none;
  animation: luaLogoBreathe 5s ease-in-out infinite;
}
@keyframes luaLogoBreathe {
  0%,100% { transform: translateY(0); box-shadow: 0 10px 34px rgba(244,124,183,.12), 0 0 0 6px rgba(188,167,255,.04); }
  50% { transform: translateY(-3px); box-shadow: 0 15px 38px rgba(244,124,183,.2), 0 0 0 8px rgba(188,167,255,.055); }
}
body[data-temporada="primavera"] .season-symbols { color: #d8c5ff; }
body[data-temporada="primavera"] .season-symbols span:nth-child(2),
body[data-temporada="primavera"] .season-symbols span:nth-child(4) { color: #f4a5ce; }
body[data-temporada="primavera"] .eyebrow {
  color: #d9b8e8;
  font-family: var(--mono);
  font-size: .68rem;
  letter-spacing: .18em;
}
body[data-temporada="primavera"] .hero h1 {
  font-size: clamp(2.65rem, 4.6vw, 4.65rem);
  letter-spacing: -.045em;
  line-height: 1.02;
  background: linear-gradient(110deg, #fff7fc 5%, #ffc7e3 52%, #c7b5ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  text-wrap: balance;
}
body[data-temporada="primavera"] .hero p.lede { color: #cdbed8; max-width: 570px; font-size: 1.02rem; }
.hero-ctas { gap: 12px; }
.btn-primary, .btn-secondary {
  min-height: 48px;
  border-radius: 15px;
  padding: 13px 21px;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}
.btn-primary { background: linear-gradient(115deg, #ee80b9, #b19aff); box-shadow: 0 12px 30px rgba(198, 117, 201, .22); }
.btn-primary:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(198,117,201,.3); }
.btn-secondary { background: rgba(255,255,255,.035); border-color: rgba(218,195,255,.2); }
.btn-secondary:hover { border-color: rgba(244,166,213,.45); }

/* Actual Lua banner + avatar, composed as a layered feature visual. */
.hero-showcase { width: 100%; min-width: 0; padding: 8px 3px 12px; }
.hero-showcase::after { content: none !important; }
.hero-showcase::before { inset: 2% -4% 0; background: radial-gradient(ellipse, rgba(188,167,255,.20), rgba(244,124,183,.09) 38%, transparent 70%); filter: blur(22px); }
.hero-art-composition { position: relative; isolation: isolate; padding: 10px 8px 12px; }
.hero-art-frame {
  position: relative;
  overflow: hidden;
  border-radius: 25px;
  border: 1px solid rgba(255,215,242,.31);
  background: #1a1225;
  box-shadow: 0 28px 76px rgba(0,0,0,.35), 0 0 0 7px rgba(255,255,255,.018);
  transform: rotate(.4deg);
  transition: transform .45s cubic-bezier(.2,.75,.25,1), box-shadow .45s ease;
}
.hero-art-frame:hover { transform: rotate(0) translateY(-4px); box-shadow: 0 36px 90px rgba(0,0,0,.4), 0 0 0 7px rgba(188,167,255,.035); }
.hero-art-banner { display: block; width: 100%; height: auto; aspect-ratio: 3 / 1; object-fit: cover; }
.hero-art-frame-glint {
  position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(110deg, transparent 20%, rgba(255,255,255,.18) 43%, transparent 57%);
  transform: translateX(-130%);
  animation: luaBannerGlimmer 9s ease-in-out 1s infinite;
}
@keyframes luaBannerGlimmer { 0%,62%,100% { transform: translateX(-130%); } 78% { transform: translateX(130%); } }
.hero-art-halo { position: absolute; z-index: -1; border-radius: 50%; filter: blur(1px); pointer-events: none; }
.hero-art-halo--one { width: 210px; height: 210px; top: -25px; right: 4%; border: 1px solid rgba(203,183,255,.17); box-shadow: 0 0 70px rgba(188,167,255,.10), inset 0 0 45px rgba(244,124,183,.035); animation: luaOrbit 17s linear infinite; }
.hero-art-halo--two { width: 130px; height: 130px; bottom: 28px; left: -5px; background: radial-gradient(circle, rgba(244,124,183,.12), transparent 70%); animation: luaFloat 7s ease-in-out infinite; }
@keyframes luaOrbit { to { transform: rotate(360deg); } }
@keyframes luaFloat { 0%,100% { transform: translateY(0) translateX(0); } 50% { transform: translateY(-9px) translateX(4px); } }
.hero-art-avatar {
  position: absolute; z-index: 3; left: 22px; bottom: 72px;
  width: 98px; aspect-ratio: 1;
  padding: 4px;
  border: 1px solid rgba(255,218,243,.47);
  border-radius: 25px;
  background: linear-gradient(145deg, rgba(255,255,255,.25), rgba(188,167,255,.18));
  box-shadow: 0 12px 34px rgba(0,0,0,.32), 0 0 34px rgba(244,124,183,.18);
  animation: luaFloat 6.5s ease-in-out infinite;
}
.hero-art-avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 20px; }
.hero-art-note {
  position: relative; display: flex; align-items: center; gap: 12px;
  min-height: 82px; margin: 32px 12px 0 44px; padding: 17px 17px 17px 88px;
  border: 1px solid rgba(219,198,255,.17); border-radius: 20px;
  background: linear-gradient(120deg, rgba(35,24,48,.86), rgba(19,13,29,.82));
  box-shadow: 0 18px 44px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter: blur(16px);
}
.hero-art-note-icon { display: grid; place-items: center; flex: 0 0 33px; width: 33px; height: 33px; margin-left: -2px; border: 1px solid rgba(244,166,213,.18); border-radius: 11px; color: #f7b6da; background: rgba(244,124,183,.09); }
.hero-art-note-copy { min-width: 0; display: grid; gap: 4px; }
.hero-art-note-copy small { color: #c1acd7; font: 600 .59rem var(--mono); letter-spacing: .14em; }
.hero-art-note-copy strong { color: #fff0fa; font-size: .82rem; line-height: 1.35; font-weight: 700; }
.hero-art-live { margin-left: auto; flex: 0 0 auto; width: 10px; height: 10px; border-radius: 50%; background: linear-gradient(135deg, #f47cb7, #bca7ff); box-shadow: 0 0 0 5px rgba(188,167,255,.08), 0 0 16px rgba(244,124,183,.35); }
.hero-art-chip { position: absolute; right: -1px; top: -3px; z-index: 4; display: inline-flex; align-items: center; gap: 7px; padding: 9px 13px; border: 1px solid rgba(236,209,255,.25); border-radius: 999px; background: rgba(25,17,36,.85); color: #e6d7f8; font-size: .68rem; box-shadow: 0 10px 30px rgba(0,0,0,.22); backdrop-filter: blur(14px); }
.hero-art-chip span { color: #f49dc9; }
.hero-art-stars { position: absolute; inset: 0; pointer-events: none; color: #e7ceff; }
.hero-art-stars span { position: absolute; text-shadow: 0 0 18px rgba(244,166,213,.55); animation: luaTwinkle 3.6s ease-in-out infinite; }
.hero-art-stars span:nth-child(1) { right: 4%; top: 28%; font-size: 1.2rem; }
.hero-art-stars span:nth-child(2) { left: 6%; top: 34%; font-size: .9rem; animation-delay: -1.7s; }
.hero-art-stars span:nth-child(3) { right: 12%; bottom: 12%; font-size: .7rem; animation-delay: -.9s; }
.hero-art-stars span:nth-child(4) { left: 13%; bottom: 27%; font-size: 1rem; animation-delay: -2.3s; }
@keyframes luaTwinkle { 0%,100% { opacity: .35; transform: scale(.85) rotate(0); } 50% { opacity: .95; transform: scale(1.12) rotate(12deg); } }

body[data-temporada="primavera"] .hero-stats { margin-top: 48px; }
.hero-stat { border-radius: 14px; transition: background .25s ease, transform .25s ease; }
.hero-stat:hover { background: rgba(255,255,255,.025); transform: translateY(-2px); }
.hero-stat .n { background: linear-gradient(110deg,#fff7fc,#ffc4e1 55%,#c7b6ff); background-clip: text; -webkit-background-clip: text; color: transparent; }
.hero-stat .l { color: #b8a5c9; letter-spacing: .1em; }

/* A consistent visual language across every public section. */
section { scroll-margin-top: 86px; }
.section-head h2 { background: linear-gradient(105deg,#fff5fc,#f4b9db 52%,#c7b5ff); background-clip: text; -webkit-background-clip: text; color: transparent; }
.section-head p { color: #c6b4d0; }
.feature-card, .command-card, .step, .planes-table, .dashboard-container {
  border: 1px solid rgba(210,188,255,.13);
  background: linear-gradient(145deg, rgba(35,24,48,.59), rgba(17,12,27,.82));
  box-shadow: 0 16px 46px rgba(0,0,0,.13), inset 0 1px 0 rgba(255,255,255,.025);
}
.feature-card { border-radius: 22px; }
.feature-card:hover, .command-card:hover { border-color: rgba(244,166,213,.32); box-shadow: 0 24px 55px rgba(0,0,0,.24), 0 0 35px rgba(188,167,255,.055); }
.feature-icon { border-radius: 16px; }
.feature-card h3, .command-card h3, .step-content h3 { color: #fff2fb; letter-spacing: -.015em; }
.feature-card p, .command-card p, .step-content p { color: #c3b2ce; }
.command { border-radius: 9px; background: rgba(188,167,255,.09); border-color: rgba(188,167,255,.17); color: #eadfff; }
.planes-table { border-radius: 20px; background: rgba(19,13,29,.82); }
.planes-table thead th { background: rgba(188,167,255,.08); color: #fceef9; }
.planes-table tbody tr:nth-child(even) { background: rgba(255,255,255,.015); }
.planes-table td:nth-child(3), .planes-table th:nth-child(3) { color: #e6d5ff; }
.step-number { color: #20132a; box-shadow: 0 7px 20px rgba(244,124,183,.16); }
footer { position: relative; overflow: hidden; padding: 42px 24px 34px; background: linear-gradient(180deg, transparent, rgba(188,167,255,.035)); }
footer p { color: #bdaacb; }

/* The dashboard uses the same controls, but slightly calmer than the artwork. */
.dashboard-container { border-radius: 26px; }
.dashboard-header, .dashboard-topbar { border-color: rgba(210,188,255,.14); }
.config-card, .categoria-card, .server-card, .category-card, .tickets-card, .tickets-category-editor {
  border-color: rgba(210,188,255,.15);
  background-color: rgba(25,17,38,.64);
}
.config-card, .tickets-card, .tickets-category-editor { border-radius: 18px; }
.config-card h3, .tickets-card h3 { color: #fff0fb; }
.config-card label, .tickets-card label, .tickets-category-editor label { color: #e1cde3; }
input, textarea, select, .guild-selector, .tickets-card input, .tickets-card textarea, .tickets-card select,
.tickets-category-editor input, .tickets-category-editor textarea, .tickets-category-editor select {
  accent-color: #f47cb7;
}
input:focus-visible, textarea:focus-visible, select:focus-visible, button:focus-visible, a:focus-visible,
[role="button"]:focus-visible, summary:focus-visible {
  outline: 2px solid #d0baff;
  outline-offset: 3px;
}
.config-save-btn { border-radius: 12px; }
.server-card, .category-card { backdrop-filter: blur(12px); }
.server-card:hover, .category-card:hover { transform: translateY(-2px); box-shadow: 0 16px 35px rgba(0,0,0,.19); }
.loading-spinner { border-top-color: #f47cb7; border-right-color: #bca7ff; }

/* Scroll reveals only turn on when JS and IntersectionObserver are ready. */
.lua-motion-ready .lua-reveal {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .65s ease var(--lua-reveal-delay, 0ms), transform .65s cubic-bezier(.2,.7,.2,1) var(--lua-reveal-delay, 0ms);
}
.lua-motion-ready .lua-reveal.is-visible { opacity: 1; transform: translateY(0); }
.lua-motion-ready .lua-reveal-delay-1 { --lua-reveal-delay: 65ms; }
.lua-motion-ready .lua-reveal-delay-2 { --lua-reveal-delay: 130ms; }
.lua-motion-ready .lua-reveal-delay-3 { --lua-reveal-delay: 195ms; }
@media (hover: hover) and (pointer: fine) {
  .brand img { transition: transform .25s ease, box-shadow .25s ease; }
  .brand:hover img { transform: rotate(-4deg) scale(1.04); box-shadow: 0 0 0 5px rgba(244,124,183,.08), 0 8px 30px rgba(244,124,183,.24); }
  .feature-card, .command-card, .server-card, .category-card { transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease; }
}

@media (max-width: 900px) {
  body[data-temporada="primavera"] .hero-inner {
    grid-template-columns: minmax(0,1fr);
    grid-template-areas: "moon" "symbols" "eyebrow" "title" "lede" "ctas" "showcase" "stats";
    gap: 0;
  }
  body[data-temporada="primavera"] .moon-hero { margin: 0 auto 13px; }
  body[data-temporada="primavera"] .season-symbols { justify-content: center; }
  body[data-temporada="primavera"] .hero h1,
  body[data-temporada="primavera"] .hero p.lede,
  body[data-temporada="primavera"] .eyebrow { text-align: center; margin-left: auto; margin-right: auto; }
  body[data-temporada="primavera"] .hero-ctas { justify-content: center; }
  body[data-temporada="primavera"] .hero-showcase { max-width: min(700px,100%); margin: 28px auto 0; }
}
@media (max-width: 640px) {
  .nav-inner { padding: 11px 16px; }
  .brand img { width: 38px; height: 38px; border-radius: 12px; }
  .brand { font-size: 1.08rem; }
  .hero { padding: 46px 17px 52px; }
  body[data-temporada="primavera"] .hero h1 { font-size: clamp(2.3rem, 11vw, 3.25rem); }
  body[data-temporada="primavera"] .hero p.lede { font-size: .96rem; }
  .hero-ctas { display: grid; grid-template-columns: 1fr; }
  .hero-ctas .btn-primary, .hero-ctas .btn-secondary { width: 100%; }
  .hero-art-composition { padding: 8px 2px 10px; }
  .hero-art-frame { border-radius: 18px; }
  .hero-art-banner { aspect-ratio: 3 / 1; }
  .hero-art-avatar { width: 72px; left: 12px; bottom: 70px; border-radius: 19px; }
  .hero-art-avatar img { border-radius: 15px; }
  .hero-art-note { min-height: 72px; margin: 28px 4px 0 18px; padding: 13px 12px 13px 62px; gap: 8px; border-radius: 16px; }
  .hero-art-note-icon { width: 28px; height: 28px; flex-basis: 28px; }
  .hero-art-note-copy small { font-size: .52rem; letter-spacing: .1em; }
  .hero-art-note-copy strong { font-size: .72rem; }
  .hero-art-live { width: 7px; height: 7px; }
  .hero-art-chip { right: 0; top: -2px; padding: 7px 10px; font-size: .58rem; }
  .hero-art-halo--one { width: 150px; height: 150px; right: -2%; }
  .hero-art-stars span:nth-child(2) { left: 1%; }
  .hero-art-stars span:nth-child(4) { left: 5%; }
  body[data-temporada="primavera"] .hero-stats { margin-top: 30px; gap: 8px; }
  .hero-stat .n { font-size: 1.55rem; }
  .hero-stat .l { font-size: .57rem; }
  section { padding: 64px 17px; }
  .section-head { margin-bottom: 30px; }
  .section-head h2 { font-size: clamp(1.85rem, 8.5vw, 2.45rem); }
  .dashboard-container { padding: 14px; border-radius: 21px; }
  .server-view-topbar, .dashboard-topbar { align-items: flex-start; flex-wrap: wrap; }
  .dashboard-count { width: 100%; text-align: left; }
  .feature-card, .command-card { padding: 19px; }
}
@media (max-width: 380px) {
  .hero-art-avatar { width: 62px; bottom: 73px; }
  .hero-art-note { padding-left: 54px; margin-left: 10px; }
  .hero-art-note-copy strong { font-size: .67rem; }
  .hero-art-chip { font-size: .53rem; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .lua-motion-ready .lua-reveal { opacity: 1 !important; transform: none !important; }
}

/* =========================================================
   CELESTIAL BLOOM · DASHBOARD 2.0
   Full visual system for the authenticated workspace.
   Presentation-only layer; existing application logic is preserved.
========================================================= */
body[data-temporada="primavera"]{
  --void:#0D0A18;
  --void-rgb:13,10,24;
  --night:#171126;
  --night-rgb:23,17,38;
  --night-2:#211832;
  --night2-rgb:33,24,50;
  --panel-border:rgba(207,187,255,.17);
  --moonlight:#FBF5FF;
  --muted:#B7A8CB;
  --muted-dim:#89799E;
  --azul:#F47CB7;
  --azul-soft:rgba(244,124,183,.14);
  --celeste:#C0ABFF;
  --celeste-soft:rgba(192,171,255,.14);
  --frost:#F5DFF5;
  --frost-soft:rgba(245,223,245,.1);
  --spring-leaf:#C5B7FF;
  --spring-leaf-soft:rgba(197,183,255,.11);
  background:
    radial-gradient(ellipse at 7% 10%,rgba(244,124,183,.07),transparent 30%),
    radial-gradient(ellipse at 90% 33%,rgba(160,130,255,.07),transparent 29%),
    linear-gradient(180deg,#100C1D 0%,#0D0A18 60%,#0B0915 100%);
}

#panel{isolation:isolate;}
#panel>.section-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  width:min(100%,1260px);margin:0 auto 28px;text-align:left;
}
#panel>.section-head h2{margin:0;max-width:620px;line-height:1.04;letter-spacing:-.04em;}
#panel>.section-head p{max-width:460px;margin:0 0 3px;color:#BFB0D0;line-height:1.7;font-size:.92rem;}
.dashboard-container{
  width:min(100%,1260px);margin:0 auto 64px;padding:clamp(16px,2.5vw,32px);
  border:1px solid rgba(208,187,255,.16);border-radius:30px;overflow:hidden;isolation:isolate;
  background:
    radial-gradient(ellipse at 100% 0%,rgba(192,171,255,.075),transparent 27%),
    radial-gradient(ellipse at 0% 22%,rgba(244,124,183,.05),transparent 29%),
    linear-gradient(145deg,rgba(25,18,42,.97),rgba(13,10,24,.97));
  box-shadow:0 35px 100px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.035);
}
.dashboard-container::before{z-index:-1;top:-170px;right:-115px;left:auto;width:480px;height:480px;background:radial-gradient(circle,rgba(192,171,255,.09),transparent 68%);}
.dashboard-container::after{content:"";position:absolute;z-index:-1;left:-150px;bottom:-210px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(244,124,183,.055),transparent 68%);pointer-events:none;}
.dashboard-shell{display:grid;gap:24px;min-width:0;}

/* Persistent header and user identity */
.dashboard-topbar{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  margin:0;padding:13px 15px;border:1px solid rgba(214,195,255,.14);border-radius:21px;
  background:linear-gradient(115deg,rgba(255,255,255,.045),rgba(192,171,255,.035) 53%,rgba(244,124,183,.04));
  box-shadow:0 15px 38px rgba(0,0,0,.15),inset 0 1px 0 rgba(255,255,255,.045);backdrop-filter:blur(18px);
}
.dashboard-brand-lockup{display:flex;align-items:center;gap:12px;min-width:0;text-decoration:none;}
.dashboard-brand-symbol{position:relative;display:grid;place-items:center;flex:0 0 47px;width:47px;height:47px;padding:3px;border:1px solid rgba(244,166,213,.24);border-radius:16px;background:linear-gradient(145deg,rgba(244,124,183,.15),rgba(192,171,255,.12));box-shadow:0 0 28px rgba(244,124,183,.1);}
.dashboard-brand-symbol::after{content:"";position:absolute;inset:-5px;border:1px solid rgba(192,171,255,.09);border-radius:19px;pointer-events:none;}
.dashboard-brand-symbol img{width:100%;height:100%;border-radius:12px;object-fit:cover;}
.dashboard-brand-copy{display:grid;gap:1px;min-width:0;}
.dashboard-brand-copy strong{font-family:var(--display);font-size:1.24rem;line-height:1.1;letter-spacing:-.025em;color:#FFF5FD;}
.dashboard-brand-copy small{color:#AE9ABC;font:600 .52rem var(--mono);letter-spacing:.095em;white-space:nowrap;}
.dashboard-topbar-actions{display:flex;align-items:center;gap:14px;min-width:0;}
.dashboard-user{gap:10px;padding:5px 11px 5px 5px;border:1px solid rgba(208,187,255,.12);border-radius:15px;background:rgba(7,5,14,.2);}
.dashboard-user-avatar{width:39px;height:39px;border-radius:13px;border:1px solid rgba(230,208,255,.2);box-shadow:0 4px 17px rgba(0,0,0,.2);}
.dashboard-user-avatar--fallback{display:grid;place-items:center;font-weight:800;color:#21162f;background:linear-gradient(140deg,#F4A6D1,#BCA7FF);}
.dashboard-user-copy{min-width:0;}
.dashboard-user-name{max-width:180px;color:#FFF5FC;font-size:.79rem;font-weight:800;letter-spacing:-.01em;}
.dashboard-user-status{font-size:.64rem;color:#AFA0C1;}
.dashboard-user-status span{width:6px;height:6px;background:#76DDB0;box-shadow:0 0 10px rgba(118,221,176,.52);}
.logout-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 13px;border-color:rgba(208,187,255,.16);border-radius:13px;color:#D8CBE5;font-size:.76rem;font-weight:750;background:rgba(255,255,255,.025);}
.logout-btn>span{font-size:1rem;color:#F4A6D1;}
.logout-btn:hover{border-color:rgba(244,124,183,.4);background:rgba(244,124,183,.09);color:#fff;}

/* Account welcome / server finder */
.dashboard-welcome{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr);align-items:stretch;gap:14px;margin:0;}
.dashboard-welcome-copy{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;min-height:238px;padding:clamp(22px,3.2vw,36px);overflow:hidden;border:1px solid rgba(208,187,255,.14);border-radius:23px;background:radial-gradient(circle at 7% 100%,rgba(244,124,183,.1),transparent 45%),linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.008));}
.dashboard-welcome-copy::after{content:"✧";position:absolute;right:25px;top:14px;color:rgba(209,190,255,.3);font-size:2.5rem;animation:dashboardTwinkle 4s ease-in-out infinite;pointer-events:none;}
.dashboard-eyebrow{display:flex;align-items:center;gap:8px;color:#B9A6D4;font:700 .58rem var(--mono);letter-spacing:.14em;text-transform:uppercase;}
.dashboard-eyebrow-dot{display:inline-block;flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,#F4A6D1,#BCA7FF);box-shadow:0 0 13px rgba(244,124,183,.55);}
.dashboard-welcome h3{margin:15px 0 10px;font-size:clamp(1.8rem,3vw,2.55rem);line-height:1.02;letter-spacing:-.05em;font-family:var(--display);font-weight:600;color:#FFF5FE;text-wrap:balance;}
.welcome-sparkle{display:inline-block;margin-left:8px;color:#F4A6D1;font:normal .55em var(--body-font);vertical-align:top;animation:dashboardTwinkle 3.7s ease-in-out infinite;}
.dashboard-welcome p{max-width:570px;margin:0;color:#BEB0CD;font-size:.83rem;line-height:1.75;}
.dashboard-welcome-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
.dashboard-welcome-tags span{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid rgba(208,187,255,.13);border-radius:999px;background:rgba(255,255,255,.025);color:#BFAED5;font-size:.61rem;font-weight:700;}
.dashboard-welcome-visual{position:relative;min-height:238px;overflow:hidden;border:1px solid rgba(244,166,213,.2);border-radius:23px;background:#21142B;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 20px 55px rgba(0,0,0,.16);isolation:isolate;}
.dashboard-welcome-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.dashboard-welcome-visual-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,10,27,.02),rgba(17,10,27,.35) 46%,rgba(13,9,22,.96)),linear-gradient(90deg,rgba(22,13,34,.18),transparent 65%);}
.dashboard-welcome-visual::after{content:"";position:absolute;inset:10px;border:1px solid rgba(255,227,249,.18);border-radius:16px;pointer-events:none;}
.dashboard-count{position:absolute;z-index:3;left:24px;bottom:23px;right:24px;min-width:0;padding:0;border:0;background:none;text-align:left;}
.dashboard-count-label{display:block;margin-bottom:4px;color:#F9CDE8;font:700 .56rem var(--mono);letter-spacing:.16em;}
.dashboard-count strong{display:inline-block;margin-right:9px;font-family:var(--display);font-size:2.35rem;line-height:1;color:#FFF8FE;text-shadow:0 4px 22px rgba(0,0,0,.3);}
.dashboard-count>span:last-child{color:#E5D7E9;font-size:.72rem;}
.dashboard-visual-orbit{position:absolute;z-index:2;border:1px solid rgba(255,237,255,.25);border-radius:50%;pointer-events:none;}
.dashboard-visual-orbit--one{width:170px;height:170px;right:-45px;top:-52px;box-shadow:0 0 50px rgba(244,124,183,.1);animation:dashboardOrbit 22s linear infinite;}
.dashboard-visual-orbit--two{width:115px;height:115px;right:15px;top:-25px;border-color:rgba(192,171,255,.2);animation:dashboardOrbit 16s linear infinite reverse;}
.server-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:5px 0 4px;padding:5px 1px 0;}
.server-toolbar-title{min-width:0;}
.server-toolbar-title h4{margin:7px 0 2px;font-family:var(--display);font-size:1.45rem;line-height:1.1;letter-spacing:-.03em;color:#FBF4FF;}
.server-toolbar-title p{margin:0;color:#9484AA;font-size:.76rem;}
.server-toolbar-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px;min-width:0;}
.server-search{width:min(320px,100%);border-color:rgba(208,187,255,.15);border-radius:13px;background:rgba(7,5,15,.3);}
.server-search>span{font-size:1.35rem;color:#C4ADE5;}
.server-search input{padding:11px 0;font-size:.76rem;min-width:0;}
.server-search input::placeholder{color:#827490;}
.server-search kbd{display:inline-grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border:1px solid rgba(208,187,255,.19);border-radius:6px;background:rgba(255,255,255,.035);color:#AFA0C1;font:600 .72rem var(--mono);}
.server-toolbar-hint{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid rgba(208,187,255,.1);border-radius:999px;background:rgba(255,255,255,.02);font:600 .61rem var(--mono);letter-spacing:.02em;text-transform:none;color:#AFA0C1;white-space:nowrap;}
.server-toolbar-hint i{display:block;width:6px;height:6px;border-radius:50%;background:#78DDB1;box-shadow:0 0 10px rgba(120,221,177,.5);}
.server-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,265px),1fr));gap:13px;}
.server-card{min-width:0;min-height:89px;gap:13px;padding:15px;border-color:rgba(205,185,255,.14);border-radius:18px;background:linear-gradient(140deg,rgba(255,255,255,.035),rgba(255,255,255,.012));box-shadow:inset 0 1px 0 rgba(255,255,255,.025);}
.server-card::before{background:radial-gradient(circle at 0 0,rgba(244,124,183,.14),transparent 44%);}
.server-card::after{width:150px;height:150px;right:-54px;bottom:-82px;background:radial-gradient(circle,rgba(192,171,255,.11),transparent 69%);}
.server-card:hover,.server-card:focus-visible{transform:translateY(-3px);border-color:rgba(244,166,213,.38);background:linear-gradient(140deg,rgba(244,124,183,.07),rgba(192,171,255,.035));box-shadow:0 18px 38px rgba(0,0,0,.23),0 0 0 1px rgba(244,166,213,.04);}
.server-card-icon{position:relative;width:49px;height:49px;border-radius:16px;background:linear-gradient(145deg,rgba(244,124,183,.17),rgba(192,171,255,.13));border-color:rgba(244,166,213,.17);box-shadow:0 6px 20px rgba(0,0,0,.12);}
.server-card-icon img{object-fit:cover;}
.server-card-body strong{color:#F6ECFC;font-size:.86rem;font-weight:800;}
.server-card-body small{color:#9788AC;font-size:.64rem;}
.server-card-body small i{width:6px;height:6px;background:#7ADFB2;}
.server-card-arrow{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid rgba(208,187,255,.14);border-radius:10px;background:rgba(255,255,255,.025);color:#E7C9ED;font-size:1rem;}
.server-card:hover .server-card-arrow{border-color:rgba(244,166,213,.26);background:rgba(244,124,183,.1);}
.server-search-empty{margin-top:8px;border-color:rgba(208,187,255,.16);background:rgba(255,255,255,.018);}
.server-search-empty>span{color:#EAA4D1;}

/* Selected server home and module selector */
.server-view{display:grid;gap:21px;animation:dashboardEnter .35s cubic-bezier(.2,.7,.2,1) both;}
.server-view-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0;}
.workspace-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:10px;min-width:0;}
.workspace-back{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:39px;padding:9px 12px;border-color:rgba(208,187,255,.16);border-radius:12px;background:rgba(255,255,255,.025);color:#D3C4E2;font-size:.74rem;font-weight:750;}
.workspace-back>span:first-child{font-size:1.02rem;color:#F4A6D1;}
.workspace-back:hover{color:#FFF;border-color:rgba(244,166,213,.35);background:rgba(244,124,183,.07);}
.workspace-breadcrumb-divider{color:#5C4E70;}
.workspace-breadcrumb-current{color:#9484A9;font-size:.7rem;}
.workspace-server{gap:10px;padding:6px 11px 6px 6px;border:1px solid rgba(208,187,255,.13);border-radius:15px;background:rgba(255,255,255,.025);margin-left:auto;}
.workspace-server-icon{width:40px;height:40px;flex:none;border-radius:13px;border:1px solid rgba(244,166,213,.17);background:linear-gradient(135deg,rgba(244,124,183,.14),rgba(192,171,255,.12));color:#F5CBE8;}
.workspace-server div{text-align:left;}
.workspace-server small{font-size:.52rem;letter-spacing:.1em;color:#A99ABF;}
.workspace-server strong{max-width:205px;color:#F6EDFB;font-size:.78rem;}
.workspace-server-chevron{color:#9E8AB9;font-size:1rem;}
.category-intro--hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:190px;gap:18px;margin:0;padding:clamp(20px,3vw,31px);overflow:hidden;border:1px solid rgba(208,187,255,.15);border-radius:24px;background:linear-gradient(110deg,rgba(25,17,40,.94),rgba(34,20,43,.82));box-shadow:0 17px 45px rgba(0,0,0,.13),inset 0 1px 0 rgba(255,255,255,.03);}
.category-intro--hero::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 9% 100%,rgba(244,124,183,.09),transparent 40%),radial-gradient(circle at 84% 0%,rgba(192,171,255,.08),transparent 33%);pointer-events:none;}
.category-intro-copy{position:relative;z-index:2;max-width:610px;}
.category-intro h3{margin:13px 0 9px;font-size:clamp(1.65rem,3vw,2.25rem);line-height:1.05;color:#FFF4FD;}
.category-intro p{max-width:550px;font-size:.8rem;line-height:1.75;color:#B5A6C8;}
.category-intro-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px;}
.category-intro-tags span{padding:5px 9px;border:1px solid rgba(208,187,255,.12);border-radius:999px;background:rgba(255,255,255,.02);color:#BDAED0;font-size:.59rem;font-weight:750;}
.category-intro-art{position:absolute;z-index:0;inset:0 0 0 auto;width:42%;height:100%;overflow:hidden;opacity:.48;pointer-events:none;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.45) 23%,#000 100%);}
.category-intro-art img{width:100%;height:100%;object-fit:cover;object-position:65% center;}
.category-intro-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,16,37,.45),rgba(24,16,37,.05) 70%,rgba(24,16,37,.32));}
.category-intro-art>span{position:absolute;z-index:2;color:#FFF0FF;text-shadow:0 0 20px rgba(244,166,213,.65);animation:dashboardTwinkle 3.4s ease-in-out infinite;}
.category-intro-art>span:nth-child(2){right:21%;top:22%;font-size:1.3rem;}
.category-intro-art>span:nth-child(3){right:13%;bottom:19%;font-size:.95rem;animation-delay:-1.1s;}
.server-ready-pill{position:relative;z-index:2;flex:none;padding:8px 11px;border:1px solid rgba(128,222,179,.17);border-radius:999px;background:rgba(93,204,149,.055);color:#A1E4C3;font-size:.65rem;font-weight:750;}
.server-ready-pill span{background:#7ADFB2;}
.category-grid--workspace{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:0;}
.category-card{position:relative;isolation:isolate;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;min-height:124px;padding:17px;border-color:rgba(205,185,255,.13);border-radius:19px;background:linear-gradient(145deg,rgba(255,255,255,.037),rgba(255,255,255,.012));box-shadow:inset 0 1px 0 rgba(255,255,255,.035);overflow:hidden;}
.category-card::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 0% 0%,rgba(244,124,183,.09),transparent 52%);opacity:0;transition:opacity .25s ease;}
.category-card:hover::before,.category-card:focus-visible::before{opacity:1;}
.category-card:hover,.category-card:focus-visible{border-color:rgba(244,166,213,.38);background:linear-gradient(145deg,rgba(244,124,183,.055),rgba(255,255,255,.02));box-shadow:0 17px 36px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.05);}
.category-icon{width:45px;height:45px;border-radius:15px;border-color:rgba(244,166,213,.16);background:linear-gradient(145deg,rgba(244,124,183,.12),rgba(192,171,255,.11));color:#F6B3D5;box-shadow:inset 0 1px 0 rgba(255,255,255,.035);}
.category-card:nth-child(2) .category-icon,.category-card:nth-child(6) .category-icon{background:linear-gradient(145deg,rgba(192,171,255,.15),rgba(244,124,183,.07));color:#CEBAFF;}
.category-card:nth-child(3) .category-icon{background:rgba(244,124,183,.1);color:#FFB5D9;}
.category-card:nth-child(4) .category-icon{background:rgba(192,171,255,.1);color:#CCBDFF;}
.category-card:nth-child(5) .category-icon{background:rgba(246,192,222,.1);color:#F8C5E2;}
.category-card span:nth-child(2){gap:2px;}
.category-card strong{font-size:.87rem;font-weight:800;color:#F8F0FC;}
.category-card small{font-size:.67rem;line-height:1.45;color:#9E8FB4;}
.category-card>b{display:grid;place-items:center;width:26px;height:26px;border:1px solid rgba(208,187,255,.12);border-radius:9px;color:#BCA6D5;font-weight:500;}
.category-card:hover>b{background:rgba(244,124,183,.1);border-color:rgba(244,166,213,.2);color:#F6C0DF;}
.category-status{width:max-content;max-width:100%;margin-top:7px;padding:4px 7px;font-size:.53rem!important;letter-spacing:.055em;}
.category-status--on{background:rgba(100,218,157,.085);color:#91DDB4;}
.category-status--premium{background:rgba(192,171,255,.11);color:#D1BCFF;}
.category-loading{padding:25px 0;color:#BBAAD1;}

/* Module settings, forms and editors share one visual language. */
.config-detail-header{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:15px;margin:0 0 22px;padding:0 0 20px;border-bottom:1px solid rgba(208,187,255,.12);overflow:visible;}
.config-detail-header::after{width:240px;background:linear-gradient(90deg,transparent,rgba(244,166,213,.27));}
.config-detail-header>div{flex:initial;}
.config-detail-brandmark{display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid rgba(244,166,213,.19);border-radius:16px;background:linear-gradient(145deg,rgba(244,124,183,.16),rgba(192,171,255,.13));color:#F4B1D6;font-size:1.3rem;box-shadow:0 8px 22px rgba(0,0,0,.13);}
.config-detail-copy{min-width:0;}
.config-detail-copy .dashboard-eyebrow{margin-bottom:5px;}
.config-detail-header h3{margin:0 0 5px;color:#FFF4FE;font-size:clamp(1.5rem,3vw,2rem);line-height:1.05;letter-spacing:-.045em;}
.config-detail-header p{max-width:620px;color:#AFA0C1;line-height:1.65;font-size:.77rem;}
.config-detail-lua-mark{align-self:start;padding:7px 9px;border:1px solid rgba(208,187,255,.13);border-radius:999px;background:rgba(255,255,255,.02);color:#BFAAD5;font:600 .54rem var(--mono);letter-spacing:.09em;white-space:nowrap;}
.config-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;}
.config-grid--focused{display:grid;grid-template-columns:minmax(0,1fr);gap:15px;}
.config-card,.tickets-card,.tickets-category-editor,.levels-setting-block,.general-setting-block,.moderation-setting-block,.role-manager-list,.registro-channel-item{
  border:1px solid rgba(208,187,255,.13)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 14px 35px rgba(0,0,0,.09);
}
.config-card,.tickets-card,.tickets-category-editor{padding:clamp(16px,2vw,23px)!important;border-radius:19px!important;min-width:0;}
.config-card.full-width{grid-column:1/-1;}
.config-card h3,.tickets-card h3,.config-card-heading h3{font-size:1.04rem;color:#FFF1FC;letter-spacing:-.02em;}
.config-card-subtitle,.config-help,.config-card p,.tickets-card p,.tickets-category-editor small{color:#AFA0C2;line-height:1.65;}
.config-card-heading{padding-bottom:12px;margin-bottom:14px;border-bottom:1px solid rgba(208,187,255,.085);}
.config-card-heading .dashboard-eyebrow{margin-bottom:7px;}
.config-card label,.tickets-card label,.tickets-category-editor label{display:block;margin-bottom:7px;color:#E4D3EC;font-size:.74rem;font-weight:750;}
.dashboard-container input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),
.dashboard-container textarea,
.dashboard-container select,
.dashboard-container .guild-selector{
  width:100%;min-width:0;max-width:100%;min-height:43px;padding:10px 12px;margin:0 0 14px;
  border:1px solid rgba(208,187,255,.16);border-radius:11px;outline:none;
  background:rgba(9,7,17,.52);color:#F8F0FC;font:500 .8rem var(--body-font);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.dashboard-container textarea{min-height:104px;resize:vertical;line-height:1.65;}
.dashboard-container input::placeholder,.dashboard-container textarea::placeholder{color:#746681;}
.dashboard-container select{cursor:pointer;}
.dashboard-container select option{background:#171126;color:#FAF3FF;}
.dashboard-container input:focus,.dashboard-container textarea:focus,.dashboard-container select:focus{border-color:rgba(244,166,213,.56);background:rgba(14,9,23,.8);box-shadow:0 0 0 3px rgba(244,124,183,.09);}
.dashboard-container input[type="checkbox"],.dashboard-container input[type="radio"]{accent-color:#F47CB7;}
.dashboard-container input[type="color"]{width:100%;min-height:42px;padding:4px;border:1px solid rgba(208,187,255,.16);border-radius:11px;background:rgba(9,7,17,.52);cursor:pointer;}
.dashboard-container input[type="range"]{accent-color:#F47CB7;}
.dashboard-container button:disabled{cursor:not-allowed;opacity:.55;filter:saturate(.55);}
.config-save-btn,.categoria-add-btn,.tickets-save-row .btn-primary,.tickets-save-row .btn-secondary,.btn-primary,.btn-secondary{
  min-height:42px;border-radius:12px;font-size:.77rem;font-weight:800;letter-spacing:-.005em;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease;
}
.config-save-btn{padding:11px 17px;border:1px solid rgba(244,166,213,.25);background:linear-gradient(115deg,#E977B4,#AFA0FF);color:#25162D;box-shadow:0 9px 24px rgba(222,124,189,.14);}
.config-save-btn:hover{transform:translateY(-1px);background:linear-gradient(115deg,#F38CC3,#C1B3FF);color:#21142A;box-shadow:0 13px 29px rgba(222,124,189,.2);}
.categoria-add-btn{padding:9px 13px;border:1px solid rgba(208,187,255,.19);background:rgba(192,171,255,.07);color:#E2D4FF;}
.categoria-add-btn:hover{background:rgba(192,171,255,.13);border-color:rgba(192,171,255,.38);}
.btn-primary{background:linear-gradient(115deg,#F08ABF,#BCA7FF);color:#29182F;box-shadow:0 11px 28px rgba(210,122,194,.2);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(210,122,194,.27);}
.btn-secondary{background:rgba(255,255,255,.035);border-color:rgba(208,187,255,.19);color:#E3D7F0;}
.btn-secondary:hover{border-color:rgba(244,166,213,.38);background:rgba(244,124,183,.07);}
.config-save-btn:active,.categoria-add-btn:active,.btn-primary:active,.btn-secondary:active{transform:translateY(0) scale(.99);}
.config-help{font-size:.7rem;}
.config-help code{padding:2px 5px;border:1px solid rgba(208,187,255,.14);border-radius:5px;background:rgba(192,171,255,.06);color:#E7C5E7;}
.config-card .switch .slider,.config-card .switch--small .slider{box-shadow:inset 0 0 0 1px rgba(208,187,255,.14);}
.general-setting-block,.levels-setting-block,.moderation-setting-block{padding:15px!important;border-radius:15px!important;}
.general-settings-grid,.levels-settings-grid,.moderation-fields-grid{gap:13px;}
.setting-block-heading strong,.levels-editor-heading h4{color:#F5EAFB;}
.setting-block-heading span,.levels-editor-heading p{color:#AFA0C1;}
.levels-section-divider{border-color:rgba(208,187,255,.1);}
.levels-repeatable-row,.levels-empty-row,.registro-channel-item{border-radius:13px;background:rgba(255,255,255,.018);}
.levels-repeatable-row{border-color:rgba(208,187,255,.1);}
.levels-row-index{background:rgba(244,124,183,.1);color:#F5ACD1;}
.levels-save-bar{border-color:rgba(208,187,255,.15);border-radius:16px;background:linear-gradient(115deg,rgba(244,124,183,.055),rgba(192,171,255,.045));}
.status-badge{border:1px solid rgba(208,187,255,.1);background:rgba(255,255,255,.025);}
.limit-pill{border-color:rgba(208,187,255,.16);background:rgba(255,255,255,.025);color:#C1B2D2;}
.config-card .moderation-guide>div{border-color:rgba(208,187,255,.12);background:rgba(255,255,255,.022);}
.config-card .moderation-guide span{background:linear-gradient(135deg,#F08ABF,#BCA7FF);color:#261730;}

/* Tickets are the densest module: tabs, nested message editors and previews stay calm and legible. */
.tickets-config-shell{display:grid;gap:15px;}
.tickets-detail-header{margin-bottom:0;}
.tickets-main-tabs{position:sticky;top:8px;z-index:5;display:flex;gap:7px;padding:6px;border:1px solid rgba(208,187,255,.13);border-radius:15px;background:rgba(19,13,31,.91);box-shadow:0 12px 30px rgba(0,0,0,.15);backdrop-filter:blur(18px);}
.tickets-main-tab{flex:1 1 155px;border:1px solid transparent;border-radius:10px;padding:11px 12px;color:#AFA0C2;font-size:.75rem;font-weight:800;transition:background .2s ease,color .2s ease,border-color .2s ease;}
.tickets-main-tab:hover{color:#F8EAF6;background:rgba(255,255,255,.035);}
.tickets-main-tab.is-active{border-color:rgba(244,166,213,.2);background:linear-gradient(135deg,rgba(244,124,183,.15),rgba(192,171,255,.12));color:#FFF1FC;box-shadow:inset 0 1px 0 rgba(255,255,255,.03);}
.tickets-adv-toggle{border-color:rgba(208,187,255,.15);color:#BBA8D1;}
.tickets-card,.tickets-category-editor{background:linear-gradient(145deg,rgba(255,255,255,.034),rgba(255,255,255,.012))!important;}
.tickets-card h3,.tickets-category-editor h3{color:#FFF0FC;}
.tickets-category-heading{gap:12px;}
.tickets-category-number{border:1px solid rgba(244,166,213,.2);background:linear-gradient(145deg,rgba(244,124,183,.15),rgba(192,171,255,.13));color:#F5C0DF;}
.tickets-category-messages{border-color:rgba(192,171,255,.19);border-radius:14px;background:rgba(192,171,255,.035);}
.tickets-message-subeditor{border-color:rgba(208,187,255,.13);border-radius:12px;background:rgba(7,5,15,.18);}
.tickets-message-subeditor>summary,.tickets-category-messages>summary{color:#E9D9F4;}
.tickets-preview{border-radius:14px;border-color:rgba(208,187,255,.17);box-shadow:inset 0 1px 0 rgba(255,255,255,.025);}
.tickets-preview-button{box-shadow:0 5px 14px rgba(0,0,0,.14);}
.tickets-pv-wrap{padding:4px;border-radius:15px;background:rgba(255,255,255,.018);border:1px solid rgba(208,187,255,.1);}
.tickets-stats-grid article{min-height:120px;padding:16px;border:1px solid rgba(208,187,255,.14);border-radius:16px;background:linear-gradient(145deg,rgba(244,124,183,.05),rgba(192,171,255,.035));}
.tickets-stats-grid strong{font-family:var(--display);font-size:2rem;color:#FFF1FC;}
.tickets-stat-row{gap:16px;border-color:rgba(208,187,255,.09);color:#C8BAD7;font-size:.76rem;}
.tickets-stat-row strong{color:#F7D5EA;font-family:var(--body-font);font-size:.82rem;white-space:nowrap;}
.tickets-guide,.tickets-status-card{border-radius:17px;}
.tickets-save-row{position:sticky;bottom:8px;z-index:4;align-items:center;padding:12px;border:1px solid rgba(208,187,255,.15);border-radius:16px;background:rgba(17,11,27,.94);box-shadow:0 14px 40px rgba(0,0,0,.28);backdrop-filter:blur(18px);}
.tickets-save-row .btn-primary{background:linear-gradient(115deg,#F08ABF,#BCA7FF);color:#29182F;}
.tickets-save-row .config-save-btn,.tickets-save-row .btn-primary{padding-inline:15px;}
.tickets-dirty{color:#F8C2A5;}
.tickets-empty,.server-search-empty{color:#AFA0C1;}

/* States, errors, and waiting screens */
.panel-message{border-radius:14px;padding:0 14px;margin:0 0 12px;transition:all .2s ease;}
.panel-message.show{padding:12px 14px;border:1px solid rgba(208,187,255,.15);}
.panel-message.success{border-color:rgba(118,221,176,.24);background:rgba(118,221,176,.075);color:#BBF0D2;}
.panel-message.error{border-color:rgba(255,123,155,.3);background:rgba(255,123,155,.075);color:#FFC6D5;}
.panel-message.info{border-color:rgba(192,171,255,.22);background:rgba(192,171,255,.065);color:#DDD0FF;}
.loading--brand{display:flex;align-items:center;justify-content:center;gap:19px;min-height:180px;padding:32px;border:1px solid rgba(208,187,255,.13);border-radius:21px;background:radial-gradient(circle at 0 0,rgba(244,124,183,.07),transparent 45%),rgba(255,255,255,.015);}
.loading-brand-orbit{position:relative;display:grid;place-items:center;flex:0 0 66px;width:66px;height:66px;border:1px solid rgba(244,166,213,.22);border-radius:22px;background:linear-gradient(145deg,rgba(244,124,183,.12),rgba(192,171,255,.12));animation:dashboardFloat 4s ease-in-out infinite;}
.loading-brand-orbit::before{content:"";position:absolute;inset:-7px;border:1px dashed rgba(192,171,255,.23);border-radius:25px;animation:dashboardOrbit 13s linear infinite;}
.loading-brand-orbit img{width:100%;height:100%;padding:4px;border-radius:21px;object-fit:cover;}
.loading-copy{display:grid;gap:5px;min-width:0;}
.loading-copy strong{color:#F9EFFB;font-family:var(--display);font-size:1.2rem;}
.loading-copy>span{color:#B1A1C6;font-size:.78rem;}
.loading-progress{width:min(240px,55vw);height:4px;margin-top:8px;border-radius:99px;overflow:hidden;background:rgba(208,187,255,.12);}
.loading-progress i{display:block;width:40%;height:100%;border-radius:99px;background:linear-gradient(90deg,#F47CB7,#BCA7FF);box-shadow:0 0 16px rgba(244,124,183,.45);animation:loadingSweep 1.5s ease-in-out infinite alternate;}
.empty-guilds--large{position:relative;overflow:hidden;border:1px dashed rgba(208,187,255,.17);border-radius:22px;background:radial-gradient(circle at 50% 0,rgba(192,171,255,.06),transparent 50%),rgba(255,255,255,.012);}
.empty-guilds--large .empty-icon{border:1px solid rgba(208,187,255,.17);border-radius:18px;background:linear-gradient(145deg,rgba(244,124,183,.1),rgba(192,171,255,.1));color:#F1B2D5;}
.empty-guilds--large h3{color:#F8EEFB;}
.empty-guilds--large p{color:#AFA0C1;font-size:.83rem;line-height:1.7;}

/* Custom login card and brand art */
.login-prompt{padding:0;border-color:rgba(208,187,255,.16);border-radius:24px;background:linear-gradient(120deg,rgba(27,18,43,.98),rgba(16,11,27,.98));text-align:left;}
.login-prompt::before{display:none;}
.login-prompt-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(260px,1.05fr);min-height:360px;}
.login-prompt-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(22px,3.2vw,42px);min-width:0;}
.login-prompt-brand{display:flex;align-items:center;gap:10px;margin-bottom:28px;}
.login-prompt-brand img{width:43px;height:43px;object-fit:cover;border-radius:14px;border:1px solid rgba(244,166,213,.2);}
.login-prompt-brand>span{display:grid;gap:1px;}
.login-prompt-brand strong{font-family:var(--display);font-size:1.1rem;color:#FFF3FC;}
.login-prompt-brand small{font:600 .51rem var(--mono);letter-spacing:.09em;color:#A998C1;}
.login-prompt-copy .dashboard-eyebrow{margin-bottom:8px;}
.login-prompt h3{font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.04;letter-spacing:-.045em;color:#FFF1FB;}
.login-prompt p{margin:0 0 22px;max-width:430px;color:#B6A7C7;font-size:.82rem;line-height:1.75;text-align:left;}
.login-prompt-copy .btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 17px;text-decoration:none;}
.login-prompt-note{display:flex;align-items:center;gap:7px;margin-top:14px;color:#9A8BAF;font-size:.64rem;}
.login-prompt-note span{width:6px;height:6px;border-radius:50%;background:#7DDBB1;box-shadow:0 0 9px rgba(125,219,177,.44);}
.login-prompt-art{position:relative;min-height:300px;overflow:hidden;border-radius:0 23px 23px 0;background:#1a1128;isolation:isolate;}
.login-prompt-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.login-prompt-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,16,37,.28),transparent 50%),linear-gradient(0deg,rgba(13,9,22,.68),transparent 55%);}
.login-prompt-art-glow{position:absolute;z-index:1;width:220px;height:220px;right:-65px;top:-60px;border:1px solid rgba(255,238,255,.4);border-radius:50%;box-shadow:0 0 70px rgba(244,124,183,.18),inset 0 0 40px rgba(192,171,255,.12);animation:dashboardOrbit 24s linear infinite;}
.login-prompt-art-star{position:absolute;z-index:2;color:#FFF0FB;text-shadow:0 0 18px rgba(244,166,213,.9);animation:dashboardTwinkle 3.2s ease-in-out infinite;}
.login-prompt-art-star--one{top:20%;left:15%;font-size:1.25rem;}
.login-prompt-art-star--two{right:13%;top:40%;font-size:1.7rem;animation-delay:-1.4s;}
.login-prompt-art-caption{position:absolute;z-index:3;left:22px;right:22px;bottom:22px;color:#FFF0F9;font:600 .63rem var(--mono);letter-spacing:.13em;text-transform:uppercase;}

/* Focus and small interactions */
.dashboard-container :focus-visible{outline:2px solid #EFC3FF;outline-offset:3px;}
.dashboard-container [hidden]{display:none!important;}
@keyframes dashboardEnter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes dashboardFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes dashboardOrbit{to{transform:rotate(360deg)}}
@keyframes dashboardTwinkle{0%,100%{opacity:.48;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}
@keyframes loadingSweep{from{transform:translateX(-10%)}to{transform:translateX(145%)}}
.server-card{animation:dashboardEnter .38s cubic-bezier(.2,.7,.2,1) both;}
.server-card:nth-child(2){animation-delay:35ms}.server-card:nth-child(3){animation-delay:70ms}.server-card:nth-child(4){animation-delay:105ms}.server-card:nth-child(5){animation-delay:140ms}.server-card:nth-child(6){animation-delay:175ms}
.category-card{animation:dashboardEnter .34s cubic-bezier(.2,.7,.2,1) both;}
.category-card:nth-child(2){animation-delay:35ms}.category-card:nth-child(3){animation-delay:70ms}.category-card:nth-child(4){animation-delay:105ms}.category-card:nth-child(5){animation-delay:140ms}.category-card:nth-child(6){animation-delay:175ms}.category-card:nth-child(7){animation-delay:210ms}

@media(max-width:1000px){
  #panel>.section-head{align-items:flex-start;flex-direction:column;gap:10px;}
  .dashboard-welcome{grid-template-columns:minmax(0,1fr) minmax(230px,.72fr);}
  .category-grid--workspace{grid-template-columns:repeat(2,minmax(0,1fr));}
  .config-grid{grid-template-columns:minmax(0,1fr);}
  .config-detail-lua-mark{display:none;}
}
@media(max-width:700px){
  #panel>.section-head{margin-bottom:22px;}
  .dashboard-container{padding:14px;border-radius:22px;}
  .dashboard-shell{gap:17px;}
  .dashboard-topbar{align-items:flex-start;flex-direction:column;padding:12px;border-radius:17px;gap:12px;}
  .dashboard-brand-symbol{width:41px;height:41px;flex-basis:41px;border-radius:14px;}
  .dashboard-brand-copy strong{font-size:1.1rem;}
  .dashboard-brand-copy small{font-size:.47rem;letter-spacing:.075em;}
  .dashboard-topbar-actions{width:100%;justify-content:space-between;gap:8px;}
  .dashboard-user{min-width:0;max-width:calc(100% - 105px);}
  .dashboard-user-avatar{width:34px;height:34px;border-radius:11px;}
  .dashboard-user-name{max-width:145px;font-size:.74rem;}
  .dashboard-user-status{font-size:.58rem;}
  .logout-btn{min-height:38px;padding:8px 10px;font-size:.65rem;white-space:nowrap;}
  .dashboard-welcome{grid-template-columns:minmax(0,1fr);gap:10px;}
  .dashboard-welcome-copy{min-height:0;padding:22px 18px;border-radius:19px;}
  .dashboard-welcome h3{font-size:clamp(1.7rem,7.8vw,2.15rem);}
  .dashboard-welcome p{font-size:.76rem;}
  .dashboard-welcome-tags{gap:6px;}
  .dashboard-welcome-tags span{font-size:.57rem;}
  .dashboard-welcome-visual{min-height:150px;aspect-ratio:2.7/1;border-radius:19px;}
  .dashboard-count{left:20px;right:20px;bottom:17px;}
  .dashboard-count strong{font-size:1.85rem;}
  .dashboard-count>span:last-child{font-size:.65rem;}
  .server-toolbar{align-items:stretch;flex-direction:column;gap:12px;margin-top:4px;}
  .server-toolbar-title h4{font-size:1.35rem;}
  .server-toolbar-controls{justify-content:stretch;align-items:stretch;flex-direction:column;gap:7px;}
  .server-search{width:100%;}
  .server-toolbar-hint{align-self:flex-start;}
  .server-grid{grid-template-columns:minmax(0,1fr);gap:9px;}
  .server-card{min-height:78px;padding:12px;border-radius:15px;}
  .server-card-icon{width:43px;height:43px;border-radius:13px;}
  .server-view{gap:15px;}
  .server-view-topbar{align-items:stretch;flex-direction:column;gap:10px;margin:0;}
  .workspace-breadcrumbs{gap:7px;}
  .workspace-breadcrumb-current{font-size:.64rem;}
  .workspace-server{width:100%;margin-left:0;}
  .workspace-server div{flex:1;text-align:left;}
  .category-intro--hero{align-items:flex-start;flex-direction:column;gap:14px;min-height:0;padding:20px 17px;border-radius:19px;}
  .category-intro-copy{width:100%;}
  .category-intro-art{width:70%;opacity:.25;}
  .category-intro--hero .server-ready-pill{align-self:flex-start;}
  .category-grid--workspace{grid-template-columns:minmax(0,1fr);gap:9px;}
  .category-card{min-height:95px;padding:14px;border-radius:16px;}
  .category-icon{width:41px;height:41px;border-radius:13px;}
  .config-detail-header{grid-template-columns:auto minmax(0,1fr);gap:10px 12px;padding-bottom:16px;}
  .config-detail-header>.workspace-back{grid-column:1/-1;justify-self:start;}
  .config-detail-brandmark{width:42px;height:42px;border-radius:13px;grid-column:1;grid-row:2;}
  .config-detail-copy{grid-column:2;grid-row:2;}
  .config-detail-header h3{font-size:1.48rem;}
  .config-detail-header p{font-size:.72rem;}
  .config-grid,.config-grid--focused{grid-template-columns:minmax(0,1fr);gap:11px;}
  .config-card,.tickets-card,.tickets-category-editor{padding:15px!important;border-radius:16px!important;}
  .tickets-main-tabs{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:5px;}
  .tickets-main-tab{min-width:0;padding:10px 7px;font-size:.69rem;}
  .tickets-adv-toggle{margin-left:0!important;white-space:normal;}
  .tickets-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .tickets-stats-grid article{min-height:103px;padding:12px;}
  .tickets-stats-grid strong{font-size:1.65rem;}
  .tickets-stat-row{align-items:flex-start;flex-direction:column;gap:5px;}
  .tickets-save-row{position:static;display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:8px;}
  .tickets-save-row .config-save-btn,.tickets-save-row .btn-primary,.tickets-save-row .btn-secondary{width:100%;}
  .tickets-dirty{margin-right:0;}
  .login-prompt-layout{grid-template-columns:minmax(0,1fr);}
  .login-prompt-copy{padding:24px 20px;}
  .login-prompt-brand{margin-bottom:22px;}
  .login-prompt-art{min-height:180px;max-height:220px;border-radius:0 0 23px 23px;}
  .loading--brand{min-height:145px;padding:22px 15px;gap:14px;}
  .loading-brand-orbit{flex-basis:51px;width:51px;height:51px;border-radius:17px;}
  .loading-brand-orbit img{border-radius:14px;}
  .loading-copy strong{font-size:1.02rem;}
}
@media(max-width:420px){
  .dashboard-container{padding:10px;border-radius:19px;}
  .dashboard-topbar-actions{align-items:flex-start;}
  .dashboard-user-copy{max-width:128px;}
  .dashboard-user-name{max-width:126px;}
  .logout-btn{gap:5px;font-size:.6rem;padding:8px;}
  .dashboard-welcome-copy{padding:19px 15px;}
  .dashboard-welcome-tags{display:grid;grid-template-columns:minmax(0,1fr);}
  .workspace-breadcrumb-current,.workspace-breadcrumb-divider{display:none;}
  .tickets-inline-fields,.tickets-form-grid{grid-template-columns:minmax(0,1fr)!important;}
  .tickets-wide{grid-column:auto!important;}
}
@media(prefers-reduced-motion:reduce){
  .dashboard-welcome-copy::after,.welcome-sparkle,.dashboard-visual-orbit,.category-intro-art>span,.loading-brand-orbit,.loading-brand-orbit::before,.loading-progress i,.login-prompt-art-glow,.login-prompt-art-star,.server-card,.category-card{animation:none!important;}
  .server-card,.category-card{opacity:1!important;transform:none!important;}
}
/* Search is intentionally lighter than regular form controls. */
.dashboard-container .server-search input{width:100%;min-width:0;min-height:0;height:40px;padding:0;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:.76rem;}
.dashboard-container .server-search input:focus{border:0;background:transparent;box-shadow:none;}
/* Sticky controls inside the clipped app shell use normal flow to avoid trapped scrolling. */
.tickets-main-tabs,.tickets-save-row{position:relative;top:auto;bottom:auto;}
.login-prompt-art>img{object-position:68% center;}
