:root{--bg:#070708;--panel:#121215;--panel2:#18181c;--line:rgba(255,255,255,.08);--border:var(--line);--text:#f5f5f7;--muted:#8e8e93;--purple:#bf5af2;--indigo:#5e5ce6;--green:#30d158;--red:#ff453a;--radius:22px}
*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;min-height:100vh;background:radial-gradient(ellipse 70vw 72vh at 12% 0%,rgba(191,90,242,.1) 0%,rgba(94,92,230,.035) 42%,transparent 100%),var(--bg);background-attachment:fixed;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.admin-shell{min-height:100vh;display:grid;grid-template-columns:230px minmax(0,1fr)}.admin-sidebar{position:sticky;top:0;height:100vh;padding:24px 18px;display:flex;flex-direction:column;border-right:1px solid var(--line);background:rgba(13,13,15,.9);backdrop-filter:blur(22px)}.admin-brand{display:grid;grid-template-columns:38px 1fr;grid-template-rows:1fr 1fr;column-gap:10px;align-items:center;margin:0 7px 25px}.admin-brand>span{grid-row:1/3;width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,var(--purple),var(--indigo));font-weight:800}.admin-brand strong{align-self:end;font-size:14px}.admin-brand small{align-self:start;color:var(--muted);font-size:10px}.admin-sidebar nav{display:grid;gap:4px}.admin-sidebar nav a{padding:10px 12px;border-radius:12px;color:#929298;font-size:12px;font-weight:650;transition:.2s ease}.admin-sidebar nav a:hover{color:#fff;background:rgba(255,255,255,.04)}.admin-sidebar nav a.active{color:#fff;background:linear-gradient(135deg,rgba(191,90,242,.25),rgba(94,92,230,.16));border:1px solid rgba(191,90,242,.13)}.view-site{margin-top:auto;padding:11px;color:#aaaab0;font-size:11px}.admin-main{min-width:0;padding:32px clamp(20px,4vw,52px)}.admin-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}.admin-topbar>div:first-child>span,.admin-panel header>div>span{color:#77777e;font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.admin-topbar h1{margin:5px 0 0;font-size:36px;letter-spacing:-.05em}.admin-account{display:flex;align-items:center;gap:12px;color:#aaaab0;font-size:12px}.admin-account form{margin:0}.admin-account button,.row-actions button{border:0;background:none;color:#a999ba;cursor:pointer}.admin-flash{margin-bottom:18px;padding:12px 14px;border-radius:13px;font-size:12px}.admin-flash.success{color:#78e993;background:rgba(48,209,88,.1);border:1px solid rgba(48,209,88,.15)}.admin-flash.error{color:#ff918a;background:rgba(255,69,58,.1);border:1px solid rgba(255,69,58,.16)}.admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.admin-stats article,.admin-panel{background:linear-gradient(155deg,rgba(22,22,25,.96),rgba(14,14,16,.96));border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 18px 55px rgba(0,0,0,.3)}.admin-stats article{min-height:155px;padding:20px;display:flex;flex-direction:column}.admin-stats span{color:var(--muted);font-size:11px}.admin-stats strong{margin-top:10px;font-size:34px;letter-spacing:-.05em}.admin-stats a{margin-top:auto;color:#cba2f5;font-size:10px}.admin-panel{margin-top:18px;padding:22px}.admin-panel>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:19px}.admin-panel h2{margin:4px 0 0;font-size:21px;letter-spacing:-.035em}.overview-lines{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-radius:15px;overflow:hidden}.overview-lines div{padding:17px;background:var(--panel)}.overview-lines span{display:block;color:var(--muted);font-size:10px}.overview-lines strong{display:block;margin-top:6px;font-size:21px}.resource-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.resource-form label{display:flex;flex-direction:column;gap:7px;color:#aaaab0;font-size:10px}.resource-form input,.resource-form select{width:100%;height:43px;padding:0 12px;border:1px solid var(--line);border-radius:12px;outline:0;background:#1b1b1f;color:#fff}.resource-form input:focus,.resource-form select:focus{border-color:rgba(191,90,242,.55);box-shadow:0 0 0 3px rgba(191,90,242,.1)}.admin-primary,.admin-secondary{min-height:43px;padding:0 16px;border:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#bf5af2,#6d5ee8);color:#fff;font-weight:750;cursor:pointer}.resource-form .admin-primary{align-self:end}.admin-secondary{min-height:36px;background:#28282c;font-size:11px}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:15px}table{width:100%;border-collapse:collapse;font-size:11px}th,td{padding:12px 13px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis}th{position:sticky;top:0;background:#1b1b1f;color:#8e8e93;font-size:9px;text-transform:uppercase;letter-spacing:.05em}tbody tr:hover{background:rgba(191,90,242,.035)}.row-actions-content{display:flex;align-items:center;gap:10px}.row-actions a{color:#c69bf2}.row-actions form{margin:0}.row-actions button{color:#ff7770}.admin-footer{padding-top:28px;color:#54545a;font-size:10px;text-align:center}.admin-auth{display:grid;place-items:center;padding:22px}.auth-card{width:min(430px,100%);padding:30px;border-radius:26px;background:linear-gradient(155deg,#19191d,#101012);border:1px solid var(--line);box-shadow:0 28px 90px rgba(0,0,0,.5)}.auth-mark{width:48px;height:48px;margin-bottom:24px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,var(--purple),var(--indigo));font-weight:800}.auth-card>span{color:#9d79c1;font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.auth-card h1{margin:7px 0;font-size:29px;letter-spacing:-.045em}.auth-card p{margin:0 0 22px;color:var(--muted);font-size:12px}.auth-card label{display:flex;flex-direction:column;gap:7px;margin-top:13px;color:#aaaab0;font-size:11px}.auth-card input{height:45px;padding:0 13px;border-radius:12px;border:1px solid var(--line);background:#202024;color:#fff;outline:0}.auth-card .admin-primary{width:100%;margin-top:18px}
@media(max-width:1000px){.admin-stats{grid-template-columns:repeat(2,1fr)}.resource-form{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.admin-shell{display:block}.admin-sidebar{position:static;width:100%;height:auto;padding:14px;overflow:auto}.admin-brand{margin-bottom:12px}.admin-sidebar nav{display:flex;min-width:max-content}.admin-sidebar nav a{padding:9px 11px}.view-site{display:none}.admin-main{padding:22px 14px 40px}.admin-topbar{align-items:flex-start}.admin-account{align-items:flex-end;flex-direction:column}.admin-stats{grid-template-columns:1fr 1fr}.resource-form{grid-template-columns:1fr}.overview-lines{grid-template-columns:1fr 1fr}.admin-panel{padding:17px}}

.admin-brand>span{border:1px solid rgba(255,255,255,.1);background:linear-gradient(145deg,rgba(191,90,242,.18),rgba(94,92,230,.11));overflow:hidden}
.admin-brand>span img{display:block;width:25px;height:25px;object-fit:contain}
.possible-student-cell{min-width:220px;white-space:normal}.possible-student-list{display:grid;gap:7px}.possible-student-list span{display:grid;gap:2px}.possible-student-list strong{color:#e6c9ff;font-size:10px}.possible-student-list small{color:var(--muted);font-size:8px;line-height:1.35}
.admin-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:10px;color:#626269;font-size:10px;font-weight:600}.admin-breadcrumbs a{color:#aaaab2;transition:color .18s ease}.admin-breadcrumbs a:hover{color:#e5c8ff}.admin-breadcrumbs>span{color:#4e4e54;font-size:13px}.admin-breadcrumbs b{max-width:min(420px,55vw);overflow:hidden;color:#74747b;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:430px){.admin-stats{grid-template-columns:1fr}.admin-topbar h1{font-size:30px}}

/* Shared resource toolbar, sorting, export, and modal editor */
.resource-toolbar{align-items:flex-end!important}
.resource-toolbar-actions{display:flex;align-items:flex-end;justify-content:flex-end;flex-wrap:wrap;gap:9px}
.export-button{height:36px;min-height:36px;white-space:nowrap}
.table-summary{margin:-7px 0 12px;color:#6f6f75;font-size:10px}.table-summary strong{color:#aaaab0}
.table-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px}.table-search,.bulk-actions{display:flex;align-items:center;gap:8px}.table-search label{position:relative;display:block}.table-search label .search-icon{position:absolute;left:13px;top:50%;color:#77777e;font-size:17px;transform:translateY(-54%);pointer-events:none}.table-search input{width:min(340px,32vw);height:40px;padding:0 13px 0 38px;border:1px solid var(--line);border-radius:12px;outline:0;background:#1b1b1f;color:#fff}.table-search input:focus{border-color:rgba(191,90,242,.5);box-shadow:0 0 0 3px rgba(191,90,242,.09)}.table-search .admin-secondary,.bulk-actions .admin-secondary{min-height:40px;height:40px}.clear-search{padding:8px;color:#b78add;font-size:10px}.bulk-actions>span{min-width:66px;color:#85858b;font-size:10px;text-align:right}.bulk-actions select{height:40px;padding:0 34px 0 12px;border:1px solid var(--line);border-radius:12px;outline:0;background:#1b1b1f;color:#dedee2}.bulk-actions select:disabled,.bulk-actions button:disabled{opacity:.4;cursor:not-allowed}.select-column{width:42px;max-width:42px;padding-left:14px!important;padding-right:5px!important}.select-column input{width:15px;height:15px;margin:0;accent-color:var(--purple);cursor:pointer}.empty-table{height:120px;color:#6f6f75;text-align:center}
.selection-unavailable{color:#45454a}.recording-missing{display:inline-flex;padding:4px 8px;border:1px solid rgba(255,159,10,.18);border-radius:999px;background:rgba(255,159,10,.08);color:#e6a345;font-size:9px;font-weight:700}.recording-link{color:#c69bf2}.recording-link:hover{text-decoration:underline}.add-recording-link{display:inline-flex;padding:5px 9px;border-radius:8px;background:rgba(191,90,242,.11);color:#d6a7ff!important}.add-recording-link:hover{background:rgba(191,90,242,.18)}
.resource-form label small{color:#67676e;font-size:9px;line-height:1.45}.group-empty-note{grid-column:1/-1;margin:0;padding:12px 14px;border:1px solid rgba(255,159,10,.16);border-radius:12px;background:rgba(255,159,10,.07);color:#c9954c;font-size:10px}.resource-form button:disabled{opacity:.42;cursor:not-allowed}
.multi-picker{min-width:0;margin:0;padding:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#17171a;transition:border-color .18s ease,box-shadow .18s ease}.multi-picker.is-invalid{border-color:rgba(255,69,58,.55);box-shadow:0 0 0 3px rgba(255,69,58,.08)}.multi-picker-heading{height:42px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);color:#aaaab0;font-size:10px}.multi-picker-heading button{padding:5px;border:0;background:none;color:#c69bf2;font-size:9px;cursor:pointer}.multi-picker-options{max-height:210px;padding:6px;display:grid;gap:3px;overflow:auto}.resource-form .multi-picker-options label{margin:0;padding:9px 10px;display:flex;align-items:center;flex-direction:row;gap:9px;border-radius:9px;color:#c1c1c7;font-size:10px;cursor:pointer;transition:background .15s ease,color .15s ease}.resource-form .multi-picker-options label:hover{background:rgba(191,90,242,.07);color:#fff}.multi-picker-options input{width:15px;height:15px;min-width:15px;margin:0;padding:0;accent-color:var(--purple)}
.multi-picker[hidden]{display:none}.picker-empty{margin:0;padding:13px 10px;color:#68686e;font-size:9px;line-height:1.5}
.multi-picker .picker-search{display:block;width:calc(100% - 12px);margin:6px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#202024;color:#f5f5f7;font:inherit}.multi-picker .picker-search:focus{outline:none;border-color:var(--purple)}.resource-form .multi-picker-options label[hidden]{display:none}.resource-form .multi-picker-options label:has(input:disabled){opacity:.48;cursor:not-allowed}
.resource-form .resource-field{display:flex;flex-direction:column;gap:7px}.resource-form .resource-field>span{color:#aaaab0;font-size:10px}.tute-lesson-field{grid-column:1/-1}
.copyable-cell{cursor:copy;transition:background-color .16s ease,color .16s ease}.copyable-cell:hover{background:rgba(191,90,242,.055);color:#fff}.copyable-cell.is-copied{background:rgba(48,209,88,.09);color:#b7f5c5}.copy-toast{position:fixed;z-index:1000;left:50%;bottom:28px;padding:10px 14px;border:1px solid rgba(255,255,255,.11);border-radius:12px;background:rgba(32,32,37,.9);box-shadow:0 14px 45px rgba(0,0,0,.45);color:#e8e8ed;font-size:11px;font-weight:650;opacity:0;transform:translate(-50%,12px) scale(.96);pointer-events:none;backdrop-filter:blur(18px);transition:opacity .2s ease,transform .28s cubic-bezier(.2,.8,.2,1)}.copy-toast.is-visible{opacity:1;transform:translate(-50%,0) scale(1)}.copy-toast.is-error{color:#ff918a;border-color:rgba(255,69,58,.18)}
.row-actions .student-payment-history-button{color:#cfadf4}.row-actions .student-payment-history-button:hover{color:#fff}.student-payments-modal{width:min(1080px,calc(100% - 28px))}.student-payment-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.student-payment-summary>div{min-width:0;padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025)}.student-payment-summary span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.student-payment-summary strong{display:block;margin-top:7px;overflow:hidden;color:#f4f2f7;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.student-payments-table{max-height:54vh}.payment-history-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:750}.payment-history-status.is-valid{background:rgba(48,209,88,.12);color:#72e68e}.payment-history-status.is-voided{background:rgba(255,69,58,.11);color:#ff8b84}
.payment-label-summary-panel .table-scroll table{min-width:760px}.payment-label-summary-panel td:first-child{max-width:440px;white-space:normal}.row-actions .view-payment-group{padding:6px 9px;border-radius:8px;background:rgba(191,90,242,.11);color:#d7b0fb;white-space:nowrap}.row-actions .view-payment-group:hover{background:rgba(191,90,242,.18);color:#fff}.resource-modal.payment-group-modal{width:min(1600px,calc(100vw - 36px));max-width:none}.payment-group-overview{display:grid;grid-template-columns:160px 210px minmax(260px,1fr);gap:10px;margin-bottom:15px}.payment-group-overview>div,.payment-group-overview>label{min-height:67px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025)}.payment-group-overview span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.05em}.payment-group-overview strong{display:block;margin-top:7px;color:#f3f0f6;font-size:16px}.payment-group-overview>label{display:grid;grid-template-columns:1fr;gap:7px}.payment-group-overview input{width:100%;height:34px;padding:0;border:0;outline:0;background:transparent;color:#fff}.payment-group-table{max-height:61vh}.payment-group-table table{min-width:0;table-layout:fixed}.payment-group-table th:nth-child(1){width:24%}.payment-group-table th:nth-child(2){width:18%}.payment-group-table th:nth-child(3){width:11%}.payment-group-table th:nth-child(4){width:12%}.payment-group-table th:nth-child(5){width:17%}.payment-group-table th:nth-child(6){width:11%}.payment-group-table th:nth-child(7){width:7%}.payment-group-table th,.payment-group-table td{max-width:none}.payment-group-table td:nth-child(1),.payment-group-table td:nth-child(2){white-space:normal;overflow-wrap:anywhere}
.sortable-heading{display:flex;align-items:center;gap:6px;color:#8e8e93}.sortable-heading:hover,.sortable-heading.is-sorted{color:#d7b5ff}.sortable-heading span{font-size:10px}.table-sort-button{padding:0;border:0;background:none;font:inherit;text-align:left;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.auto-table-tools .auto-export-button{margin-left:auto}.auto-table-tools+.auto-table-summary{margin-top:-7px}
.resource-modal{width:min(860px,calc(100% - 28px));max-height:calc(100vh - 42px);padding:0;border:1px solid rgba(255,255,255,.1);border-radius:25px;background:transparent;color:var(--text);box-shadow:0 35px 120px rgba(0,0,0,.72);overflow:hidden}
.resource-modal::backdrop{background:rgba(0,0,0,.68);backdrop-filter:blur(10px)}
.resource-modal-card{max-height:calc(100vh - 42px);padding:24px;background:radial-gradient(circle at 90% 0,rgba(191,90,242,.11),transparent 29%),linear-gradient(155deg,#1b1b20,#111113);overflow:auto}
.resource-modal-card>header{position:sticky;top:-24px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:15px;margin:-24px -24px 21px;padding:22px 24px 17px;background:rgba(23,23,27,.88);border-bottom:1px solid var(--line);backdrop-filter:blur(20px)}
.resource-modal-card>header span{color:#9b78bf;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.resource-modal-card>header h2{margin:5px 0 0;font-size:23px;letter-spacing:-.04em}
.modal-close{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:#27272b;color:#aaaab0;font-size:21px;line-height:1;cursor:pointer}.modal-close:hover{color:#fff;background:#303036}
.resource-modal .resource-form{grid-template-columns:repeat(2,minmax(0,1fr))}
.resource-modal .resource-form footer{grid-column:1/-1;display:flex;justify-content:flex-end;gap:9px;padding-top:7px}
.resource-modal .resource-form footer .admin-primary,.resource-modal .resource-form footer .admin-secondary{min-width:125px}
body:has(.resource-modal[open]){overflow:hidden}
.student-search-control{position:relative}.student-search-control>input[type="search"]{padding-right:36px}.student-search-results{position:absolute;z-index:12;top:calc(100% + 7px);right:0;left:0;max-height:260px;padding:6px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(24,24,28,.98);box-shadow:0 20px 55px rgba(0,0,0,.55);overflow:auto;backdrop-filter:blur(22px)}.student-search-results button{width:100%;min-height:39px;padding:9px 10px;border:0;border-radius:9px;display:block;background:transparent;color:#d8d8de;font-size:10px;text-align:left;cursor:pointer}.student-search-results button:hover,.student-search-results button:focus{outline:0;background:rgba(191,90,242,.11);color:#fff}.student-search-message{display:block;padding:12px 10px;color:#77777e;font-size:10px}
.show-student-password{min-height:28px;padding:0 10px;border:1px solid rgba(191,90,242,.16);border-radius:8px;background:rgba(191,90,242,.08);color:#cf9df5;font-size:9px;font-weight:700;cursor:pointer}.show-student-password:hover{border-color:rgba(191,90,242,.28);background:rgba(191,90,242,.13);color:#ead7fb}.show-student-password.is-revealed{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#f0e2ff;user-select:text}.password-unavailable{color:#6e6e75;font-size:9px}
.assignment-rules-panel .resource-toolbar p{max-width:720px;margin:7px 0 0;color:var(--muted);font-size:10px;line-height:1.55}.assignment-rules-panel .row-actions button{padding:0;border:0;background:none;font:inherit;cursor:pointer}.assignment-rules-panel .row-actions .assignment-rule-toggle,.assignment-rules-panel .row-actions .assignment-rule-edit{color:#c69bf2}.assignment-rule-note{margin:12px 0 0;color:#696970;font-size:9px;line-height:1.5}.assignment-label-cell{max-width:360px;white-space:normal}.assignment-label-list{display:flex;align-items:flex-start;flex-direction:column;gap:5px}.assignment-label-list small{padding:4px 7px;border-radius:7px;background:rgba(191,90,242,.09);color:#d2abf5;font-size:8px;line-height:1.35;white-space:normal}.assignment-actions{gap:13px}.assignment-rules-panel .view-assignment-students{padding:6px 9px;border-radius:8px;background:rgba(191,90,242,.11);color:#dab2ff;font-weight:700}.assignment-rules-panel .view-assignment-students:hover{background:rgba(191,90,242,.18);color:#fff}.assignment-students-modal{width:min(920px,calc(100% - 28px))}.assignment-students-tools{margin-bottom:13px;display:flex;align-items:center;justify-content:space-between;gap:14px}.assignment-students-tools p{margin:0;color:var(--muted);font-size:10px}.assignment-students-tools p strong{color:#e8e8ed}.assignment-students-tools input{width:min(290px,45vw);height:38px;padding:0 12px;border:1px solid var(--line);border-radius:11px;outline:0;background:#1b1b1f;color:#fff}.assignment-students-tools input:focus{border-color:rgba(191,90,242,.5);box-shadow:0 0 0 3px rgba(191,90,242,.09)}.assignment-students-table{max-height:55vh}.assignment-group-edit-modal .edit-payment-labels{grid-column:1/-1}.assignment-group-edit-modal .edit-payment-labels[hidden]{display:none}
.lesson-assignment-list{display:grid;gap:10px}.lesson-assignment-item{border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.018);overflow:hidden}.lesson-assignment-item[open]{border-color:rgba(191,90,242,.22)}.lesson-assignment-item>summary{min-height:70px;padding:15px 18px;display:flex;align-items:center;gap:18px;list-style:none;cursor:pointer}.lesson-assignment-item>summary::-webkit-details-marker{display:none}.lesson-assignment-item>summary:hover{background:rgba(191,90,242,.045)}.lesson-assignment-heading{min-width:0;margin-right:auto;display:grid;gap:5px}.lesson-assignment-heading strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.lesson-assignment-heading small{color:var(--muted);font-size:10px}.lesson-assignment-chevron{width:9px;height:9px;margin:0 3px;border-right:1.5px solid #92929a;border-bottom:1.5px solid #92929a;transform:rotate(45deg);transition:transform .2s ease}.lesson-assignment-item[open] .lesson-assignment-chevron{transform:rotate(225deg)}.lesson-assignment-table{margin:0 12px 12px;border-radius:10px}.lesson-assignment-table table{min-width:690px}.lesson-assignment-empty{margin:0;padding:45px 15px;border:1px solid var(--line);border-radius:15px;color:var(--muted);font-size:11px;text-align:center}
.registration-status-panel .resource-toolbar p{max-width:680px;margin:7px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.registration-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.registration-status-grid>div{padding:15px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025)}.registration-status-grid span{display:block;color:var(--muted);font-size:10px}.registration-status-grid strong{display:block;margin-top:6px;font-size:24px;letter-spacing:-.04em}.registration-worker-detail{margin:14px 1px 0;color:#aaaab0;font-size:10px;line-height:1.5}.assignment-students-modal{width:min(1120px,calc(100% - 28px))}.assignment-students-tools .admin-secondary{min-height:38px;margin-left:auto}.assignment-students-table table{min-width:880px}.registration-pill{display:inline-flex;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.06);color:#aaaab0;font-size:9px;font-weight:700;white-space:nowrap}.registration-pill.is-ready{background:rgba(48,209,88,.1);color:#7de497}.registration-pill.is-retrying{background:rgba(255,159,10,.1);color:#e5b35a}.registration-error{display:block;max-width:190px;margin-top:5px;color:#9c8180;font-size:9px;line-height:1.4;white-space:normal}.personal-join-link{color:#d5aeff;font-size:10px;font-weight:700;white-space:nowrap}.personal-join-link:hover{text-decoration:underline}.copy-personal-link{margin-left:9px;padding:0;border:0;background:none;color:#9b9ba4;font-size:9px;cursor:pointer}.copy-personal-link:hover{color:#fff}
.leaderboard-dashboard-actions{display:flex;align-items:flex-end;gap:10px}.leaderboard-filter label{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:11px}.leaderboard-filter select{height:38px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#1b1b1f;color:var(--text)}.leaderboard-top-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.leaderboard-top-three a{min-width:0;padding:16px;border:1px solid var(--line);border-radius:14px;display:grid;gap:7px;background:rgba(191,90,242,.035);transition:border-color .2s ease,background .2s ease}.leaderboard-top-three a:hover{border-color:rgba(191,90,242,.28);background:rgba(191,90,242,.08)}.leaderboard-top-three span{color:#b98ad9;font-size:10px;font-weight:800}.leaderboard-top-three strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.leaderboard-top-three b{color:#e3baff;font-size:18px}.leaderboard-top-three small{color:var(--muted);font-size:9px}.leaderboard-all-link,.leaderboard-breakdown-link{display:inline-block;color:#d7adf4;font-size:11px;font-weight:700}.leaderboard-all-link{margin-top:15px}.leaderboard-all-link:hover,.leaderboard-breakdown-link:hover{color:#fff}.leaderboard-empty,.leaderboard-explanation{color:var(--muted);font-size:11px;line-height:1.5}.leaderboard-breakdown-list{display:grid;gap:9px}.leaderboard-breakdown-list article{padding:15px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.02)}.leaderboard-breakdown-list article>strong{font-size:12px}.leaderboard-breakdown-list p,.leaderboard-breakdown-list small{margin:8px 0;color:var(--muted);font-size:10px}.leaderboard-category-list{display:flex;flex-wrap:wrap;gap:6px}.leaderboard-category-list span{padding:5px 8px;border:1px solid rgba(191,90,242,.14);border-radius:999px;background:rgba(191,90,242,.06);color:#d4b2ee;font-size:9px}@media(max-width:720px){.leaderboard-top-three{grid-template-columns:1fr}.leaderboard-dashboard-actions{width:100%;align-items:stretch;flex-direction:column}.leaderboard-filter{margin-left:0}.leaderboard-filter label,.leaderboard-filter select{width:100%}}
.attendance-page td:nth-child(4),.attendance-page td:nth-child(5),.payments-page td:nth-child(3){max-width:320px;white-space:normal;overflow-wrap:anywhere}
.attendance-tabs{margin:0 0 4px;padding:0 3px;display:flex;align-items:flex-end;gap:30px;border-bottom:1px solid var(--line)}.attendance-tabs a{position:relative;height:48px;display:flex;align-items:center;color:#77777f;font-size:11px;font-weight:750}.attendance-tabs a:hover{color:#c9c9ce}.attendance-tabs a::after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:2px;background:linear-gradient(90deg,#bf5af2,#7d67ed);box-shadow:0 -3px 13px rgba(191,90,242,.28);opacity:0;transform:scaleX(.35);transition:.25s ease}.attendance-tabs a.active{color:#f5f5f7}.attendance-tabs a.active::after{opacity:1;transform:scaleX(1)}.lesson-attendance-summary-panel .table-scroll table{min-width:1250px}.student-attendance-summary-panel .table-scroll table{min-width:1320px}.lesson-attendance-summary-panel td:first-child,.student-attendance-summary-panel td:first-child{max-width:340px;white-space:normal}.attendance-count{display:inline-flex;min-width:27px;height:23px;padding:0 7px;align-items:center;justify-content:center;border-radius:999px;background:rgba(255,255,255,.055);color:#aaaab0;font-size:9px;font-weight:750}.attendance-count.is-linked{background:rgba(48,209,88,.1);color:#7de497}.attendance-count.is-unmatched{background:rgba(255,69,58,.1);color:#ff8c85}.row-actions .view-lesson-attendance,.row-actions .view-student-attendance{padding:6px 9px;border-radius:8px;background:rgba(191,90,242,.11);color:#d7b0fb;white-space:nowrap}.row-actions .view-lesson-attendance:hover,.row-actions .view-student-attendance:hover{background:rgba(191,90,242,.18);color:#fff}.attendance-date-filter{display:flex;align-items:end;gap:9px}.attendance-date-filter label{display:grid;gap:6px;color:#8e8e93;font-size:9px}.attendance-date-filter input{height:38px;padding:0 10px;border:1px solid var(--line);border-radius:11px;outline:0;background:#1b1b1f;color:#fff}.attendance-date-filter input:focus{border-color:rgba(191,90,242,.5);box-shadow:0 0 0 3px rgba(191,90,242,.09)}.attendance-date-filter button{height:38px}.attendance-overview-modal{width:min(1280px,calc(100% - 28px))}.attendance-modal-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.attendance-modal-tools>p{margin:0;color:var(--muted);font-size:10px}.attendance-modal-counts{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.attendance-modal-counts span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.025);color:var(--muted);font-size:9px}.attendance-modal-counts strong{color:#f2eef5}.attendance-modal-tools>input{width:min(330px,42vw);height:39px;padding:0 12px;border:1px solid var(--line);border-radius:11px;outline:0;background:#1b1b1f;color:#fff}.attendance-modal-tools>input:focus{border-color:rgba(191,90,242,.5);box-shadow:0 0 0 3px rgba(191,90,242,.09)}.attendance-overview-table{max-height:61vh}.attendance-overview-table table{min-width:1120px}.attendance-session-list{min-width:145px;white-space:normal}.attendance-session-list summary{color:#d5adf5;font-size:9px;font-weight:700;cursor:pointer}.attendance-session-list span{display:block;margin-top:6px;color:#8e8e95;font-size:9px;line-height:1.4}.attendance-status-pill{display:inline-flex;padding:5px 8px;border-radius:999px;background:rgba(255,69,58,.1);color:#ff8c85;font-size:9px;font-weight:750}.attendance-status-pill.is-present{background:rgba(48,209,88,.1);color:#7de497}.attendance-status-pill.is-partial{background:rgba(255,159,10,.1);color:#e5b35a}.attendance-status-pill.is-unmatched{background:rgba(191,90,242,.11);color:#d2a9f6}.is-unmatched-attendance{background:rgba(191,90,242,.025)}
.recording-view-sessions{min-width:180px;white-space:normal}.recording-view-sessions summary{color:#d6aef4;cursor:pointer}.recording-view-sessions span{display:block;margin-top:6px;color:var(--muted);font-size:9px}
.live-attendance-sessions summary{display:flex;align-items:center;gap:4px;color:#aaaab0}.live-attendance-sessions summary .status-pill{display:inline-flex;margin:0;color:inherit;font-size:9px}.live-attendance-sessions>span{padding-left:3px}
.recording-sync-detail,.recording-sync-error{display:block;margin-top:5px;font-size:11px;color:var(--muted)}
.recording-sync-error{color:#f19d9d}
.row-actions .view-recording-students{padding:6px 9px;border-radius:8px;background:rgba(191,90,242,.11);color:#d7b0fb;white-space:nowrap}.row-actions .view-recording-students:hover{background:rgba(191,90,242,.18);color:#fff}.recording-students-modal{width:min(1120px,calc(100% - 28px))}.recording-students-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.recording-students-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.recording-students-summary span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.025);color:var(--muted);font-size:9px}.recording-students-summary strong{color:#f1edf5}.recording-students-tools>input{width:min(320px,42vw);height:39px;padding:0 12px;border:1px solid var(--line);border-radius:11px;outline:0;background:#1b1b1f;color:#fff}.recording-students-tools>input:focus{border-color:rgba(191,90,242,.5);box-shadow:0 0 0 3px rgba(191,90,242,.09)}.recording-students-table{max-height:58vh}.recording-students-table table{min-width:850px}.recording-access-status{display:inline-flex;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.06);color:#aaaab0;font-size:9px;font-weight:750}.recording-access-status.is-ready{background:rgba(48,209,88,.11);color:#77e493}.recording-access-status.is-error{background:rgba(255,159,10,.1);color:#e5b35a}.recording-students-table td small{display:block;max-width:190px;margin-top:5px;overflow:hidden;color:#a57f7c;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.personal-recording-link{color:#d5aeff;font-size:10px;font-weight:700}.personal-recording-link:hover{text-decoration:underline}
.zoom-attendance-state{white-space:normal}.zoom-attendance-state strong,.zoom-attendance-state small,.zoom-attendance-state span{display:block}.zoom-attendance-state strong{font-size:10px}.zoom-attendance-state strong.is-ready{color:#75df90}.zoom-attendance-state strong.is-error{color:#ff8c85}.zoom-attendance-state small,.zoom-attendance-state span{max-width:190px;margin-top:4px;overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.row-actions [data-zoom-attendance-refresh] button{color:#cba1ef;white-space:nowrap}.row-actions [data-zoom-attendance-refresh] button:hover{color:#fff}.row-actions [data-zoom-attendance-refresh] button:disabled{color:#66666d;cursor:wait}
.lessons-page .table-scroll table{min-width:1640px}.lessons-page th:last-child,.lessons-page td:last-child{width:520px;min-width:520px;max-width:none;overflow:visible}.lessons-page .row-actions-content{width:max-content;min-width:100%;flex-wrap:nowrap}.lessons-page .row-actions-content>a,.lessons-page .row-actions-content button{white-space:nowrap}
.attendance-import-panel form{display:flex;align-items:flex-end;gap:10px}.attendance-import-panel form label{min-width:0;flex:1;display:grid;gap:7px;color:var(--muted);font-size:10px}.attendance-import-panel form select{width:100%;height:43px;padding:0 12px;border:1px solid var(--line);border-radius:12px;outline:0;background:#1b1b1f;color:#fff}.attendance-import-panel form select:focus{border-color:rgba(191,90,242,.5);box-shadow:0 0 0 3px rgba(191,90,242,.09)}@media(max-width:650px){.attendance-import-panel form{align-items:stretch;flex-direction:column}.attendance-import-panel form .admin-primary{width:100%}}

/* Webhook control centre */
.webhook-endpoint-switches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.webhook-status-card{padding:22px;border:1px solid var(--line);border-radius:var(--radius);display:flex;align-items:center;gap:20px;background:linear-gradient(155deg,rgba(22,22,25,.97),rgba(14,14,16,.97));box-shadow:0 18px 55px rgba(0,0,0,.3)}
.webhook-status-card>div{margin-right:auto}.webhook-status-card span{color:#77777e;font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.webhook-status-card h2{margin:5px 0;font-size:22px}.webhook-status-card p{margin:0;color:var(--muted);font-size:11px}.webhook-status-card.is-enabled{border-color:rgba(48,209,88,.18);background:radial-gradient(circle at 4% 20%,rgba(48,209,88,.09),transparent 32%),linear-gradient(155deg,rgba(22,22,25,.97),rgba(14,14,16,.97))}.webhook-status-card.is-disabled{border-color:rgba(255,69,58,.2)}
.webhook-toggle-form{margin:0}.webhook-switch{padding:6px 8px 6px 6px;border:0;border-radius:999px;display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.035);color:#8d8d94;cursor:pointer;transition:background .22s ease,color .22s ease,transform .22s cubic-bezier(.2,.8,.2,1)}.webhook-switch:hover{background:rgba(255,255,255,.065);transform:scale(1.025)}.webhook-switch:active{transform:scale(.97)}.webhook-switch-track{position:relative;width:56px;height:32px;border-radius:999px;display:block;background:#34343a;box-shadow:inset 0 0 0 1px rgba(255,255,255,.07);transition:background .3s ease,box-shadow .3s ease}.webhook-switch-track>span{position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:50%;background:#f4f4f6;box-shadow:0 3px 10px rgba(0,0,0,.4);transition:transform .34s cubic-bezier(.2,.9,.2,1)}.webhook-switch strong{min-width:28px;font-size:11px;letter-spacing:.04em}.webhook-switch.is-on{color:#71df8c}.webhook-switch.is-on .webhook-switch-track{background:linear-gradient(135deg,#31c85a,#249d47);box-shadow:0 0 20px rgba(48,209,88,.16),inset 0 0 0 1px rgba(255,255,255,.12)}.webhook-switch.is-on .webhook-switch-track>span{transform:translateX(24px)}.webhook-switch.compact{padding:4px 7px 4px 4px;gap:7px}.webhook-switch.compact .webhook-switch-track{width:44px;height:25px}.webhook-switch.compact .webhook-switch-track>span{top:3px;left:3px;width:19px;height:19px}.webhook-switch.compact.is-on .webhook-switch-track>span{transform:translateX(19px)}.webhook-switch.compact strong{min-width:23px;font-size:9px}
.webhook-senders-panel,.webhook-history-panel{margin-top:18px}.status-pill,.http-status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:750}.status-pill.active,.status-2xx{color:#7de497;background:rgba(48,209,88,.1)}.status-pill.inactive,.status-4xx,.status-5xx{color:#ff8c85;background:rgba(255,69,58,.1)}.status-3xx{color:#e5b35a;background:rgba(255,159,10,.1)}
.webhook-tabs{position:relative;margin:26px 0 0;padding:0 2px;display:flex;align-items:flex-end;gap:30px;border-bottom:1px solid rgba(255,255,255,.09);overflow-x:auto;scrollbar-width:none}.webhook-tabs::-webkit-scrollbar{display:none}.webhook-tabs a{position:relative;min-width:max-content;height:48px;padding:0 2px;display:flex;align-items:center;color:#77777f;font-size:11px;font-weight:700;letter-spacing:-.01em;transition:color .2s ease}.webhook-tabs a:hover{color:#c8c8ce}.webhook-tabs a::after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:2px 2px 0 0;background:linear-gradient(90deg,#bf5af2,#7d67ed);box-shadow:0 -3px 13px rgba(191,90,242,.28);opacity:0;transform:scaleX(.35);transition:opacity .2s ease,transform .32s cubic-bezier(.2,.8,.2,1)}.webhook-tabs a.active{color:#f5f5f7}.webhook-tabs a.active::after{opacity:1;transform:scaleX(1)}.webhook-code-panel{margin-top:18px}.webhook-code-note{margin:-3px 0 16px;color:#8e8e95;font-size:11px;line-height:1.6}.webhook-code-note code{color:#d2aaff}.webhook-code-section{margin-top:14px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:rgba(255,255,255,.018);transition:border-color .22s ease,background .22s ease}.webhook-code-section:hover{border-color:rgba(191,90,242,.17)}.webhook-code-section[open]{border-color:rgba(191,90,242,.16);background:rgba(191,90,242,.018)}.webhook-code-section>summary{min-height:68px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:14px;list-style:none;cursor:pointer;user-select:none}.webhook-code-section>summary::-webkit-details-marker{display:none}.webhook-code-heading{display:flex;align-items:center;gap:13px}.webhook-code-heading>div{display:flex;align-items:center;gap:12px}.webhook-code-heading>div>span{font-size:11px;font-weight:750}.webhook-code-heading code{color:#8d729f;font-size:9px}.code-disclosure-arrow{width:9px;height:9px;border-right:1.5px solid #888890;border-bottom:1.5px solid #888890;transform:rotate(-45deg);transition:transform .3s cubic-bezier(.2,.8,.2,1),border-color .2s ease}.webhook-code-section>summary:hover .code-disclosure-arrow{border-color:#cf9cff}.webhook-code-section[open] .code-disclosure-arrow{border-color:#c792f3;transform:rotate(45deg) translate(-2px,-2px)}.webhook-code-block{max-height:520px;margin:0;padding:18px;border:0;border-top:1px solid var(--line);background:#09090b;color:#c8c8cf;font-size:11px;line-height:1.6;white-space:pre;overflow:auto;user-select:all}
.webhook-token-modal{width:min(720px,calc(100% - 28px))}.webhook-token-modal .resource-modal-card>header{padding-right:24px}.token-modal-content{display:grid;gap:16px}.token-sender{display:flex;align-items:center;justify-content:space-between;gap:15px}.token-sender strong{font-size:15px}.token-sender span{color:var(--muted);font-size:10px}.token-critical-warning{padding:14px 15px;border:1px solid rgba(255,159,10,.2);border-radius:14px;background:rgba(255,159,10,.075)}.token-critical-warning strong{color:#f0b34f;font-size:12px}.token-critical-warning p{margin:5px 0 0;color:#bb9a68;font-size:10px;line-height:1.55}.token-modal-content>code{padding:16px;border:1px solid rgba(191,90,242,.25);border-radius:13px;background:#0b0b0d;color:#dcb8ff;font-size:12px;line-height:1.5;overflow-wrap:anywhere;user-select:all}.sender-code-preview{border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025);overflow:hidden}.sender-code-preview summary{padding:12px 14px;color:#bca0d8;font-size:10px;font-weight:700;cursor:pointer}.sender-code-preview pre{max-height:245px;margin:0;padding:15px;border-top:1px solid var(--line);background:#09090b;color:#bfc0c8;font-size:10px;line-height:1.55;white-space:pre;overflow:auto;user-select:all}.token-copy-status{height:0;display:flex;align-items:center;justify-content:center;gap:7px;color:#79e394;font-size:11px;font-weight:700;opacity:0;transform:translateY(5px);overflow:hidden;transition:height .25s ease,opacity .2s ease,transform .25s ease}.token-copy-status span{width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:rgba(48,209,88,.14);font-size:10px}.token-copy-status.is-visible{height:24px;opacity:1;transform:translateY(0)}.token-modal-content>footer{display:flex;justify-content:flex-end;gap:9px}.token-modal-content>footer button{min-width:130px}.copy-code-button{color:#d8b5fb;background:rgba(191,90,242,.1)}
.webhook-ip-field{grid-column:1/-1}
.student-date-filter{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin:-2px 0 18px}.student-date-filter label{display:grid;gap:6px;color:#8e8e93;font-size:10px;font-weight:650}.student-date-filter input,.student-date-filter select{height:40px;padding:0 12px;border:1px solid var(--line);border-radius:12px;outline:0;background:#1b1b1f;color:#fff}.student-date-filter input:focus,.student-date-filter select:focus{border-color:rgba(191,90,242,.5);box-shadow:0 0 0 3px rgba(191,90,242,.09)}.student-date-filter .admin-secondary{height:40px;min-height:40px}
.admin-note{margin:-5px 0 18px;color:#929298;font-size:11px;line-height:1.6}
.request-inspector{position:relative}.request-inspector summary{color:#c69bf2;cursor:pointer;list-style:none}.request-inspector summary::-webkit-details-marker{display:none}.request-inspector-card{position:fixed;z-index:20;inset:8vh 6vw auto auto;width:min(720px,88vw);max-height:84vh;padding:20px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(20,20,24,.98);box-shadow:0 30px 100px rgba(0,0,0,.75);white-space:normal;overflow:auto;backdrop-filter:blur(25px)}.request-inspector-close{position:sticky;z-index:2;top:0;float:right}.request-inspector-card dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.request-inspector-card dl div{padding:11px;border-radius:11px;background:rgba(255,255,255,.035)}.request-inspector-card dt{color:#74747b;font-size:9px;text-transform:uppercase}.request-inspector-card dd{margin:5px 0 0;color:#d4d4da;overflow-wrap:anywhere}.request-inspector-card h3{margin:18px 0 7px;color:#aaaab0;font-size:10px;text-transform:uppercase}.request-inspector-card pre{margin:0;padding:14px;border:1px solid var(--line);border-radius:12px;background:#0b0b0d;color:#cfcfd5;font-size:10px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}

@media(max-width:900px){.resource-toolbar{align-items:flex-start!important;flex-direction:column}.resource-toolbar-actions{width:100%;justify-content:flex-start}}
@media(max-width:900px){.table-tools{align-items:stretch;flex-direction:column}.table-search input{width:min(440px,55vw)}.bulk-actions{justify-content:flex-start}}
@media(max-width:600px){.resource-modal .resource-form{grid-template-columns:1fr}.resource-modal-card{padding:18px}.resource-modal-card>header{top:-18px;margin:-18px -18px 18px;padding:18px}.resource-toolbar-actions{align-items:stretch;flex-direction:column}.export-button,.resource-toolbar-actions>.admin-primary{width:100%}.resource-modal .resource-form footer{flex-direction:column-reverse}.resource-modal .resource-form footer button{width:100%}.table-search{display:grid;grid-template-columns:1fr auto}.table-search label{grid-column:1/-1}.table-search input{width:100%}.clear-search{align-self:center}.bulk-actions{display:grid;grid-template-columns:1fr auto}.bulk-actions>span{text-align:left}.bulk-actions select{grid-column:1/2}}
@media(max-width:760px){.student-payment-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.student-payment-summary{grid-template-columns:1fr}}
@media(max-width:850px){.webhook-endpoint-switches{grid-template-columns:1fr}}@media(max-width:700px){.webhook-status-card{align-items:flex-start;flex-direction:column}.webhook-tabs{gap:23px}.webhook-tabs a{height:44px}.token-sender{align-items:flex-start;flex-direction:column}.token-modal-content>footer{flex-direction:column}.token-modal-content>footer button{width:100%}.request-inspector-card{inset:6vh 4vw auto;width:92vw}.request-inspector-card dl{grid-template-columns:1fr}}
@media(max-width:700px){.registration-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-students-tools{flex-wrap:wrap}.assignment-students-tools input{width:100%}}
@media(max-width:700px){.recording-students-tools{align-items:stretch;flex-direction:column}.recording-students-tools>input{width:100%}}
@media(max-width:760px){.payment-group-overview{grid-template-columns:1fr 1fr}.payment-group-overview>label{grid-column:1/-1}}
@media(max-width:900px){.payment-group-table table{min-width:920px;table-layout:auto}}
@media(max-width:760px){.student-attendance-summary-panel .resource-toolbar{align-items:stretch!important}.attendance-date-filter{display:grid;grid-template-columns:1fr 1fr;width:100%}.attendance-date-filter button{grid-column:1/-1}.attendance-modal-tools{align-items:stretch;flex-direction:column}.attendance-modal-tools>input{width:100%}}
.attendance-date-filter select{height:38px;padding:0 32px 0 10px;border:1px solid var(--line);border-radius:11px;outline:0;background:#1b1b1f;color:#fff}.attendance-date-filter select:focus{border-color:rgba(191,90,242,.5);box-shadow:0 0 0 3px rgba(191,90,242,.09)}

/* Event-driven learning workflow */
.webhook-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.webhook-account-grid article{display:grid;gap:12px;padding:17px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.02)}.webhook-account-grid article>div{display:flex;justify-content:space-between;gap:10px}.webhook-account-grid article span{color:var(--muted);font-size:10px}.webhook-account-grid code{padding:10px;border-radius:10px;background:#09090b;color:#c9a4ec;overflow-wrap:anywhere}.webhook-account-grid form{display:grid;grid-template-columns:1fr auto;gap:8px}.webhook-account-grid input{min-width:0;height:40px;padding:0 11px;border:1px solid var(--line);border-radius:10px;background:#1b1b1f;color:#fff}@media(max-width:800px){.webhook-account-grid{grid-template-columns:1fr}.webhook-account-grid form{grid-template-columns:1fr}}
.admin-form,.poll-editor{display:grid;gap:13px}.admin-form label,.poll-editor label{display:grid;gap:7px;color:#aaaab0;font-size:10px}.admin-form input,.admin-form select,.admin-form textarea,.poll-editor input,.poll-editor select,.poll-editor textarea,.toolbar-filters select{width:100%;min-height:43px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;outline:0;background:#1b1b1f;color:#fff}.admin-form textarea,.poll-editor textarea{min-height:90px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.primary-button,.secondary-button{min-height:43px;padding:0 16px;border:0;border-radius:12px;background:linear-gradient(135deg,#bf5af2,#6d5ee8);color:#fff;font-weight:750;cursor:pointer}.secondary-button{background:#28282c}

.milestone-create-panel .resource-toolbar p,.milestone-list-panel .resource-toolbar p{max-width:690px;margin:7px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.milestone-admin-form{grid-template-columns:repeat(3,minmax(0,1fr))}.milestone-admin-form .admin-primary{grid-column:3;justify-self:end}.milestone-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.milestone-admin-card{display:grid;gap:11px;padding:17px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.02)}.milestone-admin-card.is-active{border-color:rgba(191,90,242,.18);background:linear-gradient(145deg,rgba(191,90,242,.05),rgba(255,255,255,.015))}.milestone-admin-card.is-inactive{opacity:.68}.milestone-admin-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.milestone-admin-card-head span{color:#d0a4f4;font-size:12px;font-weight:750}.milestone-admin-card-head b{padding:4px 7px;border-radius:999px;background:rgba(48,209,88,.1);color:#79df92;font-size:8px;text-transform:uppercase}.milestone-admin-card.is-inactive .milestone-admin-card-head b{background:rgba(255,255,255,.06);color:#8e8e93}.milestone-admin-card label{display:grid;gap:5px;color:#8e8e94;font-size:9px}.milestone-admin-card input,.milestone-admin-card select{width:100%;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:10px;outline:0;background:#19191d;color:#fff}.milestone-admin-card input:focus,.milestone-admin-card select:focus{border-color:rgba(191,90,242,.48);box-shadow:0 0 0 3px rgba(191,90,242,.08)}.milestone-admin-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}.milestone-admin-card .admin-secondary{justify-self:start}
@media(max-width:1050px){.milestone-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.milestone-admin-form,.milestone-admin-grid{grid-template-columns:1fr}.milestone-admin-form .admin-primary{grid-column:auto;justify-self:stretch}}
.live-auto-refresh,.quality-pill,.status-pill{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.live-auto-refresh,.status-pill.is-live{color:#69e6a7;background:rgba(46,211,130,.1);border:1px solid rgba(46,211,130,.22)}.live-lesson-tabs,.poll-tabs{display:flex;gap:10px;overflow:auto;padding:4px 0 18px}.live-lesson-tabs a,.poll-tabs a{display:grid;gap:4px;min-width:220px;padding:14px 16px;border-radius:14px;border:1px solid var(--border);background:rgba(255,255,255,.025);color:var(--text);text-decoration:none}.live-lesson-tabs a.active,.poll-tabs a.active{border-color:rgba(187,116,255,.5);background:rgba(159,88,224,.1)}.live-lesson-tabs small,.live-lesson-tabs span,.poll-tabs small{color:var(--muted);font-size:12px}.data-table td small{display:block;color:var(--muted);margin-top:4px}.quality-pill.is-good{color:#69e6a7;background:rgba(46,211,130,.1)}.quality-pill.is-fair{color:#ffd179;background:rgba(255,184,62,.1)}.quality-pill.is-poor{color:#ff8e9d;background:rgba(255,76,99,.1)}.quality-pill.is-unknown{color:var(--muted);background:rgba(255,255,255,.05)}.workflow-columns{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px}.workflow-list{display:grid;gap:8px;align-content:start}.workflow-list a{display:grid;gap:4px;padding:14px;border:1px solid var(--border);border-radius:14px;text-decoration:none;color:var(--text)}.workflow-list a.active{background:rgba(159,88,224,.1);border-color:rgba(187,116,255,.45)}.workflow-list small{color:var(--muted)}.poll-question{padding:18px;border-radius:16px;background:rgba(255,255,255,.025);border:1px solid var(--border);margin:14px 0}.poll-question h3{margin:0 0 5px}.poll-question p{color:var(--muted)}.submission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.submission-card{border:1px solid var(--border);border-radius:18px;padding:20px;background:rgba(255,255,255,.02)}.submission-card h3{margin:5px 0}.submission-card>div>span{color:#c89bf1;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.submission-card p{color:var(--muted)}.submission-file-list{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.submission-file-list a{padding:8px 10px;border-radius:10px;background:rgba(159,88,224,.09);color:#d5b0f7;text-decoration:none}.toolbar-filters{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:900px){.workflow-columns{grid-template-columns:1fr}.submission-grid{grid-template-columns:1fr}}

/* Student analytics */
.row-actions .student-overview-link{padding:6px 9px;border-radius:8px;background:rgba(48,209,88,.1);color:#83e59a;font-weight:700;white-space:nowrap}.row-actions .student-overview-link:hover{background:rgba(48,209,88,.17);color:#fff}
.student-analytics-hero{position:relative;min-height:180px;padding:28px;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;border:1px solid var(--line);border-radius:26px;background:radial-gradient(circle at 76% -10%,rgba(191,90,242,.16),transparent 35%),linear-gradient(145deg,#19191d,#101012);box-shadow:0 22px 65px rgba(0,0,0,.32)}
.student-analytics-hero::after{position:absolute;right:-80px;bottom:-130px;width:290px;height:290px;border:1px solid rgba(191,90,242,.12);border-radius:50%;box-shadow:0 0 0 38px rgba(191,90,242,.025),0 0 0 78px rgba(94,92,230,.015);content:""}
.student-analytics-avatar{position:relative;z-index:1;width:84px;height:84px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:27px;background:linear-gradient(145deg,#30233b,#1b1a23);color:#f0d9ff;font-size:25px;font-weight:800;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.student-analytics-identity{position:relative;z-index:1;min-width:0}.student-analytics-identity>span{color:#b888db;font-size:9px;font-weight:800;letter-spacing:.1em}.student-analytics-identity h2{margin:7px 0 6px;font-size:31px;line-height:1.06;letter-spacing:-.05em}.student-analytics-identity p{margin:0;color:#85858c;font-size:11px;overflow-wrap:anywhere}
.student-analytics-last-seen{position:relative;z-index:1;min-width:220px;padding:15px 17px;border:1px solid rgba(255,255,255,.07);border-radius:17px;background:rgba(7,7,9,.42)}.student-analytics-last-seen span,.student-analytics-last-seen strong,.student-analytics-last-seen small{display:block}.student-analytics-last-seen span{color:#75757c;font-size:8px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.student-analytics-last-seen strong{margin-top:7px;font-size:12px}.student-analytics-last-seen small{margin-top:5px;color:#77777e;font-size:9px}
.student-analytics-metrics{margin-top:14px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.student-analytics-metrics article{min-width:0;min-height:125px;padding:17px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;background:rgba(20,20,23,.92)}.student-analytics-metrics span{color:#7f7f86;font-size:9px;font-weight:700}.student-analytics-metrics strong{margin:11px 0 7px;font-size:28px;line-height:1;letter-spacing:-.05em}.student-analytics-metrics small{margin-top:auto;color:#68686f;font-size:9px;line-height:1.4}
.student-analytics-chart-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:14px}.student-chart-card{min-width:0}.student-chart-card>header b{padding:6px 9px;border-radius:999px;background:rgba(191,90,242,.08);color:#b98ad6;font-size:8px;white-space:nowrap}.student-chart-wrap{position:relative;height:290px}
.student-attendance-journey>header{align-items:flex-end}.student-journey-legend{display:flex;align-items:center;gap:6px;color:#77777e;font-size:8px}.student-journey-legend i{width:7px;height:7px;margin-left:8px;border-radius:50%;background:#ff453a}.student-journey-legend i.is-present{background:#30d158}.student-journey-legend i.is-partial{background:#ff9f0a}
.student-journey-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px}.student-journey-grid article{min-width:0;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:9px;border:1px solid rgba(255,255,255,.06);border-radius:14px;background:rgba(255,255,255,.022)}.student-journey-grid article.is-present{border-color:rgba(48,209,88,.14);background:rgba(48,209,88,.045)}.student-journey-grid article.is-partial{border-color:rgba(255,159,10,.15);background:rgba(255,159,10,.045)}.student-journey-grid time{display:grid;place-items:center;align-content:center;width:38px;height:43px;border-radius:11px;background:rgba(255,255,255,.045)}.student-journey-grid time strong{font-size:16px;line-height:1}.student-journey-grid time span{margin-top:4px;color:#77777e;font-size:7px;font-weight:750}.student-journey-grid article>div{min-width:0;text-align:right}.student-journey-grid article>div strong,.student-journey-grid article>div span{display:block}.student-journey-grid article>div strong{font-size:15px}.student-journey-grid article>div span{margin-top:3px;color:#76767d;font-size:7px;text-transform:uppercase}.student-journey-grid .is-present>div strong{color:#75df90}.student-journey-grid .is-partial>div strong{color:#e5b35a}.student-journey-grid .is-absent>div strong{color:#ff8c85}
.student-lesson-history .table-scroll table{min-width:930px}.student-lesson-history td{max-width:none}.student-lesson-history td:nth-child(2){min-width:245px;white-space:normal}.student-lesson-history td strong,.student-lesson-history td small{display:block}.student-lesson-history td small{margin-top:5px;color:#6f6f76;font-size:8px}.student-attendance-status{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(255,69,58,.09);color:#ff8c85;font-size:9px;font-weight:750}.student-attendance-status.is-present{background:rgba(48,209,88,.1);color:#76df90}.student-attendance-status.is-partial{background:rgba(255,159,10,.1);color:#e5b35a}.student-analytics-empty{min-height:210px;display:grid;place-items:center;color:#6f6f76;font-size:11px;text-align:center}
@media(max-width:1180px){.student-analytics-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.student-analytics-chart-grid{grid-template-columns:1fr}}
@media(max-width:760px){.student-analytics-hero{padding:21px;grid-template-columns:auto minmax(0,1fr);gap:15px}.student-analytics-avatar{width:66px;height:66px;border-radius:22px;font-size:20px}.student-analytics-identity h2{font-size:25px}.student-analytics-last-seen{grid-column:1/-1;min-width:0;width:100%}.student-analytics-metrics{grid-template-columns:1fr 1fr}.student-analytics-metrics article:last-child{grid-column:1/-1}.student-chart-wrap{height:255px}.student-attendance-journey>header{align-items:flex-start;flex-direction:column}.student-journey-grid{display:flex;padding-bottom:5px;overflow-x:auto}.student-journey-grid article{flex:0 0 112px}}
@media(max-width:430px){.student-analytics-metrics{grid-template-columns:1fr}.student-analytics-metrics article:last-child{grid-column:auto}.student-chart-wrap{height:225px}}
