.admin-learning-analysis{--la-blue:#0664ff;--la-ink:#101d4e;--la-muted:#6077a1;--la-line:#dce8fa;--la-bg:#f5faff}
.admin-learning-analysis *{box-sizing:border-box}
.admin-learning-analysis{margin:0;background:var(--la-bg);color:var(--la-ink);font:14px/1.5 Pretendard,-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo',sans-serif}
.admin-learning-analysis .analysis-main{max-width:1580px;margin:0 auto;padding:22px 26px 24px;min-width:0}
.admin-learning-analysis :is(.analysis-main,.analysis-dialog) button,.admin-learning-analysis :is(.analysis-main,.analysis-dialog) select,.admin-learning-analysis :is(.analysis-main,.analysis-dialog) input{font:inherit}
.admin-learning-analysis :is(.analysis-main,.analysis-dialog) button,.admin-learning-analysis :is(.analysis-main,.analysis-dialog) a,.admin-learning-analysis :is(.analysis-main,.analysis-dialog) select{touch-action:manipulation}
.admin-learning-analysis :is(.analysis-main,.analysis-dialog) button,.admin-learning-analysis .filters select,.admin-learning-analysis .filters input{border:1px solid #cedef8;border-radius:9px;background:white;color:var(--la-ink);padding:10px 15px;cursor:pointer}
.admin-learning-analysis :is(.analysis-main,.analysis-dialog) button:hover,.admin-learning-analysis :is(.analysis-main,.analysis-dialog) a:hover{filter:brightness(.97)}
.admin-learning-analysis :is(.analysis-main,.analysis-dialog) :focus-visible{outline:3px solid #79b3ff;outline-offset:3px}
.admin-learning-analysis :is(.analysis-main,.analysis-dialog) button:disabled{opacity:.55;cursor:wait}
.admin-learning-analysis :is(.analysis-main,.analysis-dialog) a{color:var(--la-blue);text-decoration:none}
.admin-learning-analysis .analysis-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:15px}
.admin-learning-analysis .analysis-head h1{font-size:29px;line-height:1.2;margin:0 0 9px;font-weight:800;letter-spacing:-1px}
.admin-learning-analysis .analysis-head p{margin:0;color:var(--la-muted);font-size:14px}
.admin-learning-analysis .filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:60%}
.admin-learning-analysis .filters select{height:44px;padding:0 10px;font-size:12px;font-weight:650;max-width:175px}
.admin-learning-analysis .source-badge{border:1px solid #cce1ff;background:#eaf4ff;color:#2475f5;border-radius:9px;padding:10px;font-size:12px;white-space:nowrap;height:44px}
.admin-learning-analysis #customPeriod{display:flex;gap:8px;width:100%;justify-content:flex-end;align-items:center}
.admin-learning-analysis #customPeriod input{padding:6px;width:140px}
.admin-learning-analysis .view-switch{display:flex;align-items:center;margin-bottom:12px;gap:0}
.admin-learning-analysis .view-switch button{width:155px;border-radius:0;padding:8px}
.admin-learning-analysis .view-switch button:first-child{border-radius:8px 0 0 8px}
.admin-learning-analysis .view-switch button:nth-child(2){border-radius:0 8px 8px 0}
.admin-learning-analysis .view-switch button[aria-pressed=true]{color:white;background:var(--la-blue)}
.admin-learning-analysis .view-switch a{margin-left:auto;font-size:13px}
.admin-learning-analysis .analysis-tabs{display:flex;width:430px;max-width:100%;margin-bottom:14px;border:1px solid var(--la-line);border-radius:9px;overflow:hidden;background:#fff}
.admin-learning-analysis .analysis-tabs button{flex:1;border:0;border-radius:0;padding:9px 8px;color:var(--la-muted);font-weight:600}
.admin-learning-analysis .analysis-tabs button[aria-selected=true]{background:var(--la-blue);color:#fff;border-radius:7px}
.admin-learning-analysis .banner{display:flex;align-items:center;gap:18px;border:1px solid #cfe1ff;border-radius:12px;min-height:108px;padding:12px 22px;background:#ebf4ff;margin-bottom:15px}
.admin-learning-analysis .banner.principal{background:#fffaf0;border-color:#ffebbb}
.admin-learning-analysis .banner img{width:104px;height:85px;object-fit:contain;flex:none}
.admin-learning-analysis .banner-copy{min-width:0;flex:1}
.admin-learning-analysis .banner h2{font-size:22px;line-height:1.3;margin:0 0 6px;letter-spacing:-.6px}
.admin-learning-analysis .banner p{margin:0;color:#536e9a;font-size:13px}
.admin-learning-analysis .banner-aside{border-left:1px solid #b7cff1;padding-left:22px;color:var(--la-muted);max-width:190px;font-size:12px}
.admin-learning-analysis .primary,.admin-learning-analysis :is(.analysis-main,.analysis-dialog) button.primary{background:var(--la-blue);border-color:var(--la-blue);color:white;font-weight:650;padding:12px 20px;border-radius:8px;display:inline-block;white-space:nowrap}
.admin-learning-analysis .metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:15px}
.admin-learning-analysis .metric{background:white;border:1px solid var(--la-line);border-radius:12px;padding:17px 14px;display:flex;gap:12px;min-height:120px;align-items:flex-start}
.admin-learning-analysis .metric-icon{background:#edf5ff;color:#086cff;flex:none;width:43px;height:43px;border-radius:50%;display:grid;place-items:center;font-size:23px}
.admin-learning-analysis .metric label{font-size:13px;color:#536c9c;font-weight:600}
.admin-learning-analysis .metric strong{display:block;font-size:27px;line-height:1.4;font-weight:800;letter-spacing:-.8px;margin:3px 0}
.admin-learning-analysis .metric p{margin:0;color:var(--la-muted);font-size:11px;overflow-wrap:anywhere}
.admin-learning-analysis .analysis-grid{display:grid;grid-template-columns:1.14fr 1fr;gap:15px}
.admin-learning-analysis .card{background:#fff;border:1px solid var(--la-line);border-radius:12px;padding:16px 17px;min-width:0}
.admin-learning-analysis .card h2{margin:0 0 4px;font-size:18px;font-weight:750;letter-spacing:-.4px}
.admin-learning-analysis .card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.admin-learning-analysis .card p.caption{margin:0 0 14px;font-size:12px;color:var(--la-muted)}
.admin-learning-analysis .card .empty{min-height:170px;display:flex;align-items:center;justify-content:center;padding:20px;text-align:center;color:var(--la-muted);font-size:13px;border-radius:8px;background:#fafcff}
.admin-learning-analysis .chart{width:100%;display:block;height:195px}
.admin-learning-analysis .chart text{font-family:inherit;font-size:11px;fill:#7188b0}
.admin-learning-analysis .chart .point-label{fill:#1668ff;font-size:12px;font-weight:700}
.admin-learning-analysis .chart-note{font-size:11px;color:var(--la-muted);margin:6px 0 0}
.admin-learning-analysis .subject-row{display:grid;grid-template-columns:70px minmax(0,1fr) 47px 85px;align-items:center;gap:8px;min-height:35px;font-size:12px}
.admin-learning-analysis .track{height:10px;border-radius:3px;background:#e8eff9;overflow:hidden}
.admin-learning-analysis .track i{display:block;height:100%;background:linear-gradient(90deg,#64afff,#287ffe);border-radius:3px}
.admin-learning-analysis .pill{background:#edf5ff;border-radius:15px;color:#236ec3;font-size:11px;padding:3px 8px;white-space:nowrap;text-align:center;display:inline-block}
.admin-learning-analysis .pill.warn{background:#fff1da;color:#a76600}
.admin-learning-analysis .pill.bad{background:#ffe9e5;color:#c3482c}
.admin-learning-analysis .pill.good{background:#e8f8f0;color:#238560}
.admin-learning-analysis .table-scroll{overflow:auto;border:1px solid var(--la-line);border-radius:8px;margin-top:8px}
.admin-learning-analysis table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}
.admin-learning-analysis th{font-weight:600;text-align:left;background:#f5f8fe;color:#647dab;padding:9px 12px}
.admin-learning-analysis td{border-top:1px solid #e3ebf6;padding:10px 12px;vertical-align:middle}
.admin-learning-analysis td:first-child{font-weight:650}
.admin-learning-analysis td a{white-space:nowrap;font-weight:600}
.admin-learning-analysis td.unit-name{white-space:normal;min-width:120px;max-width:260px;overflow-wrap:anywhere}
.admin-learning-analysis .mini{font-size:11px;color:var(--la-muted);font-weight:400;display:block;white-space:normal}
.admin-learning-analysis .recommendation{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid #e6edf8;align-items:center}
.admin-learning-analysis .recommendation .number{width:29px;height:29px;background:#edf5ff;border-radius:50%;color:#0664ff;display:grid;place-items:center;font-weight:700;flex:none}
.admin-learning-analysis .recommendation .body{flex:1;min-width:0}
.admin-learning-analysis .recommendation strong{font-size:13px;display:block}
.admin-learning-analysis .recommendation p{font-size:11px;color:var(--la-muted);margin:2px 0}
.admin-learning-analysis .recommendation a{font-size:12px;white-space:nowrap}
.admin-learning-analysis .recommendation-footer{display:flex;justify-content:space-between;align-items:center;background:#edf5ff;border-radius:7px;padding:10px;margin-top:10px;font-size:12px;gap:10px}
.admin-learning-analysis .recommendation-footer .primary{padding:9px 12px}
.admin-learning-analysis .full-card{margin-bottom:15px}
.admin-learning-analysis .chip-group{display:flex;flex-wrap:wrap;gap:5px}
.admin-learning-analysis :is(.analysis-main,.analysis-dialog) button.chip{border:1px solid #dce9fe;border-radius:20px;background:#f7faff;font-size:11px;padding:5px 10px}
.admin-learning-analysis :is(.analysis-main,.analysis-dialog) button.chip[aria-pressed=true]{background:#086cff;color:white}
.admin-learning-analysis .table-actions{display:flex;gap:10px;margin-top:12px;align-items:center;flex-wrap:wrap;font-size:12px}
.admin-learning-analysis .table-actions button{padding:7px 11px}
.admin-learning-analysis .table-actions a:last-child{margin-left:auto}
.admin-learning-analysis .analysis-footer{display:flex;justify-content:space-between;align-items:center;margin:16px 0 8px;color:var(--la-muted);font-size:11px;gap:8px}
.admin-learning-analysis .analysis-footer button{border:0;background:none;color:#346ab9;padding:5px;font-size:12px}
.admin-learning-analysis .method{font-size:11px;color:var(--la-muted)}
.admin-learning-analysis .method summary{cursor:pointer}
.admin-learning-analysis .method div{padding:10px 0;line-height:1.8}
.admin-learning-analysis .error,.admin-learning-analysis .loading{padding:50px 25px;text-align:center;background:white;border:1px solid var(--la-line);border-radius:12px;color:var(--la-muted)}
.admin-learning-analysis .error a{display:inline-block;margin-top:15px}
.admin-learning-analysis .skip-link{position:fixed;left:280px;top:-80px;z-index:10001;background:white;padding:10px}
.admin-learning-analysis .skip-link:focus{top:5px}
.admin-learning-analysis .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.admin-learning-analysis dialog{width:min(650px,calc(100% - 28px));border:1px solid #d9e5f6;border-radius:14px;padding:20px;box-shadow:0 20px 80px #0a295535;color:var(--la-ink)}
.admin-learning-analysis dialog::backdrop{background:#14274d55}
.admin-learning-analysis dialog header{display:flex;justify-content:space-between;align-items:center;gap:12px}
.admin-learning-analysis dialog h2{font-size:20px}
.admin-learning-analysis dialog li{margin-bottom:10px}
.admin-learning-analysis dialog button{padding:6px 12px}
.admin-learning-analysis dialog .student-choice{display:block;width:100%;text-align:left;margin:8px 0}
.admin-learning-analysis [hidden]{display:none!important}
@media(min-width:1650px){.admin-learning-analysis .analysis-main{padding:28px 35px}
.admin-learning-analysis .chart{height:220px}
.admin-learning-analysis .metric{min-height:130px}}
@media(max-width:1220px){.admin-learning-analysis .analysis-head{flex-direction:column;gap:12px}
.admin-learning-analysis .filters{max-width:100%;justify-content:flex-start}
.admin-learning-analysis .banner-aside{display:none}
.admin-learning-analysis .metric{gap:8px;padding:13px 10px}
.admin-learning-analysis .metric-icon{width:32px;height:32px;font-size:19px}
.admin-learning-analysis .metric strong{font-size:23px}
.admin-learning-analysis .analysis-grid{grid-template-columns:1fr 1fr}
.admin-learning-analysis .subject-row{grid-template-columns:60px 1fr 40px}
.admin-learning-analysis .subject-row .pill{display:none}}
@media(max-width:1000px){.admin-learning-analysis .analysis-grid{grid-template-columns:1fr}
.admin-learning-analysis .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-learning-analysis .banner h2{font-size:19px}
.admin-learning-analysis .banner{gap:10px;padding:12px}
.admin-learning-analysis .banner img{width:75px;height:70px}
.admin-learning-analysis .banner>.primary{padding:10px 12px;font-size:12px}}
@media(max-width:820px){.admin-learning-analysis .analysis-main{padding:20px 16px 20px}
.admin-learning-analysis .analysis-head h1{font-size:25px}
.admin-learning-analysis .analysis-head p{font-size:13px}
.admin-learning-analysis .filters{gap:6px}
.admin-learning-analysis .filters select{max-width:145px;height:39px;font-size:11px}
.admin-learning-analysis .source-badge{height:39px;font-size:11px;padding:9px}
.admin-learning-analysis .banner{flex-wrap:wrap}
.admin-learning-analysis .banner-copy{flex-basis:calc(100% - 90px)}
.admin-learning-analysis .banner>.primary{margin-left:85px}
.admin-learning-analysis .metric{min-height:105px}
.admin-learning-analysis .metric strong{font-size:23px}
.admin-learning-analysis .metric-icon{width:29px;height:29px}
.admin-learning-analysis .card{padding:14px}
.admin-learning-analysis .subject-row{grid-template-columns:65px 1fr 45px 85px}
.admin-learning-analysis .subject-row .pill{display:block}
.admin-learning-analysis .view-switch button{width:125px}
.admin-learning-analysis .view-switch a{font-size:11px}
.admin-learning-analysis .skip-link{left:8px}
.admin-learning-analysis .table-scroll{max-width:100%}
.admin-learning-analysis .analysis-footer{align-items:flex-start}
.admin-learning-analysis .chart{height:190px}}
.admin-learning-analysis :is(.analysis-main,.analysis-dialog) a.primary{color:#fff}
.admin-learning-analysis .analysis-head h1{font-size:32px}
.admin-learning-analysis .analysis-main{padding-left:36px}
.admin-learning-analysis .analysis-head p{font-size:15px}
.admin-learning-analysis .metric strong{font-size:30px}
.admin-learning-analysis .metric label{font-size:14px}
.admin-learning-analysis .card h2{font-size:19px}
.admin-learning-analysis .metric p{font-size:12px}
.admin-learning-analysis .banner p{font-size:14px}
@media(max-width:820px){.admin-learning-analysis .analysis-main{padding-left:16px}
.admin-learning-analysis .analysis-head h1{font-size:25px}
.admin-learning-analysis .metric strong{font-size:23px}
.admin-learning-analysis .banner p{font-size:12px}
.admin-learning-analysis .metric p{font-size:11px}}
.admin-learning-analysis .action-link{border:1px solid #d6e5fb;border-radius:7px;padding:7px 10px;background:#fff}
.admin-learning-analysis .table-scroll input[type=checkbox]{accent-color:#0664ff}
.admin-learning-analysis .view-switch #reportLink{margin-left:auto;margin-right:14px}
.admin-learning-analysis .view-switch #workspaceLink{margin-left:0}
.admin-learning-analysis{background:transparent}.admin-learning-analysis .analysis-main{padding:0;max-width:none}.admin-learning-analysis .view-switch{flex-wrap:wrap;row-gap:8px}.admin-learning-analysis .recommendation .body{grid-column:auto}.admin-learning-analysis .metric{border:1px solid var(--la-line)}

.admin-learning-analysis .analysis-student-search{display:flex;gap:10px;align-items:center;margin:18px 0}.admin-learning-analysis .analysis-student-search label{flex:1;max-width:420px}.admin-learning-analysis .analysis-student-search input{width:100%;border:1px solid var(--la-line);border-radius:8px;padding:11px 13px;background:white;color:var(--la-ink);font:inherit}.admin-learning-analysis .roster-name{border:0;background:none;color:#086cff;font:inherit;font-weight:700;padding:8px 0;text-align:left;text-decoration:underline;text-underline-offset:3px}.admin-learning-analysis .analysis-roster .table-actions{justify-content:flex-end}.admin-learning-analysis .analysis-roster .table-actions>span{margin-right:auto}
