.admin-panel{width:min(1160px,calc(100% - 40px));margin:40px auto 64px}.admin-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.admin-heading h1{font-size:clamp(32px,4vw,48px);margin:12px 0}.admin-heading p,.muted{font-size:12px;color:var(--ui-muted)}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:20px 0}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.admin-stats article,.admin-card{background:#fff;border:1px solid var(--ui-line);border-radius:18px;padding:24px;box-shadow:var(--ui-shadow)}.admin-stats article:first-child{border-top:3px solid var(--ui-red)}.admin-stats span,.admin-stats small{display:block;font-size:11px;color:var(--ui-muted)}.admin-stats strong{display:block;font-size:36px;line-height:1.4;margin:6px 0;color:var(--ui-ink);font-variant-numeric:tabular-nums}.admin-card{margin-top:22px}.admin-card h2{font-size:24px;margin:0 0 12px}.admin-filter-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:16px}.admin-filter-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-filter-actions .check{margin:0}.admin-filter-actions .actions{margin:0}.admin-privacy{font-size:11px;color:var(--ui-muted);padding:12px 14px;border-radius:10px;background:var(--ui-soft)}.admin-table-wrap{max-width:100%;overflow-x:auto}#admin-table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}#admin-table th{font-size:10px;color:var(--ui-muted);font-weight:700;background:var(--ui-soft);padding:12px}#admin-table td{padding:16px 12px;border-bottom:1px solid var(--ui-line);vertical-align:top;overflow-wrap:anywhere}#admin-table td:first-child{max-width:260px}#admin-table strong,#admin-table small{display:block}#admin-table small{font-size:10px;color:var(--ui-muted);margin-top:4px}.admin-pagination{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:20px;font-size:11px;color:var(--ui-muted)}.admin-empty{text-align:center;padding:30px 15px;color:var(--ui-muted);font-size:13px}.admin-detail-top{display:flex;justify-content:space-between;align-items:start;gap:18px}.admin-detail-top h2{margin:12px 0;overflow-wrap:anywhere}.admin-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 30px}.admin-detail-grid>div{min-width:0}.admin-detail-grid dt{font-size:10px;color:var(--ui-muted)}.admin-detail-grid dd{font-size:13px;font-weight:600;margin:4px 0 0;overflow-wrap:anywhere}.admin-visits{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.admin-visits li{padding:14px;border:1px solid var(--ui-line);border-radius:12px;font-size:12px;display:flex;justify-content:space-between;align-items:center;gap:16px}.admin-visits small{display:block;color:var(--ui-muted);font-size:10px}.admin-visits b{white-space:nowrap;color:var(--ui-red);font-size:11px}
@media(max-width:900px){.admin-filter-grid{grid-template-columns:repeat(2,1fr)}.admin-search{grid-column:1/-1}}@media(max-width:600px){.admin-panel{margin-top:28px}.admin-heading{align-items:start;flex-direction:column;gap:10px}.admin-stats{grid-template-columns:1fr 1fr;gap:10px}.admin-stats article{padding:16px}.admin-stats strong{font-size:30px}.admin-card{padding:18px}.admin-filter-grid{grid-template-columns:1fr;gap:0}.admin-search{grid-column:auto}.admin-filter-actions{flex-direction:column;align-items:stretch;gap:18px}.admin-filter-actions .actions{flex-direction:row}#admin-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#admin-table,#admin-table tbody,#admin-table tr,#admin-table td{display:block;width:100%}#admin-table tr{border:1px solid var(--ui-line);border-radius:14px;padding:12px;margin-top:12px}#admin-table td{padding:6px 0;border:0;max-width:none!important}#admin-table td::before{content:attr(data-label);display:block;font-size:10px;color:var(--ui-muted);margin-bottom:4px}#admin-table td:last-child .secondary{width:100%}.admin-detail-grid,.admin-visits{grid-template-columns:1fr}.admin-detail-top{flex-direction:column}.admin-pagination{flex-wrap:wrap;justify-content:center}.admin-pagination span{order:-1;width:100%;text-align:center}.admin-privacy{font-size:12px}}
.admin-stats+.admin-stats{margin-top:16px}.admin-visits li{min-width:0;flex-wrap:wrap}.admin-visits b{white-space:normal;overflow-wrap:anywhere}.admin-visits strong{overflow-wrap:anywhere}

/* Readable reports: one semantic table becomes labeled cards on narrow screens. */
.admin-report .report-scope{margin:0 0 16px;font-size:12px;font-weight:500;color:var(--ui-muted);line-height:1.7}
.admin-report .report-help{font-size:12px;color:var(--ui-muted);margin:0 0 20px;line-height:1.8}
.admin-report .report-update{margin:0 0 12px;padding:10px 12px;border-radius:8px;background:var(--ui-info-soft);color:var(--ui-info);font-size:12px;line-height:1.7}
.report-key{display:flex;flex-wrap:wrap;gap:12px 28px;margin:0 0 12px;font-size:12px;color:var(--ui-muted)}.report-key div{flex:1;min-width:220px}.report-key dt{font-weight:600;color:var(--ui-ink);margin-bottom:2px}.report-key dd{margin:0}
.report-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:13px;text-align:left;border:1px solid var(--ui-line);border-radius:12px;overflow:hidden}
.report-table th{padding:14px 16px;background:var(--ui-soft);color:var(--ui-muted);font-size:11px;font-weight:600;line-height:1.6;text-align:left}.report-table td{padding:16px;vertical-align:middle;line-height:1.65;overflow-wrap:anywhere;color:var(--ui-ink)}.report-table tbody tr+tr td{border-top:1px solid var(--ui-line)}
.report-table .report-number{font-variant-numeric:tabular-nums;white-space:nowrap}.report-number strong{font-size:21px;font-weight:700;margin-right:7px}.report-number>span{font-size:12px;color:var(--ui-muted)}.report-number.report-attended strong{color:var(--ui-success)}
.report-label strong,.report-date strong{font-weight:600}.report-table td.report-label{width:28%}.report-empty{margin:0;padding:24px 16px;background:var(--ui-soft);border:1px dashed var(--ui-line);border-radius:12px;color:var(--ui-muted);font-size:13px}
.report-details{margin-top:20px;border-top:1px solid var(--ui-line);padding-top:12px}.report-details>summary{display:list-item;width:fit-content;min-height:44px;padding:10px 0;font-size:13px;font-weight:600;color:var(--ui-ink);cursor:pointer}.report-details>summary:focus-visible{outline:3px solid var(--ui-focus);outline-offset:4px;border-radius:4px}.report-details>p{font-size:12px;color:var(--ui-muted);margin:0 0 16px}
.report-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.report-detail-grid article{padding:16px;border:1px solid var(--ui-line);border-radius:12px;background:var(--ui-soft)}.report-detail-grid h3{margin:0 0 12px;font:600 13px/1.6 Inter,Arial,sans-serif;letter-spacing:0}.report-detail-grid dl{margin:0;display:grid;gap:12px}.report-detail-grid dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.report-detail-grid dt{font-size:12px;color:var(--ui-muted)}.report-detail-grid dd{margin:0;font-size:13px;font-weight:600;white-space:nowrap}
@media(max-width:800px){.report-key{gap:12px}.report-key div{min-width:0;flex-basis:100%}.report-table,.report-table tbody{display:block;width:100%;border:0;background:transparent;overflow:visible}.report-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.report-table tbody{display:grid;grid-template-columns:1fr;gap:14px}.report-table tr{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;padding:18px;border:1px solid var(--ui-line);border-radius:12px;background:#fff}.report-table td,.report-table tbody tr+tr td{display:block;border:0;padding:0;min-width:0}.report-table td::before{content:attr(data-label);display:block;margin-bottom:4px;color:var(--ui-muted);font-size:11px;font-weight:500}.report-table .report-date,.report-table .report-label{grid-column:1/-1;width:auto;margin-bottom:4px}.report-table .report-date::before{display:none}.report-table .report-date strong,.report-table .report-label strong{font-size:15px}.report-table .report-number{padding-top:8px;border-top:1px solid var(--ui-line)}.report-table .report-number strong{font-size:22px}.report-table td.report-number::before{white-space:normal}.report-detail-grid{grid-template-columns:1fr}}
@media(max-width:400px){.report-table tr{padding:16px;gap:12px}.report-detail-grid dl>div{align-items:flex-start}.admin-report h2{font-size:22px}}
@media(max-width:800px){.report-table td.report-label{width:auto}}

.daily-total{font-size:32px;font-weight:700;color:var(--text,#253041);margin:12px 0}.admin-panel>section>details{margin-block:24px}.admin-card>summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}
