/* =========================================================
   PANEL DE ADMINISTRACIÓN — María Alejandra Flores
   Pensado para usarse también desde el teléfono.
   ========================================================= */
:root{
  --p-fondo:#12160E; --p-panel:#1A2013; --p-panel2:#212a18;
  --p-borde:rgba(182,132,46,.28); --p-borde2:rgba(182,132,46,.5);
  --p-oro:#B6842E; --p-oro-claro:#FFE3B1; --p-texto:#F2F2EC;
  --p-suave:rgba(242,242,236,.62); --p-ok:#4F9D52; --p-mal:#C0504A;
  --p-radio:3px;
}
*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:var(--p-fondo);color:var(--p-texto);
  font-family:"Work Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  font-size:15px;line-height:1.55;-webkit-text-size-adjust:100%;
}
a{color:var(--p-oro-claro);}
img{max-width:100%;display:block;}

/* ---------- ENTRADA ---------- */
.entrada{min-height:100svh;display:grid;place-items:center;padding:24px;
  background:radial-gradient(120% 90% at 50% -10%, #26311A 0%, #12160E 60%);}
.entrada-caja{width:100%;max-width:400px;background:var(--p-panel);
  border:1px solid var(--p-borde);padding:34px 28px;box-shadow:0 30px 70px rgba(0,0,0,.5);}
.entrada-logo{width:74px;margin:0 auto 16px;}
.entrada h1{font-size:19px;text-align:center;margin:0 0 4px;font-weight:600;letter-spacing:.02em;}
.entrada p.sub{text-align:center;color:var(--p-suave);font-size:13px;margin:0 0 24px;}

/* ---------- FORMULARIOS ---------- */
label{display:block;font-size:12px;letter-spacing:.09em;text-transform:uppercase;
  color:var(--p-oro-claro);margin:0 0 6px;}
input[type=text],input[type=password],input[type=email],input[type=url],input[type=date],textarea,select{
  width:100%;background:#0E120A;color:var(--p-texto);
  border:1px solid var(--p-borde);border-radius:var(--p-radio);
  padding:11px 13px;font:inherit;font-size:15px;
  transition:border-color .2s,box-shadow .2s;
}
input:focus,textarea:focus,select:focus{outline:0;border-color:var(--p-oro);
  box-shadow:0 0 0 3px rgba(182,132,46,.16);}
textarea{min-height:110px;resize:vertical;line-height:1.55;}
.campo{margin-bottom:18px;}
.campo .ayuda{font-size:12px;color:var(--p-suave);margin-top:5px;}

input[type=color]{width:100%;height:46px;padding:4px;background:#0E120A;
  border:1px solid var(--p-borde);border-radius:var(--p-radio);cursor:pointer;}

.boton{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:var(--p-oro);color:#12160E;border:1px solid var(--p-oro);
  border-radius:var(--p-radio);padding:12px 22px;
  font:inherit;font-weight:600;font-size:14px;letter-spacing:.06em;text-transform:uppercase;
  cursor:pointer;text-decoration:none;transition:filter .2s,transform .15s;
}
.boton:hover{filter:brightness(1.12);}
.boton:active{transform:translateY(1px);}
.boton.ancho{width:100%;}
.boton.fantasma{background:transparent;color:var(--p-oro-claro);}
.boton.fantasma:hover{background:rgba(182,132,46,.14);}
.boton.peligro{background:transparent;border-color:rgba(192,80,74,.6);color:#E7938D;}
.boton.peligro:hover{background:rgba(192,80,74,.16);}
.boton.chico{padding:7px 13px;font-size:12px;}

/* ---------- AVISOS ---------- */
.aviso{padding:12px 15px;border-radius:var(--p-radio);margin-bottom:18px;font-size:14px;
  border:1px solid;display:flex;gap:10px;align-items:flex-start;}
.aviso.ok{background:rgba(79,157,82,.12);border-color:rgba(79,157,82,.5);color:#BFE5C0;}
.aviso.mal{background:rgba(192,80,74,.12);border-color:rgba(192,80,74,.5);color:#F0B9B5;}

/* ---------- ESTRUCTURA DEL PANEL ---------- */
.barra{position:sticky;top:0;z-index:20;background:rgba(18,22,14,.96);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--p-borde);}
.barra-in{max-width:1180px;margin:0 auto;padding:12px 20px;
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.barra-marca{display:flex;align-items:center;gap:10px;font-weight:600;font-size:15px;}
.barra-marca img{width:30px;}
.barra-sp{flex:1;}
.barra a.salir{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--p-suave);
  text-decoration:none;border:1px solid var(--p-borde);padding:7px 13px;border-radius:var(--p-radio);}
.barra a.salir:hover{color:var(--p-oro-claro);border-color:var(--p-oro);}
.barra a.ver{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--p-oro-claro);
  text-decoration:none;border:1px solid var(--p-borde2);padding:7px 13px;border-radius:var(--p-radio);}

.envoltura{max-width:1180px;margin:0 auto;padding:22px 20px 70px;display:grid;
  grid-template-columns:230px minmax(0,1fr);gap:26px;align-items:start;}

.menu-lat{position:sticky;top:70px;background:var(--p-panel);border:1px solid var(--p-borde);
  border-radius:var(--p-radio);overflow:hidden;}
.menu-lat a{display:block;padding:12px 16px;color:var(--p-texto);text-decoration:none;
  font-size:14px;border-bottom:1px solid rgba(182,132,46,.12);transition:background .18s,color .18s;}
.menu-lat a:last-child{border-bottom:0;}
.menu-lat a:hover{background:rgba(182,132,46,.1);color:var(--p-oro-claro);}
.menu-lat a.activo{background:rgba(182,132,46,.18);color:var(--p-oro-claro);
  box-shadow:inset 3px 0 0 var(--p-oro);font-weight:600;}

.contenido{min-width:0;}
.bloque{background:var(--p-panel);border:1px solid var(--p-borde);border-radius:var(--p-radio);
  padding:24px;margin-bottom:22px;}
.bloque > h2{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--p-oro-claro);}
.bloque > p.desc{margin:0 0 20px;color:var(--p-suave);font-size:13.5px;}
.bloque h3{font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--p-oro);
  margin:26px 0 14px;padding-top:18px;border-top:1px solid rgba(182,132,46,.16);}
.bloque h3:first-of-type{margin-top:0;padding-top:0;border-top:0;}

.rejilla2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:18px;}

