/* Panel de administración */
.admin{max-width:1180px;margin:0 auto}
.admin .intro{align-items:flex-start;gap:16px}
.admin-demo{font-size:10px;font-weight:800;letter-spacing:1.4px;color:#8a3a06;background:#fff1e7;border:1px solid #ffd3b5;border-radius:8px;padding:7px 10px;white-space:nowrap}
.admin-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:22px}
.admin-toolbar label{font-size:12px;font-weight:700}
.admin-toolbar .btn{margin:0;min-height:40px;padding:10px 16px}
.admin select,.admin-filters input{font:inherit;font-size:13px;color:var(--ink);background:white;border:1px solid var(--line);border-radius:9px;padding:10px 12px;min-height:40px}
.admin select:focus-visible,.admin-filters input:focus-visible,.chart:focus-visible{outline:3px solid #2395bd;outline-offset:2px}
.admin-updated{font-size:12px;color:var(--muted)}
.admin-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:18px}
.admin-tile{background:white;border:1px solid var(--line);border-radius:14px;padding:18px}
.admin-tile span{display:block;font-size:12px;color:var(--muted);font-weight:600}
.admin-tile strong{display:block;font-size:28px;letter-spacing:-.8px;margin:8px 0 4px;color:var(--ink)}
.admin-tile small{display:block;font-size:11px;color:var(--muted);line-height:1.4}
.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}
.admin-card{background:white;border:1px solid var(--line);border-radius:14px;padding:20px;min-width:0}
.admin-wide{margin-bottom:14px}
.admin-card h2{font-size:16px;letter-spacing:-.3px}
.admin-sub{font-size:12px;color:var(--muted);margin:4px 0 12px;line-height:1.5}
.admin-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.admin-card-head .text-btn{white-space:nowrap;padding-top:2px}
.admin-empty{font-size:13px;color:var(--muted);padding:18px 0}
.admin-problem{margin-bottom:14px;border-color:#ffd3b5;background:#fff8f3}
.chart{display:block;width:100%;height:auto;touch-action:pan-y;border-radius:6px}
.chart .grid{stroke:#e8ecf2;stroke-width:1}
.chart .tick{font-size:11px;fill:var(--muted);font-variant-numeric:tabular-nums}
.chart .mark{transition:opacity .15s}
.chart .mark.dim{opacity:.35}
.chart .crosshair{stroke:#9ca7b6;stroke-width:1;opacity:0}
.chart .crosshair.visible{opacity:1}
#admin-tip{position:fixed;z-index:30;pointer-events:none;background:white;border:1px solid var(--line);box-shadow:0 8px 24px #17233c1f;border-radius:10px;padding:9px 12px;opacity:0;transition:opacity .12s;left:0;top:0}
#admin-tip.visible{opacity:1}
#admin-tip .tip-value{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink)}
#admin-tip .tip-key{display:inline-block;width:12px;height:3px;border-radius:2px}
#admin-tip .tip-label{font-size:11px;color:var(--muted);margin-top:3px}
.chart-table{margin-top:10px}
.chart-table summary{font-size:12px;font-weight:700;color:var(--blue);cursor:pointer;padding:6px 0}
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.chart-table table,.admin-table{width:100%;border-collapse:collapse;font-size:12px}
.chart-table th,.chart-table td,.admin-table th,.admin-table td{text-align:left;padding:9px 10px;border-bottom:1px solid #edf0f5;vertical-align:top}
.chart-table th,.admin-table th{font-size:11px;color:var(--muted);font-weight:700;background:#fafbfd}
.chart-table td:not(:first-child),.admin-table .num{font-variant-numeric:tabular-nums}
.nowrap{white-space:nowrap}
.mono{font-family:ui-monospace,Consolas,monospace;font-size:11px;white-space:nowrap}
.branch-bars{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.branch-bars li{display:grid;grid-template-columns:130px 1fr 52px;align-items:center;gap:10px;font-size:12px}
.branch-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.branch-track{height:12px;display:block}
.branch-fill{display:block;height:12px;background:#2f4fd6;border-radius:0 4px 4px 0;min-width:2px}
.branch-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}
.admin-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:4px 0 12px}
.admin-filters input{flex:1;min-width:200px}
.admin-count{font-size:12px;color:var(--muted)}
.event{display:inline-block;font-size:11px;font-weight:700;border-radius:6px;padding:3px 8px;background:#eef1ff;color:var(--blue);white-space:nowrap}
.event-login_fail{background:#fff1e7;color:#8a3a06}
.event-account_created{background:#e8f7fd;color:#0b5b78}
.event-admin_access{background:#f1f0fb;color:#4a3aa0}
.admin-more{margin-top:12px}
.admin-link{margin-top:14px;display:inline-flex}
@media(max-width:1100px){.admin-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.admin-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-tile{padding:14px}.admin-tile strong{font-size:22px}.admin-grid{grid-template-columns:1fr}.admin-card{padding:16px}.branch-bars li{grid-template-columns:100px 1fr 46px}.admin .intro{flex-direction:column}.admin-card-head{flex-direction:column;gap:4px}}
@media(prefers-reduced-motion:reduce){.chart .mark,#admin-tip{transition:none}}
