.admin-news-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:25px 0 18px}.admin-news-head h2{margin:5px 0}.admin-news-head p{font-size:.76rem;margin:0}.admin-count{padding:10px 13px;border:1px solid #e5e9e8;border-radius:10px;background:#fff;color:#849093;font-size:.68rem;white-space:nowrap}.admin-count strong{color:#17222b;font-size:1.1rem;margin-right:4px}.admin-news-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:18px;align-items:start}.news-create-card{padding:25px;display:grid;gap:12px}.news-create-card h2{font-size:1.5rem;margin-bottom:0}.news-create-card p{font-size:.75rem;margin-bottom:6px}.news-create-card select{width:100%;border:1px solid #d6dfdd;border-radius:12px;padding:.84rem .95rem;background:#fff;color:#17222b}.field-help{font-size:.64rem;font-weight:500;color:#899698}.featured-options{display:flex;gap:13px;flex-wrap:wrap;padding:4px 0}.news-admin-list{border:1px solid #e5e9e8;border-radius:18px;background:#fff;overflow:hidden}.admin-list-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #edf0ef}.admin-list-head h3{margin:0}.admin-list-head span{font-size:.61rem;color:#99a5a6}.admin-news-row{display:grid;grid-template-columns:40px 1fr auto;gap:13px;padding:17px 19px;border-bottom:1px solid #edf0ef;align-items:start}.admin-news-row:last-child{border-bottom:0}.admin-news-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#ddd9ff;color:#625a9b;font-weight:950}.admin-news-mark.published{background:#d8f3ea;color:#147363}.admin-row-meta{display:flex;gap:12px;color:#f47761;font-size:.59rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.admin-row-meta time{color:#9aa6a6;text-transform:none;letter-spacing:0}.admin-news-row h3{margin:7px 0 4px;font-size:.87rem}.admin-news-row p{font-size:.68rem;line-height:1.4;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:460px}.admin-row-tags{display:flex;gap:5px;margin-top:8px;flex-wrap:wrap}.status-tag{padding:4px 7px;border-radius:999px;font-size:.57rem;font-weight:900;background:#ecf0ef;color:#6d7a7d}.status-tag.published{background:#d8f3ea;color:#147363}.status-tag.featured{background:#fff3d8;color:#8d650f}.status-tag.urgent{background:#ffebe4;color:#a64032}.admin-preview{font-size:.65rem;font-weight:900;white-space:nowrap;margin-top:10px}.admin-settings-section{margin-top:55px;padding-top:12px;border-top:1px solid #e1e8e4}@media(max-width:950px){.admin-news-layout{grid-template-columns:1fr}}@media(max-width:650px){.admin-news-head{align-items:start;flex-direction:column}.admin-news-row{grid-template-columns:35px 1fr}.admin-preview{grid-column:2;margin-top:0}.admin-news-row p{max-width:250px}.admin-list-head span{display:none}}
.admin-people-section{margin-top:52px;padding-top:12px;border-top:1px solid #e1e8e4}.admin-people-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:18px;align-items:start}.managed-user-create{padding:24px;display:grid;gap:12px}.managed-user-create h2{margin:0;font-size:1.35rem}.managed-user-create p{font-size:.74rem;margin:0 0 4px}.managed-user-create select,.managed-user-editor select{width:100%;border:1px solid #d6dfdd;border-radius:12px;padding:.8rem .9rem;background:#fff;color:#17222b}.managed-user-create small,.managed-user-editor small{font-size:.62rem;color:#899698;font-weight:600}.admin-cohorts-list{overflow:hidden}.cohort-row{display:grid;grid-template-columns:1fr auto auto;gap:9px;align-items:center;padding:13px 16px;border-bottom:1px solid #edf0ef}.cohort-row:last-child{border-bottom:0}.cohort-row strong{display:block;color:#17222b}.cohort-row small{display:block;color:#829092;font-size:.65rem;margin-top:3px}.cohort-update-form{display:flex;gap:4px;align-items:center}.cohort-update-form input{width:55px;padding:.5rem .4rem;border:1px solid #d6dfdd;border-radius:8px;font-size:.68rem}.cohort-update-form .text-action{border:0;background:none;padding:0;font-size:.64rem;cursor:pointer}.danger-link{border:0;background:none;color:#bb4e48;font-size:.64rem;font-weight:850;cursor:pointer;padding:0}.admin-user-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.managed-user-list{overflow:hidden}.managed-user-item{border-bottom:1px solid #edf0ef}.managed-user-item:last-child{border-bottom:0}.managed-user-item summary{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;cursor:pointer;list-style:none}.managed-user-item summary::-webkit-details-marker{display:none}.managed-user-item summary>span{min-width:0}.managed-user-item summary strong,.managed-user-item summary small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.managed-user-item summary strong{font-size:.74rem}.managed-user-item summary small{font-size:.62rem;color:#829092;margin-top:3px}.managed-user-item summary b{font-size:.62rem;color:#00519f;white-space:nowrap}.managed-user-editor{padding:0 16px 16px;display:grid;gap:10px}.managed-user-editor form{display:grid;gap:10px}.managed-user-editor .button{justify-self:start}.managed-user-editor>form+form{padding-top:10px;border-top:1px solid #edf0ef}.admin-people-section .empty-row{padding:18px;color:#8c9999;font-size:.72rem}@media(max-width:950px){.admin-people-grid,.admin-user-columns{grid-template-columns:1fr}}@media(max-width:650px){.cohort-row{grid-template-columns:1fr auto}.cohort-update-form{grid-column:1/-1}.cohort-delete-form{grid-column:2;grid-row:1}.managed-user-editor .form-row{grid-template-columns:1fr}}
.is-muted{opacity:.55}
body.file-transfer-loading{overflow:hidden}
.file-transfer-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:24px;background:rgba(247,250,248,.97);backdrop-filter:blur(15px);animation:file-transfer-fade .24s ease-out}.file-transfer-overlay[hidden]{display:none}.file-transfer-card{width:min(500px,100%);padding:27px 38px 34px;border:1px solid #dceae5;border-radius:28px;background:linear-gradient(145deg,#fff 0%,#f4fbf8 100%);box-shadow:0 28px 85px rgba(11,78,80,.18);text-align:center;position:relative;overflow:hidden;animation:file-transfer-card-in .35s ease-out}.file-transfer-card:after{content:"";position:absolute;inset:auto -100px -160px;height:270px;border-radius:50%;background:rgba(36,169,142,.09);pointer-events:none}.file-transfer-animation{height:145px;display:grid;place-items:center;position:relative;z-index:1}.file-transfer-animation img{display:block;width:150px;height:160px;object-fit:contain}.file-transfer-kicker{position:relative;z-index:1;color:var(--teal-dark);font-size:.62rem;font-weight:950;letter-spacing:.18em;margin:0 0 11px}.file-transfer-card h2{position:relative;z-index:1;margin:0 0 9px;font-size:clamp(1.45rem,4vw,2rem);letter-spacing:-.04em}.file-transfer-card p{position:relative;z-index:1;min-height:26px;margin:0 auto 22px;color:#5e7375;font-size:.8rem}.file-transfer-bar{height:8px;overflow:hidden;border-radius:99px;background:#dff0eb;position:relative;z-index:1}.file-transfer-bar span{display:block;width:42%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--coral),#f8c17f,var(--teal));animation:file-transfer-slide 1.45s ease-in-out infinite}.file-transfer-card small{position:relative;z-index:1;display:block;margin-top:19px;color:#809395;font-size:.64rem;line-height:1.45}.file-transfer-overlay.is-success{background:rgba(235,250,243,.97)}.file-transfer-overlay.is-success .file-transfer-card{border-color:#bfe6d6;background:linear-gradient(145deg,#fff 0%,#eefbf5 100%)}.file-transfer-overlay.is-success .file-transfer-kicker{color:#147363}.file-transfer-overlay.is-success .file-transfer-card h2{color:#0c6c56}@keyframes file-transfer-fade{from{opacity:0}to{opacity:1}}@keyframes file-transfer-card-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes file-transfer-slide{0%{transform:translateX(-115%)}100%{transform:translateX(270%)}}@media(prefers-reduced-motion:reduce){.file-transfer-overlay,.file-transfer-card,.file-transfer-bar span{animation:none}.file-transfer-bar span{width:100%}}@media(max-width:650px){.file-transfer-card{padding:20px 23px 28px;border-radius:22px}.file-transfer-animation{height:125px}.file-transfer-animation img{width:130px;height:140px}}
.excel-import-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:rgba(247,250,248,.97);backdrop-filter:blur(13px);animation:excel-overlay-in .24s ease-out}.excel-import-overlay[hidden]{display:none}.excel-import-loading-card{width:min(520px,100%);padding:44px 42px 38px;border:1px solid #dceae5;border-radius:28px;background:linear-gradient(145deg,#fff 0%,#f5fbf8 100%);box-shadow:0 28px 80px rgba(11,78,80,.16);text-align:center;position:relative;overflow:hidden}.excel-import-loading-card:after{content:"";position:absolute;inset:auto -100px -150px;height:260px;border-radius:50%;background:rgba(36,169,142,.09);pointer-events:none}.excel-import-orbit{width:82px;height:82px;margin:0 auto 22px;border:1px solid #b8e4d7;border-radius:50%;display:grid;place-items:center;position:relative;color:#fff;background:conic-gradient(from 30deg,var(--coral),#ffc88a,var(--teal),var(--coral));animation:excel-orbit-spin 2.6s linear infinite}.excel-import-orbit:before{content:"";position:absolute;inset:7px;border-radius:50%;background:#0f5b60}.excel-import-orbit:after{content:"";position:absolute;inset:-10px;border:1px solid rgba(36,169,142,.2);border-radius:50%;animation:excel-orbit-pulse 1.8s ease-in-out infinite}.excel-import-orbit span{font-size:1.9rem;font-weight:900;line-height:1;transform:rotate(-18deg);position:relative;z-index:1}.excel-import-kicker{color:var(--teal-dark);font-size:.62rem;font-weight:950;letter-spacing:.18em;margin-bottom:12px}.excel-import-loading-card h2{margin:0 0 9px;font-size:clamp(1.45rem,4vw,2rem);letter-spacing:-.04em}.excel-import-loading-card p{min-height:26px;margin:0 auto 23px;color:#5e7375;font-size:.8rem}.excel-import-progress{height:8px;overflow:hidden;border-radius:99px;background:#dff0eb;position:relative}.excel-import-progress span{display:block;width:42%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--coral),#f8c17f,var(--teal));animation:excel-progress-slide 1.45s ease-in-out infinite}.excel-import-note{display:flex;align-items:flex-start;justify-content:center;gap:8px;margin-top:20px;color:#809395;text-align:left}.excel-import-note>span{display:grid;place-items:center;flex:0 0 19px;width:19px;height:19px;border-radius:50%;background:#d8f3ea;color:#147363;font-size:.68rem;font-weight:950}.excel-import-note small{font-size:.64rem;line-height:1.45}.excel-import-loading{overflow:hidden}@keyframes excel-overlay-in{from{opacity:0}to{opacity:1}}@keyframes excel-orbit-spin{to{transform:rotate(360deg)}}@keyframes excel-orbit-pulse{0%,100%{transform:scale(.94);opacity:.3}50%{transform:scale(1.08);opacity:.85}}@keyframes excel-progress-slide{0%{transform:translateX(-115%)}100%{transform:translateX(270%)}}@media(prefers-reduced-motion:reduce){.excel-import-overlay,.excel-import-orbit,.excel-import-orbit:after,.excel-import-progress span{animation:none}.excel-import-progress span{width:100%}}@media(max-width:650px){.excel-import-loading-card{padding:35px 24px 30px;border-radius:22px}.excel-import-orbit{width:70px;height:70px;margin-bottom:18px}}
.admin-news-entry{margin-top:18px;padding:23px;display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-news-entry h2{margin:4px 0}.admin-news-entry p{margin:0;font-size:.74rem;max-width:650px}.admin-news-editor-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:18px;align-items:start}.admin-news-edit-list{overflow:hidden}.admin-news-edit-item{border-bottom:1px solid #edf0ef}.admin-news-edit-item:last-child{border-bottom:0}.admin-news-edit-item summary{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;padding:15px 17px;cursor:pointer;list-style:none}.admin-news-edit-item summary::-webkit-details-marker{display:none}.admin-news-edit-item summary>b{font-size:.62rem;color:#00519f;white-space:nowrap}.admin-news-edit-summary strong,.admin-news-edit-summary small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-news-edit-summary strong{font-size:.75rem}.admin-news-edit-summary small{font-size:.62rem;color:#829092;margin-top:4px}.news-edit-form{display:grid;gap:11px;padding:0 17px 18px}.news-edit-form textarea{resize:vertical}.news-edit-actions{display:flex;align-items:center;gap:14px}.news-edit-actions .text-action{font-size:.68rem}.admin-news-edit-list .empty-row{padding:22px;color:#899698;font-size:.72rem}@media(max-width:950px){.admin-news-editor-layout{grid-template-columns:1fr}}@media(max-width:650px){.admin-news-entry{align-items:start;flex-direction:column}.admin-news-edit-item summary{grid-template-columns:32px 1fr}.admin-news-edit-item summary>b{grid-column:2}.news-edit-form .form-row{grid-template-columns:1fr}}
.student-directory .admin-list-head{align-items:start}.directory-hint{display:block;color:#899698;font-size:.62rem;margin-top:4px}.student-directory-controls{display:grid;grid-template-columns:minmax(0,1fr) 100px 100px;gap:8px;padding:12px 16px;border-bottom:1px solid #edf0ef;background:#fbfcfc}.student-directory-controls label{display:grid;gap:4px;font-size:.59rem;font-weight:800;color:#718083}.student-directory-controls input,.student-directory-controls select{width:100%;border:1px solid #d6dfdd;border-radius:9px;padding:.65rem .7rem;background:#fff;color:#17222b;font-size:.7rem}.student-directory-controls input:focus,.student-directory-controls select:focus{outline:0;border-color:#0067b1;box-shadow:0 0 0 3px rgba(0,103,177,.1)}.student-directory-empty{margin:0;padding:20px 16px;color:#899698;font-size:.7rem;line-height:1.45}.student-directory-empty[hidden]{display:none}.student-directory [data-student-row][hidden]{display:none}@media(max-width:650px){.student-directory-controls{grid-template-columns:1fr 1fr}.student-search-field{grid-column:1/-1}}
