/* Shared navigation: room for additional links at all screen widths. */
.topbar{height:auto;min-height:92px;gap:18px;padding:16px 32px;flex-wrap:wrap}
.topbar>.brand{flex:0 1 auto;min-width:0}.topbar>.brand strong{line-height:1.35}
.topnav{flex-wrap:wrap;justify-content:flex-end;min-width:0;gap:8px}
.topnav a,.topnav .logout{font-size:13px;padding:9px 13px;min-height:40px;white-space:nowrap}
.awards-nav{display:inline-flex;align-items:center;gap:5px}.awards-nav img{flex-shrink:0}
.course-main,.lesson-main,.course-layout>*,.lesson-layout>*{min-width:0}
/* Match the existing course palette; keep administration compact. */
.student-management,.achievement-page{max-width:1480px;margin:0 auto;padding:36px clamp(20px,3vw,48px) 60px}
.student-management .page-intro h1,.achievement-page h1{font-family:inherit;font-size:clamp(28px,3.2vw,42px);font-weight:650;line-height:1.15;letter-spacing:-.035em;margin:8px 0 12px;overflow-wrap:anywhere}
.student-management .page-intro p,.achievement-page>p{font-size:14px;line-height:1.6;color:var(--muted,#716980)}
.student-management .admin-title-row{align-items:center;gap:24px}
.student-management .button-link{font-size:13px;margin:0;white-space:nowrap}
.student-management .filters{padding:18px;margin:24px 0 16px;background:rgba(255,255,255,.8);border:1px solid #e4deed;border-radius:18px;grid-template-columns:minmax(180px,1.6fr) repeat(4,minmax(110px,1fr)) auto;align-items:center}
.student-management .filters input,.student-management .filters select{font-size:13px;padding:11px 12px;min-height:42px;border-radius:10px}
.student-management .filters button{padding:11px 20px;min-height:42px;font-size:13px;cursor:pointer}
.student-management .table-help{max-width:920px;font-size:12px;color:#756c84;line-height:1.65;margin:12px 2px 18px}
/* Narrow tables scroll within their card, not the whole page. */
.achievement-table-wrap{width:100%;max-width:100%;overflow-x:auto;margin:20px 0;background:#fff;border:1px solid #e4deed;border-radius:16px;box-shadow:0 6px 24px rgba(49,28,88,.035)}
.achievement-table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.5;color:var(--ink,#272037);background:#fff}
.achievement-table th,.achievement-table td{text-align:left;padding:14px 16px;border-bottom:1px solid #eeeaf3;vertical-align:middle}
.achievement-table th{background:#f6f3fa;color:#675b7b;font-size:12px;font-weight:700;white-space:nowrap}
.achievement-table tr:last-child td{border-bottom:0}.achievement-table tbody tr:hover{background:#fcfaff}
.achievement-table a{color:#6244a2;text-underline-offset:3px}
.student-table{min-width:1050px}.student-table th,.student-table td{padding:13px 12px}
.student-table .student-identity{min-width:175px;max-width:230px}
.student-table .student-name{font-weight:700;color:#302640;text-decoration:none;overflow-wrap:anywhere}
.student-name:hover{text-decoration:underline}
.student-login{display:block;color:#8a8196;font-size:11px;margin-top:5px;overflow-wrap:anywhere}
.student-table .status{font-size:11px;padding:5px 9px;line-height:1.4;white-space:nowrap}
.student-table-actions{min-width:154px}.student-table-actions>a{font-size:12px;text-decoration:none;line-height:1.9}.student-table-actions>a:hover{text-decoration:underline}
.achievement-table button{border:1px solid #ddd3ed;border-radius:8px;padding:6px 10px;margin-top:8px;background:#f6f2fc;color:#6244a2;font-size:11px;font-weight:700;cursor:pointer;box-shadow:none}
.achievement-table button:hover{background:#eee6f8}.achievement-table button.button-muted{background:#fff5f7;color:#99455f;border-color:#edd7df}
.column-sort{display:inline-flex;align-items:center;gap:4px}
.achievement-table .column-sort-name{text-decoration:none;color:inherit;padding:3px 0;border:0}
.achievement-table .column-sort-name:hover,.column-sort.is-sorted{color:#6543a6}
.column-sort-arrows{display:inline-flex;gap:1px}
.achievement-table .sort-arrow{display:inline-flex;align-items:center;justify-content:center;width:23px;min-height:28px;border-radius:6px;text-decoration:none;color:#a094b2;font-size:16px}
.achievement-table .sort-arrow.is-active{background:#eae2f6;color:#6543a6;font-weight:800}
.achievement-table .sort-arrow:hover{background:#eae2f6;color:#6543a6}
.organization-heading .column-sort{margin:0;line-height:1.3}
.student-earned-awards{display:flex;flex-wrap:wrap;gap:3px;max-width:210px;margin:6px 0 0}
.student-award-icon{display:inline-flex;border-radius:5px;padding:1px}.student-award-icon img{display:block;width:24px;height:29px}.student-award-icon:hover{background:#f0eafa}
.column-sort a:focus-visible,.student-award-icon:focus-visible,.achievement-card a:focus-visible{outline:2px solid #7955b6;outline-offset:3px}
.achievement-page{max-width:1200px}.achievement-page h2{font-size:21px;line-height:1.35;letter-spacing:-.025em;overflow-wrap:anywhere}.achievement-page h3{font-size:15px;line-height:1.4;letter-spacing:.01em}
.achievement-card{min-width:0;background:rgba(255,255,255,.94);padding:26px;border:1px solid #e4deed;border-radius:20px;box-shadow:0 8px 30px rgba(49,28,88,.04);margin:20px 0}
.achievement-card h2{margin:0 0 14px}.achievement-card p{font-size:14px;line-height:1.7;color:#675d75}.achievement-card small{font-size:12px;line-height:1.6;color:#80758c}
.achievement-card details{margin-top:16px}.achievement-card summary{font-size:13px;font-weight:600;color:#694c9b;cursor:pointer}
.achievement-card button{border:0;border-radius:999px;padding:12px 20px;margin-top:8px;background:var(--button-gradient,#7350a5);color:#fff;font-weight:700;font-size:13px;cursor:pointer}.achievement-card button:hover{filter:brightness(1.06)}
.achievement-card h2 a{text-decoration:none;color:#453155}.achievement-card h2 a:hover{color:#7350a5}
.achievement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.achievement-grid .achievement-card{margin:0}
.award-totals{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.award-totals>span{display:inline-flex;align-items:center;gap:20px;padding:11px 17px;border:1px solid #e4deed;border-radius:12px;background:#fff;color:#766780;font-size:13px}.award-totals b{font-size:20px;color:#4f3864}
.word-counter{display:block;font-size:12px;font-weight:400;line-height:1.5;margin:5px 0;color:#80758c}.word-counter[data-qualified=true]{color:#297758}
@media(max-width:1100px){.topbar{gap:14px;padding:16px 24px}.topnav{justify-content:flex-start}.student-management .filters{grid-template-columns:repeat(3,minmax(0,1fr))}.student-management .filters input{grid-column:span 2}}
@media(max-width:800px){.topbar{padding:14px 18px;min-height:0}.topnav{width:100%;justify-content:flex-start}.topnav a,.topnav .logout{font-size:12px;padding:8px 11px;min-height:36px}.student-management,.achievement-page{padding:26px 18px 40px}.student-management .admin-title-row{align-items:flex-start;flex-wrap:wrap;gap:12px}.student-management .filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;gap:10px}.student-management .filters input{grid-column:1/-1}.student-management .filters button{grid-column:1/-1}.achievement-card{padding:20px}.achievement-table-wrap{border-radius:12px}.achievement-grid{grid-template-columns:minmax(0,1fr)}.achievement-page h2{font-size:19px}}
@media(max-width:420px){.student-management .filters{grid-template-columns:minmax(0,1fr)}.student-management .filters input{grid-column:auto}.award-totals{gap:6px}.award-totals>span{padding:9px 11px;gap:10px;font-size:12px}.award-totals b{font-size:17px}}
@media print{.column-sort-arrows,.student-table-actions,.student-management .filters{display:none}.achievement-table-wrap{overflow:visible;box-shadow:none}.student-table{min-width:0}.achievement-card{box-shadow:none;break-inside:avoid}.student-management,.achievement-page{padding:0}}

.admin-summary-grid b{font-family:inherit;font-size:26px;line-height:1.3;overflow-wrap:anywhere}.student-card-head h1{font-size:clamp(30px,4vw,46px);line-height:1.15}.achievement-table .status{font-size:11px;line-height:1.4;padding:5px 9px}
.daily-award-toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:18px 20px;margin:18px 0;border:1px solid #c8e5de;border-radius:14px;background:#f0fdfa}
.daily-award-toolbar>div{flex:1 1 340px}.daily-award-toolbar p{margin:6px 0 0;font-size:14px;line-height:1.5;color:#42615c}.daily-award-toolbar form{margin:0}.daily-award-toolbar small{flex-basis:100%;color:#52645f}.daily-award-toolbar button:disabled{opacity:.5;cursor:not-allowed}
.daily-award-toolbar button{border:0;border-radius:999px;background:#0f766e;color:white;font:inherit;font-size:14px;font-weight:700;padding:12px 20px;cursor:pointer;white-space:nowrap}.daily-award-toolbar button:hover:not(:disabled){background:#115e59}.daily-award-toolbar button:focus-visible{outline:3px solid #5eead4;outline-offset:3px}

.award-report-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.award-report-tabs a{padding:12px 18px;border-radius:24px;background:#fff;border:1px solid #e3d9ef;color:#674582;text-decoration:none}.award-report-tabs a[aria-current]{background:#69429b;color:white}.award-report-filters{display:flex;flex-wrap:wrap;gap:14px;align-items:end;background:#ffffffb0;padding:20px;border:1px solid #e7dff0;border-radius:18px}.award-report-filters label{display:grid;gap:6px;flex:1 1 160px;min-width:0;font-size:12px;color:#6c6179}.award-report-filters input,.award-report-filters select{width:100%;min-width:0;padding:11px;border:1px solid #dfd6e8;border-radius:9px;background:white;font:inherit;color:#30223d}.award-report-filters button{cursor:pointer;border:0}.achievement-table .student-earned-awards{max-width:300px;flex-wrap:wrap}

.award-interaction{display:grid;grid-template-columns:minmax(120px,1fr) minmax(130px,1fr);gap:6px 14px;font-size:12px;line-height:1.5;margin:12px 0 20px}.award-interaction dt{color:#746780}.award-interaction dd{margin:0;color:#342641}.achievement-table details{margin-top:10px;min-width:240px}.achievement-table summary{cursor:pointer;color:#69429b}

.student-topbar .brand strong{font-size:17px}.student-topbar .brand strong small{display:block;font-weight:400;font-size:12px;line-height:1.5;margin-top:5px;color:#e5dcef}.student-topbar .topnav{flex:1 1 auto}.student-topbar .topnav a[aria-current="page"]{background:#ffffff30;border-color:#ffffff70}.student-award-count{font-size:11px;border-radius:12px;background:#ffffff25;padding:1px 6px}.student-profile-fields{display:grid;grid-template-columns:minmax(100px,160px) minmax(0,1fr);gap:12px 18px;line-height:1.5}.student-profile-fields dt{color:#756880}.student-profile-fields dd{margin:0;overflow-wrap:anywhere}@media(max-width:700px){.student-topbar{padding:16px 18px}.student-topbar .topnav{justify-content:flex-start;flex-basis:100%}.student-topbar .topnav a,.student-topbar .logout{font-size:12px;padding:9px 11px}.student-topbar .brand strong{font-size:16px}.student-profile-fields{grid-template-columns:1fr;gap:4px}.student-profile-fields dd{margin-bottom:12px}}
