.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:22px;background:radial-gradient(ellipse at 50% 0%,#e6f4ee 0,transparent 55%),var(--bg)}
.auth-card{background:#fff;width:min(440px,100%);border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 15px 45px #20365712}
.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:26px}.auth-brand b,.auth-brand small{display:block}.auth-brand b{font-size:15px}.auth-brand small{color:#8390a3;font-size:11px;margin-top:2px}
.auth-card h1{font-size:21px;margin:0 0 5px}.auth-card>p{font-size:12px;color:#8491a2;line-height:1.8;margin:0 0 18px}.auth-form{display:grid;gap:12px}
.auth-form>label,.auth-form label{display:grid;gap:5px;color:#5c6b80;font-size:11px;font-weight:700}.auth-form input{height:42px;border:1px solid #e5e9ef;border-radius:8px;padding:0 11px;outline:0;font-size:12px;font-weight:400;direction:ltr;text-align:left}.auth-form input:focus,.inline-form input:focus{border-color:#75b6a3;box-shadow:0 0 0 3px #197a6214}.auth-form .btn{height:42px;margin-top:4px}.auth-switch{display:block;margin:14px auto 0}.auth-foot{border-top:1px solid var(--line);padding-top:13px;margin-top:16px;color:#96a0ad;font-size:10px;line-height:1.8;text-align:center}
.inline-form{display:flex;gap:9px}.inline-form input{height:40px;max-width:250px;border:1px solid var(--line);border-radius:8px;padding:0 11px;outline:0;text-transform:uppercase;direction:ltr;text-align:left}
.quiz-form{max-width:800px}.question-box{border:0;border-bottom:1px solid var(--line);margin:0;padding:20px 2px}.question-box legend{font-weight:700;font-size:14px;margin-bottom:10px}.answer-option{display:flex;align-items:center;gap:9px;padding:9px 11px;margin:5px 0;border:1px solid var(--line);border-radius:8px;cursor:pointer;font-size:12px}.answer-option:has(input:checked){border-color:#66aa94;background:#f0f8f4}.answer-option input{accent-color:#197a62}.quiz-form>.btn{margin-top:17px;margin-left:6px}
.result-card{text-align:center;max-width:500px;margin:45px auto;padding:35px}.result-mark{width:58px;height:58px;display:grid;place-items:center;background:#e8f5f0;color:#197a62;border-radius:50%;font-size:28px;margin:0 auto 14px}.result-card h1{font-size:22px}.result-card p{color:#8692a2;font-size:12px}.result-number{font-size:42px;font-weight:800;color:#197a62;margin:15px 0 4px}.result-number small{font-size:15px;color:#96a2b0}
.question-editor{border:1px solid var(--line);border-radius:10px;padding:13px;margin:12px 0}.question-editor legend{font-weight:700;font-size:11px;color:#48596e;padding:0 5px}.question-editor textarea{border:1px solid var(--line);border-radius:8px;padding:8px;width:100%;resize:vertical}.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:9px 0}.question-editor input,.question-editor select{height:36px}
.invite-code{font-size:24px;direction:ltr;text-align:center;letter-spacing:3px;font-weight:800;color:#197a62;background:#eef7f3;border-radius:10px;padding:14px;margin:14px 0}.exam-card code,.student-row code{font-size:11px;direction:ltr;display:inline-block;letter-spacing:1px;color:#197a62;background:#edf7f3;padding:4px 7px;border-radius:6px}.report-actions{flex-wrap:wrap}
.billing-alert{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 17px;margin:0 0 16px;border-radius:11px;border:1px solid #f2dfbd;background:#fff9ed;color:#8d6126}.billing-alert b{font-size:12px}.billing-alert small{display:block;font-size:10px;color:#a6814c;margin-top:4px}.billing-alert strong{white-space:nowrap;font-size:14px}.billing-alert-late{background:#fff0f1;border-color:#f4d4d7;color:#a9404b}.billing-alert-late small{color:#bc737a}.status-overdue{background:#fff0f1;color:#c14955}.table-scroll{overflow:auto}.table-scroll .data-table{min-width:760px}.student-row .student-stat{min-width:130px}
@media(max-width:480px){.auth-card{padding:22px}.inline-form{flex-direction:column}.inline-form input{max-width:none;width:100%}.option-grid{grid-template-columns:1fr}}
@media(max-width:600px){.billing-alert{align-items:flex-start;flex-direction:column}.student-row .student-stat{min-width:90px}}
