.pnl main{padding-top:32px;padding-bottom:64px}
.acceso{max-width:460px;padding:24px 0}
.acceso h1{font-size:44px;margin-bottom:24px}
.aviso-demo{margin-top:28px;border:1px dashed #9b96a0;padding:16px;font-size:15px;background:#fff}
.aviso-demo p:last-child{margin:0}
#codigo-demo{font:600 22px var(--sans);letter-spacing:.2em;color:var(--violeta-osc)}
.barra{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:flex-end;margin:20px 0}
.en-linea{margin:0}
.en-linea input,.en-linea select{min-width:180px}
.columnas{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-bottom:40px}
.col{border:1px solid var(--linea);background:#fff}
.col h2{font:600 16px var(--sans);padding:12px 16px;border-bottom:1px solid var(--linea);margin:0;color:var(--negro)}
.col ol{list-style:none;margin:0;padding:0}
.col li{padding:12px 16px;border-bottom:1px solid var(--linea);font-size:15px}
.col li:last-child{border-bottom:0}
.col .hr{font-weight:600;color:var(--negro)}
.col .est{display:inline-block;font-size:13px;border:1px solid currentColor;padding:1px 8px;margin-left:6px}
.est-pagada,.est-confirmada{color:#1f7a5c}.est-por{color:#8a5a00}.est-cancelada{color:#a3262a}.est-atendida{color:var(--gris)}
.col .acc{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.mini{min-height:36px;padding:0 12px;border:1px solid #9b96a0;background:#fff;font:500 14px var(--sans);cursor:pointer;color:var(--tinta)}
.mini:hover{border-color:var(--violeta);color:var(--violeta)}
.h2p{font-size:32px;margin:40px 0 16px}
.rejilla{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 20px;align-items:end}
.tabla-scroll{overflow-x:auto;margin:20px 0}
.tabla{width:100%;border-collapse:collapse;background:#fff;min-width:560px}
.tabla th,.tabla td{border-bottom:1px solid var(--linea);padding:10px 12px;text-align:left;font-size:15px}
.tabla thead th{font-weight:600;color:var(--negro);background:var(--lienzo)}
.tabla input[type=number],.tabla input[type=time],.tabla select{min-height:44px;padding:6px 8px;border:1px solid #9b96a0;font:400 16px var(--sans);width:100%;max-width:150px;background:#fff}
.tabla input[type=checkbox]{width:22px;height:22px;accent-color:var(--violeta)}
.lista-p{list-style:none;padding:0;margin:0;border-top:1px solid var(--linea)}
.lista-p li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--linea)}
.ok{color:#1f7a5c;font-weight:600}
.pnl *{animation:none!important}
.pnl .tabs .ind{display:none}
.pnl .tabs button[aria-selected=true]{box-shadow:inset 0 -2px 0 var(--violeta)}

/* ===== Panel y mostrador reales ===== */
.cab .quien{margin-left:auto;font-size:14px;color:var(--gris)}
.cab #salir{min-height:42px}
.pnl .tabs{margin-bottom:16px}
.h3p{font-size:24px;margin:28px 0 12px}
.nota{font-size:14px;color:var(--gris)}
.ag-barra{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:flex-end;justify-content:space-between;margin:8px 0 4px}
.ag-fecha,.ag-acc{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}
.ag-fecha .mini{min-height:48px;min-width:44px;font-size:18px}
.ag-res{margin:8px 0;font-weight:500;color:var(--negro)}
.ag-buscar{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin:8px 0}
.ag-buscar input{min-width:260px}
.resultados{border:1px solid var(--linea);background:#fff;padding:8px 16px;margin:8px 0 16px}
.ag-leyenda{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;font-size:14px;color:var(--gris);margin:12px 0}
.ley-c{display:inline-block;width:16px;height:16px;border:1px solid var(--linea);vertical-align:-3px;margin-right:6px}
.ley-c.libre{background:#fff}.ley-c.cita{background:#ece8fb;border-color:var(--violeta)}.ley-c.bloq{background:#f3e7d6;border-color:#a8742a}.ley-c.no{background:repeating-linear-gradient(-45deg,#efebec,#efebec 4px,#e2dcde 4px,#e2dcde 8px)}
.ag-scroll{overflow:auto;border:1px solid var(--linea);background:#fff;max-height:75vh}
.ag-grid{display:grid;min-width:min-content;position:relative}
.ag-h{position:sticky;top:0;z-index:3;background:var(--lienzo);border-bottom:1px solid var(--negro);border-left:1px solid var(--linea);padding:8px 10px;font-weight:600;color:var(--negro);font-size:15px}
.ag-h small{display:block;font-weight:400;color:var(--gris);font-size:12px}
.ag-esq{left:0;z-index:4}
.ag-t{position:sticky;left:0;z-index:2;background:var(--lienzo);border-top:1px solid var(--linea);font-size:13px;color:var(--gris);padding:4px 8px;font-variant-numeric:tabular-nums}
.ag-c{border-top:1px solid var(--linea);border-left:1px solid var(--linea);min-height:40px}
.ag-c.libre{background:#fff;border-right:0;border-bottom:0;font:500 13px var(--sans);color:#6b6670;cursor:pointer;text-align:left;padding:0 10px}
.ag-c.libre:hover,.ag-c.libre:focus-visible{background:#f1eefb;color:var(--violeta-osc)}
.ag-c.no{background:repeating-linear-gradient(-45deg,#f4f1f2,#f4f1f2 6px,#e9e4e6 6px,#e9e4e6 12px)}
.ag-c.pasado{background:#faf9f9}
.ag-b{margin:2px 3px;border:1px solid var(--violeta);border-left-width:4px;background:#ece8fb;color:var(--negro);text-align:left;font:400 13px/1.35 var(--sans);padding:6px 8px;z-index:1;overflow:hidden;cursor:pointer}
.ag-b b{display:block;font-size:13px}
.ag-b span,.ag-b em{display:block;font-style:normal;color:var(--tinta)}
.ag-b em{font-size:12px;color:var(--gris);text-transform:uppercase;letter-spacing:.04em}
.ag-b.est-agendada{background:#fff7e6;border-color:#a8742a}
.ag-b.est-atendida{background:#eef6f2;border-color:#1f7a5c}
.ag-b.est-no{background:#f8ecec;border-color:#a3262a}
.ag-b.bloq{background:#f3e7d6;border-color:#a8742a;cursor:default}
.ag-b.bloq .mini{display:block;margin-top:4px;min-height:32px}
.mini.est{border-width:1px;font-size:13px}
.mini.est-confirmada{color:#1f7a5c}.mini.est-agendada{color:#8a5a00}.mini.est-cancelada{color:#a3262a}.mini.est-atendida{color:var(--gris)}.mini.est-no{color:#a3262a}
.mini.peligro{border-color:#a3262a;color:#a3262a}
.vacio{padding:16px;color:var(--gris)}
.dlg{max-width:520px}
.dlg.ancho{max-width:720px}
.dlg-cab{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.cerrar-x{background:none;border:0;font:300 32px/1 var(--sans);cursor:pointer;min-width:44px;min-height:44px;color:var(--tinta)}
.det{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:12px 0;font-size:15px}
.det dt{color:var(--gris)}.det dd{margin:0;color:var(--negro)}
.acciones-cita{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;align-items:center}
.acciones-cita a.mini{display:inline-flex;align-items:center;text-decoration:none}
.nota-cita{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}
.nota-cita .campo{flex:1;margin:0}
.rejilla-d{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 16px}
.rejilla-d .nav-ag,.rejilla-d .error{grid-column:1/-1}
.barra-guardar{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:16px 0}
.t-serv .in-nombre{min-height:44px;width:100%;min-width:220px;padding:6px 8px;border:1px solid #9b96a0;font:400 15px var(--sans)}
.tarifas-ed{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.tarifas-ed label{font-size:12px;color:var(--gris);display:flex;flex-direction:column}
.tarifas-ed input{width:96px;min-height:40px;padding:4px 6px;border:1px solid #9b96a0;font:400 15px var(--sans)}
.aplic{border:1px solid var(--linea);background:#fff;margin-bottom:10px}
.aplic summary{cursor:pointer;padding:14px 16px;min-height:44px;list-style:none}
.aplic summary::-webkit-details-marker{display:none}
.aplic summary small{display:block;color:var(--gris);font-size:13px;margin-top:4px}
.aplic form{padding:0 16px 16px}
.semana{border:0;padding:0;margin:8px 0}
.semana legend{font:500 20px var(--serif)}
.semana-t{min-width:420px}
.acc-usu{display:flex;gap:6px;flex-wrap:wrap}
.caja-totp{margin-top:24px;border:1px solid var(--linea);background:#fff;padding:16px 20px}
.clave-totp{font:600 18px/1.4 ui-monospace,monospace;letter-spacing:.06em;background:var(--lienzo);padding:2px 6px;word-break:break-all}
.pasos-totp{padding-left:20px}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,120px);background:var(--negro);color:#fff;padding:12px 18px;font-size:15px;z-index:100;max-width:calc(100% - 32px);transition:transform .25s}
.toast.ver{transform:translate(-50%,0)}
@media (max-width:640px){.ag-buscar input{min-width:0;width:100%}.ag-buscar{flex-direction:column;align-items:stretch}.ag-barra{flex-direction:column;align-items:stretch}.ag-acc .btn{flex:1}}
.toast:empty{display:none}
.pnl #ptabs [role=tab]{display:flex;align-items:center;gap:10px;padding:8px 16px 8px 8px}
.pnl #ptabs .glass{width:36px;height:36px;border-radius:11px}
.pnl #ptabs .glass svg{width:18px;height:18px}
.pnl #ptabs [aria-selected=true] .glass{background:linear-gradient(145deg,rgba(143,128,230,.9),rgba(94,79,184,.75))}
.pnl #ptabs [aria-selected=true] .glass svg{stroke:#fff}
.enlace-vista{display:inline-flex;align-items:center;gap:8px;text-decoration:none;padding:4px 12px 4px 4px;min-height:44px}
.enlace-vista .glass{width:32px;height:32px;border-radius:10px}.enlace-vista .glass svg{width:16px;height:16px}
.enlace-vista[hidden]{display:none}
@media (max-width:640px){.cab .quien{display:none}.enlace-vista{font-size:13px}}
