/* Shared BrickCore surfaces, typography and theme tokens. */
.admin-site-shell { min-height: 100svh; background: var(--canvas-gradient); }
.admin-site-header { position: sticky; z-index: 50; top: 12px; display: flex; width: min(1360px, calc(100% - 40px)); min-height: 72px; align-items: center; justify-content: space-between; gap: 24px; margin: 0 auto; padding: 10px 16px 10px 24px; border: 1px solid var(--header-line); border-radius: 24px; background: var(--header-bg); box-shadow: var(--shadow-soft); backdrop-filter: blur(24px); }
.admin-site-brand { display: flex; align-items: center; gap: 16px; color: var(--text); text-decoration: none; }
.admin-site-brand img { width: 170px; height: auto; }
.admin-site-brand > span { padding: 6px 10px; border: 1px solid var(--line-soft); border-radius: 8px; color: var(--muted); font-size: 0.6rem; font-weight: 800; letter-spacing: .12em; }
.admin-site-header nav { display: flex; align-items: center; gap: 8px; }
.admin-site-header nav > a, .admin-site-header nav button, .admin-site-secure { display: inline-flex; min-height: 38px; align-items: center; gap: 6px; padding: 0 12px; border: 1px solid var(--line-soft); border-radius: 12px; background: var(--surface); color: var(--text-soft); font: inherit; font-size: 0.74rem; text-decoration: none; }
.admin-site-header nav form { margin: 0; }
.admin-site-header nav button { cursor: pointer; }
.admin-site-secure { color: var(--success); }
.admin-site-header .material-symbols-outlined { flex: 0 0 1em; width: 1em; overflow: hidden; font-size: 18px; }
.admin-site-footer { padding: 24px; color: var(--muted); font-size: 0.72rem; text-align: center; }
.admin-page { width: min(1360px, calc(100% - 40px)); min-height: calc(100vh - 120px); padding-block: 32px 72px; }
.admin-hero { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 26px; padding: clamp(24px, 3.2vw, 44px); border: 1px solid var(--line-soft); border-radius: 26px; background: linear-gradient(115deg, var(--surface-strong), var(--surface-blue) 65%, var(--surface-lilac)); box-shadow: var(--shadow-soft); }
.admin-hero h1 { margin: 10px 0 12px; color: var(--text); font-family: var(--font-display); font-size: clamp(2.2rem, 4vw, 3.4rem); font-weight: 750; line-height: 1; letter-spacing: -.055em; }
.admin-hero p:last-child { max-width: 66ch; margin: 0; color: var(--text-soft); font-size: 0.93rem; line-height: 1.65; }
.admin-eyebrow { margin: 0; color: var(--sapphire); font-size: 0.69rem; font-weight: 800; letter-spacing: .15em; }
.admin-refresh, .admin-access-button { display: inline-flex; min-height: 42px; align-items: center; justify-content: center; gap: 7px; padding: 9px 15px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-strong); color: var(--text-soft); font: inherit; font-size: 0.78rem; font-weight: 650; text-decoration: none; cursor: pointer; transition: background .16s, border-color .16s; }
.admin-refresh .material-symbols-outlined, .admin-access-button .material-symbols-outlined { font-size: 18px; }
.admin-hero > .admin-refresh { flex: 0 0 auto; }
.admin-refresh:hover, .admin-access-button:hover { border-color: var(--sapphire); background: var(--surface-blue); }
.admin-refresh:disabled, .admin-access-button:disabled { opacity: .45; cursor: default; }
.admin-text-button { padding: 6px 0; border: 0; background: transparent; color: var(--sapphire); font: inherit; font-size: 0.79rem; text-align: left; cursor: pointer; }
.admin-text-button:hover { text-decoration: underline; }
.admin-page :is(button, a, summary, select, [tabindex]):focus-visible { outline: 3px solid var(--sapphire); outline-offset: 3px; }
.admin-notice { margin-bottom: 18px; padding: 16px 20px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-mint); color: var(--success); font-size: 0.85rem; }
.admin-notice.is-error { color: var(--error); background: var(--surface); }
.admin-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.admin-metric { display: flex; min-height: 125px; align-items: center; gap: 17px; padding: 24px; border: 1px solid var(--line-soft); border-radius: 20px; background: var(--surface); box-shadow: var(--shadow-soft); }
.admin-metric--blue { --metric-accent: var(--sapphire); }
.admin-metric--mint { --metric-accent: var(--success); }
.admin-metric--violet { --metric-accent: var(--violet); }
.admin-metric--orange { --metric-accent: #b4794b; }
.admin-metric__icon { display: grid; width: 44px; height: 44px; flex: 0 0 auto; place-items: center; border-radius: 14px; background: color-mix(in srgb, var(--metric-accent) 10%, var(--surface-strong)); color: var(--metric-accent); font-size: 22px; }
.admin-metric > div { display: grid; gap: 10px; min-width: 0; }
.admin-metric strong { color: var(--text); font-size: 2rem; font-weight: 700; line-height: 1; letter-spacing: -.055em; font-variant-numeric: tabular-nums; }
.admin-metric div > span { color: var(--muted); font-size: 0.75rem; }
.admin-vitals { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px 28px; padding: 20px 0 26px; color: var(--muted); font-size: 0.73rem; }
.admin-vitals > span { display: inline-flex; align-items: center; gap: 5px; }
.admin-vitals strong { color: var(--text-soft); font-weight: 650; }
.admin-vitals .material-symbols-outlined { margin-right: 3px; font-size: 16px; }
.admin-navigation { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 24px; }
.admin-navigation nav { display: flex; gap: 4px; padding: 5px; border: 1px solid var(--line-soft); border-radius: 15px; background: var(--surface); }
.admin-navigation button { display: flex; min-height: 43px; align-items: center; justify-content: center; gap: 7px; padding: 10px 16px; border: 1px solid transparent; border-radius: 11px; background: transparent; color: var(--muted); font: inherit; font-size: 0.79rem; font-weight: 650; cursor: pointer; white-space: nowrap; }
.admin-navigation button .material-symbols-outlined { font-size: 18px; }
.admin-navigation button.is-selected { border-color: var(--line-soft); background: var(--surface-strong); box-shadow: 0 2px 8px rgba(25, 40, 70, .06); color: var(--sapphire); }
.admin-navigation > small { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 0.67rem; }
.admin-snapshot-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--muted); }
.admin-overview-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-bottom: 20px; }
.admin-overview-grid--insights { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); }
.admin-panel { min-width: 0; overflow: hidden; border: 1px solid var(--line-soft); border-radius: 22px; background: var(--surface); box-shadow: var(--shadow-soft); }
.admin-panel__header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 24px; border-bottom: 1px solid var(--line-soft); }
.admin-panel__header h2 { margin: 7px 0 6px; font-size: 1.25rem; font-weight: 700; letter-spacing: -.035em; line-height: 1.25; }
.admin-panel__header small { color: var(--muted); font-size: 0.73rem; line-height: 1.6; }
.admin-panel-note { margin: 0; padding: 0 24px 24px; color: var(--muted); font-size: 0.74rem; line-height: 1.6; }
.admin-badge { display: inline-flex; width: fit-content; align-items: center; padding: 5px 9px; border: 1px solid var(--line-soft); border-radius: 7px; background: var(--surface-subtle); color: var(--text-soft); font-size: 0.67rem; font-weight: 650; white-space: nowrap; }
.admin-badge.is-live, .admin-badge.is-completed, .admin-badge.is-status { background: color-mix(in srgb, var(--success) 9%, var(--surface-strong)); color: var(--success); }
.admin-badge.is-failed { background: color-mix(in srgb, var(--error) 10%, var(--surface-strong)); color: var(--error); }
.admin-badge.is-blocked, .admin-badge.is-waiting { background: color-mix(in srgb, #b4794b 12%, var(--surface-strong)); color: #a16a32; }
.admin-badge.is-pro, .admin-badge.is-requested { background: var(--surface-lilac); color: var(--violet); }
.admin-badge.is-muted, .admin-badge.is-legacy { color: var(--muted); }
:root[data-theme="dark"] .admin-badge:is(.is-blocked, .is-waiting) { color: #e5b278; }
.admin-chart { display: flex; height: 230px; align-items: stretch; gap: 10px; padding: 28px 24px 12px; }
.admin-chart > .admin-empty { width: 100%; }
.admin-chart-day { display: flex; min-width: 0; flex: 1; flex-direction: column; align-items: center; gap: 7px; border-radius: 5px; }
.admin-chart-value { color: var(--text-soft); font-size: 0.65rem; font-variant-numeric: tabular-nums; }
.admin-chart-track { display: flex; width: 100%; max-width: 30px; flex: 1; flex-direction: column; justify-content: flex-end; overflow: hidden; border-bottom: 1px solid var(--line); border-radius: 5px 5px 0 0; background: linear-gradient(to top, var(--surface-subtle), transparent); }
.admin-chart-segment { display: block; width: 100%; flex-shrink: 0; }
.admin-chart-day > small { color: var(--muted); font-size: 0.58rem; white-space: nowrap; }
.admin-chart-legend, .admin-outcomes { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; padding: 12px 24px 22px; font-size: 0.66rem; color: var(--muted); }
.admin-chart-legend > span, .admin-outcomes > span { display: flex; align-items: center; gap: 6px; }
.admin-chart-legend i, .admin-outcomes i { width: 7px; height: 7px; border-radius: 3px; }
.admin-chart-segment.is-completed, .admin-chart-legend .is-completed, .admin-outcomes .is-completed { background: var(--sapphire); }
.admin-chart-segment.is-failed, .admin-chart-legend .is-failed, .admin-outcomes .is-failed { background: var(--error); }
.admin-chart-segment.is-blocked, .admin-chart-legend .is-blocked, .admin-outcomes .is-blocked { background: #c69b61; }
.admin-chart-segment.is-other, .admin-chart-legend .is-other { background: color-mix(in srgb, var(--muted) 55%, var(--surface-strong)); }
.admin-outcomes { gap: 10px 20px; padding: 16px 24px; border-top: 1px solid var(--line-soft); font-size: 0.72rem; }
.admin-outcomes strong { color: var(--text); font-size: 0.92rem; }
.admin-outcomes > small { margin-left: auto; }
.admin-ranking { padding: 5px 8px; }
.admin-rank-row { display: flex; width: 100%; min-height: 70px; align-items: center; gap: 12px; padding: 12px 16px; border: 0; border-bottom: 1px solid var(--line-soft); background: transparent; color: var(--text); font: inherit; text-align: left; cursor: pointer; }
.admin-rank-row:last-child { border-bottom: 0; }
.admin-rank-row:hover { background: var(--surface-blue); }
.admin-rank-number { width: 20px; color: var(--muted); font-size: 0.75rem; font-variant-numeric: tabular-nums; }
.admin-rank-person { display: grid; min-width: 0; flex: 1; gap: 4px; }
.admin-rank-person strong { overflow: hidden; font-size: 0.82rem; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.admin-rank-person small { overflow: hidden; color: var(--muted); font-size: 0.67rem; text-overflow: ellipsis; }
.admin-rank-count { display: grid; gap: 3px; text-align: right; }
.admin-rank-count strong { font-size: .96rem; font-variant-numeric: tabular-nums; }
.admin-rank-count small { color: var(--muted); font-size: 0.65rem; }
.admin-rank-row > .material-symbols-outlined { margin-left: 7px; color: var(--muted); font-size: 17px; }
.admin-device-breakdown { display: grid; gap: 20px; padding: 26px 24px; }
.admin-device-meter { display: flex; align-items: center; gap: 15px; }
.admin-device-meter > .material-symbols-outlined { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 10px; background: var(--surface-blue); color: var(--text-soft); font-size: 19px; }
.admin-device-meter > div { flex: 1; }
.admin-device-meter div > span { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 9px; }
.admin-device-meter strong { font-size: 0.77rem; font-weight: 600; }
.admin-device-meter small { color: var(--muted); font-size: 0.7rem; }
.admin-device-meter progress { display: block; width: 100%; height: 5px; overflow: hidden; border: 0; border-radius: 6px; background: var(--line-soft); accent-color: var(--sapphire); }
.admin-device-meter progress::-webkit-progress-bar { background: var(--line-soft); border-radius: 6px; }
.admin-device-meter progress::-webkit-progress-value { background: var(--sapphire); border-radius: 6px; }
.admin-activity-list, .admin-pdf-log { display: grid; grid-template-columns: minmax(0, 1fr); }
.admin-activity-row { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 17px 24px; border-bottom: 1px solid var(--line-soft); }
.admin-activity-row:last-child { border-bottom: 0; }
.admin-activity-row__icon { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 11px; background: var(--surface-blue); color: var(--sapphire); font-size: 18px; }
.admin-activity-row__main, .admin-activity-row__meta { display: grid; min-width: 0; gap: 3px; }
.admin-activity-row__main strong { overflow: hidden; font-size: 0.79rem; text-overflow: ellipsis; white-space: nowrap; }
.admin-activity-row__main a, .admin-session-email { overflow: hidden; color: var(--sapphire); font-size: 0.69rem; text-decoration: none; text-overflow: ellipsis; white-space: nowrap; }
.admin-activity-row__main small, .admin-activity-row__meta small { color: var(--muted); font-size: 0.65rem; }
.admin-activity-row__meta { justify-items: end; text-align: right; }
.admin-empty { display: flex; min-height: 160px; align-items: center; justify-content: center; gap: 12px; padding: 28px; color: var(--muted); text-align: center; }
.admin-empty p { max-width: 55ch; margin: 0; font-size: 0.82rem; line-height: 1.7; }
.admin-empty > .material-symbols-outlined { flex-shrink: 0; font-size: 23px; }
.admin-search { display: flex; width: min(340px, 100%); min-height: 44px; align-items: center; gap: 10px; padding: 0 13px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-strong); }
.admin-search:focus-within { outline: 2px solid var(--sapphire); outline-offset: 2px; }
.admin-search .material-symbols-outlined { color: var(--muted); font-size: 19px; }
.admin-search input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; color: var(--text); font: inherit; font-size: 0.79rem; }
.admin-log-filters { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); align-items: end; gap: 14px; padding: 22px 24px; border-bottom: 1px solid var(--line-soft); }
.admin-log-filters > .admin-search { grid-column: 1 / -1; width: 100%; }
.admin-log-filters > label:not(.admin-search) { display: grid; min-width: 0; gap: 8px; color: var(--muted); font-size: 0.71rem; }
.admin-log-filters select, .admin-session-filters select { width: 100%; min-width: 0; min-height: 42px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-strong); color: var(--text); font: inherit; font-size: 0.76rem; text-overflow: ellipsis; }
.admin-log-summary { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; padding: 14px 24px; font-size: 0.74rem; }
.admin-log-summary small { color: var(--muted); font-size: 0.69rem; }
.admin-log-summary > button { margin-left: auto; }
.admin-log-head, .admin-pdf-entry > summary { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 1fr) minmax(110px, .85fr) minmax(135px, .9fr); align-items: center; gap: 16px; padding: 17px 24px; }
.admin-log-head { border-block: 1px solid var(--line-soft); background: var(--surface-subtle); color: var(--muted); font-size: 0.69rem; font-weight: 650; }
.admin-pdf-entry { min-width: 0; border-bottom: 1px solid var(--line-soft); }
.admin-pdf-entry:last-child { border-bottom: 0; }
.admin-pdf-entry > summary { min-height: 90px; list-style: none; cursor: pointer; }
.admin-pdf-entry > summary::-webkit-details-marker, .admin-session-entry > summary::-webkit-details-marker { display: none; }
.admin-pdf-entry > summary:hover, .admin-session-entry > summary:hover { background: var(--surface-blue); }
.admin-pdf-entry[open] > summary { background: var(--surface-blue); }
.admin-log-person, .admin-log-device { display: flex; min-width: 0; align-items: center; gap: 10px; }
.admin-log-person > span:last-child, .admin-log-device > span:last-child, .admin-log-document, .admin-log-time { display: grid; min-width: 0; gap: 5px; }
.admin-log-avatar { display: grid; width: 34px; height: 34px; flex: 0 0 auto; place-items: center; border: 1px solid var(--line-soft); border-radius: 10px; background: var(--surface-lilac); color: var(--violet); font-size: 0.7rem; font-weight: 700; }
.admin-pdf-entry summary strong { overflow: hidden; color: var(--text); font-size: 0.77rem; font-weight: 650; text-overflow: ellipsis; }
.admin-pdf-entry summary small { overflow: hidden; color: var(--muted); font-size: 0.67rem; text-overflow: ellipsis; }
.admin-log-device > .material-symbols-outlined { color: var(--muted); font-size: 19px; }
.admin-log-time time { color: var(--text-soft); font-size: 0.7rem; font-variant-numeric: tabular-nums; }
.admin-log-time small { display: flex; align-items: center; justify-content: space-between; }
.admin-expand { font-size: 18px; transition: transform .18s; }
.admin-pdf-entry[open] .admin-expand, .admin-session-entry[open] > summary > .admin-expand { transform: rotate(180deg); }
.admin-entry-details { padding: 22px 24px; border-top: 1px solid var(--line-soft); background: var(--surface-subtle); }
.admin-outcome-note { margin: 0 0 22px; color: var(--text-soft); font-size: 0.8rem; line-height: 1.65; }
.admin-detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px 26px; margin: 0; }
.admin-detail-grid + .admin-detail-grid { margin-top: 22px; padding-top: 22px; border-top: 1px solid var(--line-soft); }
.admin-detail-grid > div { min-width: 0; }
.admin-detail-grid dt { margin-bottom: 6px; color: var(--muted); font-size: 0.7rem; }
.admin-detail-grid dd { margin: 0; color: var(--text-soft); font-size: 0.81rem; line-height: 1.6; overflow-wrap: anywhere; }
.admin-detail-grid a { color: var(--sapphire); text-decoration: none; }
.admin-pagination { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 18px 24px; border-top: 1px solid var(--line-soft); }
.admin-pagination > span { color: var(--muted); font-size: 0.75rem; }
.admin-pagination > div { display: flex; gap: 8px; }
.admin-session-filters { display: flex; gap: 16px; padding: 20px 24px; border-bottom: 1px solid var(--line-soft); }
.admin-session-filters > .admin-search { flex: 1; width: auto; }
.admin-session-entry { min-width: 0; border-bottom: 1px solid var(--line-soft); }
.admin-session-entry > summary { display: flex; align-items: center; gap: 12px; padding-right: 24px; list-style: none; cursor: pointer; }
.admin-session-entry .admin-activity-row { flex: 1; min-width: 0; border-bottom: 0; }
.admin-session-entry .admin-entry-details > button { margin-top: 20px; }
.admin-member-list { display: grid; }
.admin-member { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 1fr) 100px 155px; align-items: center; gap: 16px 20px; padding: 24px; border-bottom: 1px solid var(--line-soft); }
.admin-member:last-child { border-bottom: 0; }
.admin-member.is-disabled { opacity: .7; }
.admin-member__identity { display: flex; min-width: 0; align-items: center; gap: 12px; }
.admin-member__avatar { display: grid; width: 40px; height: 40px; flex: 0 0 auto; place-items: center; border: 1px solid var(--line-soft); border-radius: 12px; background: var(--surface-blue); color: var(--sapphire); font-size: 0.75rem; font-weight: 750; }
.admin-member__identity > div { display: grid; min-width: 0; gap: 4px; }
.admin-member__identity strong { overflow-wrap: anywhere; font-size: 0.83rem; }
.admin-member__identity a { overflow: hidden; color: var(--sapphire); font-size: 0.71rem; text-decoration: none; text-overflow: ellipsis; }
.admin-member__identity small { color: var(--muted); font-size: 0.66rem; line-height: 1.6; }
.admin-member__badges { display: flex; flex-wrap: wrap; gap: 6px; }
.admin-member__activity { display: grid; gap: 6px; }
.admin-member__activity strong { font-size: 0.79rem; font-weight: 650; }
.admin-member__activity span { font-size: 0.7rem; line-height: 1.6; color: var(--text-soft); }
.admin-member__activity small { font-size: 0.66rem; color: var(--muted); }
.admin-member__pdf { display: grid; gap: 5px; }
.admin-member__pdf strong { font-size: 1.6rem; color: var(--text); font-variant-numeric: tabular-nums; }
.admin-member__pdf span { font-size: 0.7rem; color: var(--text-soft); }
.admin-member__pdf small { color: var(--muted); font-size: 0.64rem; }
.admin-member__action { display: grid; gap: 8px; }
.admin-access-button { color: var(--violet); font-size: 0.7rem; }
.admin-access-button.is-revoke { color: var(--error); }
.admin-member-details { grid-column: 1 / -1; min-width: 0; }
.admin-member-details > summary { display: flex; width: fit-content; align-items: center; gap: 8px; color: var(--muted); font-size: 0.7rem; cursor: pointer; }
.admin-member-details > summary .material-symbols-outlined { font-size: 17px; }
.admin-member-details > .admin-entry-details { margin-top: 16px; border: 1px solid var(--line-soft); border-radius: 14px; }
.admin-data-note { display: flex; align-items: start; gap: 10px; max-width: 1000px; margin: 24px auto 0; padding: 0 12px; color: var(--muted); font-size: 0.71rem; line-height: 1.7; }
.admin-data-note > .material-symbols-outlined { flex-shrink: 0; font-size: 17px; }
.admin-state { display: grid; min-height: 350px; place-content: center; justify-items: center; gap: 14px; padding: 32px; border: 1px solid var(--line-soft); border-radius: 22px; background: var(--surface); text-align: center; }
.admin-state h2 { margin: 0; font-size: 1.3rem; }
.admin-state p { max-width: 65ch; margin: 0 0 12px; color: var(--muted); font-size: 0.9rem; line-height: 1.7; }
.admin-state > .material-symbols-outlined { color: var(--sapphire); font-size: 36px; }
.admin-state--error > .material-symbols-outlined { color: var(--error); }
@media (max-width: 1100px) {
  .admin-metric { gap: 12px; padding: 20px 16px; }
  .admin-metric__icon { width: 34px; height: 34px; border-radius: 10px; }
  .admin-metric div > span { font-size: 0.7rem; }
  .admin-member { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) 100px; }
  .admin-member__identity { grid-column: 1 / 3; }
  .admin-member__activity { grid-column: 1; }
  .admin-member__badges { grid-row: 2; }
  .admin-member__action { grid-column: 3; grid-row: 1 / 3; }
  .admin-overview-grid--insights { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-chart { gap: 6px; padding-inline: 16px; }
  .admin-log-head, .admin-pdf-entry > summary { gap: 12px; grid-template-columns: minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr) 110px 128px; padding-inline: 18px; }
  .admin-log-avatar { display: none; }
}
@media (max-width: 800px) {
  .admin-site-brand > span, .admin-site-secure { display: none; }
  .admin-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-metric { min-height: 110px; gap: 18px; padding: 22px; }
  .admin-overview-grid, .admin-overview-grid--insights { grid-template-columns: minmax(0, 1fr); }
  .admin-navigation { display: block; }
  .admin-navigation nav { width: 100%; overflow-x: auto; }
  .admin-navigation button { flex: 1; padding-inline: 12px; }
  .admin-navigation > small { margin-top: 14px; }
  .admin-panel__header { align-items: start; flex-wrap: wrap; }
  .admin-log-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-log-head { display: none; }
  .admin-pdf-entry > summary { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px 20px; padding: 22px 24px; }
  .admin-log-person { grid-column: 1; grid-row: 1; }
  .admin-log-time { grid-column: 2; grid-row: 1; text-align: right; }
  .admin-log-time small { justify-content: end; gap: 10px; }
  .admin-log-document { grid-column: 1; grid-row: 2; }
  .admin-log-device { grid-column: 2; grid-row: 2; justify-content: end; text-align: right; }
  .admin-log-person small { overflow-wrap: anywhere; }
  .admin-detail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
  .admin-page, .admin-site-header { width: calc(100% - 24px); }
  .admin-site-header { top: 6px; min-height: 62px; gap: 8px; padding: 10px 12px; border-radius: 18px; }
  .admin-site-brand img { width: 120px; }
  .admin-site-header nav { gap: 5px; }
  .admin-site-header nav > a, .admin-site-header nav button { padding: 0 8px; font-size: 0.67rem; }
  .admin-page { padding-top: 20px; }
  .admin-hero { display: grid; gap: 20px; padding: 24px; }
  .admin-hero > button { width: fit-content; }
  .admin-hero p:last-child { font-size: 0.85rem; }
  .admin-metrics { gap: 10px; }
  .admin-metric { min-height: 122px; align-items: start; gap: 12px; padding: 16px 12px; }
  .admin-metric__icon { width: 27px; height: 27px; flex-basis: 27px; font-size: 17px; }
  .admin-metric strong { font-size: 1.6rem; }
  .admin-metric div > span { font-size: 0.66rem; line-height: 1.5; }
  .admin-vitals { justify-content: start; gap: 10px 16px; font-size: 0.68rem; }
  .admin-navigation button { min-width: 110px; font-size: 0.74rem; }
  .admin-panel__header { padding: 20px; }
  .admin-panel__header h2 { font-size: 1.15rem; }
  .admin-activity-row { grid-template-columns: 30px minmax(0, 1fr); gap: 10px; padding: 16px 20px; }
  .admin-activity-row__meta { grid-column: 2; justify-items: start; text-align: left; }
  .admin-chart { gap: 5px; height: 210px; padding-inline: 14px; }
  .admin-chart-day > small { font-size: 0.51rem; writing-mode: vertical-rl; }
  .admin-chart-legend, .admin-outcomes { padding-inline: 20px; }
  .admin-log-filters { padding: 20px; }
  .admin-log-filters > label:nth-child(2) { grid-column: 1 / -1; }
  .admin-log-summary { padding-inline: 20px; }
  .admin-log-summary > small { order: 3; width: 100%; line-height: 1.7; }
  .admin-pdf-entry > summary { padding: 20px; gap: 14px; }
  .admin-log-device > .material-symbols-outlined { display: none; }
  .admin-log-time time { font-size: 0.62rem; }
  .admin-entry-details { padding: 20px; }
  .admin-detail-grid { gap: 18px 16px; }
  .admin-detail-grid dd { font-size: 0.75rem; }
  .admin-session-filters { flex-direction: column; padding: 20px; }
  .admin-session-entry > summary { padding-right: 14px; }
  .admin-member { grid-template-columns: minmax(0, 1fr) 90px; gap: 18px; padding: 20px; }
  .admin-member__identity { grid-column: 1 / -1; }
  .admin-member__badges { grid-column: 1 / -1; grid-row: auto; }
  .admin-member__activity { grid-column: 1; }
  .admin-member__pdf { grid-column: 2; }
  .admin-member__action { grid-column: 1 / -1; grid-row: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-pagination { padding: 16px 20px; }
}
@media (prefers-reduced-motion: reduce) { .admin-page *, .admin-site-header * { transition: none !important; } }
/* Decorative icons must never cover a neighbouring control while fonts load. */
.admin-page .material-symbols-outlined { overflow: hidden; white-space: nowrap; }
.admin-navigation button .material-symbols-outlined { width: 18px; height: 18px; flex: 0 0 18px; pointer-events: none; }

.admin-grant-form { display: grid; gap: 9px; max-width: 320px; text-align: left; }
.admin-grant-form label, .admin-delete-confirm label { display: grid; gap: 7px; font-weight: 650; }
.admin-grant-form input { width: 90px; padding: 9px; border: 1px solid var(--border-subtle); border-radius: 9px; background: var(--surface-panel); color: inherit; }
.admin-grant-form small { line-height: 1.5; }
.admin-delete-control { margin-top: 10px; }
.admin-delete-confirm { border: 1px solid #cd7777; background: var(--surface-panel); border-radius: 14px; padding: 18px; margin-top: 10px; max-width: 460px; text-align: left; }
.admin-delete-confirm p { font-size: 13px; line-height: 1.6; }
.admin-delete-confirm input { padding: 12px; width: 100%; box-sizing: border-box; border: 1px solid #cd7777; border-radius: 8px; }
.admin-delete-confirm button { margin-top: 10px; }
.admin-pagination { display: flex; justify-content: space-between; padding: 18px; }

.admin-member-evidence { grid-column:1/-1; width:100%; min-width:0; }
.admin-license-evidence { margin:1rem 0; padding:1rem; border:1px solid var(--border-color,rgba(110,140,170,.2)); border-radius:14px; }
.admin-license-evidence summary { font-weight:650; cursor:pointer; }
.admin-license-evidence p { max-width:100ch; line-height:1.6; }
.admin-detail-grid dd,.admin-detail-grid code { overflow-wrap:anywhere; }
.admin-invoice { display:flex; flex-wrap:wrap; gap:.65rem 1rem; padding:1rem 0; border-bottom:1px solid rgba(110,140,170,.2); }
.admin-invoice strong { flex:1 0 140px; }
.admin-block-control { min-width:0; }

/* Data-first owner workspace and audited PDF credit grants. */
.admin-site-header { border-radius: 12px; }
.admin-hero { padding: 24px 28px; border-radius: 12px; background: var(--surface-strong); box-shadow: none; }
.admin-hero h1 { font-size: 2.2rem; }
.admin-member { grid-template-columns: minmax(0,1.3fr) minmax(0,1fr) minmax(0,.85fr) 100px 160px; }
.admin-grant { width: 100%; }
.admin-grant__open { width: 100%; color: var(--sapphire); border-color: color-mix(in srgb,var(--sapphire) 25%,var(--line)); background: var(--surface-blue); }
.admin-grant__form { display: grid; gap: 14px; width: min(460px,calc(100vw - 64px)); padding: 20px; background: var(--surface-strong); border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow-soft); }
.admin-member__action:has(.admin-grant__form) { grid-column: 1 / -1; display: flex; align-items: start; flex-wrap: wrap; }
.admin-member__action:has(.admin-grant__form) .admin-grant { width: auto; }
.admin-grant__form header strong { font-size: 1rem; }
.admin-grant__form header p { margin: 6px 0 0; font-size: .74rem; color: var(--muted); overflow-wrap: anywhere; }
.admin-grant__form label { display: grid; gap: 7px; font-size: .76rem; font-weight: 650; }
.admin-grant__form input { width: 100%; min-width: 0; min-height: 42px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 7px; background: var(--field-bg); color: var(--text); font: inherit; }
.admin-grant__summary { margin: 0; padding: 10px 12px; border-radius: 7px; font-size: .75rem; line-height: 1.6; background: var(--surface-blue); }
.admin-grant__confirm { background: var(--sapphire); color: white; border-color: transparent; }
.admin-grant__history { padding-top: 10px; border-top: 1px solid var(--line); font-size: .74rem; }
.admin-grant__history summary { cursor: pointer; }
.admin-grant__history ul { display: grid; gap: 8px; padding: 0; list-style: none; }
.admin-grant__history li { display: grid; gap: 5px; padding: 10px 0; border-bottom: 1px solid var(--line-soft); }
@media(max-width:1100px) { .admin-member { grid-template-columns: minmax(0,1.3fr) minmax(0,1fr) 100px; } }
@media(max-width:700px) { .admin-member { grid-template-columns: minmax(0,1fr) 90px; } .admin-grant__form { width: 100%; margin-top: 10px; box-shadow: none; } .admin-member__action:has(.admin-grant__form) { display: grid; grid-template-columns: 1fr; } .admin-grant__form input { font-size: 16px; } }
.admin-notice { position: sticky; top: 94px; z-index: 45; background: var(--surface-strong); box-shadow: var(--shadow-soft); }

/* The owner workspace uses the same warm paper, blue ink and surfaces as home. */
.admin-site-shell { --text:var(--panel-ink); --text-soft:var(--panel-copy); --muted:var(--panel-copy); --sapphire:var(--panel-accent); background:var(--surface); color:var(--panel-ink); }
.admin-site-header { border-color:var(--panel-line); border-radius:16px; background:var(--surface-strong); box-shadow:0 5px 24px #19364a08; backdrop-filter:blur(18px); }
.admin-site-brand>span { color:var(--panel-accent); border-color:var(--panel-line); background:var(--panel-end); }
.admin-site-secure { border:0; background:transparent; }
.admin-site-header nav>a { border:0; background:transparent; color:var(--panel-accent); }
.admin-page { padding-top:38px; }
.admin-hero { margin-bottom:30px; padding:30px 34px; border:1px solid var(--panel-line); border-radius:18px; background:linear-gradient(115deg,var(--panel-start),var(--panel-end)); color:var(--panel-ink); }
.admin-hero h1 { margin:8px 0 10px; font-family:var(--font-display); font-size:clamp(2.4rem,4vw,3.3rem); letter-spacing:-.055em; line-height:1.1; }
.admin-hero p:not(.admin-eyebrow) { max-width:620px; color:var(--panel-copy); line-height:1.7; }
.admin-eyebrow { color:var(--panel-accent); font-size:.62rem; letter-spacing:.14em; font-weight:750; }
.admin-refresh { border-color:var(--panel-line); border-radius:9px; background:var(--surface-strong); color:var(--panel-accent); box-shadow:none; min-height:42px; }
.admin-refresh:hover { border-color:var(--panel-accent); background:var(--panel-end); }
.admin-workspace { display:grid; grid-template-columns:210px minmax(0,1fr); align-items:start; gap:28px; }
.admin-sidebar { position:sticky; top:106px; min-width:0; padding:16px 0; }
.admin-sidebar>.admin-eyebrow { padding:0 12px; margin:0 0 14px; }
.admin-sidebar nav { display:grid; gap:5px; }
.admin-sidebar nav button { display:flex; align-items:center; gap:11px; width:100%; padding:13px 12px; border:1px solid transparent; border-radius:10px; background:transparent; color:var(--panel-copy); text-align:left; font-size:.78rem; font-weight:600; cursor:pointer; }
.admin-sidebar nav button .material-symbols-outlined { flex:0 0 21px; width:21px; overflow:hidden; font-size:21px; color:var(--panel-accent); }
.admin-sidebar nav button:hover { background:var(--panel-end); }
.admin-sidebar nav button.is-selected { color:var(--panel-ink); border-color:var(--panel-line); background:linear-gradient(115deg,var(--panel-start),var(--panel-end)); font-weight:750; }
.admin-sidebar-note { display:flex; align-items:start; gap:9px; margin:28px 12px 12px; padding-top:20px; border-top:1px solid var(--panel-line); }
.admin-sidebar-note>.material-symbols-outlined { font-size:18px; color:var(--panel-copy); }
.admin-sidebar-note div { display:grid; gap:4px; }
.admin-sidebar-note strong { font-size:.7rem; font-weight:600; }
.admin-sidebar-note small,.admin-sidebar-help { color:var(--panel-copy); font-size:.65rem; line-height:1.7; }
.admin-sidebar-help { margin:0 12px; }
.admin-content { min-width:0; }
.admin-panel { border-color:var(--panel-line); border-radius:16px; box-shadow:none; background:var(--surface-strong); }
.admin-panel__header { gap:16px; padding:22px 24px; border-color:var(--panel-line); }
.admin-panel__header :is(h2,h3) { margin:6px 0; color:var(--panel-ink); font-size:1.14rem; letter-spacing:-.025em; line-height:1.3; }
.admin-panel__header small { font-size:.69rem; }
.admin-metrics { gap:12px; margin-top:30px; }
.admin-metric { padding:20px 16px; border-color:var(--panel-line); border-radius:12px; box-shadow:none; background:linear-gradient(120deg,var(--panel-start),var(--panel-end)); }
.admin-metric>.material-symbols-outlined { width:36px; height:36px; border-radius:9px; background:var(--panel-inset); color:var(--panel-accent); font-size:20px; }
.admin-metric strong { font-size:1.7rem; color:var(--panel-ink); }
.admin-metric div>span { font-size:.66rem; line-height:1.5; }
.admin-vitals { justify-content:flex-start; padding:15px 0 24px; gap:12px 18px; font-size:.65rem; }
.admin-overview-grid { gap:18px; }
.admin-overview-grid--insights { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
.admin-activity-row,.admin-member,.admin-rank-row { border-color:var(--panel-line); }
.admin-search,.admin-filters :is(input,select),.admin-grant__form { border-color:var(--panel-line); border-radius:9px; }
.admin-grant__confirm { background:#8b5a3c; border-color:#8b5a3c; color:#fff; }
.admin-traffic { margin-bottom:26px; }
.admin-traffic-heading { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:flex-end; gap:18px; margin:0 0 20px; }
.admin-traffic-heading h2 { margin:8px 0 7px; font-family:var(--font-display); color:var(--panel-ink); font-size:clamp(1.55rem,2.6vw,2.05rem); line-height:1.15; letter-spacing:-.04em; }
.admin-traffic-heading p:not(.admin-eyebrow) { margin:0; color:var(--panel-copy); font-size:.8rem; }
.admin-period-picker { display:flex; gap:3px; padding:4px; border:1px solid var(--panel-line); border-radius:10px; background:var(--panel-end); }
.admin-period-picker button { padding:8px 12px; border:1px solid transparent; border-radius:7px; color:var(--panel-copy); background:transparent; font-size:.73rem; font-weight:650; cursor:pointer; white-space:nowrap; }
.admin-period-picker .is-selected { background:var(--surface-strong); color:var(--panel-accent); border-color:var(--panel-line); box-shadow:0 2px 5px #19364a07; }
.admin-traffic-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0 0 18px; }
.admin-traffic-stat { display:flex; flex-direction:column; align-items:stretch; gap:9px; min-width:0; padding:20px; background:var(--surface-strong); border:1px solid var(--panel-line); border-radius:14px; color:var(--panel-ink); text-align:left; cursor:pointer; }
.admin-traffic-stat:hover { border-color:var(--panel-accent); }
.admin-traffic-stat.is-selected { background:linear-gradient(135deg,var(--panel-start),var(--panel-end)); border-color:var(--panel-accent); box-shadow:inset 0 3px var(--panel-accent); }
.admin-traffic-stat__label { display:flex; justify-content:space-between; align-items:center; gap:8px; min-height:24px; font-size:.72rem; font-weight:650; }
.admin-traffic-stat__label .material-symbols-outlined { color:var(--panel-accent); font-size:19px; }
.admin-traffic-stat>strong { font-size:clamp(1.85rem,2.8vw,2.5rem); line-height:1.1; font-weight:750; letter-spacing:-.055em; font-variant-numeric:tabular-nums; }
.admin-traffic-stat__today { font-size:.7rem; font-weight:600; color:var(--panel-accent); }
.admin-traffic-stat>small { margin-top:auto; font-size:.61rem; line-height:1.55; color:var(--panel-copy); }
.admin-traffic-chart-panel { margin-bottom:18px; }
.admin-traffic-chart { display:flex; gap:4px; height:232px; padding:24px 24px 0; background:repeating-linear-gradient(to top,transparent 0,transparent 49px,color-mix(in srgb,var(--panel-line) 45%,transparent) 50px); background-clip:content-box; }
.admin-traffic-day { display:flex; flex-direction:column; align-items:stretch; flex:1; gap:9px; min-width:0; padding:0; border:0; background:transparent; color:var(--panel-copy); cursor:pointer; }
.admin-traffic-bar-track { display:flex; flex:1; align-items:flex-end; justify-content:center; border-bottom:1px solid var(--panel-line); }
.admin-traffic-bar { display:block; width:100%; max-width:36px; border-radius:4px 4px 0 0; background:color-mix(in srgb,var(--panel-accent) 72%,var(--panel-end)); transition:height .2s; }
.admin-traffic-day.is-selected .admin-traffic-bar,.admin-traffic-day:hover .admin-traffic-bar { background:#996644; }
.admin-traffic-day.is-unmeasured .admin-traffic-bar-track { background:repeating-linear-gradient(135deg,transparent 0,transparent 5px,color-mix(in srgb,var(--panel-line) 40%,transparent) 5px,color-mix(in srgb,var(--panel-line) 40%,transparent) 6px); }
.admin-traffic-day>small { font-size:.58rem; line-height:20px; height:20px; white-space:nowrap; }
.admin-traffic-day>small.is-hidden { visibility:hidden; }
.admin-traffic-day:last-child>small { align-self:flex-end; width:max-content; }
.admin-traffic-day-detail { display:flex; flex-wrap:wrap; align-items:center; gap:8px 20px; min-height:65px; margin:15px 24px; padding:14px 18px; border:1px solid var(--panel-line); border-radius:9px; background:var(--panel-end); color:var(--panel-copy); font-size:.72rem; }
.admin-traffic-day-detail strong { color:var(--panel-ink); font-size:.73rem; }
.admin-traffic-chart-panel .admin-panel-note { font-size:.66rem; line-height:1.7; }
.admin-traffic-breakdowns { margin-bottom:0; }
.admin-traffic-ranking { padding:4px 24px 16px; }
.admin-traffic-page,.admin-traffic-device { display:grid; grid-template-columns:25px minmax(0,1fr) auto; align-items:center; gap:14px; padding:16px 0; border-bottom:1px solid var(--panel-line); }
.admin-traffic-page:last-child,.admin-traffic-device:last-child { border-bottom:0; }
.admin-traffic-page>span { color:var(--panel-copy); font-size:.72rem; }
.admin-traffic-device>.material-symbols-outlined { color:var(--panel-accent); font-size:23px; }
.admin-traffic-ranking strong { display:block; font-size:.76rem; font-weight:650; overflow-wrap:anywhere; }
.admin-traffic-ranking small { display:block; color:var(--panel-copy); font-size:.63rem; overflow-wrap:anywhere; }
.admin-traffic-ranking b { min-width:35px; color:var(--panel-ink); font-size:.83rem; text-align:right; font-variant-numeric:tabular-nums; }
.admin-traffic-ranking progress { display:block; width:100%; height:4px; margin-top:9px; border:0; border-radius:8px; overflow:hidden; background:var(--panel-end); accent-color:var(--panel-accent); }
.admin-traffic-ranking progress::-webkit-progress-bar { background:var(--panel-end); }
.admin-traffic-ranking progress::-webkit-progress-value { background:var(--panel-accent); border-radius:8px; }
.admin-traffic-empty { padding:16px 0; font-size:.78rem; color:var(--panel-copy); line-height:1.7; }
.admin-traffic-loading,.admin-traffic-error { display:flex; align-items:center; justify-content:center; gap:18px; min-height:170px; padding:24px; border:1px solid var(--panel-line); border-radius:14px; background:linear-gradient(115deg,var(--panel-start),var(--panel-end)); color:var(--panel-copy); }
.admin-traffic-loading>.material-symbols-outlined { font-size:30px; color:var(--panel-accent); }
.admin-traffic-error { justify-content:space-between; }
.admin-traffic-error strong { color:var(--panel-ink); font-size:.9rem; }
.admin-traffic-error p { margin:6px 0; font-size:.76rem; }
.admin-traffic-table-panel { margin-top:18px; }
.admin-table-scroll { overflow-x:auto; }
.admin-traffic-table { width:100%; border-collapse:collapse; font-size:.76rem; font-variant-numeric:tabular-nums; }
.admin-traffic-table :is(th,td) { padding:13px 20px; border-bottom:1px solid var(--panel-line); text-align:right; white-space:nowrap; }
.admin-traffic-table th:first-child { text-align:left; }
.admin-traffic-table thead { background:var(--panel-end); color:var(--panel-copy); font-size:.68rem; }
.admin-traffic-table tbody th { font-weight:550; }
.admin-traffic-table tbody tr:hover { background:var(--panel-start); }
.admin-workspace :is(button,a,input,select,summary):focus-visible { outline:2px solid var(--panel-accent); outline-offset:3px; }
@media(min-width:861px) and (max-width:1250px) {
 .admin-workspace { grid-template-columns:180px minmax(0,1fr); gap:20px; }
 .admin-sidebar nav button { gap:8px; padding:12px 9px; font-size:.73rem; }
 .admin-traffic-stats,.admin-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .admin-overview-grid--insights { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:860px) {
 .admin-workspace { grid-template-columns:minmax(0,1fr); gap:20px; }
 .admin-sidebar { position:static; padding:0; }
 .admin-sidebar>.admin-eyebrow,.admin-sidebar-note,.admin-sidebar-help { display:none; }
 .admin-sidebar nav { display:flex; overflow-x:auto; padding:4px 2px 10px; }
 .admin-sidebar nav button { width:auto; flex:0 0 auto; white-space:nowrap; padding:11px 13px; }
 .admin-overview-grid--insights { grid-template-columns:minmax(0,1fr); }
 .admin-hero { margin-bottom:18px; }
}
@media(max-width:600px) {
 .admin-page,.admin-site-header { width:calc(100% - 24px); }
 .admin-site-header { top:6px; gap:8px; padding:10px 12px; min-height:62px; border-radius:12px; }
 .admin-site-brand { gap:0; }
 .admin-site-brand img { width:130px; }
 .admin-site-brand>span,.admin-site-secure { display:none; }
 .admin-site-header nav { gap:4px; }
 .admin-site-header nav>a { font-size:0; gap:0; padding:8px; }
 .admin-site-header nav>a .material-symbols-outlined { font-size:19px; }
 .admin-site-header nav button { padding:0 10px; font-size:.69rem; }
 .admin-page { padding-top:24px; }
 .admin-hero { padding:22px 20px; align-items:flex-start; gap:18px; flex-direction:column; }
 .admin-hero h1 { font-size:2.5rem; }
 .admin-hero .admin-refresh { align-self:flex-start; }
 .admin-traffic-heading { gap:16px; }
 .admin-traffic-heading h2 { font-size:1.65rem; }
 .admin-period-picker { width:100%; }
 .admin-period-picker button { flex:1; }
 .admin-traffic-stats,.admin-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
 .admin-traffic-stat { padding:15px 12px; gap:8px; border-radius:11px; }
 .admin-traffic-stat__label { font-size:.68rem; }
 .admin-traffic-stat__label .material-symbols-outlined { display:none; }
 .admin-traffic-stat>strong { font-size:2rem; }
 .admin-traffic-stat>small { font-size:.59rem; }
 .admin-panel__header { padding:18px 16px; gap:12px; flex-wrap:wrap; }
 .admin-traffic-chart { height:195px; gap:2px; padding:18px 16px 0; }
 .admin-traffic-day>small { font-size:.53rem; }
 /* Leave room for the final date on the denser 30- and 90-day charts. */
 .admin-traffic-chart:has(>:nth-child(30)) .admin-traffic-day:nth-last-child(-n+4):not(:last-child)>small,
 .admin-traffic-chart:has(>:nth-child(90)) .admin-traffic-day:nth-last-child(-n+7):not(:last-child)>small { visibility:hidden; }
 .admin-traffic-day-detail { margin:12px 16px; gap:6px; padding:12px; flex-direction:column; align-items:flex-start; font-size:.65rem; }
 .admin-traffic-chart-panel .admin-panel-note { padding:0 16px 18px; font-size:.63rem; }
 .admin-overview-grid { grid-template-columns:minmax(0,1fr); }
 .admin-traffic-ranking { padding-inline:16px; }
 .admin-traffic-error { flex-direction:column; align-items:flex-start; }
 .admin-metric { padding:16px 12px; }
 .admin-traffic-table :is(th,td) { padding:12px; font-size:.7rem; }
}
@media(prefers-reduced-motion:reduce) { .admin-traffic-bar { transition:none; } }