/* ---------- FILAS REPETIBLES (listas, videos, eventos...) ---------- */
.item{background:var(--p-panel2);border:1px solid var(--p-borde);border-radius:var(--p-radio);
  padding:16px;margin-bottom:14px;position:relative;}
.item-cab{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.item-num{width:26px;height:26px;flex:0 0 auto;display:grid;place-items:center;
  border:1px solid var(--p-borde2);border-radius:50%;font-size:12px;color:var(--p-oro-claro);}
.item-tit{font-size:13px;color:var(--p-suave);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.item-acc{display:flex;gap:6px;}
.mini{width:30px;height:30px;display:grid;place-items:center;cursor:pointer;
  background:transparent;border:1px solid var(--p-borde);border-radius:var(--p-radio);
  color:var(--p-suave);font-size:14px;line-height:1;transition:all .18s;}
.mini:hover{border-color:var(--p-oro);color:var(--p-oro-claro);}
.mini.quitar:hover{border-color:rgba(192,80,74,.7);color:#E7938D;}

.fila-texto{display:flex;gap:8px;margin-bottom:8px;align-items:flex-start;}
.fila-texto textarea,.fila-texto input{flex:1;}

/* ---------- IMÁGENES ---------- */
.img-campo{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap;}
.img-vista{width:118px;height:118px;flex:0 0 auto;background:#0E120A;border:1px solid var(--p-borde);
  border-radius:var(--p-radio);overflow:hidden;display:grid;place-items:center;}
.img-vista img{width:100%;height:100%;object-fit:cover;}
.img-vista .vacio{font-size:11px;color:var(--p-suave);text-align:center;padding:8px;}
.img-datos{flex:1;min-width:200px;}
.subir-oculto{display:none;}
.galeria-admin{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:12px;}
.foto-admin{position:relative;border:1px solid var(--p-borde);border-radius:var(--p-radio);overflow:hidden;background:#0E120A;}
.foto-admin img{width:100%;aspect-ratio:1;object-fit:cover;}
.foto-admin select{border:0;border-top:1px solid var(--p-borde);border-radius:0;font-size:12px;padding:7px 8px;}
.foto-admin .quitar-foto{position:absolute;top:6px;right:6px;width:26px;height:26px;
  background:rgba(18,22,14,.88);border:1px solid rgba(192,80,74,.6);color:#E7938D;
  border-radius:var(--p-radio);cursor:pointer;display:grid;place-items:center;font-size:14px;}

/* ---------- GUARDAR ---------- */
.guardar-barra{position:sticky;bottom:0;background:rgba(18,22,14,.97);
  border-top:1px solid var(--p-borde);padding:14px 0;margin-top:10px;
  display:flex;gap:12px;align-items:center;flex-wrap:wrap;z-index:15;}
.guardar-barra .nota{color:var(--p-suave);font-size:12.5px;}

/* ---------- TELÉFONO ---------- */
@media (max-width:860px){
  .envoltura{grid-template-columns:minmax(0,1fr);padding:16px 14px 60px;gap:16px;}
  .menu-lat{position:static;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));}
  .menu-lat a{border-bottom:1px solid rgba(182,132,46,.12);text-align:center;font-size:13px;padding:11px 8px;}
  .menu-lat a.activo{box-shadow:inset 0 -3px 0 var(--p-oro);}
  .bloque{padding:18px 15px;}
  .barra-in{padding:10px 14px;gap:10px;}
  .barra-marca span{display:none;}
}

/* ---------- INTERRUPTORES DE EFECTOS ---------- */
.interruptor{display:flex;gap:16px;align-items:flex-start;}
.palanca{flex:0 0 auto;cursor:pointer;display:block;margin:2px 0 0;}
.palanca input{position:absolute;opacity:0;width:0;height:0;}
.palanca-pista{
  display:block;width:52px;height:29px;border-radius:999px;
  background:#0E120A;border:1px solid var(--p-borde);
  position:relative;transition:background .2s,border-color .2s;
}
.palanca-bola{
  position:absolute;top:3px;left:3px;width:21px;height:21px;border-radius:50%;
  background:var(--p-suave);transition:transform .2s,background .2s;
}
.palanca input:checked + .palanca-pista{background:rgba(182,132,46,.32);border-color:var(--p-oro);}
.palanca input:checked + .palanca-pista .palanca-bola{transform:translateX(23px);background:var(--p-oro-claro);}
.palanca input:focus-visible + .palanca-pista{box-shadow:0 0 0 3px rgba(182,132,46,.25);}
.interruptor-txt strong{display:block;font-size:15px;color:var(--p-texto);margin-bottom:3px;}
.interruptor-txt p{margin:0;font-size:13px;color:var(--p-suave);line-height:1.5;}
