@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600&display=swap');
:root{
  --bg:#0a0b10;
  --card:#12131b;
  --accent:#15f1ff;
  --accent2:#9c27b0;
  --text:#e6e7eb;
  --muted:#a7a9b0;
  --danger:#ff3860;
  --success:#20c997;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background:linear-gradient(135deg,#090a0f 0%,#0b0c12 100%);
  color:var(--text);
  font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
}
a{color:var(--accent);text-decoration:none}
.neo-nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 24px;background:rgba(18,19,27,.6);backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.neo-layout{min-height:100vh}
.neo-sidebar{
  position:fixed;top:0;bottom:0;left:0;width:260px;
  background:var(--card);border-right:1px solid rgba(255,255,255,.08);
  padding:16px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;overscroll-behavior:contain;
}
.neo-menu a{
  display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.06);
  margin-bottom:8px;background:linear-gradient(135deg,#10121b,#0f1120);color:var(--text);
  transition:transform .12s ease,border-color .2s ease,box-shadow .2s ease;
}
.neo-menu a:hover{transform:translateX(2px);border-color:rgba(21,241,255,.4);box-shadow:0 0 12px rgba(21,241,255,.12)}
.neo-menu a.active{border-color:var(--accent);color:var(--accent);box-shadow:0 0 12px rgba(21,241,255,.18)}
.neo-menu .icon{width:22px;text-align:center}
.neo-menu .label{flex:1}
.neo-content{margin-left:260px;padding:24px}
.neo-brand{font-weight:600;letter-spacing:.5px}
.neo-container{max-width:1100px;margin:24px auto;padding:0 16px}
.mobile-topbar{display:none}
.menu-backdrop{display:none}
.neo-card{
  background:var(--card);
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:20px;
  box-shadow:0 0 12px rgba(21,241,255,.08),0 0 24px rgba(156,39,176,.06);
}
.neo-grid{display:grid;gap:16px}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.neo-btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:10px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.1);
  color:var(--text);background:linear-gradient(135deg,#131522,#101223);
  transition:transform .15s ease,box-shadow .15s ease,border-color .2s ease;
}
.neo-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(21,241,255,.15)}
.neo-btn.primary{background:linear-gradient(135deg,#0be,#08d);border-color:#0cf}
.neo-input, .neo-select, .neo-textarea{
  width:100%;background:#0e1018;color:var(--text);
  border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 12px;
}
.neo-table{width:100%;border-collapse:collapse}
.neo-table th,.neo-table td{padding:10px;border-bottom:1px solid rgba(255,255,255,.08)}
.table-wrap{width:100%;overflow-x:auto}
img,video{max-width:100%;height:auto}
.neo-badge{display:inline-block;padding:4px 8px;border-radius:8px;background:#10121b;border:1px solid rgba(255,255,255,.08)}
.status-Pendiente{color:#f5c16c;border-color:#f5c16c}
.status-Confirmada{color:#65d48f;border-color:#65d48f}
.status-Cancelada{color:#f06b6b;border-color:#f06b6b}
.status-Atendida{color:#6cc6f5;border-color:#6cc6f5}
.calendar-header{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:8px}
.calendar-header .neo-badge{text-align:center}
.neo-flex{display:flex;gap:10px;align-items:center}
.neo-right{margin-left:auto}
.status-ok{color:var(--success)}
.status-bad{color:var(--danger)}
.muted{color:var(--muted)}
.hero{
  display:flex;align-items:center;justify-content:space-between;
  background:radial-gradient(800px 300px at 10% 10%,rgba(21,241,255,.08),transparent),radial-gradient(800px 300px at 90% 20%,rgba(156,39,176,.08),transparent);
  border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:20px;margin-bottom:20px;
}
.brand-glow{
  color:var(--accent);
  text-shadow:0 0 10px rgba(21,241,255,.8),0 0 30px rgba(21,241,255,.4);
}
@media (max-width:900px){
  .mobile-topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--card);border-bottom:1px solid rgba(255,255,255,.08);position:sticky;top:0;z-index:900}
  .neo-sidebar{position:fixed;top:0;bottom:0;left:0;width:260px;transform:translateX(-100%);transition:transform .2s ease;z-index:1000}
  .menu-open .neo-sidebar{transform:translateX(0)}
  .menu-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:950}
  .menu-open .menu-backdrop{display:block}
  .neo-sidebar .neo-flex button#sidebarToggle{display:none}
  .neo-content{margin-left:0;padding:8px;min-height:100vh}
  .neo-container{max-width:none;margin:0;padding:8px}
  .grid-2{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr 1fr}
  .hero{flex-direction:column;gap:12px}
}
.collapsed .neo-sidebar{width:72px}
.collapsed .neo-content{margin-left:72px}
.collapsed .neo-menu .label{display:none}
.collapsed .neo-brand{display:none}
@media (max-width:600px){
  .grid-3{grid-template-columns:1fr}
  .neo-flex{flex-wrap:wrap}
  .neo-right{margin-left:0}
  .collapsed .neo-sidebar{width:auto}
  .collapsed .neo-content{margin-left:0}
  .calendar-header .neo-badge{font-size:12px;padding:4px 6px}
  .day-cell{padding:6px !important}
  .day-cell strong{font-size:14px}
  .day-cell .neo-badge{font-size:11px;padding:3px 6px}
  .svc-card,.prod-card{min-width:140px !important;max-width:180px !important;padding:8px !important}
  .svc-card img,.prod-card img{width:44px !important;height:44px !important}
  #svcSlider,#prodSlider{gap:8px !important;padding:6px 2px !important}
  #posForm .neo-input,#posForm .neo-select{font-size:14px}
  #posForm .svc-card,#posForm .prod-card{min-width:100% !important;max-width:none !important}
}
