.stats-page{--sd-not-started:#b8c2cc;--sd-in-progress:#626a73;--sd-completed:var(--clr-accent);--sd-track:#e8eaee;--sd-row-line:#e8eaee;background:var(--clr-bg);min-height:100vh;font-family:var(--font-body);color:var(--clr-text);padding:var(--space-3xl) var(--page-gutter) var(--space-5xl)}.stats-inner{max-width:1400px;margin:0 auto}.stats-inner--narrow{max-width:1240px}.sd-eyebrow{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.11em;text-transform:uppercase;color:var(--clr-accent);margin:0 0 var(--space-sm);font-weight:700}.stats-page h1{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:700;line-height:var(--leading-tight);letter-spacing:-.02em;color:var(--clr-ink);margin:0 0 var(--space-sm)}.stats-page h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;line-height:var(--leading-snug);color:var(--clr-ink);margin:0}.sd-lede{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--clr-secondary);max-width:62ch;margin:0}.sd-subtle{font-size:var(--text-sm);color:var(--clr-secondary);margin:0}.sd-panel{border:1px solid var(--clr-border-light);padding:var(--space-xl);background:#fff}.sd-button{justify-content:center;align-items:center;gap:var(--space-sm);min-height:40px;padding:0 var(--space-lg);border:1px solid var(--clr-border-light);color:var(--clr-ink);font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;background:#fff;font-weight:600;text-decoration:none;transition:border-color .15s,background-color .15s,color .15s;display:inline-flex}.sd-button:hover{border-color:var(--clr-border)}.sd-button--primary{background:var(--clr-accent);border-color:var(--clr-accent);color:#fff}.sd-button--primary:hover{background:var(--clr-accent-hover);border-color:var(--clr-accent-hover)}.sd-button--small{min-height:34px;padding:0 var(--space-md);font-size:var(--text-xs)}.sd-select{min-width:148px;min-height:40px;padding:0 var(--space-md);border:1px solid var(--clr-border-light);color:var(--clr-ink);font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;background:#fff;font-weight:600}.sd-search{align-items:center;gap:var(--space-sm);min-height:40px;padding:0 var(--space-md);border:1px solid var(--clr-border-light);color:var(--clr-tertiary);background:#fff;display:inline-flex}.sd-search input{width:200px;font-family:var(--font-body);font-size:var(--text-sm);color:var(--clr-ink);background:0 0;border:0;outline:0}.stats-page :is(button,input,select,a):focus-visible{outline:2px solid var(--clr-accent);outline-offset:2px}.stats-header{justify-content:space-between;align-items:flex-end;gap:var(--space-2xl);padding-bottom:var(--space-xl);border-bottom:2px solid var(--clr-ink);margin-bottom:var(--space-xl);display:flex}.stats-header-actions{align-items:center;gap:var(--space-sm);flex-shrink:0;display:flex}.stats-metrics{gap:var(--space-lg);margin-bottom:var(--space-lg);grid-template-columns:repeat(4,1fr);display:grid}.stats-metric{border:1px solid var(--clr-border-light);padding:var(--space-lg);background:#fff;flex-direction:column;min-height:148px;text-decoration:none;transition:border-color .15s;display:flex}.stats-metric:hover{border-color:var(--clr-border)}.stats-metric--action{border-left:3px solid var(--clr-accent);padding-left:calc(var(--space-lg) - 2px)}.stats-metric-label{font-size:var(--text-sm);color:var(--clr-secondary);font-weight:600}.stats-metric--action .stats-metric-label{color:var(--clr-accent)}.stats-metric-value{font-family:var(--font-display);letter-spacing:-.02em;color:var(--clr-ink);font-variant-numeric:tabular-nums;margin:var(--space-lg) 0 var(--space-sm);font-size:2.5rem;font-weight:700;line-height:1;display:block}.stats-metric-note{font-size:var(--text-sm);color:var(--clr-secondary)}.stats-metric-cue{margin:var(--space-md) 0 0;font-size:var(--text-xs);color:var(--clr-tertiary);opacity:0;font-weight:600;transition:opacity .15s,color .15s}.stats-metric:hover .stats-metric-cue,.stats-metric:focus-visible .stats-metric-cue{opacity:1;color:var(--clr-accent)}@media (hover:none){.stats-metric-cue{opacity:1}}.stats-grid{gap:var(--space-lg);margin-bottom:var(--space-lg);grid-template-columns:minmax(0,2fr) minmax(280px,.72fr);display:grid}.sd-section-head{justify-content:space-between;align-items:flex-start;gap:var(--space-xl);margin-bottom:var(--space-xl);display:flex}.stats-distribution{gap:var(--space-lg);display:grid}.stats-bar-row{align-items:center;gap:var(--space-lg);grid-template-columns:110px 1fr 84px;display:grid}.stats-bar-label{font-size:var(--text-sm);color:var(--clr-ink);font-weight:600}.sd-track{background:var(--sd-track);height:10px;overflow:hidden}.sd-fill{height:100%;display:block}.sd-fill--not-started{background:var(--sd-not-started)}.sd-fill--in-progress{background:var(--sd-in-progress)}.sd-fill--completed{background:var(--sd-completed)}.stats-bar-value{text-align:right;font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--clr-secondary)}.stats-bar-value b{color:var(--clr-ink);margin-right:4px;font-weight:600}.stats-insight{border:1px solid var(--clr-border-light);border-top:2px solid var(--clr-accent);padding:var(--space-xl);background:#fff;flex-direction:column;align-self:start;display:flex}.stats-insight h2{font-size:var(--text-2xl);margin-bottom:var(--space-md)}.stats-insight p:not(.sd-eyebrow){font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--clr-secondary);margin:0 0 var(--space-xl)}.stats-insight .sd-button{align-self:flex-start;margin-top:auto}.stats-bar-row{padding:var(--space-xs) 0;text-decoration:none;transition:background-color .15s}.stats-bar-row:hover{background:var(--clr-bg)}.stats-bar-row:hover .stats-bar-label{color:var(--clr-accent)}.stats-distribution-help{margin:var(--space-xl) 0 0;padding-top:var(--space-lg);border-top:1px solid var(--clr-border-light);font-size:var(--text-xs);color:var(--clr-tertiary)}.stats-table-panel{margin-bottom:var(--space-lg)}.stats-table-head{margin-bottom:var(--space-sm);align-items:center}.stats-table-help{font-size:var(--text-xs);color:var(--clr-tertiary);margin:0 0 var(--space-lg)}.stats-table-scroll{overflow-x:auto}.stats-table{border-collapse:collapse;table-layout:fixed;width:100%}.stats-table th{padding:var(--space-md);border-bottom:1px solid var(--clr-border);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--clr-secondary);text-align:right;white-space:nowrap;font-weight:700}.stats-table th:first-child,.stats-table td:first-child{text-align:left;width:31%}.stats-table th:last-child,.stats-table td:last-child{width:130px}.stats-table td{padding:var(--space-lg) var(--space-md);border-bottom:1px solid var(--sd-row-line);font-size:var(--text-sm);text-align:right;font-variant-numeric:tabular-nums;color:var(--clr-text)}.stats-group-row td{padding:var(--space-xl) var(--space-md) var(--space-sm);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--clr-tertiary);text-align:left;border-bottom:0;font-weight:700}.stats-module-row{transition:background-color .15s}.stats-module-row:hover,.stats-module-row:focus-within{background:var(--clr-bg)}.stats-module-name{color:var(--clr-ink);font-weight:600}.stats-module-name a{color:inherit;text-decoration:none}.stats-module-name a:hover{color:var(--clr-accent);text-decoration:underline}.stats-count a{color:var(--clr-ink);border-bottom:1px solid var(--clr-border-light);font-variant-numeric:tabular-nums;text-decoration:none}.stats-count a:hover{color:var(--clr-accent);border-bottom-color:var(--clr-accent)}.stats-count--action a{color:var(--clr-accent);border-bottom-color:var(--clr-accent);font-weight:600}.stats-count-zero{color:var(--clr-tertiary);font-variant-numeric:tabular-nums}.stats-rate{justify-content:flex-end;align-items:center;gap:var(--space-sm);display:flex}.stats-rate-track{background:var(--sd-track);width:64px;height:5px;position:relative}.stats-rate-fill{background:var(--sd-in-progress);height:100%;display:block}.stats-rate-mark{background:var(--clr-ink);width:1px;position:absolute;top:-3px;bottom:-3px}.stats-back{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xl);font-size:var(--text-sm);color:var(--clr-accent);font-weight:600;text-decoration:none;display:inline-flex}.stats-back:hover{text-decoration:underline}.stats-summary{border:1px solid var(--clr-border-light);margin-bottom:var(--space-lg);background:#fff;grid-template-columns:repeat(5,1fr);display:grid}.stats-summary>div:last-child{border-left:3px solid var(--clr-accent)}.stats-summary>div:last-child span{color:var(--clr-accent);font-weight:600}.stats-summary>div{padding:var(--space-lg);border-left:1px solid var(--clr-border-light)}.stats-summary>div:first-child{border-left:0}.stats-summary span{margin-bottom:var(--space-sm);font-size:var(--text-sm);color:var(--clr-secondary);display:block}.stats-summary strong{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--clr-ink);font-variant-numeric:tabular-nums;font-weight:700;line-height:1}.stats-directory-toolbar{justify-content:space-between;align-items:center;gap:var(--space-xl);margin-bottom:var(--space-lg);display:flex}.stats-directory-filters{gap:var(--space-sm);display:flex}.stats-directory-filters .sd-search input{width:240px}.stats-learner-cols,.stats-learner-row{align-items:center;gap:var(--space-lg);grid-template-columns:24px minmax(210px,1.4fr) .9fr 1fr .75fr auto;display:grid}.stats-learner-cols{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--clr-border);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--clr-secondary);font-weight:700}.stats-learner-row{min-height:72px;padding:var(--space-md);border-bottom:1px solid var(--sd-row-line);font-size:var(--text-sm);transition:background-color .15s}.stats-learner-row.is-selected{background:var(--clr-surface)}.stats-row-check,.stats-bulk-select{align-items:center;gap:var(--space-sm);cursor:pointer;display:inline-flex}.stats-row-check input,.stats-bulk-select input{width:16px;height:16px;accent-color:var(--clr-accent);cursor:pointer}.stats-bulk{justify-content:space-between;align-items:center;gap:var(--space-lg);padding:var(--space-md);background:var(--clr-bg);border:1px solid var(--clr-border-light);margin-bottom:var(--space-lg);font-size:var(--text-sm);color:var(--clr-text);font-weight:600;display:flex}.stats-bulk .sd-button:disabled{border-color:var(--clr-border-light);color:var(--clr-tertiary);cursor:not-allowed;background:#fff}.stats-person{align-items:center;gap:var(--space-md);min-width:0;display:flex}.sd-avatar{background:var(--clr-surface);width:34px;height:34px;color:var(--clr-secondary);font-size:var(--text-xs);flex-shrink:0;place-items:center;font-weight:700;display:grid}.stats-person-text{flex-direction:column;min-width:0;display:flex}.stats-person-text strong{color:var(--clr-ink);font-weight:600}.stats-person-text small,.stats-learner-meta small{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);color:var(--clr-secondary);display:block;overflow:hidden}.stats-status{align-items:center;gap:var(--space-sm);color:var(--clr-secondary);display:inline-flex}.stats-status:before{content:"";background:var(--sd-in-progress);flex-shrink:0;width:7px;height:7px}.stats-status.is-completed:before{background:var(--sd-completed)}.stats-status.is-not-started:before{background:var(--sd-not-started)}.stats-status-cell{flex-direction:column;gap:2px;min-width:0;display:flex}.stats-flag{font-size:var(--text-xs);color:var(--clr-accent);font-weight:600}.stats-progress-cell{align-items:center;gap:var(--space-sm);font-variant-numeric:tabular-nums;display:flex}.stats-progress-cell .sd-track{width:84px;height:6px}.stats-learner-meta{color:var(--clr-secondary);font-variant-numeric:tabular-nums}.stats-empty-directory{padding:var(--space-5xl) var(--space-lg);text-align:center}.stats-empty-directory h2{margin-bottom:var(--space-sm)}.stats-empty-directory p{color:var(--clr-secondary);font-size:var(--text-sm);margin:0 0 var(--space-lg)}.stats-toast{right:var(--space-xl);bottom:var(--space-xl);z-index:60;padding:var(--space-md) var(--space-lg);background:var(--clr-ink);color:#fff;font-size:var(--text-sm);font-weight:600;position:fixed}@media (max-width:1080px){.stats-metrics{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:1fr}}@media (max-width:860px){.stats-header,.stats-table-head,.stats-directory-toolbar{flex-direction:column;align-items:stretch}.stats-header-actions,.stats-directory-filters{flex-wrap:wrap}.stats-header-actions>*,.stats-directory-filters>*{flex:160px}.sd-search{flex:100%}.sd-search input,.stats-directory-filters .sd-search input{width:100%}.stats-summary{grid-template-columns:1fr 1fr}.stats-summary>div:nth-child(3){border-left:0}.stats-summary>div:nth-child(n+3){border-top:1px solid var(--clr-border-light)}.stats-learner-cols{display:none}.stats-learner-row{gap:var(--space-md);padding:var(--space-lg) 0;grid-template-columns:24px 1fr auto}.stats-learner-row .stats-row-check{grid-area:1/1}.stats-learner-row .stats-person{padding-bottom:var(--space-md);border-bottom:1px solid var(--clr-border-light);grid-area:1/2/auto/-1}.stats-learner-row .stats-status-cell,.stats-learner-row .stats-progress-cell,.stats-learner-row .stats-learner-meta{grid-column:1/3}.stats-learner-row .sd-button{grid-area:2/3/span 3;align-self:center}}@media (max-width:720px){.stats-page{padding-top:var(--space-xl)}.stats-metrics{gap:var(--space-sm);grid-template-columns:1fr 1fr}.stats-metric{min-height:124px;padding:var(--space-md)}.stats-metric-value{font-size:2rem}.stats-bar-row{gap:var(--space-sm);grid-template-columns:88px 1fr 68px}.stats-bulk{flex-wrap:wrap}.stats-table-scroll{overflow:visible}.stats-table,.stats-table tbody{display:block}.stats-table thead{display:none}.stats-group-row{display:block}.stats-table .stats-group-row td,.stats-table .stats-group-row td:first-child{width:100%;display:block}.stats-module-row{gap:var(--space-lg) var(--space-sm);margin-bottom:var(--space-sm);padding:var(--space-lg) var(--space-md);border:1px solid var(--clr-border-light);grid-template-columns:repeat(3,1fr);display:grid;position:relative}.stats-table .stats-module-row td,.stats-table .stats-module-row td:first-child,.stats-table .stats-module-row td:last-child{text-align:left;border:0;width:auto;padding:0;display:flex}.stats-module-row .stats-module-name{padding-bottom:var(--space-md);border-bottom:1px solid var(--clr-border-light);font-size:var(--text-base);grid-column:1/-1}.stats-module-row td[data-label]{flex-direction:column}.stats-module-row td[data-label]:before{content:attr(data-label);font-size:var(--text-xs);color:var(--clr-secondary);margin-bottom:2px;font-weight:700}.stats-module-row .stats-rate{align-items:flex-start;gap:var(--space-xs);flex-direction:column-reverse}}@media (max-width:440px){.stats-metrics{grid-template-columns:1fr}.stats-metric{min-height:0}.sd-panel,.stats-insight{padding:var(--space-lg)}.stats-summary{grid-template-columns:1fr}.stats-summary>div{border-left:0}.stats-summary>div:nth-child(n+2){border-top:1px solid var(--clr-border-light)}}
