.login-shell{position:fixed;inset:0;display:flex;overflow:hidden;background:#fdfbf7}.login-left,.login-right{width:50vw;height:100vh}.login-left{display:grid;place-items:center;padding:24px;overflow-y:auto}.error-message{color:#ff4d4f;margin-top:10px;font-size:14px;text-align:center}.login-left-inner{display:flex;flex-direction:column;align-items:center;gap:20px;width:100%;max-width:420px;padding-top:48px;padding-bottom:24px}.login-home-link{appearance:none;border:1px solid rgba(201,164,55,.45);background:#ffffffeb;color:#6b4c1e;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:700;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;box-shadow:0 10px 22px #c9a4371f}.login-home-link:hover{transform:translateY(-1px);background:#fff7e3;box-shadow:0 14px 26px #c9a4372e}.login-home-link--floating{position:fixed;top:24px;left:24px;z-index:5}.login-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;transform:translateY(-8px)}.login-logo{width:110px;height:auto;display:block}.login-institution strong{display:block;font-size:15px;color:#6b4c1e;margin-top:6px;letter-spacing:.2px}.login-tagline{font-size:13px;color:#c9a437;opacity:.95;margin-top:2px}.login-card{width:min(360px,90%);background:#fff;border-radius:12px;padding:24px;border:2px solid #c9a437;box-shadow:0 10px 25px #00000014;text-align:center}.login-card h1{margin:0 0 16px;font-size:22px;color:#6b4c1e}.login-first-access-copy{margin:0 0 16px;color:#6b4c1e;font-size:.92rem;line-height:1.5}.login-card input{width:100%;box-sizing:border-box;height:40px;margin:8px 0 12px;padding:0 12px;border:1px solid #d1d5db;border-radius:8px;outline:none;background:#fdfbf7;color:#000;transition:box-shadow .12s,border-color .12s}.login-card input:focus{border-color:#c9a437;box-shadow:0 0 0 3px #c9a43740}.login-password-field{display:grid;gap:0}.login-password-input{position:relative;width:100%}.login-password-input input{margin-bottom:12px;padding-right:46px}.login-password-toggle{position:absolute;top:50%;right:12px;transform:translateY(calc(-50% - 6px));width:28px;height:28px;border:0;background:transparent;color:#8b6b1d;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.login-password-toggle:hover{color:#6b4c1e}.login-password-field .password-requirements{margin:-2px 0 10px;text-align:left}.login-inline-error{margin:-2px 0 12px;text-align:left;font-size:.85rem;color:#b91c1c}.login-btn{width:100%;height:42px;border:0;border-radius:8px;font-weight:600;background:#e5e5e5;color:#888;cursor:not-allowed;transition:all .2s ease}.login-btn.active{background:#c9a437;color:#000;cursor:pointer}.login-btn.active:hover{background:#6b4c1e;color:#fff}.login-btn:active{transform:scale(.99)}.login-social-block{margin-top:14px;display:grid;gap:12px}.login-social-divider{position:relative;display:flex;justify-content:center;align-items:center}.login-social-divider:before{content:"";position:absolute;left:0;right:0;top:50%;border-top:1px solid rgba(201,164,55,.25);transform:translateY(-50%)}.login-social-divider span{position:relative;z-index:1;padding:0 12px;background:#fff;color:#8b6b1d;font-size:.82rem;font-weight:700}.login-google-wrap{position:relative;width:100%;min-width:0;min-height:48px;padding:8px 10px;border-radius:16px;background:linear-gradient(180deg,#fffdf8,#fbf5e7);border:1px solid rgba(201,164,55,.22);box-shadow:inset 0 1px #fffc;box-sizing:border-box}.login-google-visual{display:grid;grid-template-columns:26px 1fr;align-items:center;gap:12px;width:100%;min-height:48px;padding:0 16px;border-radius:16px;background:#fff;border:1px solid rgba(201,164,55,.22);box-shadow:inset 0 1px #fffc;color:#2b3a55;box-sizing:border-box}.login-google-visual__icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px}.login-google-wrap>div,.login-google-wrap iframe{width:100%!important;max-width:100%!important}.login-google-wrap>div:last-child{position:absolute;inset:0;opacity:.01;border-radius:16px;overflow:hidden}.login-card .forgot{display:block;margin-top:12px;font-size:.875rem;color:#c9a437;text-decoration:none;cursor:pointer}.login-card .forgot:hover{color:#6b4c1e}.login-right{background-size:cover;background-position:center;background-repeat:no-repeat}@media(max-width:992px){.login-right{display:none}.login-left{width:100vw}.login-shell{position:relative}.login-left-inner{margin-top:20px;margin-bottom:20px}}@media(max-width:480px){.login-logo{width:90px}.login-card{padding:18px}.login-google-wrap{padding:6px}.login-card{width:min(100%,360px)}}.login-overlay{position:fixed;inset:0;background:#fff9;display:flex;justify-content:center;align-items:center;z-index:999}.loader{background:#fff;border:2px solid #c9a437;color:#6b4c1e;padding:12px 28px;border-radius:10px;font-weight:600;box-shadow:0 4px 20px #0000001a}.feedback-toast-stack{position:fixed;top:20px;right:20px;z-index:48000;display:flex;flex-direction:column;gap:12px;width:min(380px,calc(100vw - 32px))}.feedback-toast{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:14px;border-radius:18px;background:#fffffff5;border:1px solid rgba(202,165,64,.18);box-shadow:0 18px 42px #0f172a24;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.feedback-toast--success{border-color:#bbf7d0}.feedback-toast--error{border-color:#11182738}.feedback-toast--warning{border-color:#fde68a}.feedback-toast__icon{width:38px;height:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#f8fafc;color:#8b5e00}.feedback-toast--success .feedback-toast__icon{background:#ecfdf3;color:#15803d}.feedback-toast--error .feedback-toast__icon{background:#11182714;color:#111827}.feedback-toast--warning .feedback-toast__icon{background:#fffbeb;color:#b45309}.feedback-toast__body strong{display:block;margin-bottom:4px;color:#0f172a}.feedback-toast__body p{margin:0;color:#475569;line-height:1.45}.feedback-toast__close{border:0;background:transparent;color:#64748b;cursor:pointer;padding:2px}.feedback-confirm__overlay{position:fixed;inset:0;z-index:48100;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a7a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.feedback-confirm{width:min(460px,100%);overflow:hidden;border-radius:24px;background:linear-gradient(180deg,#fffdf8,#f6f1e4);border:1px solid rgba(202,165,64,.18);box-shadow:0 28px 60px #0f172a33}.feedback-confirm__header{display:flex;align-items:flex-start;gap:14px;padding:22px 24px 18px;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c);border-bottom:1px solid rgba(202,165,64,.18)}.feedback-confirm__header--center{flex-direction:column;align-items:center;text-align:center}.feedback-confirm__badge{width:44px;height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#fff8e6;color:#b2871c;margin-bottom:16px}.feedback-confirm__badge--danger{background:#ffffff14;color:#f1cf67}.feedback-confirm__badge--success{background:#ecfdf3;color:#15803d}.feedback-confirm__badge--error{background:#ffffff14;color:#f1cf67}.feedback-confirm__badge--warning{background:#fffbeb;color:#b45309}.feedback-confirm__badge--info{background:#eff6ff;color:#2563eb}.feedback-confirm h3{margin:0 0 6px;color:#fff8ea;font-size:1.2rem;font-weight:800}.feedback-confirm p{margin:0;color:#fff8eac2;line-height:1.55}.feedback-confirm__actions{display:flex;gap:12px;justify-content:flex-end;padding:20px 24px 24px}.feedback-confirm__actions--single{justify-content:center}.feedback-confirm--notice{width:min(420px,100%)}.feedback-btn{min-height:44px;border:1px solid transparent;border-radius:14px;padding:0 18px;font-weight:700;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.feedback-btn:hover{transform:translateY(-1px)}.feedback-btn--secondary{background:#fff;color:#111827;border-color:#caa54033}.feedback-btn--primary{background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;box-shadow:0 12px 24px #b98b1f33}.feedback-btn--danger{background:#111827;color:#fff8ea;border-color:#111827}@media(max-width:640px){.feedback-toast-stack{left:16px;right:16px;width:auto}.feedback-confirm__actions{flex-direction:column-reverse}.feedback-confirm__overlay{align-items:flex-start;padding:12px}.feedback-btn{width:100%}}.data-policy-loading{min-height:100vh;display:grid;place-items:center;background:#0f0f10;color:#fff8ea;font-size:1rem}.data-policy-page{min-height:100vh;padding:32px 24px 48px;background:radial-gradient(circle at top,rgba(201,164,55,.12),transparent 28%),linear-gradient(180deg,#fffdf8,#f7f2e7)}.data-policy-page__inner{width:min(960px,100%);margin:0 auto;display:grid;gap:24px}.data-policy-exit{appearance:none;border:1px solid rgba(201,164,55,.45);background:#ffffffeb;color:#6b4c1e;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 10px 22px #c9a4371f;margin-bottom:20px}.data-policy-header{display:flex;align-items:center;gap:18px;padding:8px 4px 0}.data-policy-header__logo{width:96px;height:auto;display:block;flex-shrink:0}.data-policy-header__copy{display:grid;gap:6px}.data-policy-header__eyebrow{font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:#8b6b1d;font-weight:700}.data-policy-header__institution strong{display:block;font-size:1.75rem;color:#2b1e08;margin-bottom:4px}.data-policy-header__institution div{color:#8b6b1d;font-size:1rem}.data-policy-card{width:100%;background:#fffffff2;border-radius:24px;padding:28px;border:1px solid rgba(201,164,55,.24);box-shadow:0 20px 44px #231c0c14}.data-policy-card__intro h1{margin:0 0 12px;color:#2b1e08;font-size:clamp(1.8rem,3vw,2.3rem)}.data-policy-intro{color:#5b6478;line-height:1.6;margin-bottom:18px}.data-policy-letter{border:1px solid rgba(17,24,39,.12);border-radius:18px;padding:22px;background:linear-gradient(180deg,#fffefb,#f8f5ed);display:grid;gap:14px;margin-bottom:18px;text-align:left}.data-policy-letter__meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#111827}.data-policy-letter__meta span{color:#6b7280;font-size:.9rem}.data-policy-letter p{margin:0;color:#334155;line-height:1.8;text-align:left}.data-policy-letter__signer{padding-top:12px;border-top:1px solid rgba(17,24,39,.08);display:grid;gap:4px}.data-policy-letter__signer strong{color:#111827}.data-policy-letter__signer span{color:#475569}.data-policy-form{display:grid;gap:16px}.data-policy-mode-switch{display:flex;gap:10px;flex-wrap:wrap}.data-policy-mode{border:1px solid rgba(17,24,39,.12);background:#fff;color:#111827;min-height:44px;border-radius:14px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-weight:700}.data-policy-mode.is-active{background:#111827;color:#fff8ea}.data-policy-signature-pad{border:1px solid rgba(17,24,39,.12);border-radius:18px;background:#fff;padding:12px}.data-policy-signature-pad canvas{width:100%;min-height:220px;background:#fff;border:1px dashed rgba(17,24,39,.2);border-radius:14px;touch-action:none}.data-policy-signature-pad__actions{margin-top:10px;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;color:#64748b;font-size:.92rem}.data-policy-link{border:0;background:transparent;color:#111827;cursor:pointer;font-weight:700}.data-policy-upload-box{border:1px solid rgba(17,24,39,.12);border-radius:18px;background:#fff;padding:16px;display:grid;gap:10px}.data-policy-upload-box input[type=file]{width:100%}.data-policy-upload-box__info{display:inline-flex;align-items:center;gap:8px;color:#475569}.data-policy-checkbox{display:flex;align-items:flex-start;gap:10px;color:#334155;line-height:1.6}.data-policy-checkbox input{margin-top:4px}.data-policy-actions{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}.data-policy-secondary{border:1px solid rgba(17,24,39,.14);background:#fff;color:#111827;min-height:44px;border-radius:14px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-weight:700}.data-policy-submit{border:0;background:#c9a437;color:#18120a;min-height:44px;border-radius:14px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;transition:background .18s ease,color .18s ease}.data-policy-submit:hover:not(:disabled){background:#6b4c1e;color:#fff}.data-policy-submit:disabled{opacity:.72;cursor:not-allowed}@media(max-width:768px){.data-policy-page{padding:20px 14px 32px}.data-policy-header{align-items:flex-start}.data-policy-header__logo{width:76px}.data-policy-header__institution strong{font-size:1.35rem}.data-policy-card{padding:20px}.data-policy-actions{align-items:stretch}.data-policy-secondary,.data-policy-submit{width:100%;justify-content:center}}.admin-attendance-page{padding:28px;min-height:100vh;background:radial-gradient(circle at top right,rgba(201,162,39,.1),transparent 28%),linear-gradient(180deg,#fffdf8,#f6f1e4)}.admin-attendance-hero{margin-bottom:22px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#101010,#1d1d1d 55%,#32260d);border:1px solid rgba(201,162,39,.18);box-shadow:0 22px 42px #0f172a2e}.admin-attendance-hero-copy{margin-bottom:18px}.admin-attendance-badge{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border-radius:999px;background:#fff8ea14;border:1px solid rgba(201,162,39,.24);color:#e7cb73;font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}.admin-attendance-hero-copy h1{margin:0;color:#fff8ea;font-size:clamp(2rem,3vw,2.9rem);line-height:1.05}.admin-attendance-hero-copy p{margin:10px 0 0;color:#fff8eac2;font-size:.96rem;max-width:780px;line-height:1.65}.admin-attendance-hero-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.admin-attendance-action-group{display:flex;gap:12px;align-items:center;margin-left:auto;padding-top:14px}.admin-attendance-input-card{display:flex;flex-direction:column;gap:8px;min-width:220px;padding:16px;border-radius:18px;background:#ffffff14;border:1px solid rgba(255,248,234,.14)}.admin-attendance-input-card label{font-size:.82rem;font-weight:700;color:#fff8eab8}.admin-attendance-input-card select,.admin-attendance-input-card input{height:48px;border:1px solid rgba(201,162,39,.22);border-radius:14px;padding:0 14px;font-size:.95rem;font-weight:700;background:#0a0a0a6b;color:#fff8ea}.admin-attendance-input-card input[type=date]{box-sizing:border-box;width:100%;background:linear-gradient(180deg,#fffdfa,#fffaf2);color:#111827;border:1px solid rgba(201,162,39,.28);color-scheme:light}.admin-attendance-input-card input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.78;filter:invert(16%) sepia(9%) saturate(963%) hue-rotate(180deg) brightness(94%) contrast(91%)}.admin-attendance-input-card input[type=date]::-webkit-date-and-time-value{text-align:left}.admin-attendance-primary-btn,.admin-attendance-secondary-btn{min-height:48px;padding:0 18px;border-radius:14px;font-weight:800;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.admin-attendance-primary-btn{border:none;background:linear-gradient(135deg,#e7cb73,#c9a227);color:#17120a;box-shadow:0 14px 30px #c9a22742}.admin-attendance-primary-btn:hover{transform:translateY(-1px)}.admin-attendance-secondary-btn{background:#fff;color:#111827;-webkit-text-fill-color:#111827;border:1px solid #d7dde6;appearance:none}.admin-attendance-secondary-btn:disabled{color:#8b6b1d;-webkit-text-fill-color:#8b6b1d;opacity:1;border-color:#c9a2273d;background:linear-gradient(180deg,#fffdfa,#f6edd7);cursor:not-allowed;box-shadow:none}.admin-attendance-export-btn:disabled{color:#8b6b1d!important;-webkit-text-fill-color:#8b6b1d!important}.admin-attendance-course-banner{margin-bottom:18px;padding:16px 18px;border-radius:18px;background:#ffffffd6;border:1px solid rgba(201,162,39,.12);color:#334155;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.admin-attendance-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.admin-attendance-summary-card{padding:20px;border-radius:20px;background:#fffffff0;border:1px solid rgba(201,162,39,.12);box-shadow:0 14px 26px #18212f0f}.admin-attendance-summary-card span{display:block;margin-bottom:8px;color:#6b7280;font-size:.82rem;font-weight:700}.admin-attendance-summary-card strong{font-size:2rem;color:#111827}.admin-attendance-summary-card.absent strong{color:#111827}.admin-attendance-summary-card.late strong{color:#6b7280}.admin-attendance-summary-card.justified strong{color:#8b6b1d}.admin-attendance-message{margin-bottom:16px;padding:14px 16px;border-radius:16px;font-weight:700}.admin-attendance-message.success{background:#fffbeffa;color:#8b6b1d;border:1px solid rgba(201,162,39,.26)}.admin-attendance-message.error{background:#111827f5;color:#fff8ea;border:1px solid rgba(201,162,39,.22)}.admin-attendance-empty{border:1px dashed rgba(201,162,39,.2);background:#ffffffc7;color:#6b7280;border-radius:18px;padding:26px;text-align:center;font-weight:700}.admin-attendance-table-section{background:#fffffff5;border:1px solid rgba(201,162,39,.12);border-radius:22px;box-shadow:0 16px 30px #18212f14;overflow:hidden}.admin-attendance-section-header{padding:20px 22px;border-bottom:1px solid #f0ebe0;background:linear-gradient(180deg,#fffef9,#fbf7ef)}.admin-attendance-section-header h3{margin:0;color:#111827;font-size:1.3rem}.admin-attendance-section-header p{margin:8px 0 0;color:#64748b;font-size:.92rem}.admin-attendance-table-wrapper{width:100%;overflow-x:auto;background:#fffef9}.admin-attendance-table{width:100%;border-collapse:collapse;min-width:1120px}.admin-attendance-table thead th{background:#111827;color:#fff8ea;text-align:left;padding:15px 14px;font-size:.84rem;white-space:nowrap}.admin-attendance-table tbody td{padding:15px 14px;border-bottom:1px solid #f0ebe0;vertical-align:middle}.admin-attendance-table tbody tr:hover{background:#fff8ea}.admin-attendance-student-cell{font-weight:800;color:#111827}.admin-attendance-observation-cell{color:#475569;max-width:280px;line-height:1.55}.admin-attendance-status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:96px;min-height:34px;padding:0 12px;border-radius:999px;font-size:.76rem;font-weight:800;border:1px solid transparent}.admin-attendance-status-pill.present{background:#fffbeff5;color:#8b6b1d;border-color:#c9a22747}.admin-attendance-status-pill.absent{background:#111827;color:#fff8ea;border-color:#c9a22733}.admin-attendance-status-pill.late{background:#f3ebdbf5;color:#4b5563;border-color:#c9a2272e}.admin-attendance-status-pill.unregistered{background:#eef2f7;color:#64748b;border-color:#cbd5e1}.admin-attendance-justified{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:32px;padding:0 10px;border-radius:999px;font-size:.76rem;font-weight:800}.admin-attendance-justified.yes{background:#fffbeff5;color:#8b6b1d}.admin-attendance-justified.no{background:#111827;color:#fff8ea}.admin-attendance-file-link{color:#8b5e00;font-weight:800;text-decoration:none}.admin-attendance-file-link:hover{text-decoration:underline}.admin-attendance-muted{color:#94a3b8}.admin-attendance-manage-btn{min-height:40px;border:1px solid #e4d8b4;border-radius:12px;padding:0 14px;font-size:.82rem;font-weight:800;background:#f8f5ec;color:#111827;cursor:pointer}.admin-attendance-manage-btn:hover{background:#efe7d3}.admin-attendance-modal-backdrop{position:fixed;inset:0;background:#080b129e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:4000;padding:18px;overflow-y:auto}.admin-attendance-modal{width:min(780px,94vw);max-height:min(92vh,980px);background:linear-gradient(180deg,#fffef9,#f3ebdb);border-radius:24px;box-shadow:0 30px 70px #00000047;border:1px solid rgba(201,162,39,.18);overflow:hidden;overflow-x:hidden;display:flex;flex-direction:column}.admin-attendance-modal-header{padding:22px 24px;border-bottom:1px solid rgba(201,162,39,.18);display:flex;justify-content:space-between;gap:14px;align-items:flex-start;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c)}.admin-attendance-modal-header h2{margin:0;font-size:1.6rem;color:#fff8ea}.admin-attendance-modal-header p{margin:8px 0 0;color:#fff8eabd;font-size:.92rem}.admin-attendance-close-btn{width:42px;height:42px;border-radius:14px;border:1px solid rgba(201,162,39,.28);background:#ffffff14;cursor:pointer;font-size:18px;color:#fff8ea;padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center}.admin-attendance-modal-body{padding:24px;overflow-y:auto;overflow-x:hidden;flex:1 1 auto;min-height:0}.admin-attendance-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-attendance-form-block{display:flex;flex-direction:column;gap:8px}.admin-attendance-form-block.full{grid-column:1 / -1}.admin-attendance-form-block label{font-size:.92rem;font-weight:800;color:#334155}.admin-attendance-form-block select,.admin-attendance-form-block textarea,.admin-attendance-form-block input[type=file]{width:100%;border:1px solid #e5d8b2;border-radius:16px;padding:12px 14px;font-size:.95rem;background:#ffffffeb;color:#111827}.admin-attendance-form-block textarea{box-sizing:border-box;max-width:100%;display:block;min-height:120px;resize:vertical;caret-color:#111827}.admin-attendance-form-block textarea::placeholder{color:#94a3b8}.admin-attendance-form-block select:focus,.admin-attendance-form-block textarea:focus{outline:none;border-color:#c9a227;box-shadow:0 0 0 4px #c9a2271f}.checkbox-block input{width:20px;height:20px}.admin-attendance-file-row{display:flex;flex-direction:column;gap:8px}.admin-attendance-file-row input[type=file]{box-sizing:border-box;width:100%;max-width:100%;padding:12px 14px;border:1px solid #e5d8b2;border-radius:16px;background:#ffffffeb}.admin-attendance-file-selected{color:#334155;font-weight:700}.admin-attendance-modal-footer{padding:18px 24px;border-top:1px solid rgba(201,162,39,.12);display:flex;justify-content:flex-end;gap:12px;background:transparent;flex-shrink:0}@media(max-width:980px){.admin-attendance-page{padding:20px}.admin-attendance-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-attendance-form-grid{grid-template-columns:1fr}}@media(max-width:720px){.admin-attendance-hero{padding:22px}.admin-attendance-hero-actions,.admin-attendance-input-card,.admin-attendance-primary-btn,.admin-attendance-secondary-btn{width:100%}.admin-attendance-summary-grid{grid-template-columns:1fr}.admin-attendance-course-banner,.admin-attendance-modal-header,.admin-attendance-modal-footer{flex-direction:column;align-items:stretch}.admin-attendance-modal{width:100%}}.admin-attendance-trace-cell{min-width:190px}.admin-attendance-trace{display:grid;gap:4px}.admin-attendance-trace strong{color:#111827;font-size:.92rem}.admin-attendance-trace small{color:#64748b;line-height:1.4}.admin-attendance-trace.admin strong{color:#8b5e00}.admin-attendance-audit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}.admin-attendance-audit-card{padding:18px;border-radius:18px;border:1px solid rgba(201,162,39,.16);background:#ffffffd6;display:grid;gap:8px}.admin-attendance-audit-card.accent{background:linear-gradient(180deg,#fffbeffa,#f4e9ccfa)}.admin-attendance-audit-label{color:#8b5e00;font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.admin-attendance-audit-card strong{color:#111827;font-size:1rem}.admin-attendance-audit-card p{margin:0;color:#64748b;line-height:1.5}.admin-attendance-history-card{margin-top:18px;padding:18px;border-radius:20px;border:1px solid rgba(201,162,39,.16);background:#ffffffdb}.admin-attendance-history-header h3{margin:0;color:#111827;font-size:1.06rem}.admin-attendance-history-header p{margin:8px 0 0;color:#64748b;line-height:1.5}.admin-attendance-history-list{margin-top:16px;display:grid;gap:12px}.admin-attendance-history-item{padding:14px 16px;border-radius:16px;background:#fffef9;border:1px solid rgba(201,162,39,.12);display:grid;gap:8px}.admin-attendance-history-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.admin-attendance-history-top strong{color:#111827}.admin-attendance-history-top span,.admin-attendance-history-meta{color:#64748b;font-size:.85rem}.admin-attendance-history-meta{margin:0}.admin-attendance-history-note{padding:10px 12px;border-radius:12px;background:#f8f5ecf2;color:#334155;line-height:1.5}.admin-attendance-history-changes{margin:0;padding-left:18px;color:#475569;line-height:1.5}.admin-attendance-history-empty{margin-top:16px;padding:16px;border-radius:14px;color:#64748b;border:1px dashed rgba(201,162,39,.2);background:#ffffffbd;text-align:center;font-weight:700}.admin-attendance-readonly-note{min-height:72px;padding:14px 16px;border-radius:16px;border:1px solid rgba(201,162,39,.14);background:#ffffffd6;color:#334155;line-height:1.55}@media(max-width:900px){.admin-attendance-audit-grid{grid-template-columns:1fr}.admin-attendance-history-top{flex-direction:column;align-items:flex-start}}.admin-attendance-export-btn{min-width:180px;background:linear-gradient(180deg,#fffdfa,#f6edd7);color:#8b6b1d;-webkit-text-fill-color:#8b6b1d;border-color:#c9a22752;box-shadow:none}.admin-attendance-export-btn:hover,.admin-attendance-export-btn:focus-visible,.admin-attendance-export-btn:active,.admin-attendance-export-btn:disabled{background:linear-gradient(180deg,#fffdfa,#f6edd7);color:#8b6b1d!important;-webkit-text-fill-color:#8b6b1d!important;border-color:#c9a22752;box-shadow:none;opacity:1;transform:none}.admin-attendance-export-btn:focus-visible{outline:none}@media(max-width:720px){.admin-attendance-action-group{width:100%;margin-left:0;padding-top:0;justify-content:stretch;flex-wrap:wrap}}.course-management{display:flex;flex-direction:column;gap:20px;min-width:0}.course-management__header{padding:28px;border-radius:24px;background:linear-gradient(135deg,#111,#262626);color:#fff9e8;box-shadow:0 24px 48px #1111112e}.course-management__header h2{margin:0 0 8px;font-size:clamp(1.7rem,2vw,2.2rem)}.course-management__header p{margin:0;max-width:760px;line-height:1.6;color:#fff9e8c7}.course-management__eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;color:#fff9e8ad}.course-management__workspace-shell,.course-management__workspace,.course-management__structure-main{display:flex;flex-direction:column;gap:20px}.course-management__course-browser{padding:24px;border-radius:28px;border:1px solid rgba(202,165,64,.16);background:radial-gradient(circle at top right,rgba(212,175,55,.12),transparent 22%),linear-gradient(180deg,#fffef9,#f5efe1);box-shadow:0 18px 40px #18212f0f}.course-management__course-browser-top,.course-management__course-browser-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.course-management__course-browser-top>*,.course-management__course-browser-bar>*,.course-management__workspace-hero>*,.course-management__card-header>*{min-width:0}.course-management__course-browser-top h3{margin:0 0 8px;color:#111827;font-size:clamp(1.35rem,1.6vw,1.8rem)}.course-management__course-browser-top p,.course-management__course-browser-bar p{margin:0;color:#64748b;line-height:1.6}.course-management__course-browser-bar{margin-top:18px;align-items:center}.course-management__course-browser-bar .course-management__search{flex:1;min-width:240px}.course-management__course-browser-bar .course-management__catalog-note{margin-top:0;min-height:48px;display:inline-flex;align-items:center}.course-management__course-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,320px);gap:14px;margin-top:20px;overflow-x:auto;padding-bottom:6px}.course-management__course-tab{display:flex;flex-direction:column;gap:14px;padding:18px;border-radius:24px;border:1px solid rgba(202,165,64,.12);background:#ffffffd1;min-height:146px}.course-management__course-tab.is-active{border-color:#caa54057;background:linear-gradient(180deg,#fffdfa,#fff7e4);box-shadow:0 16px 28px #d4af3724}.course-management__course-tab-main{width:100%;border:0;background:transparent;padding:0;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:14px}.course-management__course-tab-copy strong{display:block;margin-bottom:6px;color:#111827;font-size:1.05rem}.course-management__course-tab-copy span,.course-management__course-tab-meta small{color:#64748b}.course-management__course-tab-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.course-management__course-tab-meta small{font-weight:700}.course-management__course-tab-actions{display:flex;flex-wrap:wrap;gap:10px}.course-management__workspace{min-width:0}.course-management__card,.course-management__workspace-hero,.course-management__placeholder,.course-management__state{background:#ffffffeb;border:1px solid rgba(202,165,64,.16);border-radius:24px;padding:22px;box-shadow:0 18px 40px #18212f0f}.course-management__card--fill{min-height:0}.course-management__card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.course-management__card-header h3,.course-management__workspace-hero h3,.course-management__placeholder h3{margin:0 0 6px;color:#111827}.course-management__card-header p,.course-management__placeholder p{margin:0;color:#6b7280;line-height:1.5}.course-management__mini-btn,.course-management__secondary-btn,.course-management__danger-btn,.course-management__icon-btn,.course-management__primary-btn{border:0;border-radius:14px;cursor:pointer;font-weight:700;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.course-management__mini-btn,.course-management__secondary-btn,.course-management__icon-btn{background:#eef2f7;color:#0f172a}.course-management__mini-btn,.course-management__secondary-btn{min-height:42px;padding:0 16px;display:inline-flex;align-items:center;gap:8px}.course-management__danger-btn{min-height:42px;padding:0 16px;background:#111827;color:#fff8ea;border:1px solid #111827;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1;white-space:nowrap}.course-management__danger-btn svg{display:block;flex:0 0 auto}.course-management__icon-btn{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center}.course-management__icon-btn.is-danger{background:#11182714;color:#111827}.course-management__primary-btn{min-height:44px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;box-shadow:0 12px 24px #b98b1f33}.course-management__primary-btn--compact{min-height:42px;padding:0 16px}.course-management__primary-btn:hover,.course-management__secondary-btn:hover,.course-management__danger-btn:hover,.course-management__icon-btn:hover,.course-management__mini-btn:hover{transform:translateY(-1px)}.course-management__form,.course-management__stack-form{display:flex;flex-direction:column;gap:14px}.course-management__modal .course-management__form,.course-management__modal .course-management__stack-form,.course-management__modal .course-management__student-table-wrap,.course-management__modal .course-management__empty--large{padding:22px 24px 24px}.course-management__field{display:flex;flex-direction:column;gap:8px}.course-management__field span{font-size:.9rem;font-weight:700;color:#334155}.course-management__field input,.course-management__field select,.course-management__search input,.course-management__inline-form input,.course-management__stack-form input,.course-management__stack-form select,.course-management__stack-form textarea,.course-management__inline-form textarea,.course-management__indicator-item textarea,.course-management__period-form select{width:100%;box-sizing:border-box;min-height:44px;border:1px solid #dbe3ec;border-radius:14px;background:#fff;padding:11px 13px;color:#0f172a;transition:border-color .18s ease,box-shadow .18s ease}.course-management__field select,.course-management__stack-form select,.course-management__period-form select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:42px;background-image:linear-gradient(45deg,transparent 50%,#8b5e00 50%),linear-gradient(135deg,#8b5e00 50%,transparent 50%);background-position:calc(100% - 22px) calc(50% - 3px),calc(100% - 16px) calc(50% - 3px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.course-management__inline-form textarea,.course-management__stack-form textarea,.course-management__indicator-item textarea{min-height:92px;resize:vertical}.course-management__field input:focus,.course-management__field select:focus,.course-management__search input:focus,.course-management__inline-form input:focus,.course-management__stack-form input:focus,.course-management__stack-form select:focus,.course-management__stack-form textarea:focus,.course-management__inline-form textarea:focus,.course-management__indicator-item textarea:focus,.course-management__period-form select:focus{outline:none;border-color:#d4af37;box-shadow:0 0 0 4px #d4af371f}.course-management__error{padding:12px 14px;border-radius:14px;background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;font-weight:600}.course-management__form-actions,.course-management__course-actions,.course-management__indicator-actions{display:flex;gap:10px;flex-wrap:wrap}.course-management__search{display:flex;align-items:center;gap:10px;margin-bottom:14px;border:1px solid #e2e8f0;border-radius:16px;padding:0 12px;background:#f8fafc}.course-management__search svg{color:#64748b}.course-management__search input{border:0;background:transparent;padding-left:0;padding-right:0}.course-management__course-list,.course-management__scroll-panel,.course-management__student-list,.course-management__indicator-list{min-height:0;max-height:520px;overflow:auto;display:flex;flex-direction:column;gap:12px}.course-management__course-card,.course-management__subject-item,.course-management__simple-row,.course-management__assignment-item,.course-management__indicator-item{border:1px solid #e5e7eb;border-radius:18px;background:#fff}.course-management__course-card.is-active{border-color:#d4af37;background:linear-gradient(180deg,#fffdfa,#fff7e4);box-shadow:0 16px 28px #d4af3724}.course-management__course-card,.course-management__course-main{overflow:hidden}.course-management__course-main:focus,.course-management__course-main:focus-visible{outline:none;box-shadow:none}.course-management__course-main,.course-management__subject-item{width:100%;border:0;background:transparent;text-align:left;cursor:pointer}.course-management__course-main{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px}.course-management__course-badges{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.course-management__course-main strong,.course-management__subject-item strong{display:block;color:#111827}.course-management__course-main span,.course-management__course-main small,.course-management__subject-item span,.course-management__simple-row span{color:#64748b}.course-management__course-actions{padding:0 16px 16px;justify-content:flex-end}.course-management__selected-pill,.course-management__selected-chip,.course-management__selected-empty{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;font-size:.82rem;font-weight:700}.course-management__selected-pill{background:#d8b75a;color:#18120a}.course-management__catalog-note{padding:16px 18px;border-radius:18px;background:linear-gradient(180deg,#fffdfa,#fff7e4);color:#8b5e00;line-height:1.55;border:1px solid rgba(202,165,64,.18)}.course-management__action-pill{min-height:38px;padding:0 14px;border:1px solid #e2e8f0;border-radius:999px;background:#f8fafc;color:#0f172a;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:700;line-height:1;white-space:nowrap}.course-management__action-pill svg{display:block;flex:0 0 auto}.course-management__action-pill.is-active{background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;border-color:transparent}.course-management__action-pill.is-danger{background:#111827;color:#fff8ea;border-color:#111827}.course-management__action-pill:disabled{background:#e5e7eb;color:#64748b;border-color:#d1d5db;cursor:not-allowed;opacity:.78}.course-management__placeholder,.course-management__state{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.course-management__placeholder svg{color:#b2871c;margin-bottom:12px}.course-management__workspace-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.course-management__hero-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.course-management__hero-meta span{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:#fff8e6;color:#8b5e00;font-weight:700;font-size:.88rem}.course-management__workspace-tabs{display:flex;gap:10px;flex-wrap:wrap}.course-management__workspace-hero--section{align-items:center}.course-management__structure-shell{display:flex;flex-direction:column;gap:18px}.course-management__section-copy{margin:10px 0 0;max-width:720px;color:#64748b;line-height:1.6}.course-management__section-tabs{display:flex;gap:10px;flex-wrap:wrap}.course-management__section-tabs button{min-height:46px;padding:0 18px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;cursor:pointer;font-weight:800;color:#475569}.course-management__section-tabs button.is-active{background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;border-color:transparent;box-shadow:0 12px 24px #b98b1f2e}.course-management__section-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.course-management__overview-card{text-align:left;border:1px solid rgba(202,165,64,.18);border-radius:22px;background:linear-gradient(180deg,#fffdfa,#fff7e4);padding:20px;cursor:pointer;box-shadow:0 16px 34px #18212f0f;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.course-management__overview-card:hover{transform:translateY(-2px);box-shadow:0 20px 36px #18212f1a}.course-management__overview-card.is-active{border-color:#d4af37;box-shadow:0 22px 42px #b98b1f29}.course-management__overview-kicker{display:inline-block;margin-bottom:10px;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8b5e00}.course-management__overview-card strong{display:block;font-size:1.1rem;color:#111827;margin-bottom:8px}.course-management__overview-card p,.course-management__overview-card small{margin:0;color:#5b6472;line-height:1.55}.course-management__overview-card small{display:block;margin-top:14px;font-weight:700}.course-management__workspace-tabs button{min-height:44px;padding:0 16px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;cursor:pointer;font-weight:700;color:#334155}.course-management__workspace-tabs button.is-active{background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;border-color:transparent}.course-management__team-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:20px}.course-management__team-card{display:flex;flex-direction:column;gap:18px}.course-management__team-summary,.course-management__indicator-stage-header{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.course-management__summary-chip{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:18px;background:linear-gradient(180deg,#fffdfa,#fff7e4);border:1px solid rgba(202,165,64,.18)}.course-management__summary-chip svg{color:#8b5e00;margin-top:1px}.course-management__summary-chip strong,.course-management__student-card-body strong{display:block;color:#111827}.course-management__summary-chip span,.course-management__student-card-body small{color:#64748b}.course-management__team-footer{margin-top:auto;padding-top:18px;border-top:1px solid #e8edf3;display:flex;flex-direction:column;gap:14px}.course-management__team-footer p{margin:0;color:#64748b;line-height:1.5}.course-management__students-toolbar{display:flex;flex-direction:column;gap:14px;margin-bottom:14px}.course-management__search--compact{margin-bottom:0}.course-management__selected-strip{display:flex;flex-wrap:wrap;gap:8px}.course-management__selected-chip{background:#fef3c7;color:#8b5e00}.course-management__selected-chip.is-muted,.course-management__selected-empty{background:#f1f5f9;color:#64748b}.course-management__student-list{border:1px solid #edf2f7;border-radius:18px;padding:10px;background:#fcfcfd}.course-management__student-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.course-management__student-card{position:relative;border:1px solid #e5e7eb;border-radius:18px;background:#fff;padding:14px;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.course-management__student-card:hover{transform:translateY(-1px);border-color:#d4af37;box-shadow:0 12px 24px #d4af371a}.course-management__student-card input{position:absolute;inset:0;opacity:0;cursor:pointer}.course-management__student-card.is-selected{border-color:#d4af37;background:linear-gradient(180deg,#fffdfa,#fff7e4);box-shadow:0 16px 28px #d4af371f}.course-management__student-card-body{display:flex;align-items:center;gap:12px}.course-management__student-check{flex:0 0 auto;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid #dbe3ec;background:#fff;color:transparent}.course-management__student-card.is-selected .course-management__student-check{background:#b98b1f;border-color:#b98b1f;color:#fff}.course-management__structure-layout,.course-management__section-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}.course-management__section-panel--split,.course-management__structure-main{display:grid;grid-template-columns:340px minmax(0,1fr);gap:20px;align-items:start}.course-management__structure-card{min-height:0}.course-management__stage-card{min-height:560px}.course-management__stage-intro{margin-bottom:16px}.course-management__subject-group{display:flex;flex-direction:column;gap:10px}.course-management__subject-group-title{font-size:.86rem;font-weight:800;color:#8b5e00;text-transform:uppercase;letter-spacing:.08em}.course-management__subject-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px}.course-management__subject-item.is-active{border-color:#d4af37;background:#fff8e6}.course-management__subject-chevron{color:#8b5e00;font-weight:800}.course-management__simple-row,.course-management__assignment-item,.course-management__subject-detail-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px}.course-management__subject-detail-header{padding:0;margin-bottom:16px}.course-management__subject-detail-header h4{margin:0 0 4px;color:#111827}.course-management__subject-detail-header p{margin:0;color:#64748b}.course-management__inline-form{display:flex;gap:10px;margin-top:16px}.course-management__inline-form--column{flex-direction:column}.course-management__inline-form>*:first-child{flex:1}.course-management__period-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.course-management__period-card{border:1px solid #e5e7eb;border-radius:18px;padding:14px;background:#fcfcfd}.course-management__period-title{font-weight:800;color:#0f172a;margin-bottom:12px}.course-management__period-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-bottom:12px}.course-management__assignment-list{display:flex;flex-direction:column;gap:8px}.course-management__indicator-bank .course-management__indicator-list{max-height:640px}.course-management__indicator-bank{padding-top:26px}.course-management__indicator-item{padding:14px}.course-management__indicator-item p{margin:0 0 12px;white-space:pre-wrap;color:#334155;line-height:1.5}.course-management__flow-shell,.course-management__structure-shell{display:flex;flex-direction:column;gap:22px}.course-management__flow-hero,.course-management__structure-hero{background:linear-gradient(180deg,#fffef9,#f5efe1)}.course-management__flow-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.course-management__flow-metric{padding:18px 20px;border-radius:22px;background:#ffffffd1;border:1px solid rgba(202,165,64,.16);box-shadow:0 14px 28px #18212f0d}.course-management__flow-metric span{display:block;margin-bottom:8px;color:#8b5e00;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.course-management__flow-metric strong{color:#111827;font-size:1rem}.course-management__flow-grid,.course-management__structure-grid{display:grid;gap:20px;align-items:start}.course-management__flow-grid{grid-template-columns:360px minmax(0,1fr)}.course-management__structure-grid{grid-template-columns:minmax(0,1fr)}.course-management__structure-grid--split{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}.course-management__flow-panel,.course-management__structure-section{display:flex;flex-direction:column;gap:18px}.course-management__flow-panel--wide{min-width:0}.course-management__flow-panel-header,.course-management__structure-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.course-management__flow-panel-header h3,.course-management__structure-section-header h3{margin:0 0 6px}.course-management__flow-panel-header p,.course-management__structure-section-header p{margin:0;color:#64748b;line-height:1.6}.course-management__flow-step{margin:0 0 8px;color:#8b5e00;font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.course-management__teacher-highlight{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:20px;background:linear-gradient(180deg,#fffdfa,#fff7e4);border:1px solid rgba(202,165,64,.18)}.course-management__teacher-highlight svg{color:#8b5e00;flex-shrink:0}.course-management__teacher-highlight strong,.course-management__student-meta strong,.course-management__area-card strong,.course-management__subject-record-main strong,.course-management__indicator-subject-card strong,.course-management__period-card-header strong{display:block;color:#111827}.course-management__teacher-highlight span,.course-management__student-meta span,.course-management__area-card span,.course-management__subject-record-main span,.course-management__indicator-subject-card span{color:#64748b}.course-management__student-selection-summary{display:flex;flex-direction:column;gap:12px}.course-management__student-list-modern{display:flex;flex-direction:column;gap:12px;min-width:0;max-height:620px;overflow:auto;padding-right:4px}.course-management__student-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-radius:20px;border:1px solid #e8edf3;background:#fff;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.course-management__student-row:hover{transform:translateY(-1px);box-shadow:0 16px 30px #18212f0f}.course-management__student-row.is-selected,.course-management__subject-record.is-active,.course-management__indicator-subject-card.is-active,.course-management__period-card{border-color:#d4af37;background:linear-gradient(180deg,#fffdfa,#fff7e4);box-shadow:0 14px 28px #d4af371f}.course-management__student-toggle{min-height:42px;padding:0 16px;border-radius:14px;border:1px solid #e2e8f0;background:#fff;color:#334155;cursor:pointer;font-weight:700;flex-shrink:0}.course-management__student-toggle.is-selected{border-color:transparent;background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a}.course-management__areas-grid,.course-management__indicator-subject-grid,.course-management__indicator-assignment-board{display:grid;gap:14px}.course-management__areas-grid,.course-management__indicator-subject-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.course-management__area-card,.course-management__indicator-subject-card,.course-management__subject-record{border:1px solid #e2e8f0;border-radius:20px;background:#fff;padding:16px 18px}.course-management__area-card,.course-management__period-indicator-item{display:flex;align-items:center;justify-content:space-between;gap:12px}.course-management__indicator-subject-card,.course-management__subject-record{text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.course-management__indicator-subject-card:hover,.course-management__subject-record:hover{transform:translateY(-1px);box-shadow:0 14px 28px #18212f0f}.course-management__indicator-subject-card small{color:#8b5e00;font-size:.78rem;font-weight:700}.course-management__subjects-browser,.course-management__subject-detail-card{display:flex;flex-direction:column;gap:16px}.course-management__period-card{padding:18px;border-radius:22px}.course-management__period-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.course-management__period-indicator-list{display:flex;flex-direction:column;gap:10px}.course-management__period-indicator-item{padding:14px 16px;border-radius:16px;background:#ffffffbd;border:1px solid rgba(202,165,64,.14)}.course-management__period-indicator-item span{color:#334155;line-height:1.5}.course-management__layout{grid-template-columns:minmax(320px,360px) minmax(0,1fr);gap:24px}.course-management__layout.is-course{grid-template-columns:minmax(340px,390px) minmax(0,1fr)}.course-management__catalog{position:sticky;top:18px}.course-management__catalog>.course-management__card:first-child{background:linear-gradient(135deg,#131313,#1d1d1d 60%,#32260d);color:#fff8ea;border-color:#caa5402e}.course-management__catalog>.course-management__card:first-child .course-management__card-header h3,.course-management__catalog>.course-management__card:first-child .course-management__card-header p{color:inherit}.course-management__catalog>.course-management__card:first-child .course-management__card-header p{color:#fff8eabd}.course-management__catalog>.course-management__card:first-child .course-management__summary-chip{background:#ffffff14;border-color:#caa54038}.course-management__catalog>.course-management__card:first-child .course-management__summary-chip strong{color:#fff8ea}.course-management__catalog>.course-management__card:first-child .course-management__summary-chip span{color:#fff8eab8}.course-management__catalog-note{margin-top:18px;background:#ffffff14;border-color:#caa5403d;color:#f3d980}.course-management__catalog .course-management__card--fill{padding:0;overflow:hidden}.course-management__catalog .course-management__card--fill .course-management__card-header,.course-management__catalog .course-management__card--fill .course-management__search{padding-left:22px;padding-right:22px}.course-management__catalog .course-management__card--fill .course-management__card-header{padding-top:22px;margin-bottom:0}.course-management__catalog .course-management__card--fill .course-management__search{margin:18px 22px 0}.course-management__course-list{gap:0;max-height:640px;padding:16px;background:linear-gradient(180deg,#f5efe194,#ffffffe6)}.course-management__course-card{border:0;border-radius:0;background:transparent;box-shadow:none;border-bottom:1px solid rgba(202,165,64,.14);padding:14px 0}.course-management__course-card:first-child{padding-top:4px}.course-management__course-card:last-child{border-bottom:0;padding-bottom:4px}.course-management__course-card.is-active{border-radius:24px;border:1px solid rgba(202,165,64,.28);padding:14px 16px;margin:6px 0}.course-management__course-main{padding:0}.course-management__course-main strong{font-size:1.02rem}.course-management__course-main span{font-size:.9rem}.course-management__course-badges{gap:10px}.course-management__course-badges small{padding:6px 10px;border-radius:999px;background:#1118270f;color:#475569;font-weight:700}.course-management__selected-pill{box-shadow:0 10px 20px #b98b1f2e}.course-management__course-actions{padding:14px 0 0;justify-content:flex-start}.course-management__workspace>.course-management__placeholder,.course-management__workspace>.course-management__state{min-height:420px;border:1px dashed rgba(202,165,64,.24);background:radial-gradient(circle at top right,rgba(212,175,55,.08),transparent 24%),linear-gradient(180deg,#fffef9,#f5efe1)}.course-management__roster-shell,.course-management__builder-shell{display:flex;flex-direction:column;gap:20px}.course-management__roster-hero,.course-management__builder-hero{background:linear-gradient(135deg,#fffdfa,#fff6dd)}.course-management__roster-grid,.course-management__areas-stage,.course-management__subjects-stage,.course-management__indicators-layout,.course-management__builder-layout{display:grid;gap:20px;align-items:start}.course-management__roster-grid{grid-template-columns:340px minmax(0,1fr)}.course-management__roster-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.course-management__roster-stat{padding:18px 20px;border-radius:22px;background:linear-gradient(180deg,#fffdfa,#fff7e4);border:1px solid rgba(202,165,64,.2);box-shadow:0 14px 28px #18212f0d}.course-management__roster-stat-label{display:block;margin-bottom:8px;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#8b5e00}.course-management__roster-stat strong{color:#111827;font-size:1rem}.course-management__roster-side{display:flex;flex-direction:column;gap:20px}.course-management__teacher-panel{min-height:100%}.course-management__teacher-summary{display:flex;flex-direction:column;gap:12px}.course-management__select-shell{padding:18px;border-radius:22px;background:linear-gradient(180deg,#fffdfa,#fff7e4);border:1px solid rgba(202,165,64,.2);display:flex;flex-direction:column;gap:10px}.course-management__select-shell select{min-height:52px;border-radius:16px;border:1px solid #e3dcc5;padding:0 42px 0 14px;background-color:#fff}.course-management__select-label{font-size:.86rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#8b5e00}.course-management__sticky-actions{margin-top:auto;padding-top:18px;border-top:1px solid #ece6d4;display:flex;justify-content:flex-end}.course-management__student-bank{display:flex;flex-direction:column;gap:18px}.course-management__students-topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}.course-management__student-table-wrap{border:1px solid #e8edf3;border-radius:20px;overflow:auto;max-height:560px}.course-management__student-table{width:100%;border-collapse:collapse;min-width:0}.course-management__student-table thead th{position:sticky;top:0;background:#fffaf0;color:#8b5e00;text-align:left;padding:14px 16px;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid #eadfb8}.course-management__student-table tbody td{padding:14px 16px;border-bottom:1px solid #eef2f7;color:#475569}.course-management__student-table tbody tr.is-selected{background:linear-gradient(180deg,#fffdfa,#fff7e4)}.course-management__student-table tbody tr:hover{background:#fffdf7}.course-management__modal-backdrop{position:fixed;inset:0;z-index:46000;background:#0f172a66;display:flex;align-items:center;justify-content:center;padding:24px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow-y:auto}.course-management__modal{width:min(100%,520px);max-height:min(88vh,920px);overflow:hidden;background:linear-gradient(180deg,#fffef9,#f5efe1);border-radius:28px;border:1px solid rgba(202,165,64,.16);box-shadow:0 28px 60px #0f172a38;margin:auto}.course-management__modal--wide{width:min(100%,860px)}.course-management__modal--subject-builder{width:min(100%,760px)}.course-management__modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 24px 18px;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c);border-bottom:1px solid rgba(202,165,64,.18)}.course-management__modal-header h3{margin:0 0 6px;color:#fff8ea;font-size:1.35rem}.course-management__modal-header p{margin:0;color:#fff8eabd;line-height:1.5}.course-management__modal-close{width:40px;height:40px;border:1px solid rgba(202,165,64,.26);border-radius:12px;background:#ffffff14;color:#fff8ea;cursor:pointer;font-weight:800;flex-shrink:0;padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center}.course-management__modal-close:hover{background:#caa54029}.course-management__stack-form--subject-builder{gap:18px}.course-management__subject-builder-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.course-management__subject-builder-panel{border:1px solid rgba(202,165,64,.16);border-radius:22px;background:linear-gradient(180deg,#fffdfa,#f7f0e2);padding:18px;display:grid;gap:14px}.course-management__subject-builder-copy{display:grid;gap:6px}.course-management__subject-builder-copy strong{color:#20170a;font-size:1rem}.course-management__subject-builder-copy span{color:#6b6256;line-height:1.5}.course-management__course-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.course-management__course-picker-item{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-radius:18px;border:1px solid #e8edf3;background:#fff;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.course-management__course-picker-item:hover{transform:translateY(-1px);box-shadow:0 16px 30px #18212f0f}.course-management__course-picker-item input{width:18px;height:18px;min-height:auto;margin:0;accent-color:#c89b1d;flex-shrink:0}.course-management__course-picker-item span{flex:1;color:#1f2937;font-weight:600}.course-management__course-picker-item.is-selected{border-color:#d4af37;background:linear-gradient(180deg,#fffdfa,#fff7e4);box-shadow:0 14px 28px #d4af371f}@media(max-width:860px){.course-management__subject-builder-grid,.course-management__course-picker{grid-template-columns:1fr}.course-management__modal--subject-builder{width:min(100%,640px)}}.course-management__builder-layout{grid-template-columns:240px minmax(0,1fr)}.course-management__builder-nav{display:flex;flex-direction:column;gap:12px}.course-management__builder-tab{width:100%;border:1px solid #e8edf3;border-radius:22px;background:#fff;padding:18px;display:flex;align-items:center;gap:14px;text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.course-management__builder-tab strong{display:block;color:#111827}.course-management__builder-tab small{color:#64748b}.course-management__builder-tab.is-active{border-color:#d4af37;box-shadow:0 18px 32px #d4af3724;background:linear-gradient(180deg,#fffdfa,#fff7e4)}.course-management__builder-stage{min-width:0}.course-management__areas-stage{grid-template-columns:minmax(0,1.3fr) 320px}.course-management__subjects-stage{grid-template-columns:minmax(0,1.2fr) 320px}.course-management__subjects-side,.course-management__indicators-stage{display:flex;flex-direction:column;gap:20px}.course-management__subject-pills{display:flex;flex-wrap:wrap;gap:10px}.course-management__subject-pill{border:1px solid #e2e8f0;border-radius:18px;background:#fff;padding:14px 16px;text-align:left;cursor:pointer;min-width:180px}.course-management__subject-pill strong{display:block;color:#111827}.course-management__subject-pill span{color:#64748b;font-size:.86rem}.course-management__subject-pill.is-active{border-color:#d4af37;background:linear-gradient(180deg,#fffdfa,#fff7e4);box-shadow:0 14px 28px #d4af371f}.course-management__indicators-layout{grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr)}.course-management__indicators-layout.is-single{grid-template-columns:minmax(0,1fr)}.course-management__assignment-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.course-management__indicator-switch{display:flex;gap:10px;flex-wrap:wrap}.course-management__indicator-switch button{min-height:42px;padding:0 16px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;color:#334155;cursor:pointer;font-weight:700}.course-management__indicator-switch button.is-active{background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;border-color:transparent}.course-management__assignment-summary-card{border:1px solid #e2e8f0;border-radius:18px;background:#fff;padding:16px;cursor:pointer;display:flex;flex-direction:column;gap:6px}.course-management__assignment-summary-card strong{color:#111827}.course-management__assignment-summary-card span,.course-management__assignment-summary-card small{color:#64748b}.course-management__assignment-summary-card.is-active{border-color:#d4af37;background:linear-gradient(180deg,#fffdfa,#fff7e4);box-shadow:0 14px 28px #d4af371f}.course-management__assignment-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.course-management__empty{padding:14px;border-radius:16px;border:1px dashed #dbe3ec;background:#f8fafc;color:#64748b}.course-management__empty--large{min-height:220px;display:flex;align-items:center;justify-content:center;text-align:center}@media(max-width:1200px){.course-management__layout,.course-management__team-grid,.course-management__roster-grid,.course-management__roster-overview,.course-management__areas-stage,.course-management__subjects-stage,.course-management__indicators-layout,.course-management__builder-layout,.course-management__structure-layout,.course-management__section-overview,.course-management__student-grid,.course-management__team-summary,.course-management__indicator-stage-header,.course-management__section-panel--split,.course-management__structure-main{grid-template-columns:1fr}.course-management__course-list,.course-management__scroll-panel,.course-management__student-list,.course-management__indicator-list{max-height:none}.course-management__students-topbar,.course-management__layout.is-course{grid-template-columns:1fr}}.course-management__structure-main.is-indicators{grid-template-columns:1fr}@media(max-width:720px){.course-management__workspace-hero,.course-management__workspace-hero--section,.course-management__card-header,.course-management__subject-detail-header,.course-management__inline-form,.course-management__period-form,.course-management__form-actions,.course-management__indicator-actions{flex-direction:column;align-items:stretch}.course-management__period-grid{grid-template-columns:1fr}.course-management__primary-btn,.course-management__secondary-btn,.course-management__danger-btn,.course-management__action-pill,.course-management__section-tabs button{width:100%}}.course-management__studio{display:flex;flex-direction:column;gap:24px}.course-management__studio-banner,.course-management__planner-banner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:20px;padding:28px;border-radius:30px;background:radial-gradient(circle at top right,rgba(212,175,55,.16),transparent 24%),linear-gradient(180deg,#fffef9,#f3ecd9);border:1px solid rgba(202,165,64,.18);box-shadow:0 18px 40px #18212f0f}.course-management__studio-banner-copy h3,.course-management__planner-banner h3{margin:0 0 10px;color:#111827;font-size:clamp(1.6rem,2vw,2rem)}.course-management__studio-banner-copy p,.course-management__planner-banner p{margin:0;color:#64748b;line-height:1.7}.course-management__studio-ribbon,.course-management__planner-meters{display:grid;gap:12px;align-content:start}.course-management__studio-ribbon span,.course-management__planner-meters div{min-height:62px;padding:16px 18px;border-radius:22px;background:#ffffffd6;border:1px solid rgba(202,165,64,.14);color:#334155;display:flex;align-items:center;font-weight:700}.course-management__planner-meters div{flex-direction:column;align-items:flex-start;justify-content:center}.course-management__planner-meters strong{color:#8b5e00;font-size:1.6rem;line-height:1}.course-management__planner-meters span{margin-top:6px;color:#64748b;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.course-management__studio-grid,.course-management__planner-split,.course-management__planner-lanes{display:grid;gap:22px;align-items:start}.course-management__studio-grid{grid-template-columns:320px minmax(0,1fr)}.course-management__planner-split,.course-management__planner-lanes{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr)}.course-management__studio-block,.course-management__planner-section,.course-management__lane-browser,.course-management__lane-detail,.course-management__indicator-bank-alt,.course-management__assignment-wall{border-radius:28px;border:1px solid rgba(202,165,64,.14);background:#ffffffeb;box-shadow:0 18px 40px #18212f0f}.course-management__studio-block,.course-management__lane-browser,.course-management__lane-detail,.course-management__indicator-bank-alt,.course-management__assignment-wall{padding:24px}.course-management__planner-section{padding:26px}.course-management__studio-block--teacher{background:linear-gradient(180deg,#151515,#201a0f);color:#fff8ea;position:sticky;top:18px}.course-management__studio-stephead,.course-management__planner-title{display:flex;align-items:flex-start;gap:16px}.course-management__studio-stephead>span,.course-management__planner-title>span{width:44px;height:44px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;font-weight:900;flex-shrink:0}.course-management__studio-stephead h3,.course-management__planner-title h3{margin:0 0 6px;color:inherit}.course-management__studio-stephead p,.course-management__planner-title p{margin:0;color:inherit;opacity:.76;line-height:1.6}.course-management__studio-spotlight,.course-management__studio-counter,.course-management__studio-pill,.course-management__lane-detail-card{border-radius:22px;border:1px solid rgba(202,165,64,.18)}.course-management__studio-spotlight{display:flex;gap:14px;align-items:center;padding:18px;background:#ffffff14}.course-management__studio-spotlight strong,.course-management__studio-counter strong{display:block;color:#fff8ea}.course-management__studio-spotlight span,.course-management__studio-counter span{color:#fff8eab8}.course-management__studio-counter{padding:18px;background:#ffffff0f}.course-management__studio-counter strong{font-size:2rem;line-height:1;margin-bottom:6px}.course-management__studio-block--teacher .course-management__select-shell{background:#ffffff14;border-color:#caa54038}.course-management__studio-block--teacher .course-management__select-label,.course-management__studio-block--teacher .course-management__studio-stephead p,.course-management__studio-block--teacher .course-management__studio-stephead h3{color:#fff8ea}.course-management__studio-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.course-management__studio-pill{min-height:48px;padding:0 16px;display:inline-flex;align-items:center;gap:8px;background:linear-gradient(180deg,#fffdfa,#fff7e4);color:#8b5e00;font-weight:800}.course-management__student-canvas{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.course-management__student-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:16px;border-radius:22px;border:1px solid #e5e7eb;background:#fff;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.course-management__student-card.is-selected,.course-management__lane-subject.is-active,.course-management__assignment-tag.is-active,.course-management__territory-card,.course-management__period-column{border-color:#d4af37;background:linear-gradient(180deg,#fffdfa,#fff7e4);box-shadow:0 14px 28px #d4af371f}.course-management__student-avatar{width:46px;height:46px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:#111827;color:#fff8ea;font-weight:800}.course-management__student-card-copy strong,.course-management__territory-card strong,.course-management__lane-subject strong,.course-management__assignment-tag strong,.course-management__period-column header strong{display:block;color:#111827}.course-management__student-card-copy span,.course-management__territory-card span,.course-management__lane-subject span,.course-management__assignment-tag small,.course-management__period-sticky span{color:#64748b}.course-management__student-chip{min-height:38px;padding:0 14px;border-radius:999px;border:1px solid #e2e8f0;background:#fff;color:#334155;font-weight:700;cursor:pointer}.course-management__student-chip.is-selected{border-color:transparent;background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a}.course-management__planner{display:flex;flex-direction:column;gap:24px}.course-management__planner-section--lanes,.course-management__planner-section--split{display:flex;flex-direction:column;gap:22px}.course-management__planner-title--mini>span{width:40px;height:40px}.course-management__planner-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-top:18px}.course-management__planner-composer input{width:100%;box-sizing:border-box;min-height:46px;border:1px solid #dbe3ec;border-radius:14px;background:#fff;padding:11px 13px;color:#0f172a}.course-management__territory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:18px}.course-management__territory-card{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:24px}.course-management__territory-card .course-management__action-pill{align-self:flex-start}.course-management__lane-toolbar{margin-bottom:16px}.course-management__lane-groups{display:flex;flex-direction:column;gap:18px}.course-management__lane-group{display:flex;flex-direction:column;gap:10px}.course-management__lane-group>header{color:#8b5e00;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.course-management__lane-track{display:flex;flex-wrap:wrap;gap:10px}.course-management__lane-subject,.course-management__assignment-tag{border:1px solid #e5e7eb;border-radius:18px;background:#fff;padding:14px 16px;text-align:left;cursor:pointer}.course-management__lane-detail-card{padding:20px;display:flex;flex-direction:column;gap:16px;background:linear-gradient(180deg,#fffef9,#f5efe1)}.course-management__indicator-bank-alt,.course-management__assignment-wall{min-height:100%}.course-management__assignment-subject-rack{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.course-management__period-wall{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.course-management__period-column{padding:16px;border-radius:24px}.course-management__period-column header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.course-management__period-sticky{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:16px;background:#fffc;border:1px solid rgba(202,165,64,.14)}.course-management__period-sticky+.course-management__period-sticky{margin-top:10px}@media(max-width:1200px){.course-management__studio-grid,.course-management__planner-split,.course-management__planner-lanes,.course-management__period-wall,.course-management__studio-banner,.course-management__planner-banner,.course-management__course-browser-top,.course-management__course-browser-bar{grid-template-columns:1fr;flex-direction:column}.course-management__studio-block--teacher{position:static}}@media(max-width:720px){.course-management__student-card,.course-management__planner-composer{grid-template-columns:1fr}}.course-management__command-center{padding:28px;border-radius:30px;border:1px solid rgba(202,165,64,.18);background:radial-gradient(circle at top right,rgba(212,175,55,.16),transparent 24%),linear-gradient(180deg,#fffef9,#f7f1e4);box-shadow:0 24px 44px #18212f14}.course-management__command-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.course-management__command-top h3{margin:0 0 8px;color:#111827;font-size:clamp(1.45rem,1.8vw,1.95rem)}.course-management__command-top p{margin:0;max-width:760px;color:#5b6472;line-height:1.6}.course-management__command-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-end}.course-management__search--wide{min-width:min(100%,320px)}.course-management__course-rail{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-top:24px}.course-management__rail-card{display:flex;flex-direction:column;gap:14px;min-height:180px;padding:18px;border-radius:26px;border:1px solid rgba(202,165,64,.14);background:linear-gradient(180deg,#fffffffa,#fbf5e6f5);box-shadow:0 14px 30px #11182714;overflow:hidden}.course-management__rail-card.is-active{background:linear-gradient(160deg,#121316,#1c1e28 58%,#3a2a10);border-color:#d4af3759;box-shadow:0 18px 34px #1213163d}.course-management__rail-card-main{width:100%;border:0;outline:none;background:transparent;padding:0;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:8px}.course-management__rail-card-main:focus,.course-management__rail-card-main:focus-visible{outline:none;box-shadow:none}.course-management__rail-card-kicker{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:800;color:#9a6f10}.course-management__rail-card strong{font-size:1.15rem;color:#111827}.course-management__rail-card small{color:#667085}.course-management__rail-card.is-active .course-management__rail-card-kicker,.course-management__rail-card.is-active .course-management__rail-card strong,.course-management__rail-card.is-active .course-management__rail-card small,.course-management__rail-card.is-active .course-management__rail-card-meta span{color:#fff8ea}.course-management__rail-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.course-management__rail-card-actions{display:flex;gap:10px;flex-wrap:wrap}.course-management__placeholder--feature{display:flex;align-items:center;gap:18px}.course-board,.structure-board{display:flex;flex-direction:column;gap:22px}.course-board__hero,.structure-board__hero{padding:28px;border-radius:30px;background:linear-gradient(160deg,#121316,#1c1e28 58%,#3a2a10);color:#fff8ea;box-shadow:0 24px 40px #12131638;display:flex;justify-content:space-between;gap:20px}.course-board__eyebrow,.structure-board__eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:800;color:#e2c56b}.course-board__hero h3,.structure-board__hero h3{margin:0 0 8px;font-size:clamp(1.6rem,2vw,2.2rem)}.course-board__hero p,.structure-board__hero p{margin:0;max-width:760px;color:#fff8eac7;line-height:1.6}.course-board__hero-stats,.structure-board__hero-stats{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px;width:min(100%,420px)}.course-board__hero-stats article,.structure-board__hero-stats article{padding:16px;border-radius:20px;border:1px solid rgba(226,197,107,.18);background:#ffffff0f}.course-board__hero-stats span,.structure-board__hero-stats span{display:block;margin-bottom:6px;font-size:.8rem;color:#fff8eab8}.course-board__hero-stats strong,.structure-board__hero-stats strong{font-size:1.2rem}.course-board__lane-grid,.structure-board__grid{display:grid;gap:18px}.course-board__lane-grid{grid-template-columns:minmax(260px,.9fr) minmax(320px,1.15fr) minmax(320px,1.15fr)}.structure-board__grid{grid-template-columns:minmax(250px,.82fr) minmax(320px,1fr) minmax(420px,1.2fr)}.course-board__lane,.structure-board__column{min-width:0;border-radius:28px;border:1px solid rgba(202,165,64,.18);background:linear-gradient(180deg,#fffefb,#f8f1e4);box-shadow:0 18px 34px #11182712;padding:20px;display:flex;flex-direction:column;gap:16px}.course-board__lane--control,.structure-board__column--wide{background:linear-gradient(180deg,#fffefb,#f6ecd2eb)}.course-board__lane-header,.structure-board__column-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.course-board__lane-header p,.structure-board__column-header p{margin:0 0 4px;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;color:#9a6f10}.course-board__lane-header h4,.structure-board__column-header h4{margin:0;font-size:1.12rem;color:#101828}.course-board__leader-card,.structure-board__context-pill,.structure-board__assignment-header{padding:16px 18px;border-radius:20px;border:1px solid rgba(202,165,64,.18);background:#111318f5;color:#fff8ea}.course-board__leader-badge,.structure-board__assignment-header span{display:inline-block;margin-bottom:8px;color:#e2c56b;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.course-board__leader-card strong,.structure-board__assignment-header strong{display:block;font-size:1.08rem}.course-board__leader-card small{display:block;margin-top:6px;color:#fff8eabd}.course-board__field,.structure-board__composer,.structure-board__indicator-composer{display:flex;flex-direction:column;gap:10px}.course-board__field span{font-size:.9rem;font-weight:700;color:#374151}.course-board__save-btn{width:100%}.course-board__search{margin-bottom:2px}.course-board__list,.structure-board__stack,.structure-board__indicator-bank{display:flex;flex-direction:column;gap:12px;min-height:0;overflow:auto}.course-board__person-card,.structure-board__area-card,.structure-board__subject-card,.structure-board__indicator-card,.structure-board__period-item{border-radius:22px;border:1px solid rgba(202,165,64,.18);background:#ffffffeb;padding:14px}.course-board__person-card.is-active,.structure-board__subject-card.is-active{background:linear-gradient(180deg,#fffdf8,#fff4d4);box-shadow:0 14px 24px #d4af3729}.course-board__person-main,.structure-board__area-main,.structure-board__subject-main{display:flex;align-items:center;gap:12px}.course-board__person-main{justify-content:space-between;align-items:flex-start}.course-board__person-main>div:last-child{flex:1}.course-board__avatar{width:44px;height:44px;border-radius:14px;background:#111827;color:#fff8ea;display:inline-flex;align-items:center;justify-content:center;font-weight:800;flex-shrink:0}.course-board__avatar.is-active{background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a}.course-board__person-card strong,.structure-board__area-main strong,.structure-board__subject-main strong,.structure-board__indicator-card p{color:#111827}.course-board__person-card span,.structure-board__area-main span,.structure-board__subject-main span{display:block;margin-top:4px;color:#667085}.course-board__move-btn,.structure-board__filter-chip,.structure-board__subject-main,.structure-board__area-main{border:0;cursor:pointer}.course-board__move-btn{margin-top:12px;min-height:40px;border-radius:14px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#111827;color:#fff8ea}.course-board__move-btn.is-remove{background:#f4efe2;color:#111827;border:1px solid rgba(202,165,64,.24)}.structure-board__filter-chip,.structure-board__area-main,.structure-board__subject-main{width:100%;text-align:left;background:transparent;padding:0}.structure-board__filter-chip{min-height:44px;padding:0 14px;border-radius:16px;background:#1118270f;color:#0f172a;font-weight:700}.structure-board__filter-chip.is-active,.structure-board__area-main.is-active{background:#111827;color:#fff8ea}.structure-board__area-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.structure-board__toolbar,.structure-board__subject-actions,.structure-board__indicator-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.structure-board__subject-card{display:flex;flex-direction:column;gap:12px}.structure-board__subject-controls{display:flex;flex-direction:column;gap:10px}.structure-board__indicator-composer textarea,.structure-board__indicator-card textarea,.structure-board__composer input{width:100%}.structure-board__assignment-shell{display:flex;flex-direction:column;gap:16px;padding-top:8px}.structure-board__assignment-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.structure-board__period-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.structure-board__period-lane{border-radius:22px;border:1px solid rgba(202,165,64,.18);background:#ffffffe6;padding:14px;display:flex;flex-direction:column;gap:12px}.structure-board__period-lane header{display:flex;align-items:center;justify-content:space-between;gap:10px}.structure-board__period-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}@media(max-width:1180px){.course-board__lane-grid,.structure-board__grid,.course-management__command-top,.course-board__hero,.structure-board__hero{grid-template-columns:1fr;flex-direction:column}.course-management__command-actions{width:100%;justify-content:flex-start}.course-board__hero-stats,.structure-board__hero-stats,.structure-board__period-grid{grid-template-columns:1fr;width:100%}}@media(max-width:720px){.course-management__command-center,.course-board__hero,.structure-board__hero,.course-board__lane,.structure-board__column{padding:20px;border-radius:24px}.course-management__course-rail{grid-template-columns:1fr}.course-management__placeholder--feature,.structure-board__assignment-header{flex-direction:column;align-items:flex-start}}.module-workbench{display:flex;flex-direction:column;gap:22px}.module-workbench__hero{display:flex;justify-content:space-between;gap:24px;padding:30px;border-radius:30px;background:linear-gradient(160deg,#111216,#191b25 55%,#39280f);color:#fff8ea;box-shadow:0 24px 42px #11121638}.module-workbench__eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:800;color:#e2c56b}.module-workbench__hero h3{margin:0 0 8px;font-size:clamp(1.6rem,2vw,2.2rem)}.module-workbench__hero p{margin:0;max-width:760px;line-height:1.6;color:#fff8eac7}.module-workbench__stats{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px;width:min(100%,430px)}.module-workbench__stats article{padding:16px;border-radius:20px;border:1px solid rgba(226,197,107,.18);background:#ffffff0f}.module-workbench__stats span{display:block;margin-bottom:6px;font-size:.8rem;color:#fff8eabd}.module-workbench__stats strong{font-size:1.12rem}.module-workbench__tabs{display:flex;gap:12px;flex-wrap:wrap;padding:10px;border-radius:22px;background:#1118270f;border:1px solid rgba(202,165,64,.14)}.module-workbench__tabs button,.module-workbench__filter-tab,.module-workbench__subject-pill,.module-workbench__subject-title{border:0;cursor:pointer}.module-workbench__tabs button,.module-workbench__filter-tab,.module-workbench__subject-pill{min-height:42px;padding:0 16px;border-radius:14px;background:transparent;color:#233047;font-weight:800}.module-workbench__tabs button.is-active,.module-workbench__filter-tab.is-active,.module-workbench__subject-pill.is-active{background:#111827;color:#fff8ea;box-shadow:0 12px 24px #1118272e}.module-workbench__panel{padding:26px;border-radius:28px;border:1px solid rgba(202,165,64,.16);background:linear-gradient(180deg,#fffef9,#f7f1e4);box-shadow:0 18px 36px #18212f14}.module-workbench__panel--overview{background:radial-gradient(circle at top right,rgba(212,175,55,.16),transparent 28%),linear-gradient(180deg,#fffef9,#f7f1e4)}.module-workbench__grid,.module-workbench__roster-grid,.module-workbench__indicator-layout,.module-workbench__period-deck,.module-workbench__tile-grid{display:grid;gap:16px}.module-workbench__grid--overview{grid-template-columns:repeat(3,minmax(0,1fr))}.module-workbench__feature-card,.module-workbench__focus-card,.module-workbench__list-card,.module-workbench__tile-card,.module-workbench__subject-sheet,.module-workbench__note-card,.module-workbench__period-card{padding:18px;border-radius:22px;border:1px solid rgba(202,165,64,.16);background:#ffffffeb}.module-workbench__feature-card--dark,.module-workbench__focus-banner{background:linear-gradient(160deg,#111216,#191b25 55%,#39280f);color:#fff8ea}.module-workbench__feature-head,.module-workbench__section-head,.module-workbench__roster-toolbar,.module-workbench__subject-topbar,.module-workbench__focus-banner,.module-workbench__tile-card,.module-workbench__period-card header,.module-workbench__period-row,.module-workbench__row-card,.module-workbench__subject-sheet,.module-workbench__actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.module-workbench__feature-head p,.module-workbench__section-head p,.module-workbench__mini-title,.module-workbench__focus-card header p,.module-workbench__tile-card span,.module-workbench__hint,.module-workbench__text,.module-workbench__row-main span,.module-workbench__subject-title span,.module-workbench__focus-banner span{color:#667085}.module-workbench__feature-card--dark .module-workbench__feature-head p,.module-workbench__feature-card--dark .module-workbench__feature-head h4,.module-workbench__focus-banner span,.module-workbench__focus-banner strong{color:#fff8ea}.module-workbench__feature-head h4,.module-workbench__section-head h4,.module-workbench__focus-card header h4,.module-workbench__subject-title strong,.module-workbench__tile-card strong,.module-workbench__focus-summary strong,.module-workbench__focus-banner strong{margin:0;color:#111827}.module-workbench__section-head{margin-bottom:18px}.module-workbench__section-head p,.module-workbench__focus-card header p,.module-workbench__mini-title,.module-workbench__focus-summary span,.module-workbench__focus-banner span{margin:0 0 4px;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800}.module-workbench__composer-row,.module-workbench__composer-column,.module-workbench__subject-editor,.module-workbench__field{display:flex;flex-direction:column;gap:12px}.module-workbench__composer-row{flex-direction:row;margin-bottom:18px}.module-workbench__composer-row input,.module-workbench__composer-column textarea,.module-workbench__note-card textarea,.module-workbench__field .styled-select,.module-workbench__field>span,.module-workbench__subject-editor .styled-select{width:100%}.module-workbench__field span{font-size:.9rem;font-weight:700;color:#374151}.module-workbench__chip-cloud,.module-workbench__filter-row,.module-workbench__subject-strip{display:flex;gap:10px;flex-wrap:wrap}.module-workbench__person-chip{padding:10px 14px;border-radius:999px;background:#11182714;color:#111827;font-weight:700}.module-workbench__focus-card{max-width:560px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.module-workbench__focus-summary{padding:18px;border-radius:18px;background:#1118270f}.module-workbench__roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.module-workbench__list-card{min-width:0;display:flex;flex-direction:column;gap:14px}.module-workbench__list-card--selected{background:linear-gradient(180deg,#fffdf8,#fff4d4)}.module-workbench__list{display:flex;flex-direction:column;gap:12px;min-height:0;max-height:520px;overflow:auto}.module-workbench__row-card.is-selected,.module-workbench__subject-sheet.is-active{background:linear-gradient(180deg,#fffdf8,#fff4d4);box-shadow:0 12px 22px #d4af3724}.module-workbench__row-main{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.module-workbench__avatar{width:44px;height:44px;border-radius:14px;background:#111827;color:#fff8ea;display:inline-flex;align-items:center;justify-content:center;font-weight:800;flex-shrink:0}.module-workbench__avatar.is-selected{background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a}.module-workbench__row-action{min-height:40px;padding:0 14px;border-radius:14px;border:0;display:inline-flex;align-items:center;gap:8px;cursor:pointer;background:#111827;color:#fff8ea;font-weight:700}.module-workbench__row-action.is-remove{background:#f2ecde;color:#111827;border:1px solid rgba(202,165,64,.24)}.module-workbench__tile-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.module-workbench__subject-topbar,.module-workbench__indicator-layout{align-items:flex-start}.module-workbench__subject-stack,.module-workbench__indicator-main,.module-workbench__indicator-side{display:flex;flex-direction:column;gap:16px}.module-workbench__subject-sheet{align-items:flex-start}.module-workbench__subject-copy,.module-workbench__subject-editor{width:100%}.module-workbench__subject-title{width:100%;background:transparent;padding:0;text-align:left}.module-workbench__indicator-layout{grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr)}.module-workbench__note-card p{margin:0;color:#111827;line-height:1.55}.module-workbench__subject-strip{margin-bottom:6px}.module-workbench__focus-banner{padding:16px 18px;border-radius:18px}.module-workbench__period-deck{grid-template-columns:repeat(2,minmax(0,1fr))}.module-workbench__period-row{padding:12px 14px;border-radius:16px;border:1px solid rgba(202,165,64,.14);background:#ffffffeb}@media(max-width:1180px){.module-workbench__hero,.module-workbench__roster-grid,.module-workbench__indicator-layout,.module-workbench__grid--overview,.module-workbench__period-deck{grid-template-columns:1fr;flex-direction:column}.module-workbench__stats{width:100%;grid-template-columns:1fr}}@media(max-width:720px){.module-workbench__hero,.module-workbench__panel{padding:20px;border-radius:24px}.module-workbench__composer-row,.module-workbench__roster-toolbar,.module-workbench__subject-topbar,.module-workbench__row-card,.module-workbench__tile-card,.module-workbench__period-card header,.module-workbench__period-row,.module-workbench__actions,.module-workbench__focus-banner{flex-direction:column;align-items:flex-start}}.course-management__team-modal{width:min(1100px,calc(100% - 64px));max-width:1100px;max-height:min(88vh,920px)}.course-management__team-tabs{display:flex;gap:10px;padding:18px 24px 0;background:linear-gradient(180deg,#fffefb,#fcf7eb)}.course-management__team-tabs button{min-height:44px;padding:0 18px;border-radius:16px 16px 0 0;border:1px solid rgba(202,165,64,.16);border-bottom:0;background:#11182714;color:#253047;font-weight:800;cursor:pointer}.course-management__team-tabs button.is-active{background:#111827;color:#fff8ea}.course-management__team-modal-body{padding:24px;background:linear-gradient(180deg,#fffefb,#fcf7eb);display:flex;flex-direction:column;gap:18px;min-height:0;overflow:hidden}.course-management__team-modal-body--teacher{align-items:center;justify-content:center;min-height:420px}.course-management__teacher-focus-card{width:min(100%,560px);padding:28px;border-radius:28px;border:1px solid rgba(202,165,64,.16);background:#fffffff0;box-shadow:0 20px 36px #11182714;display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}.course-management__teacher-focus-icon{width:68px;height:68px;border-radius:22px;background:linear-gradient(160deg,#111216,#191b25 55%,#39280f);color:#fff8ea;display:inline-flex;align-items:center;justify-content:center}.course-management__teacher-focus-copy h4{margin:6px 0 8px;font-size:1.5rem;color:#111827}.course-management__teacher-focus-copy span{color:#667085;line-height:1.6}.course-management__teacher-field{width:100%;display:flex;flex-direction:column;gap:10px;text-align:left}.course-management__teacher-field span{font-weight:700;color:#374151}.course-management__team-actions,.course-management__team-toolbar,.course-management__team-footer,.course-management__student-cell{display:flex;align-items:center;justify-content:space-between;gap:12px}.course-management__team-actions{width:100%;justify-content:center}.course-management__team-counter{min-height:44px;padding:0 16px;border-radius:14px;background:#11182714;color:#111827;display:inline-flex;align-items:center;gap:8px;font-weight:700}.course-management__student-table-wrap--modal{max-height:460px;border-radius:22px;border:1px solid rgba(202,165,64,.14);background:#ffffffe0;overflow:auto;position:relative}.course-management__student-table-wrap--modal .course-management__student-table thead th{position:sticky;top:0;z-index:4;background:#fcf6e8;box-shadow:inset 0 -1px #eadfb8}.course-management__student-table-wrap--areas{overflow:hidden}.course-management__student-table--fixedhead{border-collapse:separate;border-spacing:0}.course-management__student-table-wrap--areas .course-management__student-table--fixedhead thead,.course-management__student-table-wrap--areas .course-management__student-table--fixedhead tbody tr{display:table;width:100%;table-layout:fixed}.course-management__student-table-wrap--areas .course-management__student-table--fixedhead tbody{display:block;max-height:460px;overflow:auto}.course-management__student-table-wrap--areas .course-management__student-table--fixedhead thead th{position:sticky;top:0;z-index:6}.course-management__student-table-wrap--indicators{overflow:hidden}.course-management__student-table-wrap--indicators .course-management__student-table--fixedhead thead,.course-management__student-table-wrap--indicators .course-management__student-table--fixedhead tbody tr{display:table;width:100%;table-layout:fixed}.course-management__student-table-wrap--indicators .course-management__student-table--fixedhead tbody{display:block;max-height:460px;overflow:auto}.course-management__student-table-wrap--indicators .course-management__student-table--fixedhead thead th{position:sticky;top:0;z-index:6}.course-management__student-table--indicators-layout tbody td:nth-child(1),.course-management__student-table--indicators-layout thead th:nth-child(1){padding-right:18px}.course-management__student-table--indicators-layout tbody td:nth-child(2),.course-management__student-table--indicators-layout thead th:nth-child(2){padding-left:140px;padding-right:12px;white-space:nowrap}.course-management__student-table--indicators-layout tbody td:nth-child(3),.course-management__student-table--indicators-layout thead th:nth-child(3){padding-left:132px;white-space:nowrap}.course-management__status-badge{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border-radius:999px;background:#11182714;color:#111827;font-weight:700}.course-management__status-badge.is-assigned{background:#d4af372e;color:#6f5211}.course-management__action-pill.is-active{background:#111827;color:#fff8ea}.course-management__team-footer{justify-content:space-between;color:#667085;font-weight:600}@media(max-width:860px){.course-management__team-toolbar,.course-management__team-footer,.course-management__team-actions{flex-direction:column;align-items:stretch}.course-management__team-tabs{padding:18px 18px 0;flex-wrap:wrap}.course-management__team-modal-body{padding:18px}}.course-management__structure-modal{width:min(1120px,calc(100% - 64px));max-width:1120px;max-height:min(88vh,920px);display:flex;flex-direction:column;overflow:hidden;margin:auto}.course-management__section-copy h4{margin:4px 0 0;color:#111827;font-size:1.25rem}.course-management__structure-subject-list,.course-management__structure-indicator-layout,.course-management__indicator-period-list{display:flex;flex-direction:column;gap:14px}.course-management__structure-subject-list{min-height:0;max-height:48vh;overflow:auto;padding-right:4px;display:grid;grid-template-columns:1fr}.course-management__structure-subject-card,.course-management__indicator-assign-panel,.course-management__indicator-period-card{border-radius:22px;border:1px solid rgba(202,165,64,.16);background:#ffffffeb;padding:16px}.course-management__structure-subject-card.is-active{background:linear-gradient(180deg,#fffdf8,#fff4d4);box-shadow:0 14px 24px #d4af3724}.course-management__structure-subject-card,.course-management__structure-subject-actions,.course-management__structure-indicator-layout,.course-management__indicator-period-card header,.course-management__indicator-period-item,.course-management__team-actions--inline{display:flex;align-items:center;justify-content:space-between;gap:12px}.course-management__structure-subject-card{align-items:flex-start;min-height:118px}.course-management__structure-subject-copy,.course-management__structure-subject-actions{flex:1;min-width:0}.course-management__structure-subject-actions{flex-direction:column;align-items:stretch;width:min(100%,340px)}.course-management__structure-subject-title{width:100%;border:0;background:transparent;padding:0;text-align:left;cursor:pointer}.course-management__structure-subject-title strong{display:block;color:#111827;font-size:1.05rem;line-height:1.4}.course-management__structure-subject-title span{display:block;margin-top:4px;color:#667085}.course-management__team-actions--inline{justify-content:flex-start;flex-wrap:wrap}.course-management__structure-indicator-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:18px}.course-management__indicator-inline-editor{width:100%;min-height:78px;border-radius:14px;border:1px solid #dbe3ec;padding:12px 14px;resize:vertical;font:inherit}.course-management__indicator-picker{max-height:280px;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:10px;border-radius:18px;border:1px solid rgba(202,165,64,.16);background:#ffffffe0}.course-management__indicator-choice{width:100%;border:1px solid rgba(202,165,64,.14);border-radius:16px;background:#1118270a;color:#1f2937;padding:14px 16px;text-align:left;cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.course-management__indicator-choice:hover{background:#fff8e8;border-color:#caa5404d}.course-management__indicator-choice.is-active{background:linear-gradient(160deg,#111216,#191b25 55%,#39280f);color:#fff8ea;border-color:#d4af3766;box-shadow:0 14px 24px #12131633}.course-management__teacher-focus-copy--left{text-align:left}.course-management__indicator-subject-strip,.course-management__structure-filter-row{display:flex;gap:10px;flex-wrap:wrap}.course-management__indicator-subject-pill{min-height:40px;padding:0 14px;border-radius:999px;border:1px solid rgba(202,165,64,.16);background:#1118270f;color:#111827;cursor:pointer;font-weight:700}.course-management__indicator-subject-pill.is-active{background:#111827;color:#fff8ea}.course-management__student-cell--uniform{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px}.course-management__student-cell--uniform svg{width:16px;height:16px;flex-shrink:0}.course-management__indicator-period-card header strong{color:#111827}.course-management__indicator-period-card header span{color:#667085;font-weight:700}.course-management__indicator-period-items{display:flex;flex-direction:column;gap:10px;margin-top:12px}.course-management__indicator-period-item{padding:12px 14px;border-radius:16px;border:1px solid rgba(202,165,64,.14);background:#ffffffe6}@media(max-width:980px){.course-management__course-browser-top,.course-management__course-browser-bar,.course-management__workspace-hero,.course-management__card-header,.course-management__workspace-hero--section,.course-management__structure-subject-card,.course-management__structure-subject-actions,.course-management__team-grid,.course-management__section-panel--split,.course-management__structure-main,.course-management__section-overview,.course-management__student-grid,.course-management__team-summary,.course-management__indicator-stage-header{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.course-management__course-browser-bar .course-management__search{min-width:0;width:100%}.course-management__section-overview{display:grid}.course-management__structure-subject-actions{width:100%}.course-management__structure-indicator-layout{grid-template-columns:1fr}.course-management__structure-subject-card{flex-direction:column}}@media(max-width:720px){.course-management__header,.course-management__course-browser,.course-management__card,.course-management__workspace-hero,.course-management__placeholder,.course-management__state{padding:18px;border-radius:20px}.course-management__course-tabs{grid-auto-columns:minmax(220px,82vw)}.course-management__modal-backdrop{padding:12px;align-items:flex-start}.course-management__modal,.course-management__modal--wide,.course-management__modal--subject-builder,.course-management__team-modal,.course-management__structure-modal{width:100%;max-width:100%;max-height:calc(100vh - 24px);border-radius:20px}.course-management__modal .course-management__form,.course-management__modal .course-management__stack-form,.course-management__modal .course-management__student-table-wrap,.course-management__modal .course-management__empty--large,.course-management__team-modal-body{padding:16px}.course-management__form-actions,.course-management__course-actions,.course-management__indicator-actions,.course-management__team-actions,.course-management__team-actions--inline{flex-direction:column;align-items:stretch}.course-management__form-actions>*,.course-management__course-actions>*,.course-management__indicator-actions>*,.course-management__team-actions>*,.course-management__team-actions--inline>*{width:100%;justify-content:center}}:root{--gold: #c9a227;--gold-dark: #a8841d;--gold-soft: #f6f1dc;--black: #0f0f0f;--text: #0f172a;--muted: #6b7280;--bg: #ffffff;--border: #e5e7eb;--shadow: 0 14px 40px rgba(0, 0, 0, .12);--danger: #111827}.btn{appearance:none;border:1px solid var(--border);background:#fff;color:var(--text);padding:10px 14px;border-radius:12px;cursor:pointer;font-weight:700;font-size:13px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease,color .15s ease;display:inline-flex;align-items:center;gap:8px}.btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px #0000001f;border-color:#c9a227a6;background:var(--gold-soft)}.btn-primary{background:var(--black);color:#fff;border-color:var(--black)}.btn-primary:hover{color:var(--gold);background:#000}.btn-active{background:var(--gold);color:var(--black);border-color:var(--gold)}.btn-delete-text{border-color:#11182733;color:var(--danger)}.btn-delete-text:hover{background:#11182714}.user-workspace{display:grid;gap:20px}.user-workspace__hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:28px;border-radius:24px;background:linear-gradient(135deg,#111,#242424);color:#fff9e8;box-shadow:0 22px 42px #1111112e}.user-workspace__hero h2{margin:0 0 8px;font-size:2rem}.user-workspace__hero p{margin:0;max-width:720px;color:#fff9e8c2;line-height:1.6}.user-workspace__hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.user-workspace__eyebrow{margin:0 0 8px;color:#fff9e8ad;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:800}.user-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:20px 24px;border-radius:22px;background:#ffffffeb;border:1px solid rgba(202,165,64,.12);box-shadow:0 16px 32px #18212f0d}.user-toolbar__tabs{display:flex;flex-wrap:wrap;gap:10px}.user-search{display:inline-flex;align-items:center;gap:10px;min-width:min(360px,100%);padding:0 14px;min-height:46px;border-radius:14px;border:1px solid var(--border);background:#fff;color:var(--muted)}.user-search input{width:100%;border:0;outline:none;background:transparent;color:var(--text);font-size:.95rem}.user-search select{width:100%;border:0;outline:none;background:transparent;color:var(--text);font-size:.95rem;cursor:pointer}.user-search--select{min-width:min(260px,100%)}.user-search--select .styled-select{width:100%}.user-search--select .styled-select__trigger{min-height:44px;border:0;background:transparent;box-shadow:none;padding:0}.user-search--select .styled-select__value,.user-search--select .styled-select__icon{color:var(--text)}.user-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.user-card{display:grid;gap:18px;padding:22px;border-radius:24px;background:#fffffff5;border:1px solid rgba(202,165,64,.12);box-shadow:0 18px 36px #18212f14}.user-card__identity{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center}.user-card__identity>div:last-child{min-width:0}.user-card__avatar{width:64px;height:64px;border-radius:999px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a}.user-card__avatar img{width:100%;height:100%;object-fit:cover}.user-card__role{display:inline-flex;margin-bottom:6px;font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#8c6915}.user-card h3{margin:0 0 4px;color:var(--text);overflow-wrap:anywhere}.user-card p{margin:0;color:var(--muted);overflow-wrap:anywhere;word-break:break-word}.user-card__meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:12px}.user-card__meta div{padding:12px 14px;border-radius:16px;background:linear-gradient(180deg,#fffefb,#f8f5ed);border:1px solid #f1e7c7}.user-card__meta span{display:block;font-size:.78rem;color:var(--muted);margin-bottom:4px}.user-card__meta strong{color:var(--text);line-height:1.4}.user-card__action{justify-content:space-between;border-color:#caa54047;background:linear-gradient(135deg,#caa5401f,#caa5400d)}.user-card__actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.user-card__delete{justify-content:center;min-width:124px;border-color:#1118272e;background:#111827;color:#fff8ea}.user-card__delete:hover{background:#0b0f19;border-color:#c9a22757;color:#e7cb73}.user-empty{padding:28px;text-align:center;border-radius:20px;background:#fff;border:1px dashed rgba(202,165,64,.22);color:var(--muted)}.modal-overlay{position:fixed;inset:0;background:#0000008c;display:flex;justify-content:center;align-items:center;z-index:9999;padding:18px}.modal-container{width:460px;max-width:92vw;background:linear-gradient(180deg,#fffef9,#f5efe1);border-radius:18px;border:1px solid var(--border);box-shadow:0 24px 70px #00000059;position:relative;overflow:hidden}.modal-shell__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 22px 18px;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c);border-bottom:1px solid rgba(202,165,64,.18)}.modal-shell__eyebrow{display:inline-flex;margin-bottom:6px;color:#e7cb73;text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;font-weight:800}.modal-title{margin:0 0 6px;color:#fff8ea;font-size:1.45rem;font-weight:900}.modal-shell__subtitle{margin:0;color:#fff8eabd;line-height:1.5}.modal-container .close-btn{width:36px;height:36px;border-radius:12px;border:1px solid rgba(202,165,64,.24);background:#ffffff14;color:#fff8ea;cursor:pointer;flex-shrink:0;padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center}.user-profile-modal>.close-btn{position:absolute;right:20px;top:20px;width:40px;height:40px;border-radius:12px;border:1px solid rgba(202,165,64,.24);background:#ffffff14;color:#fff8ea;cursor:pointer;z-index:2;padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center}.form{padding:14px 22px 22px;display:flex;flex-direction:column;gap:12px}.input-field{padding:11px 12px;border:1px solid var(--border);border-radius:12px;font-size:13.5px;color:var(--text);background:#fff}.input-field:focus{outline:none;border-color:#c9a227d9;box-shadow:0 0 0 4px #c9a22726}.password-field-block{display:grid}.password-field-block .password-requirements{margin-top:2px}.user-form__generated-password{padding:12px 14px;border-radius:14px;border:1px solid rgba(201,164,55,.26);background:linear-gradient(180deg,#fffcf4f5,#fdf7e8f0);color:#6b4c1e;font-size:.92rem;line-height:1.45}.btn-primary.full{width:100%;justify-content:center;margin-top:6px}.user-profile-modal{width:min(1120px,96vw);max-height:calc(100vh - 40px);overflow:auto;background:linear-gradient(180deg,#faf7f1,#efe8db);border-radius:28px;border:1px solid rgba(202,165,64,.14);box-shadow:0 28px 70px #0000003d;position:relative;padding:0}.user-profile-modal__header{margin-bottom:0;padding:26px 28px;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c);border-bottom:1px solid rgba(202,165,64,.18)}.user-profile-modal__identity{display:grid;grid-template-columns:116px minmax(0,1fr);gap:22px;align-items:center}.user-profile-modal__avatar{width:116px;height:116px;border-radius:999px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a}.user-profile-modal__avatar img{width:100%;height:100%;object-fit:cover}.user-profile-modal__eyebrow{display:inline-flex;margin-bottom:6px;color:#e7cb73;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:800}.user-profile-modal__identity h2{margin:0 0 4px;color:#fff8ea;font-size:2rem}.user-profile-modal__identity p{margin:0;color:#fff8eabd}.user-profile-modal__body{display:grid;gap:20px;padding:28px}.user-profile-panel,.user-documents-panel{padding:24px;border-radius:24px;background:#ffffffe6;border:1px solid rgba(202,165,64,.12);box-shadow:0 16px 32px #18212f0d}.user-profile-panel__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.user-profile-panel label{display:grid;gap:8px}.user-profile-panel label span{font-weight:700;color:#334155}.user-profile-panel input,.user-documents-upload input{width:100%;box-sizing:border-box;min-height:46px;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:#fff;color:var(--text)}.user-profile-panel__footer{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:18px}.user-documents-panel__header{margin-bottom:16px}.user-documents-panel__header h3{margin:0 0 6px;font-size:1.4rem;color:var(--text)}.user-documents-panel__header p{margin:0;color:var(--muted)}.user-documents-upload{display:grid;grid-template-columns:1.1fr .9fr 1fr auto;gap:12px;margin-bottom:18px}.user-documents-upload__file{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 14px;border-radius:14px;border:1px dashed rgba(202,165,64,.28);background:#fffefb;color:#8c6915;font-weight:700;cursor:pointer}.user-documents-upload__file input{display:none}.user-documents-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.user-document-card{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:18px;border-radius:20px;background:#fff;border:1px solid rgba(202,165,64,.14);box-shadow:0 16px 32px #18212f0d}.user-document-card__preview{position:relative;overflow:hidden;min-height:180px;border-radius:18px;border:1px solid rgba(202,165,64,.18);background:radial-gradient(circle at top right,rgba(202,165,64,.18),transparent 34%),linear-gradient(180deg,#fffdf7,#f7f1df)}.user-document-card__preview iframe{width:100%;height:180px;border:0;background:#fff}.user-document-card__icon{width:58px;height:58px;display:grid;place-items:center;color:#8c6915;border-radius:18px;background:radial-gradient(circle at top,#caa5403d,#caa54014);border:1px solid rgba(202,165,64,.2)}.user-document-card__sheet{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;min-height:180px;padding:18px 18px 50px}.user-document-card__sheet-meta{display:grid;gap:6px}.user-document-card__sheet--fallback strong{color:var(--text);font-size:.85rem;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.user-document-card__sheet--fallback span{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.user-document-card__preview-badge{position:absolute;left:14px;bottom:14px;display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;background:#0f0f0fd6;color:#fff9e8;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.user-document-card__body strong{display:block;margin-bottom:6px;color:var(--text);font-size:1.05rem}.user-document-card__body span{color:var(--muted)}.user-document-card__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.user-documents-empty{padding:22px;border-radius:18px;border:1px dashed rgba(202,165,64,.22);text-align:center;color:var(--muted);background:#fffefb}.bulk-import-modal{width:min(1180px,96vw)}.bulk-import-summary{display:grid;grid-template-columns:repeat(3,minmax(0,180px)) minmax(280px,1fr);gap:14px;align-items:stretch}.bulk-import-summary__card{display:grid;gap:6px;padding:18px;border-radius:18px;background:#ffffffeb;border:1px solid rgba(202,165,64,.14);box-shadow:0 12px 24px #18212f0d}.bulk-import-summary__card span{color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.bulk-import-summary__card strong{color:var(--text);font-size:1.9rem;line-height:1}.bulk-import-summary__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding:18px;border-radius:18px;background:linear-gradient(180deg,#fffefb,#f8f5ed);border:1px solid rgba(202,165,64,.14)}.bulk-import-section,.bulk-import-result{padding:24px;border-radius:24px;background:#ffffffe6;border:1px solid rgba(202,165,64,.12);box-shadow:0 16px 32px #18212f0d}.bulk-import-result__header{margin-bottom:16px}.bulk-import-result__header h3{margin:0 0 6px;font-size:1.2rem;color:var(--text)}.bulk-import-result__header p{margin:0;color:var(--muted)}.bulk-import-result__list{display:grid;gap:12px}.bulk-import-result__item{padding:16px 18px;border-radius:18px;border:1px solid rgba(202,165,64,.14);background:#fffefb}.bulk-import-result__item--error{border-color:#b91c1c1f;background:#fef2f2d9}.bulk-import-result__item strong,.bulk-import-result__item p span{color:var(--text)}.bulk-import-result__item p{margin:8px 0 0;color:#7f1d1d}.bulk-import-list{display:grid;gap:12px}.bulk-import-row{border-radius:20px;border:1px solid rgba(202,165,64,.14);background:#fff;overflow:hidden}.bulk-import-row__toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;border:0;background:transparent;cursor:pointer;text-align:left}.bulk-import-row__identity{display:flex;align-items:center;gap:12px;min-width:0}.bulk-import-row__identity>div:last-child{min-width:0}.bulk-import-row__identity strong,.bulk-import-row__field strong{display:block;color:var(--text);overflow-wrap:anywhere}.bulk-import-row__identity span{color:var(--muted);font-size:.92rem;overflow-wrap:anywhere}.bulk-import-row__status{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;flex-shrink:0}.bulk-import-row__status--valid{background:#16a34a1f;color:#166534}.bulk-import-row__status--error{background:#dc26261a;color:#b91c1c}.bulk-import-row__meta{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.bulk-import-chip{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;font-size:.78rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.bulk-import-chip--valid{background:#16a34a1f;color:#166534}.bulk-import-chip--error{background:#dc26261a;color:#b91c1c}.bulk-import-row__details{display:grid;gap:16px;padding:0 18px 18px;border-top:1px solid rgba(202,165,64,.12)}.bulk-import-row__fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;padding-top:16px}.bulk-import-row__field{display:grid;gap:6px;padding:14px;border-radius:16px;background:linear-gradient(180deg,#fffefb,#f8f5ed);border:1px solid #f1e7c7}.bulk-import-row__field span{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.bulk-import-row__errors{display:grid;gap:8px;padding:14px 16px;border-radius:16px;background:#fef2f2d9;border:1px solid rgba(220,38,38,.12)}.bulk-import-row__errors p{margin:0;color:#7f1d1d}.bulk-import-row__errors span{color:var(--text);font-weight:700}@media(max-width:960px){.user-workspace__hero,.user-profile-modal__identity,.user-profile-panel__grid,.user-documents-upload,.user-documents-grid,.user-card__meta,.bulk-import-summary{grid-template-columns:1fr}.user-toolbar{align-items:stretch}.user-workspace__hero-actions,.user-profile-panel__footer,.bulk-import-summary__actions{justify-content:stretch}.user-search{min-width:100%}.bulk-import-row__toggle{flex-direction:column;align-items:stretch}.bulk-import-row__meta{justify-content:space-between}}.admin-alerts-page{padding:28px;min-height:100vh;background:radial-gradient(circle at top right,rgba(201,162,39,.1),transparent 28%),linear-gradient(180deg,#fffdf8,#f6f1e4)}.admin-alerts-hero{padding:28px;border-radius:26px;background:linear-gradient(135deg,#101010,#1d1d1d 55%,#32260d);border:1px solid rgba(201,162,39,.18);box-shadow:0 22px 42px #0f172a2e;margin-bottom:22px;color:#fff8ea}.admin-alerts-badge{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border-radius:999px;background:#fff8ea14;border:1px solid rgba(201,162,39,.24);color:#e7cb73;font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}.admin-alerts-hero-copy h1{margin:0;font-size:clamp(2rem,3vw,2.9rem);line-height:1.05}.admin-alerts-hero-copy p{margin:10px 0 0;max-width:860px;line-height:1.65;color:#fff8eac2}.admin-alerts-controls{margin-top:22px;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;align-items:end}.admin-alerts-control-card{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:18px;background:#ffffff14;border:1px solid rgba(255,248,234,.14)}.admin-alerts-control-card label{font-size:.82rem;font-weight:700;color:#fff8eab8}.admin-alerts-control-card select{height:48px;border-radius:14px;border:1px solid rgba(201,162,39,.22);padding:0 14px;background:#0a0a0a6b;color:#fff8ea;font-weight:700}.admin-alerts-generate-btn,.admin-alerts-primary-btn{min-height:48px;border:none;border-radius:14px;background:linear-gradient(135deg,#e7cb73,#c9a227);color:#17120a;font-weight:800;cursor:pointer;box-shadow:0 14px 30px #c9a22742;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.admin-alerts-generate-btn:hover,.admin-alerts-primary-btn:hover{transform:translateY(-1px)}.admin-alerts-generate-btn:disabled,.admin-alerts-primary-btn:disabled{opacity:.72;cursor:not-allowed;transform:none}.admin-alerts-secondary-btn{min-height:48px;padding:0 18px;border-radius:14px;border:1px solid #d7dde6;background:#fff;color:#111827;font-weight:800;cursor:pointer}.admin-alerts-message{margin-bottom:18px;padding:15px 18px;border-radius:18px;font-weight:700}.admin-alerts-message.success{background:#fffbeffa;border:1px solid rgba(201,162,39,.26);color:#8b6b1d}.admin-alerts-message.error{background:#111827f5;border:1px solid rgba(201,162,39,.22);color:#fff8ea}.admin-alerts-status-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,180px));align-items:center;gap:10px;margin-bottom:18px;padding:8px;width:fit-content;border-radius:999px;background:#ffffffd1;border:1px solid rgba(201,162,39,.16);box-shadow:0 14px 26px #18212f0f}.admin-alerts-status-tab{min-height:42px;width:100%;padding:0 18px;border:1px solid transparent;border-radius:999px;background:transparent;color:#475569;font-weight:800;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease}.admin-alerts-status-tab.is-active{background:#111827;color:#fff8ea;border-color:#c9a22738}.admin-alerts-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.admin-alerts-summary-card{padding:20px;border-radius:20px;background:#fffffff0;border:1px solid rgba(201,162,39,.12);box-shadow:0 14px 26px #18212f0f}.admin-alerts-summary-card span{display:block;margin-bottom:8px;color:#6b7280;font-size:.82rem;font-weight:700}.admin-alerts-summary-card strong{color:#111827;font-size:2rem}.admin-alerts-summary-card.active strong{color:#8b6b1d}.admin-alerts-summary-card.critical strong{color:#111827}.admin-alerts-summary-card.warning strong{color:#6b7280}.admin-alerts-empty{border:1px dashed rgba(201,162,39,.2);background:#ffffffc7;border-radius:18px;padding:24px;text-align:center;color:#6b7280;font-weight:700}.admin-alerts-table-section{background:#fffffff5;border:1px solid rgba(201,162,39,.12);border-radius:22px;padding:22px;box-shadow:0 16px 30px #18212f14}.admin-alerts-table-header{margin-bottom:16px}.admin-alerts-table-header h3{margin:0;color:#111827;font-size:1.3rem}.admin-alerts-table-header p{margin:8px 0 0;color:#6b7280;line-height:1.6}.admin-alerts-table-wrapper{width:100%;overflow-x:auto;border:1px solid #ece8db;border-radius:18px;background:#fffef9}.admin-alerts-table{width:100%;min-width:1180px;border-collapse:collapse}.admin-alerts-table thead th{background:#111827;color:#fff8ea;font-size:.84rem;text-align:left;padding:15px 14px;white-space:nowrap}.admin-alerts-table tbody td{padding:15px 14px;border-bottom:1px solid #f0ebe0;color:#1f2937;font-size:.92rem;vertical-align:top}.admin-alerts-table tbody tr:hover{background:#fff8ea}.admin-alerts-student-cell{font-weight:800}.admin-alerts-message-cell{max-width:360px;line-height:1.55;color:#475569}.alert-level-pill,.alert-status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:102px;min-height:34px;padding:0 12px;border-radius:999px;font-size:.76rem;font-weight:800;border:1px solid transparent}.alert-level-pill.warning{background:#fffbeff5;color:#8b6b1d;border-color:#c9a22742}.alert-level-pill.critical{background:#111827;color:#fff8ea;border-color:#c9a22738}.alert-status-pill.active{background:#fffbeff5;color:#8b6b1d;border-color:#c9a22742}.alert-status-pill.resolved,.alert-status-pill.resolved_positive{background:#111827;color:#fff8ea;border-color:#c9a22738}.alert-status-pill.resolved_negative{background:#f3ebdbf5;color:#4b5563;border-color:#c9a2272e}.alert-status-pill.teacher_initial_pending,.alert-status-pill.teacher_final_pending{background:#fff8ea;color:#8b6b1d;border-color:#e9ddb8}.alert-status-pill.admin_initial_review,.alert-status-pill.admin_final_review{background:#fffbeff5;color:#8b6b1d;border-color:#c9a22742}.alert-status-pill.monitoring{background:#f8f5ec;color:#5b6475;border-color:#e9ddb8}.admin-alerts-resolve-btn{min-height:40px;border:none;border-radius:12px;padding:0 14px;background:#111827;color:#fff8ea;font-weight:800;cursor:pointer}.admin-alerts-resolve-btn:hover{opacity:.94}.admin-alerts-resolved-box{display:grid;gap:4px}.admin-alerts-resolved-box span{font-weight:800;color:#8b6b1d}.admin-alerts-resolved-box small{color:#64748b}.admin-alerts-danger-btn{min-height:48px;padding:0 18px;border-radius:14px;border:none;background:#111827;color:#fff8ea;font-weight:800;cursor:pointer}.admin-alerts-modal-backdrop{position:fixed;inset:0;background:#080b129e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:2500;padding:20px}.admin-alerts-modal{width:min(780px,96vw);max-height:92vh;overflow:hidden;display:flex;flex-direction:column;background:linear-gradient(180deg,#fffef9,#f3ebdb);border-radius:24px;border:1px solid rgba(201,162,39,.18);box-shadow:0 30px 70px #00000042}.admin-alerts-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 24px;border-bottom:1px solid rgba(201,162,39,.18);background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c)}.admin-alerts-modal-header h2{margin:0;color:#fff8ea}.admin-alerts-modal-header p{margin:8px 0 0;color:#fff8eabd}.admin-alerts-close-btn{width:42px;height:42px;border-radius:14px;border:1px solid rgba(201,162,39,.28);background:#ffffff14;cursor:pointer;font-size:18px;color:#fff8ea;padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center}.admin-alerts-modal-body{padding:24px;overflow-y:auto;display:flex;flex-direction:column;gap:18px}.admin-alerts-detail-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;border:1px solid #ede2c3;border-radius:18px;padding:18px;background:#ffffffd1}.admin-alerts-detail-card span{display:block;color:#8b6b1d;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}.admin-alerts-detail-card strong{color:#111827}.admin-alerts-full-message,.admin-alerts-notes-block{display:flex;flex-direction:column;gap:8px}.admin-alerts-full-message label,.admin-alerts-notes-block label{font-weight:800;color:#334155}.admin-alerts-full-message div{border:1px solid #ede2c3;border-radius:16px;background:#ffffffdb;padding:16px;line-height:1.6;color:#334155}.admin-alerts-event-notes{margin:10px 0 0;color:#334155;line-height:1.55}.admin-alerts-notes-block textarea{min-height:150px;resize:vertical;border-radius:16px;border:1px solid #e5d8b2;padding:16px;background:#ffffffeb;font-family:inherit;color:#111827;caret-color:#111827}.admin-alerts-notes-block textarea::placeholder{color:#94a3b8}.admin-alerts-notes-block textarea:focus{outline:none;border-color:#c9a227;box-shadow:0 0 0 4px #c9a2271f}.admin-alerts-modal-footer{padding:18px 24px;border-top:1px solid rgba(201,162,39,.12);display:flex;justify-content:flex-end;gap:12px}.admin-alerts-modal-footer--spread{justify-content:space-between;align-items:center}.admin-alerts-modal-footer-actions{display:flex;gap:12px;flex-wrap:wrap}@media(max-width:980px){.admin-alerts-page{padding:20px}.admin-alerts-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.admin-alerts-hero{padding:22px}.admin-alerts-summary-grid{grid-template-columns:1fr}.admin-alerts-status-tabs{width:100%;grid-template-columns:1fr}.admin-alerts-modal-header,.admin-alerts-modal-footer{flex-direction:column}.admin-alerts-secondary-btn,.admin-alerts-primary-btn,.admin-alerts-danger-btn,.admin-alerts-modal-footer-actions{width:100%}}.permission-letters{display:grid;gap:20px}.permission-letters__hero{padding:28px;border-radius:24px;background:linear-gradient(135deg,#111,#262626);color:#fff9e8;box-shadow:0 24px 48px #1111112e}.permission-letters__eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;color:#fff9e8ad}.permission-letters__hero h2{margin:0 0 8px;font-size:clamp(1.7rem,2vw,2.2rem)}.permission-letters__hero p{margin:0;max-width:760px;line-height:1.6;color:#fff9e8c7}.permission-letters__layout{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.2fr);gap:20px;align-items:start}.permission-card{background:#fffffff0;border:1px solid rgba(202,165,64,.16);border-radius:24px;padding:24px;box-shadow:0 18px 40px #18212f0f}.permission-card__header{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.permission-card__header h3{margin:0;font-size:1.08rem;color:#1f2937}.permission-card__header span{color:#6b7280;font-size:.94rem}.permission-form{display:grid;gap:16px}.permission-form__field{display:flex;flex-direction:column;gap:8px}.permission-form__field--wide{grid-column:1 / -1}.permission-form__field span{font-weight:700;color:#334155;font-size:.92rem}.permission-form__field input,.permission-form__field textarea{width:100%;min-height:46px;box-sizing:border-box;border:1px solid #dbe3ec;border-radius:14px;background:#fff;padding:12px 14px;color:#0f172a;font-size:.96rem}.permission-form__field textarea{min-height:120px;resize:vertical}.permission-upload{border:1px dashed #d1d9e6;border-radius:16px;padding:14px;background:linear-gradient(180deg,#fffefb,#f8f5ed);display:grid;gap:10px}.permission-upload small{color:#64748b}.permission-form__footer{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.permission-form__hint{color:#64748b;font-size:.92rem}.permission-primary-btn{border:0;border-radius:14px;min-height:46px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;font-weight:700;background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;box-shadow:0 14px 28px #b98b1f33}.permission-primary-btn:disabled{opacity:.72;cursor:not-allowed}.permission-letter-list,.student-permission-list{display:grid;gap:14px}.permission-letter-item,.student-permission-card{border:1px solid #edf2f7;border-radius:18px;background:linear-gradient(180deg,#fffefb,#f8f5ed)}.permission-letter-item__summary-wrap{display:flex;align-items:center;gap:10px;padding:10px}.permission-letter-item__summary{flex:1;border:0;background:transparent;padding:8px;display:flex;justify-content:space-between;gap:12px;align-items:center;cursor:pointer;text-align:left}.permission-delete-btn{border:0;border-radius:8px;padding:0 12px;min-height:42px;align-self:center;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#111827;color:#fff8ea;cursor:pointer;font-weight:800}.permission-delete-btn:disabled{cursor:not-allowed;opacity:.68}.permission-letter-item__summary strong,.student-permission-card__top strong{display:block;color:#111827;margin-bottom:4px}.permission-letter-item__summary span,.student-permission-card__top span,.student-permission-card__meta span{color:#6b7280;font-size:.9rem}.permission-letter-item__stats{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;min-height:42px}.permission-stat,.permission-status{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:.85rem;font-weight:700}.permission-stat.pending,.permission-status--pending{background:#fff7dd;color:#9a6b00}.permission-stat.accepted,.permission-status--accepted{background:#ecfdf3;color:#166534}.permission-stat.rejected,.permission-status--rejected{background:#fef2f2;color:#b91c1c}.permission-letter-item__detail{padding:0 18px 18px;display:grid;gap:16px}.permission-letter-item__meta p,.student-permission-card p{margin:0;color:#334155;line-height:1.6}.permission-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;border-radius:8px;background:#fff;color:#0f172a;text-decoration:none;font-weight:700;border:1px solid rgba(202,165,64,.24);transition:background .18s ease,border-color .18s ease,color .18s ease}.permission-link:hover,.permission-link:focus-visible{background:#fff7dd;border-color:#caa5408c;color:#4a3410;outline:none}.permission-link--dark{background:#111827;color:#fff8ea;border-color:#111827}.permission-link--compact{min-height:34px;padding:0 14px;font-size:.86rem;background:#fff7dd;border-color:#caa54075;color:#4a3410}.permission-link--compact:hover,.permission-link--compact:focus-visible{background:linear-gradient(135deg,#d8b75a,#b98b1f);border-color:#b98b1f;color:#18120a}.permission-recipient-table{border:1px solid #e8edf3;border-radius:16px;overflow:hidden;background:#fff}.permission-recipient-table__head,.permission-recipient-row{display:grid;grid-template-columns:minmax(0,1.4fr) 140px 170px 130px;gap:14px;padding:14px 16px;align-items:center}.permission-recipient-table__head{background:#0f172a;color:#fff;font-size:.84rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.permission-recipient-row+.permission-recipient-row{border-top:1px solid #edf2f7}.permission-recipient-row strong{display:block;color:#111827;margin-bottom:4px}.permission-recipient-row span{color:#64748b;font-size:.9rem}.student-permission-card{padding:18px;display:grid;gap:14px}.student-permission-card__top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.student-permission-card__actions{display:flex;gap:10px;flex-wrap:wrap}.permission-action-btn{border:0;min-height:42px;border-radius:999px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;font-weight:700;cursor:pointer}.permission-action-btn--accept{background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a}.permission-action-btn--reject{background:#111827;color:#fff8ea}.permission-empty{padding:18px;border-radius:18px;border:1px dashed #d5dbe4;text-align:center;color:#6b7280;background:#fff}@media(max-width:980px){.permission-letters__layout{grid-template-columns:1fr}}@media(max-width:780px){.permission-recipient-table__head,.permission-recipient-row,.student-permission-card__top,.student-permission-card__actions,.permission-form__footer{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.permission-link,.permission-action-btn,.permission-primary-btn,.permission-letter-item__summary,.permission-delete-btn{width:100%}.permission-letter-item__summary-wrap,.permission-letter-item__summary{flex-direction:column}}.profile-module{display:flex;flex-direction:column;gap:20px}.profile-module__hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:28px;border-radius:24px;background:linear-gradient(135deg,#111,#262626);color:#fff9e8;box-shadow:0 24px 48px #1111112e}.profile-module__eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;color:#fff9e8ad}.profile-module__hero h2{margin:0 0 8px;font-size:clamp(1.7rem,2vw,2.2rem)}.profile-module__hero p{margin:0;max-width:680px;line-height:1.6;color:#fff9e8c7}.profile-module__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.profile-alert{padding:14px 16px;border-radius:16px;font-weight:600;border:1px solid transparent}.profile-alert--success{background:#ecfdf3;color:#166534;border-color:#bbf7d0}.profile-alert--error{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.profile-grid{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(0,1.35fr);gap:20px;align-items:start}.profile-card--documents{grid-column:1 / -1}.profile-card{background:#ffffffeb;border:1px solid rgba(202,165,64,.16);border-radius:24px;padding:24px;box-shadow:0 18px 40px #18212f0f}.profile-card__header{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.profile-card__header h3{margin:0;font-size:1.1rem;color:#1f2937}.profile-card__header span{color:#6b7280;font-size:.94rem}.profile-summary{display:flex;flex-direction:column;gap:12px}.profile-avatar-card{display:grid;justify-items:center;gap:14px;padding:20px;margin-bottom:18px;border-radius:20px;background:linear-gradient(180deg,#fffefb,#f8f5ed);border:1px solid #f1e7c7;text-align:center}.profile-avatar-card__image{width:112px;height:112px;border-radius:999px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;box-shadow:0 16px 28px #b98b1f2e}.profile-avatar-card__image img{width:100%;height:100%;object-fit:cover;display:block}.profile-avatar-card__copy strong{display:block;color:#111827;margin-bottom:4px}.profile-avatar-card__copy span{color:#6b7280;font-size:.9rem;line-height:1.5}.profile-avatar-card__upload{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 14px;border-radius:999px;background:#caa54024;color:#8c6915;font-weight:700;cursor:pointer}.profile-avatar-card__controls{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.profile-avatar-card__hint{width:100%;margin-top:-.15rem;color:#141b2db8;font-size:.84rem;text-align:center}.profile-avatar-card__upload--ghost{border:1px solid rgba(202,165,64,.24);background:#fff}.profile-avatar-card__upload input{display:none}.profile-avatar-picker{width:100%;display:grid;gap:12px;margin-top:4px}.profile-avatar-picker__header strong{display:block;color:#111827;margin-bottom:4px}.profile-avatar-picker__header span{color:#6b7280;font-size:.88rem}.profile-avatar-picker__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.profile-avatar-option{border:1px solid #f1e7c7;border-radius:18px;background:#fff;padding:12px;display:grid;justify-items:center;gap:10px;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.profile-avatar-option:hover{transform:translateY(-1px);box-shadow:0 12px 24px #18212f14}.profile-avatar-option.is-active{border-color:#caa540;box-shadow:0 0 0 3px #caa54024;background:#fffdf7}.profile-avatar-option img{width:74px;height:74px;border-radius:18px;object-fit:cover;display:block}.profile-avatar-option span{font-size:.86rem;font-weight:700;color:#374151}.profile-summary__item{display:flex;align-items:flex-start;gap:14px;padding:14px;border-radius:18px;background:linear-gradient(180deg,#fffefb,#f8f5ed);border:1px solid #f1e7c7}.profile-summary__icon{width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#caa54024;color:#9a7414;flex-shrink:0}.profile-summary__item p{margin:0 0 4px;color:#6b7280;font-size:.88rem}.profile-summary__item strong{color:#111827;line-height:1.4}.profile-documents{display:grid;gap:12px}.profile-document-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 16px;border-radius:18px;background:linear-gradient(180deg,#fffefb,#f8f5ed);border:1px solid #f1e7c7}.profile-document-item__meta{display:flex;align-items:center;gap:12px;min-width:0}.profile-document-item__icon{width:40px;height:40px;border-radius:12px;background:#caa54024;color:#9a7414;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.profile-document-item__meta strong{display:block;color:#111827;margin-bottom:4px}.profile-document-item__meta span{color:#6b7280;font-size:.9rem}.profile-document-item__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.profile-document-item__action{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;background:#111827;color:#fff8ea;text-decoration:none;font-weight:700;flex-shrink:0}.profile-document-item__secondary{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;background:#fff;color:#0f172a;text-decoration:none;font-weight:700;flex-shrink:0;border:1px solid rgba(202,165,64,.24);cursor:pointer}.profile-documents__empty{padding:18px;border-radius:18px;border:1px dashed #d5dbe4;text-align:center;color:#6b7280;background:#fff}.profile-form,.profile-readonly{display:flex;flex-direction:column;gap:20px}.profile-readonly__section{display:flex;flex-direction:column;gap:14px}.profile-readonly__section+.profile-readonly__section{padding-top:18px;border-top:1px solid #edf2f7}.profile-readonly__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.profile-readonly__item{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:18px;background:linear-gradient(180deg,#fffefb,#f8f5ed);border:1px solid #f1e7c7}.profile-readonly__item--wide{grid-column:1 / -1}.profile-readonly__item span{color:#6b7280;font-size:.88rem;font-weight:700}.profile-readonly__item strong{color:#111827;line-height:1.5;font-size:.98rem}.profile-form__section{display:flex;flex-direction:column;gap:14px}.profile-form__section+.profile-form__section{padding-top:18px;border-top:1px solid #edf2f7}.profile-form__section-header h4{margin:0 0 6px;font-size:1rem;color:#7a5a0d}.profile-form__section-header p{margin:0;color:#6b7280;font-size:.92rem}.profile-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.profile-form__field{display:flex;flex-direction:column;gap:8px}.profile-form__field--wide{grid-column:1 / -1}.profile-form__field span{font-weight:700;color:#334155;font-size:.92rem}.profile-form__field input{width:100%;min-height:46px;box-sizing:border-box;border:1px solid #dbe3ec;border-radius:14px;background:#fff;padding:12px 14px;color:#0f172a;font-size:.96rem;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.profile-form__field input:focus{outline:none;border-color:#caa540;box-shadow:0 0 0 4px #caa5401f;background:#fffef9}.profile-form__field input:disabled{background:#f8fafc;color:#64748b;cursor:default}.profile-password-input{position:relative}.profile-password-input input{padding-right:46px}.profile-password-toggle{position:absolute;top:50%;right:14px;transform:translateY(-50%);width:28px;height:28px;border:0;background:transparent;color:#8c6915;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.profile-password-toggle:hover{color:#6f5310}.profile-form__footer{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding-top:4px}.profile-form__hint{display:inline-flex;align-items:center;gap:8px;color:#6b7280;font-size:.92rem}.profile-btn{border:0;border-radius:14px;min-height:46px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;font-weight:700;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.profile-btn:hover{transform:translateY(-1px)}.profile-btn--primary{background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;box-shadow:0 14px 28px #b98b1f33}.profile-btn--secondary{background:#eef2f7;color:#0f172a}.profile-btn--ghost{background:#fff9e81a;color:#fff9e8;border:1px solid rgba(255,249,232,.18)}.profile-state{padding:22px;border-radius:18px;background:#fff;color:#475569;border:1px solid #e2e8f0}.profile-state--error{color:#b91c1c;border-color:#fecaca;background:#fef2f2}.profile-modal__overlay{position:fixed;inset:0;background:#0f172a75;display:flex;align-items:center;justify-content:center;padding:18px;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.profile-modal{position:relative;width:min(520px,100%);border-radius:24px;overflow:hidden;background:linear-gradient(180deg,#fffdf8,#f6f1e4);border:1px solid rgba(202,165,64,.18);box-shadow:0 24px 55px #0f172a38}.profile-modal__close{position:absolute;top:16px;right:16px;width:38px;height:38px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:#ffffff14;color:#fff8ea;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;line-height:1}.profile-modal__header{display:flex;align-items:center;gap:14px;margin-bottom:0;padding:24px 24px 18px;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c);border-bottom:1px solid rgba(202,165,64,.18)}.profile-modal__icon{width:42px;height:42px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#caa54024;color:#9a7414;flex-shrink:0}.profile-modal__header h3{margin:0 0 4px;color:#fff8ea}.profile-modal__header p{margin:0;color:#fff8eabd}.profile-modal__form{display:flex;flex-direction:column;gap:14px;padding:20px 24px 24px}.profile-modal__actions{display:flex;gap:12px;margin-top:4px}.profile-password-requirements{margin-top:2px}.profile-modal--signature{width:min(720px,100%)}.profile-signature-switch{display:flex;gap:10px;flex-wrap:wrap}.profile-signature-switch__option{border:1px solid rgba(17,24,39,.12);background:#fff;color:#111827;min-height:44px;border-radius:14px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-weight:700}.profile-signature-switch__option.is-active{background:#111827;color:#fff8ea}.profile-signature-pad{border:1px solid rgba(17,24,39,.12);border-radius:18px;background:#fff;padding:12px}.profile-signature-pad canvas{width:100%;min-height:220px;background:#fff;border:1px dashed rgba(17,24,39,.2);border-radius:14px;touch-action:none}.profile-signature-pad__actions{margin-top:10px;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;color:#64748b;font-size:.92rem}.profile-signature-link{border:0;background:transparent;color:#111827;cursor:pointer;font-weight:700}.profile-signature-upload{border:1px solid rgba(17,24,39,.12);border-radius:18px;background:#fff;padding:16px;display:grid;gap:10px}.profile-signature-upload input[type=file]{width:100%}.profile-signature-upload span{color:#475569;font-size:.92rem}@media(max-width:980px){.profile-grid{grid-template-columns:1fr}.profile-module__hero{flex-direction:column}.profile-module__actions{width:100%;justify-content:flex-start}}@media(max-width:720px){.profile-form__grid,.profile-readonly__grid,.profile-avatar-picker__grid{grid-template-columns:1fr}.profile-modal{width:100%}.profile-modal__actions,.profile-form__footer,.profile-document-item__actions,.profile-signature-switch,.profile-signature-pad__actions{flex-direction:column;align-items:stretch}.profile-btn,.profile-document-item__secondary,.profile-document-item__action,.profile-signature-switch__option{width:100%;justify-content:center}}.report-cards-container{width:100%;display:flex;flex-direction:column;gap:20px;padding:28px;min-height:100vh;box-sizing:border-box;background:radial-gradient(circle at top right,rgba(201,162,39,.1),transparent 28%),linear-gradient(180deg,#fffdf8,#f6f1e4)}.report-empty-state{padding:24px;border-radius:18px;text-align:center;font-weight:700;color:#6b7280;border:1px dashed rgba(201,162,39,.2);background:#ffffffc7}.report-hero{display:flex;justify-content:space-between;align-items:stretch;gap:20px;flex-wrap:wrap;padding:28px;border-radius:26px;background:linear-gradient(135deg,#101010,#1d1d1d 55%,#32260d);border:1px solid rgba(201,162,39,.18);box-shadow:0 22px 42px #0f172a2e}.report-hero__copy{flex:1;min-width:280px}.report-hero__badge{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border-radius:999px;background:#fff8ea14;border:1px solid rgba(201,162,39,.24);color:#e7cb73;font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}.report-hero__copy h1{margin:0;color:#fff8ea;font-size:clamp(2rem,3vw,2.9rem);line-height:1.05}.report-hero__copy p{margin:10px 0 0;max-width:760px;line-height:1.65;color:#fff8eac2}.report-hero__stats{display:grid;grid-template-columns:repeat(2,minmax(170px,1fr));gap:12px}.report-hero__stat{padding:18px;border-radius:18px;background:#ffffff14;border:1px solid rgba(255,248,234,.14)}.report-hero__stat span{display:block;margin-bottom:8px;font-size:.8rem;font-weight:700;color:#fff8eab8}.report-hero__stat strong{color:#fff8ea;font-size:1.2rem}.report-topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.report-back-btn{border:none;background:#111827;color:#fff8ea;border-radius:14px;min-height:48px;padding:0 18px;font-size:.92rem;font-weight:800;cursor:pointer}.report-back-btn:hover{color:#f3cf63}.report-pdf-btn{border:none;min-height:48px;background:linear-gradient(135deg,#e7cb73,#c9a227);color:#17120a;border-radius:14px;padding:0 18px;font-size:.92rem;font-weight:800;cursor:pointer;box-shadow:0 14px 30px #c9a22738}.report-pdf-btn:hover{transform:translateY(-1px)}.report-pdf-btn:disabled{opacity:.7;cursor:not-allowed}.report-period-card{display:flex;flex-direction:column;gap:8px;min-width:220px;padding:14px 16px;border-radius:18px;background:#ffffffeb;border:1px solid rgba(201,162,39,.16);box-shadow:0 14px 26px #18212f0f}.report-period-label{font-size:.76rem;font-weight:800;color:#8b6b1d;letter-spacing:.14em;text-transform:uppercase}.report-period-select-wrap{position:relative;width:100%;min-width:0}.report-period-select-wrap:after{content:"▾";position:absolute;right:14px;top:50%;transform:translateY(-50%);pointer-events:none;color:#8b6b1d;font-size:14px;font-weight:700}.report-period-select{width:100%;appearance:none;border:1px solid #e1d3ae;background:#fffdf8;color:#1f2937;border-radius:14px;padding:12px 38px 12px 14px;font-size:.95rem;font-weight:700}.report-period-select:focus{outline:none;border-color:#c9a437;box-shadow:0 0 0 4px #c9a43724}.report-period-select-wrap:after{display:none}.report-period-select{width:100%;min-width:0}.report-period-select .styled-select__trigger{width:100%;min-width:0;min-height:48px;box-sizing:border-box;border:1px solid #e1d3ae;background:#fffdf8;color:#1f2937;box-shadow:none}.report-period-select .styled-select__value,.report-period-select .styled-select__icon{color:#1f2937}.report-courses-grid,.report-students-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.report-course-card,.report-student-card,.report-empty-card{background:#fffffff5;border:1px solid rgba(201,162,39,.14);border-radius:22px;padding:22px 20px;box-shadow:0 16px 30px #18212f14;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.report-course-card,.report-student-card{cursor:pointer}.report-course-card:hover,.report-student-card:hover{transform:translateY(-4px);border-color:#c9a22761;box-shadow:0 20px 36px #18212f1f}.report-card__eyebrow{display:inline-flex;margin-bottom:10px;color:#8b6b1d;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:800}.report-course-card h3,.report-student-card h3{margin:0 0 8px;color:#111827;font-size:1.08rem;font-weight:800}.report-course-card p,.report-student-card p,.report-empty-card{margin:0;color:#64748b;line-height:1.5}.report-course-card span:last-child,.report-student-card span:last-child{display:inline-block;margin-top:12px;color:#a8841d;font-weight:700;font-size:.9rem}.report-student-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}.summary-item{background:#fffffff5;border:1px solid rgba(201,162,39,.14);border-radius:20px;padding:18px 20px;box-shadow:0 14px 26px #18212f0f}.summary-item span{display:block;font-size:.82rem;color:#6b7280;margin-bottom:8px;font-weight:700}.summary-item strong{font-size:1rem;color:#111827;font-weight:800}.summary-item.highlight{background:linear-gradient(135deg,#fff7df,#fffef8);border-color:#c9a22761}.summary-item.highlight strong{color:#8b5e00}.report-table-wrapper{background:#fffffff5;border:1px solid rgba(201,162,39,.14);border-radius:24px;box-shadow:0 16px 30px #18212f14;overflow:auto}.report-table{width:100%;min-width:760px;border-collapse:collapse}.report-table thead th{background:#111827;color:#fff8ea;padding:15px 14px;font-size:.84rem;font-weight:800;text-align:center}.report-table tbody td{padding:14px;text-align:center;border-bottom:1px solid #f0ebe0;color:#111827;background:#fffef9}.report-table tbody tr:hover td{background:#fff8ea}.subject-cell{text-align:left!important;font-weight:800;color:#111827}.final-score{font-weight:900;color:#8b5e00}.performance-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;border-radius:999px;padding:0 12px;background:#fff7df;border:1px solid rgba(212,175,55,.45);color:#6b4f00;font-weight:800;font-size:.8rem}@media(max-width:980px){.report-cards-container{padding:20px}}@media(max-width:720px){.report-hero{padding:22px}.report-hero__stats,.report-courses-grid,.report-students-grid{grid-template-columns:1fr}.report-topbar,.report-period-card,.report-back-btn,.report-pdf-btn{width:100%}}html,body,#root{margin:0;height:100%;min-height:100%}.dashboard-layout{--sidebar-width: 272px;--sidebar-collapsed-width: 92px;--panel-background: linear-gradient(180deg, #f7f3eb 0%, #fdfcf8 100%);--sidebar-background: linear-gradient(180deg, #111111 0%, #1d1d1d 100%);--accent: #caa540;--accent-strong: #b2871c;--text-strong: #18212f;--text-soft: #6b7280;display:flex;height:100vh;min-height:100vh;overflow:hidden;background:var(--panel-background);color:var(--text-strong);font-family:Poppins,sans-serif}.dashboard-layout--collapsed{--sidebar-width: var(--sidebar-collapsed-width)}.dashboard-sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);height:100vh;position:sticky;top:0;z-index:20;display:flex;flex-direction:column;gap:20px;padding:28px 18px 20px;color:#fff7dd;background:var(--sidebar-background);box-shadow:inset -1px 0 #ffffff0f;transition:width .28s ease,min-width .28s ease;box-sizing:border-box;overflow:visible;flex-shrink:0}.dashboard-sidebar__header{display:flex;flex-direction:column;gap:6px;padding:0 8px 18px;border-bottom:1px solid rgba(202,165,64,.35)}.dashboard-sidebar__header h2{margin:0;font-size:1.45rem;font-weight:700;color:#fff7dd}.dashboard-sidebar__eyebrow{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#fff7ddad}.dashboard-sidebar__nav{display:flex;flex:1;flex-direction:column;gap:8px;min-height:0}.dashboard-sidebar__link,.dashboard-sidebar__logout{width:100%;border:0;display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:16px;cursor:pointer;background:transparent;color:inherit;text-align:left;transition:transform .18s ease,background .18s ease,color .18s ease}.dashboard-sidebar__link:hover,.dashboard-sidebar__logout:hover{background:#caa54029}.dashboard-sidebar__link.is-active{background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;font-weight:700;box-shadow:0 14px 30px #b98b1f40}.dashboard-sidebar__footer{margin-top:auto;display:grid;gap:14px}.dashboard-sidebar__brand{display:flex;align-items:center;justify-content:center;padding:0 0 4px;margin-top:-28px}.dashboard-sidebar__brand-logo{width:132px;height:132px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 10px 18px rgba(0,0,0,.2))}.dashboard-sidebar__logout{border:1px solid rgba(202,165,64,.4);color:#ffd28b}.dashboard-sidebar__toggle{position:absolute;top:28px;right:-20px;width:44px;height:44px;padding:0;border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;cursor:pointer;box-shadow:0 16px 28px #1111113d;z-index:40;border:2px solid #f7f3eb;overflow:visible;line-height:0;flex-shrink:0}.dashboard-sidebar__toggle svg{width:20px;height:20px;stroke-width:3;stroke:currentColor;fill:none;display:block;overflow:visible}.dashboard-sidebar__toggle:hover{transform:translate(2px);box-shadow:0 18px 34px #11111152}.dashboard-sidebar__icon{width:20px;height:20px;flex-shrink:0}.dashboard-layout--collapsed .dashboard-sidebar__header{align-items:center;padding-left:0;padding-right:0}.dashboard-layout--collapsed .dashboard-sidebar__header h2,.dashboard-layout--collapsed .dashboard-sidebar__link span,.dashboard-layout--collapsed .dashboard-sidebar__logout span{display:none}.dashboard-layout--collapsed .dashboard-sidebar__link,.dashboard-layout--collapsed .dashboard-sidebar__logout{justify-content:center;padding-left:12px;padding-right:12px}.dashboard-layout--collapsed .dashboard-sidebar__brand{justify-content:center;padding-left:0;padding-right:0}.dashboard-layout--collapsed .dashboard-sidebar__brand-logo{width:72px;height:72px}.dashboard-panel{flex:1;min-width:0;height:100vh;display:flex;flex-direction:column;padding:20px;box-sizing:border-box;overflow:hidden;position:relative}.dashboard-panel__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 26px;border:1px solid rgba(202,165,64,.18);border-radius:24px;background:#ffffffe0;box-shadow:0 20px 40px #18212f0f}.dashboard-panel__header>*,.dashboard-panel__tools,.dashboard-panel__content>*{min-width:0}.dashboard-panel__header h1{margin:0;font-size:clamp(1.8rem,2vw,2.4rem);color:var(--text-strong)}.dashboard-panel__eyebrow{margin:0 0 6px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-strong);font-weight:700}.dashboard-panel__tools{display:flex;align-items:center;justify-content:flex-end;gap:12px}.dashboard-panel__content{flex:1;min-height:0;margin-top:18px;padding:24px;border-radius:28px;background:#ffffffd1;box-shadow:0 18px 40px #18212f0f;overflow-y:auto;overflow-x:hidden}.admin-content{min-width:0}.dashboard-inactivity-backdrop{position:fixed;inset:0;z-index:50000;display:flex;align-items:center;justify-content:center;padding:24px;background:#08080c9e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.dashboard-inactivity-modal{width:min(860px,100%);display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);overflow:hidden;border-radius:30px;border:1px solid rgba(202,165,64,.24);background:linear-gradient(135deg,#0f0f12,#1a1b21);box-shadow:0 36px 90px #0006}.dashboard-inactivity-modal__media{min-height:100%;background:linear-gradient(180deg,#caa5402e,#caa5400a)}.dashboard-inactivity-modal__media img{width:100%;height:100%;object-fit:cover;display:block}.dashboard-inactivity-modal__content{display:grid;align-content:center;gap:16px;padding:42px 38px;color:#fff8ea}.dashboard-inactivity-modal__badge{display:inline-flex;align-items:center;width:fit-content;min-height:34px;padding:0 14px;border-radius:999px;background:#caa54024;border:1px solid rgba(202,165,64,.32);color:#e5c96b;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.dashboard-inactivity-modal__content h2{margin:0;font-size:clamp(2rem,3vw,2.8rem);line-height:1.02}.dashboard-inactivity-modal__content p{margin:0;max-width:420px;color:#fff8eac7;line-height:1.7;font-size:1rem}.dashboard-inactivity-modal__button{width:fit-content;min-height:48px;padding:0 22px;border:0;border-radius:16px;background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;font-size:.96rem;font-weight:800;cursor:pointer;box-shadow:0 18px 36px #b98b1f47;transition:transform .18s ease,box-shadow .18s ease}.dashboard-inactivity-modal__button:hover{transform:translateY(-1px);box-shadow:0 22px 40px #b98b1f52}.dashboard-home{display:flex;flex-direction:column;gap:22px}.dashboard-home__badge{display:inline-flex;align-items:center;width:fit-content;min-height:32px;padding:0 14px;border-radius:999px;background:#ffffff1a;border:1px solid rgba(202,165,64,.28);color:#ebd079;font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.dashboard-home__hero-panel{display:grid;grid-template-columns:1fr;gap:10px;padding:28px;border-radius:28px;background:linear-gradient(135deg,#101010,#17181f 56%,#2d220b);color:#fff8ea;border:1px solid rgba(202,165,64,.18);box-shadow:0 24px 48px #1111112e}.dashboard-home__hero-copy{display:grid;gap:14px;align-content:start}.dashboard-home__hero-copy h2{margin:0;font-size:clamp(2rem,3vw,3rem);line-height:1.02}.dashboard-home__hero-copy p{margin:0;max-width:680px;line-height:1.68;color:#fff8eac7}.dashboard-home__calendar-shell{display:grid;gap:16px;padding:22px;border-radius:28px;background:#ffffffeb;border:1px solid rgba(202,165,64,.14);box-shadow:0 18px 40px #18212f14}.dashboard-home__section-head{display:flex;align-items:end;justify-content:space-between;gap:14px;flex-wrap:wrap}.dashboard-home__section-head span{display:block;margin-bottom:6px;color:#a37c17;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.dashboard-home__section-head h3{margin:0;color:#18212f;font-size:1.35rem}.dashboard-home__section-head p{margin:0;max-width:360px;color:var(--text-soft);line-height:1.6;text-align:right}.dashboard-home__admin-hero{display:block;padding:30px;border-radius:30px;background:linear-gradient(135deg,#111,#17181f 55%,#241b08);color:#fff8ea;border:1px solid rgba(202,165,64,.18);box-shadow:0 28px 54px #1113}.dashboard-home__admin-copy{display:grid;align-content:center;gap:16px}.dashboard-home__admin-copy h2{margin:0;font-size:clamp(2.2rem,3.2vw,3.4rem);line-height:1}.dashboard-home__admin-copy p{margin:0;max-width:620px;color:#fff8eac7;line-height:1.7}.dashboard-home__admin-pills{display:flex;gap:10px;flex-wrap:wrap}.dashboard-home__admin-pills span{min-height:36px;display:inline-flex;align-items:center;padding:0 14px;border-radius:999px;background:#ffffff14;border:1px solid rgba(202,165,64,.2);color:#fff8ea;font-weight:700}.dashboard-home__admin-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.dashboard-home__admin-link{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border-radius:999px;border:1px solid rgba(202,165,64,.28);background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;font-weight:800;cursor:pointer;box-shadow:0 16px 30px #b98b1f3d;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.dashboard-home__admin-link:hover{transform:translateY(-1px);filter:brightness(1.03);box-shadow:0 20px 36px #b98b1f4d}.dashboard-home__admin-showcase{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,46%);gap:0;align-items:stretch;min-height:760px;min-width:0}.dashboard-home__admin-showcase-copy{display:grid;gap:22px;height:100%;padding-right:22px;box-sizing:border-box;min-width:0}.dashboard-home__admin-reference-media{width:100%;height:100%;min-height:100%;align-self:stretch;border-radius:0 30px 30px 0;background-size:cover;background-position:center;min-width:0;box-shadow:inset 0 0 0 1px #caa54024,0 22px 46px #18212f1a}.dashboard-home__admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.dashboard-home__admin-card{padding:20px 22px;border-radius:22px;background:#ffffffeb;border:1px solid rgba(202,165,64,.12);box-shadow:0 14px 28px #18212f0f;display:grid;gap:10px}.dashboard-home__admin-card span{color:#a37c17;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.dashboard-home__admin-card strong{color:#18212f;font-size:1.08rem;line-height:1.5}@media(max-width:1280px){.dashboard-home__admin-showcase{grid-template-columns:minmax(0,1fr);min-height:auto;gap:18px}.dashboard-home__admin-showcase-copy{padding-right:0}.dashboard-home__admin-reference-media{min-height:340px;border-radius:28px}}@media(max-width:1180px){.dashboard-layout{--sidebar-width: 224px;--sidebar-collapsed-width: 82px}.dashboard-sidebar{padding:24px 14px 18px}.dashboard-sidebar__header h2{font-size:1.25rem}.dashboard-sidebar__link,.dashboard-sidebar__logout{gap:12px;padding:11px 12px;border-radius:14px}.dashboard-sidebar__brand-logo{width:104px;height:104px}.dashboard-layout--collapsed .dashboard-sidebar__brand-logo{width:64px;height:64px}.dashboard-panel{padding:16px}.dashboard-panel__header{padding:18px 20px}.dashboard-panel__content{padding:20px}}@media(max-width:900px){.dashboard-layout{--sidebar-width: 92px;--sidebar-collapsed-width: 72px}.dashboard-sidebar{padding:22px 10px 16px}.dashboard-sidebar__header{align-items:center;padding-left:0;padding-right:0}.dashboard-sidebar__header h2,.dashboard-sidebar__link span,.dashboard-sidebar__logout span{display:none}.dashboard-sidebar__nav{gap:6px}.dashboard-sidebar__link,.dashboard-sidebar__logout{justify-content:center;padding-left:10px;padding-right:10px;gap:10px}.dashboard-sidebar__brand{margin-top:-10px}.dashboard-sidebar__brand-logo{width:64px;height:64px}.dashboard-sidebar__toggle{right:-18px}.dashboard-panel__header{flex-direction:column;align-items:flex-start}.dashboard-home__admin-grid{grid-template-columns:1fr}.dashboard-home__admin-reference-media{min-height:260px}.dashboard-inactivity-modal{grid-template-columns:1fr}.dashboard-inactivity-modal__media{min-height:220px}.dashboard-inactivity-modal__content{padding:28px 24px}.dashboard-inactivity-modal__button{width:100%;justify-content:center}}@media(max-width:720px){.dashboard-layout{display:block;min-height:100vh;height:auto;overflow:visible;padding-top:8px}.dashboard-sidebar{position:fixed;top:8px;left:0;bottom:8px;width:min(80vw,296px);min-width:min(80vw,296px);height:auto;border-radius:0 24px 24px 0;padding:22px 14px 18px;box-shadow:0 28px 60px #0f172a47;transform:translate(calc(-100% - 14px));transition:transform .28s ease,width .28s ease,min-width .28s ease,box-shadow .28s ease}.dashboard-layout--collapsed .dashboard-sidebar{width:min(80vw,296px);min-width:min(80vw,296px);transform:translate(0);box-shadow:0 28px 60px #0f172a47,0 0 0 999px #0f172a38}.dashboard-sidebar__header{align-items:flex-start;padding:0 6px 14px}.dashboard-sidebar__header h2,.dashboard-sidebar__link span,.dashboard-sidebar__logout span{display:inline}.dashboard-sidebar__nav{display:flex;gap:8px}.dashboard-sidebar__link,.dashboard-sidebar__logout{min-height:48px;justify-content:flex-start;padding-left:14px;padding-right:14px}.dashboard-sidebar__brand{justify-content:center;margin-top:0}.dashboard-sidebar__brand-logo{width:84px;height:84px}.dashboard-sidebar__toggle{top:18px;right:-56px;bottom:auto;width:42px;height:42px;border-width:3px;box-shadow:0 16px 30px #0f172a38}.dashboard-layout:not(.dashboard-layout--collapsed) .dashboard-sidebar__header h2,.dashboard-layout:not(.dashboard-layout--collapsed) .dashboard-sidebar__link span,.dashboard-layout:not(.dashboard-layout--collapsed) .dashboard-sidebar__logout span{display:none}.dashboard-panel{height:auto;min-height:100vh;padding:18px 10px 10px;overflow:visible}.dashboard-panel__header,.dashboard-panel__content{padding:16px;border-radius:20px}.dashboard-panel__header{padding-left:58px}.dashboard-panel__tools{width:100%;justify-content:stretch}.dashboard-panel__tools>*{width:100%}.dashboard-home__hero-panel,.dashboard-home__calendar-shell,.dashboard-home__admin-hero{padding:20px}.dashboard-home__admin-link{width:100%;justify-content:center;flex-wrap:wrap;text-align:center}.dashboard-home__admin-reference-media{min-height:240px;border-radius:24px}.dashboard-home__section-head p{max-width:none;text-align:left}}.notification-wrapper{position:relative;display:flex;align-items:center}.bell-container{width:46px;height:46px;border-radius:14px;border:1px solid #e5e7eb;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:.2s ease;padding:0}.bell-container:hover{background:#f8fafc}.bell-container svg{color:#0f172a;transition:color .2s ease,transform .2s ease}.bell-container:hover svg{color:#a8841d;transform:scale(1.08)}.bell-container.has-unread{border-color:#d4af37;box-shadow:0 0 0 3px #d4af371f}.bell-container.has-unread svg{color:#c9a227}.notification-badge{position:absolute;top:-6px;right:-6px;min-width:19px;height:19px;border-radius:999px;background:#dc2626;color:#fff;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid #ffffff}.notification-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:380px;max-height:460px;overflow:hidden;background:#fff;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 20px 40px #0f172a24;z-index:9999;animation:dropdownFade .2s ease}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.notification-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid #eef2f7}.notification-dropdown-header h4{margin:0;font-size:16px;color:#6b4f00}.notification-counter{font-size:12px;font-weight:700;color:#6b7280}.notification-list{max-height:390px;overflow-y:auto}.notification-item{padding:14px 16px;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background .18s ease}.notification-item:hover{background:#f8fafc}.notification-item.unread{background:#fffdf5}.notification-item.read{background:#fff}.notification-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.notification-item strong{color:#0f172a;font-weight:600;display:block;margin-bottom:4px;font-size:14px}.notification-item p{margin:8px 0 10px;color:#374151;font-size:13px;line-height:1.45}.notification-item-footer{display:flex;justify-content:space-between;align-items:center}.notification-item-footer small{color:#6b7280;font-size:11px}.notification-dot{width:9px;height:9px;border-radius:50%;background:#d4af37}.notification-item-actions{display:flex;align-items:center;gap:6px}.notification-action-btn{width:28px;height:28px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;color:#334155;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.18s ease;padding:0}.notification-action-btn:hover{background:#f8fafc}.notification-action-btn.delete:hover{color:#b91c1c;border-color:#fecaca;background:#fef2f2}.empty{color:#6b7280;text-align:center;padding:18px 16px;margin:0;font-size:14px}@media(max-width:640px){.notification-dropdown{width:min(360px,calc(100vw - 32px));right:-12px}}.admin-dashboard{display:flex;min-height:100vh;background-color:#f8f9fa;align-items:stretch}.sidebar{width:240px;background:#0f0f0f;color:#fff;display:flex;flex-direction:column;padding:20px 12px;transition:all .25s ease;height:100vh;position:sticky;top:0}.sidebar.collapsed{width:75px}.sidebar-header{font-size:1.4rem;font-weight:700;color:#d4af37;text-align:center;margin-bottom:25px}.sidebar-menu{list-style:none;padding:0;margin:0;flex:1}.sidebar-menu li{display:flex;align-items:center;gap:12px;padding:12px 14px;margin:6px 0;border-radius:10px;cursor:pointer;transition:.2s ease;font-weight:500}.sidebar-menu li:hover{background:#1e1e1e}.sidebar-menu li.active{background:linear-gradient(135deg,#d4af37,#b8962e);color:#fff}.sidebar.collapsed .sidebar-menu li{justify-content:center}.icon{min-width:20px}.logout{margin-top:auto;color:#f87171}.sidebar-divider{position:relative;margin:8px 0 18px;height:34px;flex-shrink:0}.collapse-btn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#0f0f0f;border:1px solid rgba(212,175,55,.35);color:#d4af37;width:34px;height:50px;border-radius:10px;padding:0;display:flex;align-items:center;justify-content:center;z-index:3;cursor:pointer;transition:.2s ease}.collapse-btn:hover{background:#151515;box-shadow:0 0 10px #d4af3759}.collapse-btn.rotated{transform:translate(-160%,-50%) rotate(180deg)}.sidebar.collapsed .sidebar-menu span{display:none}.sidebar.collapsed .collapse-btn{left:37px}.admin-main{flex:1;display:flex;flex-direction:column;min-height:100vh}.admin-header{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:12px 24px;border-bottom:1px solid #e5e7eb}.admin-content{flex:1;padding:24px;background-color:#f8fafc;color:#333}.course-assign{background:#fff;padding:24px;border-radius:16px;box-shadow:0 10px 25px #00000014;max-width:1100px;margin:0 auto;width:100%;min-width:0;overflow:hidden}.course-assign h2{font-size:1.6rem;font-weight:700;margin-bottom:16px}.course-assign table{width:100%;border-collapse:collapse;background:#fff}.course-assign th,.course-assign td{padding:12px 14px;border-bottom:1px solid #eee;font-size:14px}.course-assign th{background:#f8fafc;text-align:left}.course-assign tbody tr:hover{background:#f9fafb}.course-assign button{border-radius:8px;font-size:13px;padding:6px 12px;border:none;cursor:pointer}.course-assign button.ghost{background:#f1f5f9}.course-assign button.primary{background:#2563eb;color:#fff}.modal-overlay{position:fixed;inset:0;padding:24px;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1200}.modal-content{background:#fff;width:950px;max-width:95%;max-height:90vh;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;animation:fadeIn .25s ease-in-out}.modal-header{display:flex;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #eee}.modal-header h3{font-size:1.2rem}.tabs{display:flex;gap:8px;padding:10px 20px 0;flex-wrap:wrap}.tab{padding:8px 14px;background:#f1f5f9;border-radius:8px 8px 0 0;font-size:13px;cursor:pointer}.tab.active{background:#fff;font-weight:600;border:1px solid #e5e7eb;border-bottom:none}.section{padding:16px 20px;flex:1;overflow-y:auto;min-width:0}.section label{display:block;font-size:13px;margin-bottom:6px}.section input,.section select{width:100%;padding:8px;border-radius:8px;border:1px solid #d1d5db;margin-bottom:12px;font-size:14px}.section input:focus,.section select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.student-list{max-height:320px;overflow-y:auto;border:1px solid #eee;border-radius:10px;padding:8px}.student-item{display:flex;align-items:center;gap:8px;padding:6px;font-size:14px;min-width:0}.subject-item{display:flex;justify-content:space-between;padding:6px 0;gap:10px;min-width:0}.subject-add{display:flex;gap:8px;margin-top:10px}.modal-footer{padding:12px 20px;border-top:1px solid #eee;display:flex;justify-content:flex-end}@keyframes fadeIn{0%{opacity:0;transform:translateY(-12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.admin-profile-container input{width:100%;padding:10px;margin-top:8px;margin-bottom:10px;border-radius:8px;border:1px solid #d1d5db;font-size:15px}.btn-primary{background-color:#2563eb;color:#fff;border:none;padding:10px 15px;border-radius:8px;cursor:pointer}.btn-secondary{background-color:gray;color:#fff;border:none;padding:10px 15px;border-radius:8px}.course-assign table button{background:linear-gradient(135deg,#d4af37,#b8962e);color:#111827;font-weight:600;border-radius:10px;padding:6px 14px;display:inline-flex;align-items:center;gap:6px;box-shadow:0 4px 12px #d4af3759;transition:all .25s ease}.course-assign table button:hover{background:linear-gradient(135deg,#e6c45c,#c9a635);transform:translateY(-1px);box-shadow:0 6px 18px #d4af3773}.modal-footer button.primary{background:linear-gradient(135deg,#d4af37,#b8962e);color:#111827;font-weight:600}.modal-footer button.primary:hover{background:linear-gradient(135deg,#e6c45c,#c9a635)}.subject-add button{background:linear-gradient(135deg,#d4af37,#b8962e);color:#111827;font-weight:600}.subject-add button:hover{background:linear-gradient(135deg,#e6c45c,#c9a635)}.course-assign button.danger{background:#111827;color:#fff8ea;border:1px solid #111827}.modal-content{width:1080px;max-width:min(1080px,calc(100vw - 48px));max-height:92vh;border-radius:20px;border:1px solid rgba(212,175,55,.18);box-shadow:0 28px 70px #0f172a47}.modal-header{padding:18px 22px;background:linear-gradient(135deg,#0f0f0f,#1f2937);border-bottom:1px solid rgba(212,175,55,.18);gap:16px;align-items:flex-start}.modal-header h3{margin:0;color:#f8fafc;font-size:1.2rem;font-weight:700;letter-spacing:.2px}.modal-header p{margin:6px 0 0;color:#fff8eabd;line-height:1.5}.modal-header button{background:#ffffff14;color:#f8fafc;border:1px solid rgba(212,175,55,.3);width:38px;height:38px;border-radius:10px;font-size:16px;transition:all .2s ease}.modal-header button:hover{background:#d4af372e;transform:scale(1.03)}.tabs{padding:14px 22px 0;gap:10px;border-bottom:1px solid #eef2f7;background:#fff;overflow-x:auto;scrollbar-width:thin}.tab{padding:10px 16px;background:#f8fafc;border:1px solid transparent;border-radius:12px 12px 0 0;font-size:13px;font-weight:600;color:#475569;transition:all .2s ease}.tab:hover{background:#fff8e6;color:#8b5e00}.tab.active{background:#fff;color:#8b5e00;border:1px solid #e5e7eb;border-bottom:1px solid #ffffff;box-shadow:0 -2px 8px #0f172a08}.section{padding:22px;background:linear-gradient(180deg,#fff,#fcfcfd)}.section label{font-size:.88rem;font-weight:700;color:#334155;margin-bottom:8px}.section input,.section select{border:1px solid #dbe3ec;background:#fff;min-height:44px;border-radius:12px;padding:10px 12px;font-size:14px;color:#0f172a;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;margin-bottom:14px}.section input::placeholder{color:#94a3b8}.section input:focus,.section select:focus{border-color:#d4af37;box-shadow:0 0 0 4px #d4af371f;background:#fffef9}.student-list{border:1px solid #e8edf3;border-radius:14px;background:#fff;padding:10px;max-height:360px;box-shadow:inset 0 1px #fff6}.student-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;font-size:14px;color:#1f2937;transition:background .18s ease}.student-item:hover{background:#fffaf0}.student-item input[type=checkbox]{width:16px;height:16px;accent-color:#b8962e;margin:0}.areas-subjects-admin{display:grid;grid-template-columns:320px 1fr;gap:20px;align-items:start;min-width:0}.areas-block{background:#fff;border:1px solid #e8edf3;border-radius:18px;padding:18px;box-shadow:0 10px 24px #0f172a0d;min-width:0;overflow:hidden}.areas-block h4{margin:0 0 14px;font-size:1rem;font-weight:800;color:#8b5e00;letter-spacing:.2px;padding-bottom:10px;border-bottom:1px solid #f1f5f9}.areas-block ul{list-style:none;padding:0;margin:0}.helper-text{font-size:.9rem;color:#64748b;background:#f8fafc;border:1px dashed #dbe3ec;padding:12px 14px;border-radius:12px;margin-bottom:12px}.helper-text.small{font-size:.84rem;margin-top:8px}.areas-block>ul>.subject-item{background:#fcfcfd;border:1px solid #edf2f7;border-radius:12px;padding:10px 12px;margin-bottom:10px;align-items:center}.areas-block>ul>.subject-item span{font-weight:700;color:#0f172a}.subject-add{display:flex;gap:10px;margin-top:14px;align-items:stretch;min-width:0;flex-wrap:wrap}.subject-add input,.subject-add select{margin-bottom:0;flex:1}.subject-add button{min-width:54px;border-radius:12px;padding:0 16px;font-weight:700;letter-spacing:.2px;max-width:100%}.subject-add-stacked{display:grid;grid-template-columns:1.4fr 1fr auto;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid #eef2f7}.admin-area-group{border:1px solid #ebeef4;border-radius:16px;background:linear-gradient(180deg,#fff,#fcfcfd);padding:14px;margin-bottom:16px;box-shadow:0 8px 20px #0f172a0a}.admin-area-group-title{display:inline-flex;align-items:center;gap:8px;margin-bottom:12px;font-size:.95rem;font-weight:800;color:#8b5e00;background:#fff8e6;border:1px solid rgba(212,175,55,.28);padding:8px 12px;border-radius:999px}.subject-item.subject-item-extended{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;margin-bottom:10px;border-radius:14px;border:1px solid #edf2f7;background:#fff;box-shadow:0 4px 10px #0f172a08}.subject-item.subject-item-extended:last-child{margin-bottom:0}.subject-item.subject-item-extended>span{font-weight:700;color:#111827;line-height:1.35;flex:1;min-width:0;overflow-wrap:anywhere}.subject-actions-inline{display:flex;align-items:center;gap:10px;min-width:290px;justify-content:flex-end;flex-wrap:wrap}.subject-actions-inline select{margin-bottom:0;min-width:180px;max-width:220px}.subject-actions-inline button{min-width:42px;height:42px;border-radius:12px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.course-assign button.ghost{background:#f8fafc;color:#0f172a;border:1px solid #e2e8f0;font-weight:700}.course-assign button.ghost:hover{background:#fff8e6;color:#8b5e00}.course-assign button.primary,.modal-footer button.primary,.subject-add button.primary{background:linear-gradient(135deg,#d4af37,#b8962e);color:#111827;font-weight:800;box-shadow:0 8px 18px #d4af3740}.course-assign button.primary:hover,.modal-footer button.primary:hover,.subject-add button.primary:hover{background:linear-gradient(135deg,#e4c356,#c59b2c);transform:translateY(-1px)}.course-assign button.danger{background:#111827;color:#fff8ea;box-shadow:none;border:1px solid #111827}.course-assign button.danger:hover{background:#000}.modal-footer{padding:16px 22px;border-top:1px solid #eef2f7;background:#fff;gap:12px;flex-wrap:wrap}.modal-footer button.primary{min-width:170px;min-height:44px;border-radius:12px}.course-assign{border:1px solid #edf2f7}.course-assign h2{color:#8b5e00;margin-bottom:18px}.course-assign th{background:#0f172a;color:#fff;font-weight:700}.course-assign td{vertical-align:middle}.course-assign tbody tr:hover{background:#fffaf0}@media(max-width:980px){.modal-overlay{padding:16px;align-items:flex-start;overflow-y:auto}.modal-content{width:100%;max-width:100%;max-height:none;min-height:0}.modal-header{flex-wrap:wrap}.areas-subjects-admin,.subject-add-stacked{grid-template-columns:1fr}.subject-actions-inline{width:100%;min-width:0;flex-direction:column;align-items:stretch}.subject-actions-inline select{max-width:none;width:100%}.subject-item.subject-item-extended{flex-direction:column;align-items:stretch}}@media(max-width:720px){.course-assign{padding:16px;border-radius:14px}.course-assign table,.course-assign thead,.course-assign tbody,.course-assign tr,.course-assign td,.course-assign th{display:block}.course-assign thead{display:none}.course-assign tbody{display:grid;gap:12px}.course-assign tr{border:1px solid #e5e7eb;border-radius:16px;padding:14px;background:#fffefb;box-shadow:0 10px 24px #0f172a0d}.course-assign td{padding:6px 0;border-bottom:0}.course-assign td:last-child{padding-top:12px}.course-assign table button,.course-assign button.ghost,.course-assign button.primary,.course-assign button.danger,.modal-footer button.primary,.subject-add button,.indicator-bank-actions button{width:100%;min-width:0;justify-content:center}.modal-overlay{padding:10px}.modal-content{max-width:100%;border-radius:18px}.modal-header,.tabs,.section,.modal-footer{padding-left:16px;padding-right:16px}.tab{flex:1 1 100%;text-align:center}.subject-actions-inline,.indicator-period-actions,.indicator-bank-actions{width:100%;min-width:0;flex-direction:column;align-items:stretch}.areas-block{padding:16px}.subject-add{flex-direction:column}.modal-footer button.primary{min-width:0}}.indicator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.indicator-field{display:flex;flex-direction:column;gap:6px}.indicator-field label{font-size:13px;font-weight:700;color:#334155}.indicator-field textarea{min-height:90px;resize:vertical}.indicator-actions{display:flex;justify-content:flex-end;margin-top:12px}@media(max-width:900px){.indicator-grid{grid-template-columns:1fr}}.indicator-bank-create{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.indicator-bank-create textarea{min-height:90px;resize:vertical}.indicator-bank-list{display:flex;flex-direction:column;gap:12px}.indicator-bank-item{border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff}.indicator-bank-item textarea{width:100%;min-height:90px;resize:vertical}.indicator-bank-text{white-space:pre-wrap;line-height:1.45;color:#334155}.indicator-bank-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}.indicator-subject-card{border:1px solid #e5e7eb;border-radius:14px;padding:14px;margin-bottom:14px;background:#fff}.subject-periods-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.subject-period-card{border:1px solid #e2e8f0;border-radius:12px;padding:12px;background:#fafafa}.subject-period-header{font-weight:700;color:#0f172a;margin-bottom:8px}.indicator-period-actions{display:flex;gap:8px;align-items:center}.indicator-period-actions select{flex:1}.assigned-indicators-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.assigned-indicator-chip{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border:1px solid #e2e8f0;background:#fff;border-radius:10px;padding:8px 10px}.assigned-indicator-chip span{font-size:13px;line-height:1.4;color:#334155}.assigned-indicator-chip button{border:none;background:transparent;cursor:pointer;color:#b91c1c;font-weight:700}@media(max-width:900px){.subject-periods-grid{grid-template-columns:1fr}.indicator-period-actions{flex-direction:column;align-items:stretch}}:root{--teacher-gold: #c9a227;--teacher-gold-soft: #f6ecd0;--teacher-ink: #111827;--teacher-muted: #64748b}.teacher-task-page{display:grid;gap:22px;padding:28px;width:100%;box-sizing:border-box;background:radial-gradient(circle at top right,rgba(201,162,39,.1),transparent 24%),linear-gradient(180deg,#fffdf8,#f5efe1);min-height:100%}.teacher-task-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:18px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#0d0d10,#15161d 56%,#2d220b);color:#fff8ea;border:1px solid rgba(201,162,39,.16);box-shadow:0 24px 42px #0f172a2e}.teacher-task-hero__badge{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;margin-bottom:16px;border-radius:999px;background:#ffffff14;border:1px solid rgba(201,162,39,.28);color:#e7cb73;letter-spacing:.14em;text-transform:uppercase;font-size:.76rem;font-weight:800}.teacher-task-hero__copy h1{margin:0 0 10px;font-size:clamp(2.2rem,3vw,3rem);line-height:1.02}.teacher-task-hero__copy p{margin:0;max-width:720px;line-height:1.65;color:#fff8eabf}.teacher-task-hero__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.teacher-task-hero__stat{padding:18px;border-radius:18px;background:#ffffff14;border:1px solid rgba(255,248,234,.1)}.teacher-task-hero__stat span{display:block;margin-bottom:8px;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#fff8eaad;font-weight:800}.teacher-task-hero__stat strong{font-size:1.8rem}.teacher-task-section-head h3{margin:0;font-size:1.4rem;color:#151515}.teacher-task-section-head p{margin:6px 0 0;color:var(--teacher-muted)}.teacher-task-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}.teacher-task-section-head>*{min-width:0}.teacher-task-search{display:inline-flex;align-items:center;gap:10px;min-width:min(320px,100%);min-height:46px;padding:0 14px;border-radius:14px;border:1px solid rgba(201,162,39,.18);background:#ffffffeb;color:var(--teacher-muted)}.teacher-task-search input{width:100%;border:0;outline:none;background:transparent;color:#111827}.teacher-task-areas{display:grid;gap:18px;align-content:start}.teacher-task-area-card{background:#fffffff2;border-radius:24px;border:1px solid rgba(201,162,39,.14);box-shadow:0 18px 36px #18212f0f;padding:22px}.teacher-task-area-card__top{display:flex;align-items:center;gap:12px;margin-bottom:16px}.teacher-task-area-card__pill{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:#111827;color:#fff8ea;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.teacher-task-area-card__top strong{font-size:1.15rem;color:#151515}.teacher-task-subject-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.teacher-task-subject-card{display:flex;align-items:center;gap:14px;width:100%;padding:18px;border-radius:20px;border:1px solid rgba(201,162,39,.14);background:linear-gradient(180deg,#fffefa,#f7f1e2);color:var(--teacher-ink);cursor:pointer;text-align:left;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.teacher-task-subject-card:hover{transform:translateY(-2px);border-color:#c9a22747;box-shadow:0 16px 30px #18212f14}.teacher-task-subject-card__icon{width:46px;height:46px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#111827;color:#f1cf67;flex-shrink:0}.teacher-task-subject-card__copy{display:grid;gap:3px;flex:1}.teacher-task-subject-card__copy strong{font-size:1rem}.teacher-task-subject-card__copy span{font-size:.88rem;color:#6b7280}.teacher-task-empty-area{padding:14px;border-radius:14px;background:#fffaf0;border:1px dashed rgba(201,162,39,.22);color:var(--teacher-muted);font-weight:700}.teacher-task-modal-backdrop{position:fixed;inset:0;background:#04050aa3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:22px;z-index:20000}.teacher-task-modal-backdrop.layer-2{z-index:21000}.teacher-task-modal{width:min(1180px,100%);max-height:calc(100vh - 44px);overflow:hidden;display:flex;flex-direction:column;border-radius:24px;background:#fff;border:1px solid rgba(201,162,39,.18);box-shadow:0 30px 80px #00000057;animation:teacherModalFade .22s ease-out}.teacher-task-modal.form{width:min(760px,100%);padding:0}.teacher-task-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c);border-bottom:1px solid rgba(201,162,39,.18);margin:0;width:100%;box-sizing:border-box}.teacher-task-modal__headline{display:grid;gap:5px}.teacher-task-modal__headline span{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:#e7cb73}.teacher-task-modal__headline h2{margin:0;color:#fff8ea;font-size:1.4rem}.teacher-task-modal__header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.teacher-task-mode-switch{display:inline-flex;align-items:center;padding:4px;border-radius:999px;background:#ffffff14;border:1px solid rgba(201,162,39,.2)}.teacher-task-mode-switch button{min-height:38px;padding:0 14px;border:none;background:transparent;color:#fff8eac7;border-radius:999px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:7px}.teacher-task-mode-switch button.active{background:linear-gradient(135deg,#d4af37,#be9720);color:#111827}.teacher-task-close-btn{width:40px;height:40px;border-radius:12px;border:1px solid rgba(201,162,39,.3);background:#ffffff0f;color:#fff8ea;cursor:pointer;font-size:1.3rem;flex-shrink:0;transition:transform .18s ease,background .18s ease,border-color .18s ease;padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center}.teacher-task-close-btn:hover{transform:translateY(-1px);background:#ffffff1f;border-color:#c9a2277a}.teacher-task-modal__body{padding:22px 24px 24px;overflow:auto;display:grid;gap:18px;background:linear-gradient(180deg,#fffefa,#faf6ea);margin:0;width:100%;box-sizing:border-box}.teacher-task-modal__body::-webkit-scrollbar,.teacher-task-table-wrap::-webkit-scrollbar,.teacher-submission-table-wrap::-webkit-scrollbar{width:10px;height:10px}.teacher-task-modal__body::-webkit-scrollbar-thumb,.teacher-task-table-wrap::-webkit-scrollbar-thumb,.teacher-submission-table-wrap::-webkit-scrollbar-thumb{background:#c9a22780;border-radius:999px}.teacher-task-form-shell{width:100%;max-width:700px;margin:0 auto;padding:20px;border-radius:20px;background:#fffffff2;border:1px solid rgba(201,162,39,.14);box-shadow:inset 0 1px #ffffffa6}.teacher-task-panel{display:grid;gap:14px;padding:20px;border-radius:20px;background:#fffffff5;border:1px solid rgba(201,162,39,.14);box-shadow:0 16px 28px #18212f0f}.teacher-task-panel__head h3{margin:0;font-size:1.15rem;color:#111827}.teacher-task-panel__head p{margin:6px 0 0;color:var(--teacher-muted)}.teacher-task-table-wrap{width:100%;overflow:auto;border-radius:18px;border:1px solid #edf2f7;background:#fff}.teacher-task-table{width:100%;min-width:1020px;border-collapse:collapse}.teacher-task-table thead th{background:#111827;color:#fff;padding:14px 16px;font-size:.83rem;font-weight:800;text-align:left}.teacher-task-table tbody td{padding:14px 16px;border-bottom:1px solid #eef2f7;color:#1f2937;vertical-align:top}.teacher-task-table tbody tr:hover{background:#fff9e9}.teacher-task-table__title{font-weight:800;color:#111827}.teacher-task-table__description{color:#64748b;line-height:1.55;max-width:320px}.teacher-task-period-badge{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#f6ecd0;color:#8b5e00;border:1px solid rgba(201,162,39,.4);font-size:.76rem;font-weight:800}.teacher-task-table__actions{display:flex;align-items:center;gap:8px}.teacher-task-action-btn{min-height:38px;padding:0 12px;border-radius:12px;border:none;display:inline-flex;align-items:center;gap:7px;font-weight:800;cursor:pointer}.teacher-task-action-btn.primary{background:linear-gradient(135deg,#d4af37,#be9720);color:#111827}.teacher-task-action-btn.edit{background:#fff4cc;color:#8b5e00}.teacher-task-action-btn.delete{background:#fee2e2;color:#991b1b}.teacher-task-empty{padding:20px;text-align:center;border-radius:18px;background:#fffaf0;border:1px dashed rgba(201,162,39,.22);color:#64748b;font-weight:700}.assignment-form{display:grid;gap:16px}.form-group{display:grid;gap:8px}.form-group label{font-size:.9rem;font-weight:800;color:#374151}.form-group input,.form-group textarea,.form-group select{width:100%;box-sizing:border-box;min-height:48px;border-radius:15px;border:1px solid #dbe3ec;background:#fff;padding:12px 14px;font-size:.96rem;color:#111827}.form-group textarea{min-height:126px;resize:vertical}.form-group input:focus,.form-group textarea:focus,.form-group select:focus,.teacher-grade-form input:focus,.teacher-grade-form textarea:focus,.teacher-grade-form select:focus{outline:none;border-color:#c9a2279e;box-shadow:0 0 0 4px #c9a2271f}.msg.error{margin:0;padding:12px 14px;border-radius:14px;background:#fef2f2;color:#991b1b;border:1px solid #fecaca;font-weight:700}.modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding-top:6px}.btn-primary,.btn-secondary{min-height:44px;padding:0 18px;border-radius:14px;border:none;display:inline-flex;align-items:center;justify-content:center;font-weight:800;cursor:pointer}.btn-primary{background:linear-gradient(135deg,#d4af37,#be9720);color:#111827}.btn-secondary{background:#fff;color:#1f2937;border:1px solid rgba(15,23,42,.12)}.teacher-submission-panel{display:grid;gap:14px}.teacher-submission-panel__head h3{margin:0;font-size:1.15rem;color:#111827}.teacher-submission-panel__head p{margin:6px 0 0;color:var(--teacher-muted)}.teacher-submission-table-wrap{width:100%;overflow:auto;border-radius:18px;border:1px solid #edf2f7;background:#fff}.teacher-submission-table{width:100%;min-width:980px;border-collapse:collapse}.teacher-submission-table thead th{background:#111827;color:#fff;padding:14px 16px;font-size:.83rem;font-weight:800;text-align:left}.teacher-submission-table tbody td{padding:14px 16px;border-bottom:1px solid #eef2f7;color:#1f2937;vertical-align:top}.teacher-submission-table tbody tr:hover{background:#fff9e9}.teacher-file-link{display:inline-flex;align-items:center;gap:7px;color:#8b5e00;font-weight:800;text-decoration:none}.teacher-file-link.large{width:fit-content;min-height:40px;padding:0 14px;border-radius:14px;border:1px solid rgba(201,162,39,.28);background:#fff9e8}.teacher-muted{color:#94a3b8}.teacher-grade-chip{display:inline-flex;align-items:center;justify-content:center;min-width:46px;padding:6px 10px;border-radius:999px;background:#fff6dd;border:1px solid rgba(212,175,55,.4);color:#8b5e00;font-weight:800}.teacher-grade-modal__body{display:grid;gap:16px}.teacher-grade-modal__student{display:grid;gap:4px;padding:16px;border-radius:18px;background:#fffffff2;border:1px solid rgba(201,162,39,.14)}.teacher-grade-modal__student strong{color:#111827}.teacher-grade-modal__student span{color:var(--teacher-muted);font-size:.92rem}.teacher-grade-form{display:grid;gap:10px;padding:18px;border-radius:18px;background:#fffffff2;border:1px solid rgba(201,162,39,.14)}.teacher-grade-form label{font-size:.9rem;font-weight:800;color:#334155}.teacher-grade-form input,.teacher-grade-form textarea,.teacher-grade-form select{width:100%;box-sizing:border-box;border:1px solid #dbe3ec;border-radius:14px;padding:12px 14px;font-size:.95rem;color:#111827;background:#fff}.teacher-grade-form textarea{min-height:120px;resize:vertical}.teacher-task-modal__footer{display:flex;justify-content:flex-end;gap:10px;padding:18px 24px 22px;background:#fff;border-top:1px solid #f2f4f7;margin:0;width:100%;box-sizing:border-box}.teacher-btn-primary,.teacher-btn-secondary,.teacher-btn-danger{min-height:42px;padding:0 16px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;cursor:pointer;border:none}.teacher-btn-primary{background:linear-gradient(135deg,#d4af37,#be9720);color:#111827}.teacher-btn-secondary{background:#fff;color:#1f2937;border:1px solid rgba(15,23,42,.12)}.teacher-btn-danger{background:#111827;color:#fff8ea;border:1px solid #111827}.teacher-confirm-backdrop{position:fixed;inset:0;background:#04050a99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:22000}.teacher-confirm-modal{width:min(430px,100%);padding:24px;border-radius:22px;background:#fff;border:1px solid rgba(201,162,39,.16);box-shadow:0 24px 60px #00000047;text-align:center}.teacher-confirm-modal h3{margin:0 0 8px;font-size:1.3rem;color:#111827}.teacher-confirm-modal p{margin:0;color:var(--teacher-muted);line-height:1.6}.teacher-confirm-actions{display:flex;justify-content:center;gap:12px;margin-top:18px}@keyframes teacherModalFade{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:980px){.teacher-task-page{padding:20px}.teacher-task-hero{grid-template-columns:1fr}.teacher-task-modal{width:100%}}@media(max-width:720px){.teacher-task-hero__stats,.teacher-task-subject-grid{grid-template-columns:1fr}.teacher-task-search{min-width:100%}.teacher-task-modal-backdrop{padding:14px;align-items:flex-start}.teacher-task-modal{max-height:calc(100vh - 28px);border-radius:20px}.teacher-task-modal__header,.teacher-task-modal__body,.teacher-task-modal__footer{padding-left:16px;padding-right:16px}.teacher-task-modal__header{flex-direction:column;align-items:stretch}.teacher-task-modal__header-actions{justify-content:space-between}.teacher-confirm-actions,.teacher-task-modal__footer,.modal-actions{flex-direction:column}.teacher-confirm-actions>*,.teacher-task-modal__footer>*,.modal-actions>*,.teacher-task-table__actions>*,.teacher-task-mode-switch{width:100%}.teacher-task-mode-switch{display:grid;grid-template-columns:1fr;border-radius:18px}.teacher-task-mode-switch button,.teacher-task-action-btn{width:100%;justify-content:center}.teacher-task-close-btn{align-self:flex-end}}.teacher-alerts{display:grid;gap:16px;align-content:start;padding:28px;width:100%;box-sizing:border-box;min-height:100vh;background:radial-gradient(circle at top left,rgba(201,162,39,.12),transparent 28%),linear-gradient(180deg,#fffdf8,#f6f1e4)}.teacher-alerts__hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,320px);gap:20px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#101010,#1d1d1d 56%,#2d220a);color:#fff8ea;box-shadow:0 20px 40px #0f172a2e;border:1px solid rgba(201,162,39,.18)}.teacher-alerts__hero-copy{min-width:0;max-width:620px}.teacher-alerts__badge{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border-radius:999px;background:#fff8ea14;border:1px solid rgba(201,162,39,.24);color:#e7cb73;letter-spacing:.14em;text-transform:uppercase;font-size:.76rem;font-weight:800;margin-bottom:16px}.teacher-alerts__hero-copy h2{margin:0 0 10px;font-size:clamp(2rem,3vw,2.8rem);line-height:1.05}.teacher-alerts__hero-copy p{margin:0;max-width:560px;line-height:1.65;color:#fff8eac2}.teacher-alerts__hero-actions{display:grid;align-content:center;align-self:center;justify-items:start;padding-right:96px;gap:12px}.teacher-alerts__control-card{display:flex;flex-direction:column;gap:8px;padding:16px;width:min(320px,100%);border-radius:18px;background:#ffffff14;border:1px solid rgba(255,248,234,.14);box-shadow:0 18px 34px #0000001f}.teacher-alerts__control-card span{font-size:.82rem;font-weight:700;color:#fff8eab8}.teacher-alerts__control-card .styled-select__trigger{height:48px;border-radius:14px;border:1px solid rgba(201,162,39,.22);background:#0a0a0a6b;color:#fff8ea;padding:0 14px;font-weight:700;box-shadow:none}.teacher-alerts__control-card .styled-select__value,.teacher-alerts__control-card .styled-select__icon{color:#fff8ea}.teacher-alerts__primary-btn{width:100%;height:48px;border:none;border-radius:14px;background:linear-gradient(135deg,#e7cb73,#c9a227);color:#17120a;font-weight:800;cursor:pointer;box-shadow:0 14px 30px #c9a22742;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.teacher-alerts__primary-btn:hover{transform:translateY(-1px)}.teacher-alerts__primary-btn:disabled{opacity:.72;cursor:not-allowed;transform:none}.teacher-alerts__summary-grid{display:grid;grid-template-columns:repeat(4,176px);gap:14px;align-items:stretch;justify-content:center;justify-self:center;align-self:start;width:max-content;max-width:100%}.teacher-alerts__status-tabs{display:inline-flex;align-items:center;align-self:start;gap:8px;padding:8px;width:auto;max-width:max-content;border-radius:999px;background:#ffffffc7;border:1px solid rgba(201,162,39,.16);box-shadow:0 14px 26px #18212f0f}.teacher-alerts__status-tab{appearance:none;box-sizing:border-box;width:156px;min-width:156px;height:48px;padding:0 16px;border:1px solid rgba(201,162,39,.08);border-radius:999px;background:#ffffffb8;color:#475569;font-weight:800;cursor:pointer;text-align:center;white-space:nowrap;outline:none;box-shadow:none;transition:background .18s ease,color .18s ease,border-color .18s ease}.teacher-alerts__status-tab.is-active{background:#111827;color:#fff8ea;border-color:#c9a22738}.teacher-alerts__status-tab:focus,.teacher-alerts__status-tab:focus-visible,.teacher-alerts__status-tab:active{outline:none;box-shadow:none}.teacher-alerts__summary-card{box-sizing:border-box;width:176px;min-width:176px;min-height:164px;padding:18px;border-radius:20px;background:#ffffffeb;border:1px solid rgba(201,162,39,.12);box-shadow:0 14px 26px #18212f0f}.teacher-alerts__summary-card span{display:block;margin-bottom:8px;color:#6b7280;font-size:.82rem;font-weight:700}.teacher-alerts__summary-card strong{font-size:2rem;color:#111827}.teacher-alerts__summary-card.critical strong{color:#111827}.teacher-alerts__summary-card.warning strong{color:#6b7280}.teacher-alerts__summary-card.accent strong{color:#8b6b1d}.teacher-alerts__message,.teacher-alerts__empty{padding:16px 18px;border-radius:18px;font-weight:700}.teacher-alerts__message.success{background:#fffbeffa;color:#8b6b1d;border:1px solid rgba(201,162,39,.26)}.teacher-alerts__message.error{background:#111827f5;color:#fff8ea;border:1px solid rgba(201,162,39,.22)}.teacher-alerts__empty{border:1px dashed rgba(201,162,39,.2);background:#ffffffbf;color:#6b7280;text-align:center}.teacher-alerts__grid{display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));column-gap:20px;row-gap:24px;align-items:start}.teacher-alert-card{display:grid;gap:14px;box-sizing:border-box;min-width:0;padding:22px;border-radius:22px;background:#fffffff5;border:1px solid rgba(201,162,39,.14);box-shadow:0 16px 32px #18212f14;align-content:start;width:100%}.teacher-alert-card__top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.teacher-alert-card__type{display:inline-flex;margin-bottom:8px;color:#8b6b1d;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:800}.teacher-alert-card h3{margin:0;font-size:1.18rem;color:#111827}.teacher-alert-card__level{display:inline-flex;align-items:center;justify-content:center;min-width:108px;min-height:34px;padding:0 12px;border-radius:999px;font-size:.75rem;font-weight:800;border:1px solid transparent}.teacher-alert-card__level.critical{background:#111827;color:#fff8ea;border-color:#c9a22738}.teacher-alert-card__level.warning{background:#fffbeff5;color:#8b6b1d;border-color:#c9a22742}.teacher-alert-card__message{margin:0;color:#475569;line-height:1.65;min-height:72px}.teacher-alert-card__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.teacher-alert-card__meta span{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 12px;border-radius:14px;background:#f8f5ec;border:1px solid #efe4c0;color:#5b6475;font-size:.82rem;font-weight:700}.teacher-alert-card__action{min-height:44px;border:none;border-radius:14px;background:#111827;color:#fff8ea;font-weight:800;cursor:pointer;transition:transform .18s ease,opacity .18s ease}.teacher-alert-card__action:hover{transform:translateY(-1px)}.teacher-alert-card__action:disabled{opacity:.72;cursor:not-allowed;transform:none}.teacher-alert-card__resolved{display:grid;gap:6px;padding:16px;border-radius:16px;background:#f8f5ec;border:1px solid #e9ddb8}.teacher-alert-card__resolved strong{color:#8b6b1d;font-size:.95rem}.teacher-alert-card__resolved span{color:#5b6475;font-size:.88rem;font-weight:700}.teacher-alert-card__resolved p{margin:4px 0 0;color:#334155;line-height:1.55}.teacher-alert-card__info-box{display:grid;gap:6px;padding:14px 16px;border-radius:16px;background:#fff9ec;border:1px solid #ead7a1}.teacher-alert-card__info-box.subtle{background:#f8f5ec;border-color:#e9ddb8}.teacher-alert-card__info-box strong{color:#1f2937;font-size:.92rem}.teacher-alert-card__info-box span{color:#64748b;font-size:.82rem;font-weight:700}.teacher-alert-card__info-box p{margin:0;color:#334155;line-height:1.55}.teacher-alerts-modal-backdrop{position:fixed;inset:0;z-index:2600;display:flex;align-items:center;justify-content:center;padding:20px;background:#080b129e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.teacher-alerts-modal{width:min(760px,96vw);max-height:92vh;overflow:hidden;display:flex;flex-direction:column;background:linear-gradient(180deg,#fffef9,#f3ebdb);border-radius:24px;border:1px solid rgba(201,162,39,.18);box-shadow:0 30px 70px #00000042}.teacher-alerts-modal__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 24px;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c);border-bottom:1px solid rgba(201,162,39,.18)}.teacher-alerts-modal__header h3{margin:0;color:#fff8ea}.teacher-alerts-modal__header p{margin:8px 0 0;color:#fff8eabd}.teacher-alerts-modal__close{width:42px;height:42px;border-radius:14px;border:1px solid rgba(201,162,39,.28);background:#ffffff14;color:#fff8ea;font-size:18px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.teacher-alerts-modal__body{padding:24px;overflow-y:auto;display:flex;flex-direction:column;gap:18px}.teacher-alerts-modal__summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.teacher-alerts-modal__summary span{min-height:42px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#ffffffd1;border:1px solid #ede2c3;color:#5b6475;font-size:.84rem;font-weight:800}.teacher-alerts-modal__message,.teacher-alerts-modal__toggle-group,.teacher-alerts-modal__notes{display:flex;flex-direction:column;gap:8px}.teacher-alerts-modal__message label,.teacher-alerts-modal__toggle-group label,.teacher-alerts-modal__notes label{font-weight:800;color:#334155}.teacher-alerts-modal__message div{padding:16px;border-radius:16px;border:1px solid #ede2c3;background:#ffffffdb;color:#334155;line-height:1.6}.teacher-alerts-modal__choice-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.teacher-alerts-modal__choice{min-height:46px;border-radius:14px;border:1px solid #d7dde6;background:#fff;color:#111827;font-weight:800;cursor:pointer}.teacher-alerts-modal__choice.is-active{background:#111827;color:#fff8ea;border-color:#c9a22747}.teacher-alerts-modal__notes textarea{min-height:150px;resize:vertical;border-radius:16px;border:1px solid #e5d8b2;padding:16px;background:#ffffffeb;font-family:inherit;color:#111827;caret-color:#111827}.teacher-alerts-modal__notes textarea::placeholder{color:#94a3b8}.teacher-alerts-modal__notes textarea:focus{outline:none;border-color:#c9a227;box-shadow:0 0 0 4px #c9a2271f}.teacher-alerts-modal__footer{padding:18px 24px;border-top:1px solid rgba(201,162,39,.12);display:flex;justify-content:flex-end;gap:12px}.teacher-alerts-modal__secondary,.teacher-alerts-modal__primary{min-height:48px;padding:0 18px;border-radius:14px;font-weight:800;cursor:pointer}.teacher-alerts-modal__secondary{border:1px solid #d7dde6;background:#fff;color:#111827}.teacher-alerts-modal__primary{border:none;background:linear-gradient(135deg,#e7cb73,#c9a227);color:#17120a;box-shadow:0 14px 30px #c9a22742}@media(max-width:980px){.teacher-alerts{padding:20px}.teacher-alerts__hero{grid-template-columns:1fr}.teacher-alerts__summary-grid{grid-template-columns:repeat(2,176px);width:max-content}.teacher-alerts__grid{grid-template-columns:1fr}}@media(max-width:720px){.teacher-alerts__hero{padding:22px}.teacher-alerts__hero-actions,.teacher-alerts__primary-btn{width:100%}.teacher-alerts__status-tabs{width:100%;max-width:none;flex-direction:column}.teacher-alerts__status-tab{width:100%;min-width:0}.teacher-alerts__summary-grid{grid-template-columns:1fr;width:100%}.teacher-alerts__summary-card{width:100%;min-width:0}.teacher-alert-card__top{flex-direction:column}.teacher-alert-card__meta{grid-template-columns:1fr}}.teacher-attendance-page{padding:28px;min-height:100vh;background:radial-gradient(circle at top right,rgba(201,162,39,.1),transparent 26%),linear-gradient(180deg,#fffdf8,#f6f1e4)}.teacher-attendance-hero{margin-bottom:22px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#101010,#1d1d1d 55%,#32260d);border:1px solid rgba(201,162,39,.18);box-shadow:0 22px 42px #0f172a2e}.teacher-attendance-hero-main{display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap}.teacher-attendance-hero-copy{flex:1;min-width:280px}.teacher-attendance-badge{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border-radius:999px;background:#fff8ea14;border:1px solid rgba(201,162,39,.24);color:#e7cb73;font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}.teacher-attendance-hero-copy h1{margin:0;color:#fff8ea;font-size:clamp(2rem,3vw,2.9rem);line-height:1.05}.teacher-attendance-hero-copy p{margin:10px 0 0;color:#fff8eac2;font-size:.96rem;max-width:720px;line-height:1.65}.teacher-attendance-hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.attendance-action-group{display:flex;gap:12px;align-items:center;margin-left:auto;padding-top:0;align-self:center}.attendance-date-card{display:flex;flex-direction:column;gap:8px;min-width:220px;padding:16px;border-radius:18px;background:#ffffff14;border:1px solid rgba(255,248,234,.14)}.attendance-date-card label{font-size:.82rem;font-weight:700;color:#fff8eab8}.attendance-date-picker{position:relative}.attendance-date-trigger{width:100%;height:48px;border:1px solid rgba(201,162,39,.22);border-radius:14px;padding:0 14px;font-size:.95rem;font-weight:700;background:#0a0a0a6b;color:#fff8ea}.attendance-date-trigger{cursor:pointer;text-align:left}.attendance-period-select{width:100%}.attendance-period-select .styled-select__trigger{min-height:48px;height:48px;padding:0 14px;border-radius:14px;box-shadow:none;background:linear-gradient(180deg,#fffdfa,#fff8ec);border-color:#c9a22747;color:#111827}.attendance-period-select .styled-select__value,.attendance-period-select .styled-select__icon{color:#111827}.attendance-date-native{position:absolute;inset:0;opacity:0;pointer-events:none}.btn-primary,.btn-secondary{min-height:48px;padding:0 18px;border-radius:14px;font-weight:800;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.btn-primary{border:none;background:linear-gradient(135deg,#e7cb73,#c9a227);color:#17120a;box-shadow:0 14px 30px #c9a22742}.btn-primary:hover{transform:translateY(-1px)}.btn-secondary{background:#fff;color:#111827;-webkit-text-fill-color:#111827;border:1px solid #d7dde6;appearance:none}.btn-secondary:disabled{color:#8b6b1d;-webkit-text-fill-color:#8b6b1d;opacity:1;border-color:#c9a22747;background:linear-gradient(180deg,#fffdfa,#f6edd7);cursor:not-allowed;box-shadow:none}.attendance-export-btn:disabled{color:#8b6b1d!important;-webkit-text-fill-color:#8b6b1d!important}.attendance-view-btn{min-width:180px}.attendance-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:18px}.attendance-summary-card{padding:20px;border-radius:20px;background:#fffffff0;border:1px solid rgba(201,162,39,.12);box-shadow:0 14px 26px #18212f0f}.attendance-summary-card span{display:block;margin-bottom:8px;color:#6b7280;font-size:.82rem;font-weight:700}.attendance-summary-card strong{font-size:2rem;color:#111827}.attendance-summary-card.present strong{color:#8b6b1d}.attendance-summary-card.unregistered strong{color:#64748b}.attendance-summary-card.absent strong{color:#111827}.attendance-summary-card.late strong{color:#6b7280}.attendance-course-banner{margin-bottom:18px;padding:16px 18px;border-radius:18px;background:#ffffffd6;border:1px solid rgba(201,162,39,.12);color:#334155;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.attendance-message{margin-bottom:16px;padding:14px 16px;border-radius:16px;font-weight:700}.attendance-message.success{background:#fffbeffa;color:#8b6b1d;border:1px solid rgba(201,162,39,.26)}.attendance-message.error{background:#111827f5;color:#fff8ea;border:1px solid rgba(201,162,39,.22)}.attendance-empty-box{border:1px dashed rgba(201,162,39,.2);background:#ffffffc7;color:#6b7280;border-radius:18px;padding:26px;text-align:center;font-weight:700}.attendance-table-section{background:#fffffff5;border:1px solid rgba(201,162,39,.12);border-radius:22px;box-shadow:0 16px 30px #18212f14;overflow:hidden}.attendance-section-header{padding:20px 22px;border-bottom:1px solid #f0ebe0;background:linear-gradient(180deg,#fffef9,#fbf7ef)}.attendance-section-header h3{margin:0;color:#111827;font-size:1.3rem}.attendance-section-header p{margin:8px 0 0;color:#64748b;font-size:.92rem}.attendance-table-wrapper{width:100%;overflow-x:auto;background:#fffef9}.attendance-table{width:100%;border-collapse:collapse;min-width:880px}.attendance-table thead th{background:#111827;color:#fff8ea;text-align:left;padding:15px 14px;font-size:.84rem;white-space:nowrap}.attendance-table tbody td{padding:15px 14px;border-bottom:1px solid #f0ebe0;vertical-align:middle}.attendance-table tbody tr:hover{background:#fff8ea}.student-cell{font-weight:800;color:#111827}.attendance-observation-cell{color:#475569;max-width:320px;line-height:1.55}.attendance-status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:96px;min-height:34px;padding:0 12px;border-radius:999px;font-size:.76rem;font-weight:800;border:1px solid transparent}.attendance-status-pill.present{background:#fffbeff5;color:#8b6b1d;border-color:#c9a22747}.attendance-status-pill.absent{background:#111827;color:#fff8ea;border-color:#c9a22733}.attendance-status-pill.late{background:#f3ebdbf5;color:#4b5563;border-color:#c9a2272e}.attendance-status-pill.unregistered{background:#eef2f7;color:#64748b;border-color:#cbd5e1}.attendance-justified{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:32px;padding:0 10px;border-radius:999px;font-size:.76rem;font-weight:800}.attendance-justified.yes{background:#fffbeff5;color:#8b6b1d}.attendance-justified.no{background:#111827;color:#fff8ea}.table-manage-btn{min-height:40px;border:1px solid #e4d8b4;border-radius:12px;padding:0 14px;font-size:.82rem;font-weight:800;background:#f8f5ec;color:#111827;cursor:pointer}.table-manage-btn:hover{background:#efe7d3}.attendance-modal-backdrop{position:fixed;inset:0;background:#080b129e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:47000;padding:18px}.attendance-modal{width:min(760px,94vw);max-height:min(92vh,980px);background:linear-gradient(180deg,#fffef9,#f3ebdb);border-radius:24px;box-shadow:0 30px 70px #00000047;border:1px solid rgba(201,162,39,.18);overflow:hidden;display:flex;flex-direction:column}.attendance-modal-header{padding:22px 24px;border-bottom:1px solid rgba(201,162,39,.18);display:flex;justify-content:space-between;gap:14px;align-items:flex-start;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c)}.attendance-modal-header h2{margin:0;font-size:1.6rem;color:#fff8ea}.attendance-modal-header p{margin:8px 0 0;color:#fff8eabd;font-size:.92rem}.attendance-close-btn{width:42px;height:42px;border-radius:14px;border:1px solid rgba(201,162,39,.28);background:#ffffff14;cursor:pointer;font-size:18px;color:#fff8ea;padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center}.attendance-modal-body{padding:24px;overflow-y:auto;flex:1 1 auto;min-height:0}.attendance-student-card{padding:20px;border:1px solid #ede2c3;border-radius:18px;background:#ffffffd6;display:flex;flex-direction:column;gap:16px}.attendance-student-main{display:flex;flex-direction:column;gap:4px}.attendance-mini-label{font-size:.74rem;font-weight:800;color:#8b6b1d;text-transform:uppercase;letter-spacing:.12em}.attendance-student-main strong{font-size:1.6rem;color:#111827}.attendance-status-selector{display:flex;gap:10px;flex-wrap:wrap}.status-action-btn{border:1px solid #e3d7b4;background:#fff;color:#334155;border-radius:14px;padding:11px 16px;font-weight:800;cursor:pointer}.status-action-btn:hover{transform:translateY(-1px)}.status-action-btn.active.present{background:linear-gradient(135deg,#e7cb73,#c9a227);color:#17120a;border-color:#c9a22775}.status-action-btn.active.absent{background:#111827;color:#fff8ea;border-color:#c9a22747}.status-action-btn.active.late{background:#f3ebdbfa;color:#4b5563;border-color:#c9a22738}.attendance-notes-card{margin-top:18px;display:flex;flex-direction:column;gap:8px}.attendance-notes-card label{font-size:.92rem;font-weight:800;color:#334155}.attendance-notes-card textarea{box-sizing:border-box;width:100%;max-width:100%;display:block;min-height:130px;border:1px solid #e5d8b2;border-radius:16px;padding:14px 16px;font-size:.95rem;resize:vertical;background:#ffffffeb;color:#111827;caret-color:#111827}.attendance-notes-card textarea::placeholder{color:#94a3b8}.attendance-notes-card textarea:focus{outline:none;border-color:#c9a227;box-shadow:0 0 0 4px #c9a2271f}.attendance-modal-footer{padding:18px 24px;border-top:1px solid rgba(201,162,39,.12);display:flex;justify-content:flex-end;gap:12px;background:transparent;flex-shrink:0}@media(max-width:980px){.teacher-attendance-page{padding:20px}.attendance-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.teacher-attendance-hero{padding:22px}.teacher-attendance-hero-actions,.attendance-date-card,.attendance-view-btn,.btn-primary,.btn-secondary{width:100%}.attendance-summary-grid{grid-template-columns:1fr}.attendance-course-banner,.attendance-modal-header,.attendance-modal-footer,.attendance-status-selector{flex-direction:column;align-items:stretch}.attendance-modal{width:100%;max-height:calc(100vh - 24px);border-radius:20px}.attendance-modal-backdrop{align-items:flex-start;padding:12px}.attendance-modal-header,.attendance-modal-body,.attendance-modal-footer{padding-left:16px;padding-right:16px}}.attendance-admin-trace-cell{min-width:220px}.attendance-admin-trace{display:grid;gap:6px}.attendance-admin-badge{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:30px;padding:0 12px;border-radius:999px;background:#c9a2271f;border:1px solid rgba(201,162,39,.24);color:#8b5e00;font-size:.74rem;font-weight:800}.attendance-admin-trace small,.attendance-muted-note{color:#64748b;line-height:1.45}.attendance-audit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.attendance-audit-card{padding:18px;border-radius:18px;border:1px solid rgba(201,162,39,.16);background:#ffffffd1;display:grid;gap:10px}.attendance-audit-card.admin{background:linear-gradient(180deg,#fffcf3f5,#f6eedaf5)}.attendance-audit-card strong{color:#111827;font-size:1rem}.attendance-audit-card p{margin:0;color:#64748b;line-height:1.5}.attendance-audit-note{padding:12px 14px;border-radius:14px;background:#fffef9;border:1px solid rgba(201,162,39,.14);color:#334155;line-height:1.55}.attendance-audit-list{margin:0;padding-left:18px;color:#475569;line-height:1.5}.attendance-audit-list li+li{margin-top:6px}.attendance-support-link{color:#8b5e00;font-weight:800;text-decoration:none}.attendance-support-link:hover{text-decoration:underline}@media(max-width:900px){.attendance-audit-grid{grid-template-columns:1fr}}.attendance-export-btn{min-width:180px;background:linear-gradient(180deg,#fffdfa,#f6edd7);color:#8b6b1d;-webkit-text-fill-color:#8b6b1d;border-color:#c9a22752;box-shadow:none}.attendance-export-btn:hover,.attendance-export-btn:focus-visible,.attendance-export-btn:active,.attendance-export-btn:disabled{background:linear-gradient(180deg,#fffdfa,#f6edd7);color:#8b6b1d!important;-webkit-text-fill-color:#8b6b1d!important;border-color:#c9a22752;box-shadow:none;opacity:1;transform:none}.attendance-export-btn:focus-visible{outline:none}@media(max-width:720px){.attendance-action-group{width:100%;margin-left:0;padding-top:0;justify-content:stretch;flex-wrap:wrap}}.calendar-wrapper{background:#fff;padding:28px;border-radius:18px;box-shadow:0 12px 30px #0000001f;border:1px solid #e5e7eb;width:100%;max-width:100%;overflow:hidden}.fc-toolbar{margin-bottom:20px;gap:12px}.fc-toolbar-title{font-size:1.4rem;font-weight:700;color:#111827;letter-spacing:.5px;text-transform:capitalize}.fc-button{background:#fff!important;border:1px solid #d1d5db!important;color:#111827!important;border-radius:10px!important;padding:6px 14px!important;font-weight:600;transition:all .2s ease}.fc-button:hover{background:#111827!important;color:#fff!important}.fc-button-active{background:#b89b2d!important;color:#111827!important;border-color:#b89b2d!important}.fc-col-header-cell,.fc .fc-col-header,.fc .fc-col-header-cell{background:#111827}.fc-col-header-cell-cushion{color:#fff;font-weight:600;padding:8px 0}.fc-daygrid-day-number{color:#111827;font-weight:600}.fc-day-today{background:#faf7ed!important;border:2px solid #b89b2d}.fc-event{border-radius:10px!important;padding:6px 8px!important;font-size:.85rem;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.fc-event:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.task-event{background:linear-gradient(135deg,#b89b2d,#9c8120)!important;color:#111827!important;border:none!important}.custom-event{background:linear-gradient(135deg,#111827,#000)!important;color:#fff!important;border:none!important}.fc-event-title{white-space:normal;line-height:1.25}.fc-daygrid-day-frame{padding:4px}.fc{max-width:100%}.fc .fc-daygrid-day-frame{cursor:pointer;transition:background .2s ease,transform .15s ease}.fc .fc-daygrid-day-frame:hover{background:#faf7ed;transform:translateY(-1px)}.fc .fc-daygrid-day-number{cursor:pointer}.modal-modern{width:760px;max-width:calc(100vw - 28px);border-radius:22px;overflow:hidden;border:1px solid #e5e7eb;box-shadow:0 22px 70px #00000038}.teacher-calendar-modal-backdrop{position:fixed;inset:0;z-index:30000;display:flex;align-items:center;justify-content:center;padding:24px;background:#08080c8a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.teacher-calendar-modal{position:relative;z-index:30010}.teacher-calendar-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.teacher-calendar-close-btn{width:42px;height:42px;border-radius:14px;border:1px solid rgba(255,255,255,.16);background:#ffffff14;color:#fff;font-size:1.2rem;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.teacher-calendar-close-btn:hover{background:#ffffff24}.teacher-calendar-modal__body,.teacher-calendar-modal__footer{position:relative;z-index:30011}.modal-header-modern{padding:18px 24px;background:linear-gradient(135deg,#111827,#000);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}.modal-header-modern h2{margin:0;font-size:22px;font-weight:800;letter-spacing:.3px}.modal-subtitle{margin-top:4px;font-size:13px;color:#ffffffbf}.modal-body-modern{padding:22px 24px;background:#fff}.meta-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.meta-chip{background:#faf7ed;border:1px solid #e7dbc0;color:#111827;padding:7px 10px;border-radius:999px;font-size:13px;font-weight:600}.meta-chip-dark{background:#111827;border-color:#111827;color:#fff}.form-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:14px}.form-group label{display:block;font-weight:700;font-size:13px;color:#111827;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{width:100%;border-radius:14px;padding:10px 12px;border:1px solid #d1d5db;outline:none;transition:border-color .2s ease,box-shadow .2s ease;background:#fff;color:#111827}.form-group textarea{min-height:110px;resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#b89b2d;box-shadow:0 0 0 4px #b89b2d26}.modal-footer-modern{padding:16px 24px;border-top:1px solid #e5e7eb;background:#fff;display:flex;justify-content:flex-end;gap:10px}.btn-primary{border-radius:999px;padding:10px 16px;font-weight:800;border:1px solid #b89b2d;background:linear-gradient(135deg,#c9a227,#a8841d);color:#111827;cursor:pointer}.btn-primary:hover{filter:brightness(1.03)}.btn-secondary{border-radius:999px;padding:10px 16px;font-weight:800;border:1px solid #d1d5db;background:#fff;color:#111827;cursor:pointer}.btn-secondary:hover{background:#faf7ed;border-color:#b89b2d}@media(max-width:720px){.calendar-wrapper{padding:16px;border-radius:16px}.fc .fc-toolbar{flex-direction:column;align-items:stretch}.fc .fc-toolbar-chunk{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.form-grid{grid-template-columns:1fr}.teacher-calendar-modal-backdrop{padding:12px;align-items:flex-start}.modal-modern{max-width:100%;border-radius:18px}.modal-header-modern,.modal-body-modern,.modal-footer-modern{padding-left:16px;padding-right:16px}.modal-footer-modern{flex-direction:column-reverse}.modal-footer-modern .btn-primary,.modal-footer-modern .btn-secondary{width:100%}}.modal-header-modern h2{color:#fff;font-weight:800;letter-spacing:.4px}.modal-header-modern .modal-subtitle{color:#f5e9c6;font-weight:500;opacity:.95}.teacher-calendar-success-backdrop{position:fixed;inset:0;z-index:31000;display:flex;align-items:center;justify-content:center;padding:24px;background:#08080c47}.teacher-calendar-success-modal{width:min(360px,92vw);padding:22px 24px;border-radius:22px;background:linear-gradient(135deg,#0f0f12,#1a1b21);border:1px solid rgba(201,162,39,.3);box-shadow:0 28px 60px #00000047;color:#fff8ea;display:grid;justify-items:center;gap:10px;text-align:center}.teacher-calendar-success-icon{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,#c9a227,#a8841d);color:#111827;display:inline-flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:900}.teacher-calendar-success-modal h3,.teacher-calendar-success-modal p{margin:0}.teacher-calendar-success-modal p{color:#ffffffc2}.teacher-grades-page{display:grid;gap:22px;padding:28px;width:100%;box-sizing:border-box;background:radial-gradient(circle at top left,rgba(201,162,39,.1),transparent 24%),linear-gradient(180deg,#fffdf8,#f5efe1);min-height:100%}.teacher-grades-empty{padding:24px;border-radius:22px;background:#ffffffeb;border:1px solid rgba(201,162,39,.14);color:#64748b;font-weight:700}.teacher-grades-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:18px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#0d0d10,#15161d 56%,#2d220b);color:#fff8ea;border:1px solid rgba(201,162,39,.16);box-shadow:0 24px 42px #0f172a2e}.teacher-grades-hero.compact{padding-bottom:24px}.teacher-grades-hero__badge{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;margin-bottom:16px;border-radius:999px;background:#ffffff14;border:1px solid rgba(201,162,39,.28);color:#e7cb73;letter-spacing:.14em;text-transform:uppercase;font-size:.76rem;font-weight:800}.teacher-grades-hero__copy h1{margin:0 0 10px;font-size:clamp(2.2rem,3vw,3rem);line-height:1.02}.teacher-grades-hero__copy p{margin:0;max-width:720px;line-height:1.65;color:#fff8eabf}.teacher-grades-hero__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.teacher-grades-hero__stat{padding:18px;border-radius:18px;background:#ffffff14;border:1px solid rgba(255,248,234,.1)}.teacher-grades-hero__stat span{display:block;margin-bottom:8px;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#fff8eaad;font-weight:800}.teacher-grades-hero__stat strong{font-size:1.75rem}.teacher-grades-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.teacher-grades-subject-card{width:100%;display:flex;align-items:center;gap:14px;padding:20px;border-radius:22px;border:1px solid rgba(201,162,39,.14);background:linear-gradient(180deg,#fffffff2,#f7f1e2);text-align:left;color:#111827;cursor:pointer;box-shadow:0 18px 36px #18212f0f;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.teacher-grades-subject-card:hover{transform:translateY(-2px);border-color:#c9a22752;box-shadow:0 20px 38px #18212f1a}.teacher-grades-subject-card__icon{width:48px;height:48px;border-radius:15px;display:inline-flex;align-items:center;justify-content:center;background:#111827;color:#f1cf67;flex-shrink:0}.teacher-grades-subject-card__copy{display:grid;gap:4px;flex:1}.teacher-grades-subject-card__copy strong{font-size:1.02rem}.teacher-grades-subject-card__copy span{color:#64748b;font-size:.9rem}.teacher-grades-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.teacher-grades-toolbar>*{min-width:0}.teacher-grades-back-btn{min-height:44px;padding:0 16px;border:none;border-radius:14px;background:linear-gradient(135deg,#111,#1f2937);color:#fff;display:inline-flex;align-items:center;gap:8px;font-size:.93rem;font-weight:800;cursor:pointer;box-shadow:0 8px 18px #0000001f;transition:transform .18s ease,color .18s ease}.teacher-grades-back-btn:hover{transform:translateY(-1px);color:#f3cf63}.teacher-grades-period-tabs{display:flex;gap:10px;flex-wrap:wrap}.teacher-grades-feedback{padding:14px 16px;border-radius:16px;font-weight:800}.teacher-grades-feedback.success{background:#fffffff2;border:1px solid rgba(201,162,39,.24);color:#8b6b1d}.teacher-grades-feedback.error{background:#111827f2;border:1px solid rgba(201,162,39,.24);color:#fff8ea}.teacher-grades-period-btn{min-height:42px;padding:0 14px;border:1px solid rgba(201,162,39,.3);background:#fff;color:#111827;border-radius:12px;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .18s ease}.teacher-grades-period-btn--accent{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#fff7df,#f6e4a8)}.teacher-grades-period-btn:hover{background:#fffaf0;border-color:#c9a2278c}.teacher-grades-period-btn.active{background:linear-gradient(135deg,#111,#1f2937);color:#f3cf63;border-color:#c9a227b3}.teacher-grades-summary-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.teacher-grades-summary-card{padding:18px 20px;border-radius:20px;background:#fffffff2;border:1px solid rgba(201,162,39,.12);box-shadow:0 14px 26px #18212f0f}.teacher-grades-summary-card span{display:block;margin-bottom:8px;color:#6b7280;font-size:.82rem;font-weight:700}.teacher-grades-summary-card strong{font-size:1.55rem;color:#111827;display:inline-flex;align-items:center;gap:8px}.teacher-grades-summary-card.accent strong{color:#8b6b1d}.teacher-grades-summary-card.dark{background:linear-gradient(135deg,#111827,#1f2937);border-color:#c9a22733}.teacher-grades-summary-card.dark span,.teacher-grades-summary-card.dark strong{color:#fff8ea}.teacher-grades-table-shell{display:grid;gap:14px;padding:20px;border-radius:24px;background:#fffffff5;border:1px solid rgba(201,162,39,.14);box-shadow:0 18px 36px #18212f14}.teacher-grades-table-header h3{margin:0;font-size:1.2rem;color:#111827}.teacher-grades-table-header p{margin:6px 0 0;color:#64748b}.teacher-grades-table-wrapper{overflow:auto;border-radius:18px;border:1px solid #edf2f7;background:#fff;max-height:72vh}.teacher-grades-table-wrapper::-webkit-scrollbar{height:10px;width:10px}.teacher-grades-table-wrapper::-webkit-scrollbar-thumb{background:#c9a2278c;border-radius:999px}.teacher-grades-table{width:100%;min-width:920px;border-collapse:separate;border-spacing:0;background:#fff}.teacher-grades-table thead th{position:sticky;top:0;z-index:5;background:linear-gradient(135deg,#111,#1b1b1b);color:#fff;padding:14px 12px;text-align:center;border-bottom:1px solid rgba(255,255,255,.08);font-size:.9rem;font-weight:800;vertical-align:bottom}.student-col{min-width:240px;text-align:left;padding-left:18px;left:0;z-index:6}.assignment-col{min-width:145px}.assignment-title{font-size:.88rem;font-weight:700;color:#fff;line-height:1.3;white-space:normal}.assignment-date{margin-top:5px;font-size:.75rem;color:#f0d98b;font-weight:500;line-height:1.2}.assignment-mode-badge{margin-top:7px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#f8e5a7}.assignment-mode-row{margin-top:7px;display:flex;flex-direction:column;gap:6px;align-items:center}.assignment-edit-btn{min-height:28px;padding:0 10px;border-radius:999px;border:1px solid rgba(241,207,103,.34);background:#ffffff14;color:#fff8ea;display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:800;cursor:pointer}.teacher-grades-table tbody td{padding:12px 10px;border-bottom:1px solid #f1f5f9;border-right:1px solid #f8fafc;background:#fff;transition:background .15s ease;color:#111827}.teacher-grades-table tbody tr:hover td{background:#fffaf0}.teacher-grades-student-cell{position:sticky;left:0;z-index:4;background:#fcfcfd;font-weight:800;color:#111827;padding-left:18px;white-space:nowrap;box-shadow:8px 0 14px #0f172a08}.teacher-grades-grade-cell{text-align:center;vertical-align:middle}.teacher-grades-grade-box{margin:0 auto;min-width:56px;height:34px;padding:0 10px;border-radius:12px;background:linear-gradient(135deg,#fffaf0,#f8f3df);border:1px solid rgba(201,162,39,.26);display:flex;align-items:center;justify-content:center;color:#111827;font-size:.92rem;font-weight:700}.teacher-grades-grade-box.good{background:linear-gradient(135deg,#f7e7a8,#f0d473)}.teacher-grades-grade-box.empty{background:#f9fafb;color:#9ca3af;border-style:dashed}.teacher-grades-modal-backdrop{position:fixed;inset:0;z-index:45000;background:#0c0c0f7a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;padding:24px}.teacher-grades-modal{width:min(100%,980px);max-height:min(88vh,920px);display:grid;grid-template-rows:auto 1fr auto;border-radius:26px;background:#fffdf8;border:1px solid rgba(201,162,39,.18);overflow:hidden;box-shadow:0 28px 56px #0f172a3d}.teacher-grades-modal__header{display:flex;justify-content:space-between;gap:16px;padding:24px 26px;background:linear-gradient(135deg,#0d0d10,#15161d 56%,#2d220b);color:#fff8ea}.teacher-grades-modal__header h2{margin:6px 0}.teacher-grades-modal__header p{margin:0;color:#fff8eabd;font-weight:700}.teacher-grades-modal__eyebrow{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#f1cf67;font-weight:800}.teacher-grades-modal__close{width:42px;height:42px;padding:0;border-radius:14px;border:1px solid rgba(255,248,234,.16);background:#ffffff14;color:#fff8ea;display:inline-flex;align-items:center;justify-content:center;font-size:1.5rem;line-height:1;cursor:pointer}.teacher-grades-modal__body{overflow:auto;padding:24px 26px;display:grid;gap:18px}.teacher-grades-modal__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.teacher-grades-modal__body label{display:grid;gap:8px;font-weight:800;color:#334155}.teacher-grades-modal__body input,.teacher-grades-modal__body textarea{width:100%;box-sizing:border-box;border-radius:14px;border:1px solid rgba(201,162,39,.24);background:#fff;color:#111827;padding:12px 14px;font:inherit}.teacher-grades-modal__body textarea{min-height:110px;resize:vertical}.teacher-grades-modal__full{width:100%}.teacher-grades-modal__table-wrap{border:1px solid rgba(201,162,39,.14);border-radius:18px;overflow:auto;background:#fff}.teacher-grades-modal__table{width:100%;border-collapse:collapse}.teacher-grades-modal__table th{background:#111827;color:#fff8ea;padding:13px 14px;text-align:left;font-size:.84rem}.teacher-grades-modal__table td{padding:12px 14px;border-bottom:1px solid #f1f5f9}.teacher-grades-modal__footer{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;padding:18px 26px 24px;background:#fffdf8}.teacher-grades-modal__secondary,.teacher-grades-modal__primary{min-height:44px;padding:0 18px;border-radius:14px;font-weight:800;cursor:pointer}.teacher-grades-modal__secondary{border:1px solid rgba(201,162,39,.28);background:#fff;color:#111827}.teacher-grades-modal__primary{border:none;background:linear-gradient(135deg,#111,#1f2937);color:#f3cf63}@media(max-width:980px){.teacher-grades-page{padding:20px}.teacher-grades-hero,.teacher-grades-summary-row,.teacher-grades-modal__grid{grid-template-columns:1fr}}@media(max-width:720px){.teacher-grades-hero__stats,.teacher-grades-grid{grid-template-columns:1fr}.teacher-grades-toolbar{align-items:stretch}.teacher-grades-period-tabs{width:100%}.teacher-grades-period-btn,.teacher-grades-back-btn{width:100%;justify-content:center}.teacher-grades-table-shell{padding:16px}.teacher-grades-modal-backdrop{padding:12px;align-items:flex-start}.teacher-grades-modal{width:100%;max-height:calc(100vh - 24px);border-radius:20px}.teacher-grades-modal__header,.teacher-grades-modal__body,.teacher-grades-modal__footer{padding-left:16px;padding-right:16px}.teacher-grades-modal__header{flex-direction:column;align-items:stretch}.teacher-grades-modal__footer{justify-content:stretch}.teacher-grades-modal__secondary,.teacher-grades-modal__primary{width:100%}}.student-alerts{display:grid;gap:18px;padding:28px;background:radial-gradient(circle at top right,rgba(201,162,39,.1),transparent 24%),linear-gradient(180deg,#fffdf8,#f5efe1);min-height:100%}.student-alerts__hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,280px);gap:16px;align-items:start;padding:24px;border-radius:24px;background:linear-gradient(135deg,#101114,#171821 55%,#2a1f0c);color:#fff8ea;border:1px solid rgba(201,162,39,.18);box-shadow:0 20px 38px #0f172a29}.student-alerts__hero-copy{min-width:0}.student-alerts__badge{display:inline-flex;align-items:center;min-height:30px;padding:0 14px;margin-bottom:14px;border-radius:999px;background:#fff8ea14;border:1px solid rgba(201,162,39,.24);color:#e7cb73;letter-spacing:.14em;text-transform:uppercase;font-size:.74rem;font-weight:800}.student-alerts__hero-copy h2{margin:0 0 8px;font-size:clamp(1.85rem,2.6vw,2.5rem);line-height:1.08;max-width:14ch}.student-alerts__hero-copy p{margin:0;max-width:640px;line-height:1.6;color:#fff8eabd}.student-alerts__control-card{display:grid;gap:8px;padding:16px;border-radius:18px;background:#ffffff14;border:1px solid rgba(255,248,234,.14)}.student-alerts__control-card span{font-size:.78rem;font-weight:800;color:#fff8eab8;text-transform:uppercase;letter-spacing:.08em}.student-alerts__control-card .styled-select__trigger{height:46px;border-radius:14px;border:1px solid rgba(201,162,39,.2);background:#0a0a0a6b;color:#fff8ea;padding:0 14px;font-weight:800;box-shadow:none}.student-alerts__control-card .styled-select__value,.student-alerts__control-card .styled-select__icon{color:#fff8ea}.student-alerts__summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.student-alerts__summary-card{padding:18px;border-radius:20px;background:#fffffff2;border:1px solid rgba(201,162,39,.12);box-shadow:0 14px 24px #18212f0d}.student-alerts__summary-card span{display:block;margin-bottom:8px;color:#6b7280;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800}.student-alerts__summary-card strong{font-size:1.8rem;color:#111827}.student-alerts__summary-card.warning strong{color:#6b7280}.student-alerts__summary-card.accent strong{color:#8b6b1d}.student-alerts__empty{padding:18px;border-radius:18px;text-align:center;border:1px dashed rgba(201,162,39,.22);background:#ffffffc7;color:#6b7280;font-weight:700}.student-alerts__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;align-items:start}.student-alert-card{display:grid;gap:12px;padding:18px;border-radius:22px;background:#fffffff5;border:1px solid rgba(201,162,39,.14);box-shadow:0 16px 28px #18212f0f}.student-alert-card--empty{text-align:center}.student-alert-card__top{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.student-alert-card__type,.student-alert-card__period{display:inline-flex;align-items:center;min-height:30px;padding:0 11px;border-radius:999px;font-size:.74rem;font-weight:800}.student-alert-card__type{background:#f8f5ec;border:1px solid #efe4c0;color:#8b6b1d}.student-alert-card__type.critical{background:#111827;border-color:#c9a22738;color:#fff8ea}.student-alert-card__type.warning{background:#fffbeff5;border-color:#c9a22742;color:#8b6b1d}.student-alert-card__period{background:#111827;color:#fff8ea}.student-alert-card h4{margin:0;font-size:1.02rem;line-height:1.35;color:#111827}.student-alert-card p{margin:0;color:#475569;line-height:1.58;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.student-alert-card--timeline{gap:16px}.student-alert-card__intro{display:block;overflow:visible;-webkit-line-clamp:unset}.student-alert-card__timeline{display:grid;gap:14px}.student-alert-card__timeline-item{display:grid;grid-template-columns:16px minmax(0,1fr);gap:12px;align-items:start}.student-alert-card__timeline-dot{width:12px;height:12px;margin-top:6px;border-radius:999px;background:linear-gradient(135deg,#e7cb73,#c9a227);box-shadow:0 0 0 4px #c9a22729}.student-alert-card__timeline-content{display:grid;gap:4px;padding:14px 16px;border-radius:16px;background:#f8f5ec;border:1px solid #e9ddb8}.student-alert-card__timeline-content strong{color:#111827;font-size:.92rem}.student-alert-card__timeline-content span{color:#64748b;font-size:.8rem;font-weight:700}.student-alert-card__timeline-content p{display:block;overflow:visible;-webkit-line-clamp:unset}@media(max-width:980px){.student-alerts{padding:20px}.student-alerts__hero{grid-template-columns:1fr}.student-alerts__summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.student-alerts__control-card,.student-alerts__summary-grid,.student-alerts__list{grid-template-columns:1fr}.student-alerts__hero{padding:20px}.student-alerts__hero-copy h2{max-width:none}}.student-tasks{display:grid;gap:22px;padding:28px;width:100%;box-sizing:border-box;background:radial-gradient(circle at top right,rgba(201,162,39,.08),transparent 24%),linear-gradient(180deg,#fffdf8,#f5efe1);min-height:100%}.student-tasks__hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);gap:18px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#0d0d10,#15161d 56%,#2e220b);border:1px solid rgba(201,162,39,.16);box-shadow:0 24px 42px #0f172a2e;color:#fff8ea}.student-tasks__hero-copy h2{margin:0 0 10px;font-size:clamp(2.1rem,3vw,3rem);line-height:1.02}.student-tasks__hero-copy p{margin:0;max-width:700px;line-height:1.68;color:#fff8eabf}.student-tasks__badge{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;margin-bottom:16px;border-radius:999px;background:#ffffff14;border:1px solid rgba(201,162,39,.28);color:#e7cb73;letter-spacing:.14em;text-transform:uppercase;font-size:.76rem;font-weight:800}.student-tasks__stats{display:grid;grid-template-columns:repeat(2,minmax(0,180px));justify-content:end;gap:14px}.student-tasks__stat-card{padding:18px;border-radius:18px;background:#ffffff14;border:1px solid rgba(255,248,234,.1)}.student-tasks__stat-card span{display:block;margin-bottom:8px;font-size:.78rem;color:#fff8eaad;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.student-tasks__stat-card strong{font-size:2rem;color:#fff8ea}.student-tasks__stat-card.accent strong{color:#f4d46c}.student-tasks__stat-card.warning strong{color:#f7c08a}.student-tasks__stat-trigger{border:0;background:transparent;padding:0;color:inherit;cursor:pointer;width:100%;text-align:left;display:block}.student-tasks__section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}.student-tasks__section-head h3{margin:0;font-size:1.45rem;color:#151515}.student-tasks__section-head p{margin:6px 0 0;color:#6b7280}.student-tasks__search{display:inline-flex;align-items:center;gap:10px;min-width:min(320px,100%);min-height:46px;padding:0 14px;border-radius:14px;border:1px solid rgba(201,162,39,.18);background:#ffffffeb;color:#6b7280}.student-tasks__search input{width:100%;border:0;outline:none;background:transparent;color:#111827}.student-tasks__areas{display:grid;gap:18px}.student-tasks__area-card{background:#fffffff2;border-radius:24px;border:1px solid rgba(201,162,39,.14);box-shadow:0 18px 36px #18212f0f;padding:22px}.student-tasks__area-top{display:flex;align-items:center;gap:12px;margin-bottom:16px}.student-tasks__area-top strong{font-size:1.15rem;color:#151515}.student-tasks__area-pill{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 12px;border-radius:999px;background:#111827;color:#fff8ea;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.student-tasks__subject-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.student-tasks__subject-card{display:flex;align-items:center;gap:14px;width:100%;padding:18px;border-radius:20px;border:1px solid rgba(201,162,39,.14);background:linear-gradient(180deg,#fffefa,#f7f1e2);color:#111827;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;text-align:left}.student-tasks__subject-card:hover{transform:translateY(-2px);border-color:#c9a22747;box-shadow:0 16px 30px #18212f14}.student-tasks__subject-icon{width:44px;height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#111827;color:#f1cf67;flex-shrink:0}.student-tasks__subject-copy{display:grid;gap:3px;flex:1}.student-tasks__subject-copy strong{font-size:1rem}.student-tasks__subject-copy span{font-size:.88rem;color:#6b7280}.modal-backdrop{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;padding:22px;background:#04050a9e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9999}.modal-premium{width:min(620px,100%);max-height:min(88vh,920px);background:#fff;border-radius:24px;border:1px solid rgba(201,162,39,.2);box-shadow:0 30px 80px #00000057;overflow:hidden;display:flex;flex-direction:column;animation:modalFade .22s ease-out}.modal-premium--wide{width:min(980px,100%)}@keyframes modalFade{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header-fixed{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:22px 24px;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c);border-bottom:1px solid rgba(201,162,39,.18)}.student-task-modal__headline{display:grid;gap:5px}.student-task-modal__eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:#e7cb73}.modal-header-fixed h2,.modal-header-fixed h3{margin:0;color:#fff8ea;font-size:1.45rem}.student-task-modal__close-btn{width:40px;height:40px;border-radius:12px;border:1px solid rgba(201,162,39,.3);background:#ffffff0f;color:#fff8ea;cursor:pointer;font-size:1.25rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;position:static}.modal-body{padding:22px 24px;display:grid;gap:18px;overflow:auto;min-height:0}.student-task-modal__body,.student-task-modal__detail{background:linear-gradient(180deg,#fffefa,#faf6ea)}.student-task-modal__summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.student-task-modal__summary-card,.student-task-modal__info-card{padding:16px;border-radius:18px;background:#ffffffeb;border:1px solid rgba(201,162,39,.14)}.student-task-modal__summary-card span,.student-task-modal__info-card span{display:block;margin-bottom:7px;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;font-weight:800}.student-task-modal__summary-card strong,.student-task-modal__info-card strong{font-size:1.55rem;color:#151515}.student-task-modal__summary-card.accent strong{color:#9b7a1b}.student-task-modal__summary-card.warning strong{color:#b45309}.student-task-modal__list{display:grid;gap:14px}.student-task-pending-list{display:grid;gap:12px}.student-task-pending-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-radius:18px;background:#fffffff5;border:1px solid rgba(201,162,39,.15)}.student-task-pending-item span{display:block;margin-bottom:4px;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#8b6b1d;font-weight:800}.student-task-pending-item strong{color:#111827}.student-task-pending-item small{color:#64748b;white-space:nowrap}.student-task-item{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto;align-items:center;gap:18px;padding:18px;border-radius:20px;background:#fffffff5;border:1px solid rgba(201,162,39,.15);box-shadow:0 14px 24px #18212f0d}.student-task-item__title{margin:0;font-size:1.05rem;color:#111827;min-width:0}.student-task-item__date{display:inline-flex;align-items:center;align-self:center;gap:6px;min-height:32px;padding:0 12px;border-radius:999px;background:#111827;color:#fff8ea;font-size:.78rem;font-weight:700;white-space:nowrap}.student-task-item__state-row{display:flex;align-items:center;justify-content:flex-start}.student-task-item__status{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;font-size:.8rem;font-weight:800}.student-task-item__status.pending{background:#fff7ed;color:#b45309}.student-task-item__status.delivered{background:#f0fdf4;color:#166534}.student-task-item__status.graded{background:#f8f5ec;color:#8b6b1d}.student-task-item__actions{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;justify-content:flex-end}.btn-primary,.btn-secondary{min-height:42px;border-radius:14px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.btn-primary{border:none;background:linear-gradient(135deg,#d4af37,#be9720);color:#111827}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 20px #c9a22747}.btn-primary--dark{background:#111827;color:#fff8ea}.btn-secondary{border:1px solid rgba(15,23,42,.12);background:#fff;color:#1f2937}.btn-secondary:hover{transform:translateY(-1px);box-shadow:0 10px 20px #0f172a14}.student-task-modal__empty{padding:22px;border-radius:18px;text-align:center;background:#ffffffeb;border:1px dashed rgba(201,162,39,.25);color:#6b7280;font-weight:700}.student-task-modal__info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.assignment-description{display:grid;gap:8px;padding:18px;border-radius:18px;background:#fffffff2;border:1px solid rgba(201,162,39,.14)}.assignment-description strong{color:#111827}.assignment-description p{margin:0;color:#475569;line-height:1.68}.student-task-modal__file-box,.student-task-modal__upload-note{display:grid;gap:10px;padding:18px;border-radius:18px;background:#fffffff2;border:1px solid rgba(201,162,39,.14)}.student-task-modal__file-box p,.student-task-modal__upload-note p{margin:0;color:#6b7280;line-height:1.6}.file-link{display:inline-flex;align-items:center;gap:8px;width:fit-content;min-height:42px;padding:0 14px;border-radius:14px;text-decoration:none;border:1px solid rgba(201,162,39,.28);background:#fff9e8;color:#8b6b1d;font-weight:800}.assignment-form{display:grid;gap:12px}.assignment-form label{font-weight:800;color:#111827}.assignment-form input,.assignment-form textarea{width:100%;box-sizing:border-box;padding:12px 14px;border-radius:14px;border:1px solid rgba(201,162,39,.22);background:#fff;color:#111827}.assignment-form input[type=file]{padding:14px}.msg.error{margin:0;color:#b91c1c;font-size:.9rem;font-weight:700}.modal-footer{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding:18px 24px 22px;background:#fff;border-top:1px solid #f2f4f7}.grade-box{display:grid;gap:16px;padding:20px;border-radius:20px;background:#fffffff5;border:1px solid rgba(201,162,39,.14)}.grade-number{font-size:3rem;font-weight:900;line-height:1;color:#b98e18}.student-task-modal__feedback{display:grid;gap:6px}.student-task-modal__feedback p{margin:0;color:#475569;line-height:1.65}@media(max-width:980px){.student-tasks{padding:20px}.student-tasks__hero{grid-template-columns:1fr}.student-task-modal__summary{grid-template-columns:repeat(2,minmax(0,1fr))}.student-task-item{grid-template-columns:1fr}.student-task-item__actions{justify-content:flex-start;flex-wrap:wrap}}@media(max-width:720px){.student-tasks__stats,.student-task-modal__summary,.student-task-modal__info-grid,.student-tasks__subject-grid{grid-template-columns:1fr}.student-tasks__search{min-width:100%}.modal-backdrop{padding:14px;align-items:flex-start}.modal-premium,.modal-premium--wide{width:100%;max-height:calc(100vh - 28px);border-radius:20px}.modal-body,.modal-footer,.modal-header-fixed{padding-left:16px;padding-right:16px}.modal-header-fixed{align-items:flex-start}.modal-footer,.student-task-item__actions{justify-content:stretch}.modal-footer .btn-primary,.modal-footer .btn-secondary,.student-task-item__actions .btn-primary,.student-task-item__actions .btn-secondary{width:100%}.student-task-item__state-row,.student-task-item__date,.student-task-item__actions{justify-content:flex-start}.student-task-pending-item{align-items:flex-start;flex-direction:column}}.student-attendance-page{padding:28px;min-height:100vh;background:radial-gradient(circle at top right,rgba(201,162,39,.1),transparent 26%),linear-gradient(180deg,#fffdf8,#f6f1e4)}.student-attendance-hero{display:flex;justify-content:space-between;align-items:stretch;gap:20px;flex-wrap:wrap;margin-bottom:22px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#101010,#1d1d1d 55%,#32260d);border:1px solid rgba(201,162,39,.18);box-shadow:0 22px 42px #0f172a2e}.student-attendance-hero-copy{flex:1;min-width:280px}.student-attendance-badge{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border-radius:999px;background:#fff8ea14;border:1px solid rgba(201,162,39,.24);color:#e7cb73;font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}.student-attendance-hero-copy h1{margin:0;color:#fff8ea;font-size:clamp(2rem,3vw,2.8rem);line-height:1.05}.student-attendance-hero-copy p{margin:10px 0 0;color:#fff8eac2;font-size:.96rem;max-width:720px;line-height:1.65}.student-attendance-filter-card{display:flex;flex-direction:column;gap:8px;min-width:220px;padding:16px;border-radius:18px;background:#ffffff14;border:1px solid rgba(255,248,234,.14)}.student-attendance-filter-group{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap}.student-attendance-filter-card label{font-size:.82rem;font-weight:700;color:#fff8eab8}.student-attendance-filter-card select{height:48px;border:1px solid rgba(201,162,39,.22);border-radius:14px;padding:0 14px;font-size:.95rem;font-weight:700;background:#0a0a0a6b;color:#fff8ea}.student-attendance-filter-card input{height:48px;border:1px solid rgba(201,162,39,.22);border-radius:14px;padding:0 14px;font-size:.95rem;font-weight:700;background:linear-gradient(180deg,#fffdfa,#fffaf2);color:#111827;box-sizing:border-box;width:100%;color-scheme:light}.student-attendance-filter-card input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.78;filter:invert(16%) sepia(9%) saturate(963%) hue-rotate(180deg) brightness(94%) contrast(91%)}.student-attendance-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.student-attendance-summary-card{padding:20px;border-radius:20px;background:#fffffff0;border:1px solid rgba(201,162,39,.12);box-shadow:0 14px 26px #18212f0f}.student-attendance-summary-card span{display:block;margin-bottom:8px;color:#6b7280;font-size:.82rem;font-weight:700}.student-attendance-summary-card strong{font-size:2rem;color:#111827}.student-attendance-summary-card.absent strong{color:#111827}.student-attendance-summary-card.late strong{color:#6b7280}.student-attendance-summary-card.justified strong{color:#8b6b1d}.student-attendance-message{margin-bottom:16px;padding:14px 16px;border-radius:16px;font-weight:700}.student-attendance-message.error{background:#111827f5;color:#fff8ea;border:1px solid rgba(201,162,39,.22)}.student-attendance-empty-box{border:1px dashed rgba(201,162,39,.2);background:#ffffffc7;color:#6b7280;border-radius:18px;padding:26px;text-align:center;font-weight:700}.student-attendance-table-section{background:#fffffff5;border:1px solid rgba(201,162,39,.12);border-radius:22px;box-shadow:0 16px 30px #18212f14;overflow:hidden}.student-attendance-section-header{padding:20px 22px;border-bottom:1px solid #f0ebe0;background:linear-gradient(180deg,#fffef9,#fbf7ef)}.student-attendance-section-header h3{margin:0;color:#111827;font-size:1.3rem}.student-attendance-section-header p{margin:8px 0 0;color:#64748b;font-size:.92rem}.student-attendance-table-wrapper{width:100%;overflow-x:auto;background:#fffef9}.student-attendance-table{width:100%;border-collapse:collapse;min-width:980px}.student-attendance-table thead th{background:#111827;color:#fff8ea;text-align:left;padding:15px 14px;font-size:.84rem;white-space:nowrap}.student-attendance-table tbody td{padding:15px 14px;border-bottom:1px solid #f0ebe0;vertical-align:middle}.student-attendance-table tbody tr:hover{background:#fff8ea}.student-attendance-status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:96px;min-height:34px;padding:0 12px;border-radius:999px;font-size:.76rem;font-weight:800;border:1px solid transparent}.student-attendance-status-pill.present{background:#fffbeff5;color:#8b6b1d;border-color:#c9a22747}.student-attendance-status-pill.absent{background:#111827;color:#fff8ea;border-color:#c9a22733}.student-attendance-status-pill.late{background:#f3ebdbf5;color:#4b5563;border-color:#c9a2272e}.student-attendance-justified{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:32px;padding:0 10px;border-radius:999px;font-size:.76rem;font-weight:800}.student-attendance-justified.yes{background:#fffbeff5;color:#8b6b1d}.student-attendance-justified.no{background:#111827;color:#fff8ea}.student-attendance-observation-cell{color:#475569;max-width:320px;line-height:1.55}.student-attendance-file-link{color:#8b5e00;font-weight:800;text-decoration:none}.student-attendance-file-link:hover{text-decoration:underline}.student-attendance-muted{color:#94a3b8}@media(max-width:980px){.student-attendance-page{padding:20px}.student-attendance-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.student-attendance-hero{padding:22px}.student-attendance-filter-card,.student-attendance-filter-group{width:100%}.student-attendance-summary-grid{grid-template-columns:1fr}}.modal-backdrop{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:47000;padding:16px}.modal-card{background:linear-gradient(180deg,#fff,#f7f2e7);width:min(420px,100%);border-radius:18px;box-shadow:0 25px 60px #00000059;overflow:hidden;border:1px solid rgba(184,155,45,.22)}.task-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:22px 24px 18px;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c);border-bottom:1px solid rgba(184,155,45,.18)}.modal-card h2{margin:0 0 6px;color:#fff8ea;font-size:1.3rem;font-weight:800}.task-modal__subtitle{margin:0;color:#fff8eabd;line-height:1.5}.task-modal__close{width:40px;height:40px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:#ffffff14;color:#fff8ea;cursor:pointer;font-weight:700;display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:1;flex-shrink:0}.modal-info p{margin:0}.modal-info{display:grid;gap:10px;padding:22px 24px 0}.modal-info p{margin:6px 0;font-size:.95rem;color:#374151}.modal-description{margin:14px 24px 0;padding:14px;background:#faf7ed;border-left:4px solid #b89b2d;border-radius:10px;font-size:.95rem;color:#111827}.modal-actions{margin-top:22px;display:flex;justify-content:flex-end;gap:10px;padding:0 24px 24px}.btn-primary{background:#b89b2d;color:#111827;border:none;padding:8px 18px;border-radius:10px;font-weight:600;cursor:pointer}.btn-primary:hover{background:#9c8120}.btn-secondary{background:transparent;border:1px solid #d1d5db;padding:8px 16px;border-radius:10px;cursor:pointer}@media(max-width:640px){.modal-backdrop{align-items:flex-start;padding:12px}.modal-card{width:100%;border-radius:16px}.task-modal__header,.modal-info,.modal-actions{padding-left:16px;padding-right:16px}.modal-actions{flex-direction:column-reverse}.modal-actions .btn-primary,.modal-actions .btn-secondary{width:100%}}.boletin-shell{width:100%;display:flex;flex-direction:column;gap:20px;padding:28px;min-height:100vh;box-sizing:border-box;background:radial-gradient(circle at top right,rgba(201,162,39,.1),transparent 28%),linear-gradient(180deg,#fffdf8,#f6f1e4)}.boletin-header{background:linear-gradient(135deg,#101010,#1d1d1d 55%,#32260d);border:1px solid rgba(201,162,39,.18);border-radius:26px;padding:24px 26px;box-shadow:0 22px 42px #0f172a2e;display:flex;align-items:center;justify-content:space-between;gap:16px}.boletin-header h1{margin:0;color:#fff8ea;font-weight:900;font-size:clamp(2rem,3vw,2.8rem)}.boletin-header p{margin:10px 0 0;color:#fff8eac2;font-weight:700;line-height:1.6}.boletin-error{margin-top:10px;color:#fecaca;font-weight:800}.boletin-actions{display:flex;gap:10px}.boletin-btn{border:none;cursor:pointer;border-radius:14px;min-height:48px;padding:0 18px;font-weight:900;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.boletin-btn:hover{transform:translateY(-1px)}.boletin-btn.gold{background:linear-gradient(135deg,#e7cb73,#c9a227);color:#17120a;box-shadow:0 14px 30px #c9a2273d}.boletin-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.summary-card{background:#fffffff5;border-radius:20px;border:1px solid rgba(201,162,39,.14);padding:20px;box-shadow:0 14px 26px #18212f0f;display:flex;flex-direction:column;gap:8px}.summary-card.highlight{background:linear-gradient(135deg,#fff7df,#fffef8);border-color:#c9a22761}.summary-label{color:#6b7280;font-weight:800;font-size:.9rem}.summary-value{color:#111827;font-weight:950;font-size:2rem}.boletin-list{display:flex;flex-direction:column;gap:16px}.boletin-subject{background:#fffffff5;border-radius:22px;border:1px solid rgba(201,162,39,.14);box-shadow:0 16px 30px #18212f14;overflow:hidden}.boletin-subject-head{width:100%;text-align:left;border:none;background:linear-gradient(135deg,#111,#1f1f1f);padding:18px 20px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px}.head-left{display:flex;flex-direction:column;gap:8px}.subject-name{color:#fff8ea;font-weight:950;font-size:1.08rem}.subject-meta{color:#fff8eac7;font-weight:700;font-size:.9rem}.head-right{display:flex;align-items:center;gap:10px}.avg-badge{min-width:78px;height:38px;border-radius:14px;display:grid;place-items:center;font-weight:950;color:#17120a;background:linear-gradient(135deg,#e7cb73,#c9a227);box-shadow:0 10px 22px #c9a22733}.chev{color:#fff8ea;font-weight:900;transition:transform .15s ease;opacity:.9}.chev.open{transform:rotate(180deg)}.boletin-table-wrap{background:#fffef9;padding:18px 20px 20px}.boletin-table{width:100%;border-collapse:collapse;border-radius:18px;overflow:hidden;border:1px solid #ece8db}.boletin-table thead th{background:#111827;color:#fff8ea;padding:14px;text-align:left;font-weight:900;font-size:.84rem}.boletin-table tbody td{padding:14px;border-bottom:1px solid #f0ebe0;vertical-align:top;color:#111827;background:#fffef9}.boletin-table tbody tr:hover td{background:#fff8ea}.tarea-title{font-weight:900;margin-bottom:6px}.tarea-retro{color:#334155;font-weight:700;font-size:.92rem;line-height:1.5}.tarea-retro.muted{color:#64748b}.nota-chip{display:inline-flex;align-items:center;justify-content:center;min-width:88px;min-height:34px;border-radius:999px;font-weight:900;color:#17120a;background:#fff7df;border:1px solid rgba(212,175,55,.45)}.nota-chip.pending{background:#f1f5f9;border-color:#e2e8f0;color:#64748b}.fecha-cell{color:#475569;font-weight:800;white-space:nowrap}.boletin-empty{padding:18px;color:#64748b;font-weight:800;text-align:center;border:1px dashed rgba(201,162,39,.2);border-radius:18px;background:#ffffffc7}.boletin-empty.small{padding:14px}@media(max-width:860px){.boletin-shell{padding:20px}.boletin-header{flex-direction:column;align-items:stretch}.boletin-actions,.boletin-btn{width:100%}.boletin-summary{grid-template-columns:1fr}}:root{--landing-black: #0b0b0f;--landing-black-soft: #15151b;--landing-gold: #c9a227;--landing-gold-soft: #e5c96b;--landing-ivory: #f8f6f1;--landing-white: #ffffff;--landing-gray: #b8b8b8;--landing-border: rgba(201, 162, 39, .2);--landing-shadow: 0 22px 55px rgba(0, 0, 0, .22)}html{scroll-behavior:smooth}body{background:var(--landing-black)}.landing-shell{min-height:100vh;color:var(--landing-white);background:radial-gradient(circle at top left,rgba(247,236,192,.2),transparent 26%),radial-gradient(circle at bottom right,rgba(201,162,39,.1),transparent 20%),linear-gradient(180deg,#0b0b0f,#111116 48%,#0b0b0f)}.landing-header{position:sticky;top:0;z-index:60;padding:18px 0 0;background:linear-gradient(180deg,#0b0b0feb,#0b0b0fd6 68%,#0b0b0f33);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.landing-header:after{content:"";display:block;height:2px;margin-top:16px;background:linear-gradient(90deg,transparent,var(--landing-gold),transparent)}.landing-header__inner,.landing-main,.landing-footer{width:min(1360px,calc(100% - 40px));margin:0 auto}.landing-header__inner{display:flex;align-items:center;gap:24px}.landing-header__brand{display:inline-flex;align-items:center;gap:14px;min-width:0;color:inherit;text-decoration:none;transition:color .18s ease}.landing-header__brand:hover,.landing-header__brand:focus-visible,.landing-header__brand:visited{color:var(--landing-white)}.landing-header__brand:hover strong,.landing-header__brand:focus-visible strong{color:var(--landing-gold-soft)}.landing-header__brand:hover span,.landing-header__brand:focus-visible span{color:#fff8ead6}.landing-header__logo,.landing-footer__logo{width:56px;height:56px;object-fit:contain;border-radius:18px;background:#ffffff0a;padding:8px;border:1px solid rgba(255,255,255,.08)}.landing-header__brand strong,.landing-footer__brand strong{display:block;font-family:Georgia,Times New Roman,serif;font-size:1.16rem;letter-spacing:.02em}.landing-header__brand span{display:block;color:#ffffffad;font-size:.88rem}.landing-header__toggle{display:none;margin-left:auto;width:46px;height:46px;border-radius:14px;border:1px solid var(--landing-border);background:#ffffff08;color:var(--landing-white)}.landing-header__menu{display:flex;align-items:center;justify-content:space-between;gap:20px;flex:1}.landing-header__nav,.landing-header__social,.landing-header__tools{display:flex;align-items:center}.landing-header__nav{justify-content:center;gap:4px;flex:1}.landing-header__nav a,.landing-header__cta,.landing-btn,.landing-inline-link,.landing-footer__links a,.landing-footer__social a{text-decoration:none}.landing-header__nav a{position:relative;padding:12px 14px;color:#ffffffd1;font-weight:600;transition:color .18s ease,transform .18s ease}.landing-header__nav a:after{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:1px;transform:scaleX(0);transform-origin:center;background:linear-gradient(90deg,transparent,var(--landing-gold),transparent);transition:transform .18s ease}.landing-header__nav a:hover,.landing-header__nav a.active{color:var(--landing-gold-soft)}.landing-header__nav a:hover:after,.landing-header__nav a.active:after{transform:scaleX(1)}.landing-header__dropdown{position:relative}.landing-header__dropdown-trigger{position:relative;display:inline-flex;align-items:center;gap:8px;padding:12px 14px;border:0;background:transparent;color:#ffffffd1;font-weight:600}.landing-header__dropdown-trigger:after{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:1px;transform:scaleX(0);transform-origin:center;background:linear-gradient(90deg,transparent,var(--landing-gold),transparent);transition:transform .18s ease}.landing-header__dropdown.is-active .landing-header__dropdown-trigger,.landing-header__dropdown-trigger:hover,.landing-header__dropdown-trigger.active{color:var(--landing-gold-soft)}.landing-header__dropdown.is-active .landing-header__dropdown-trigger:after,.landing-header__dropdown-trigger:hover:after,.landing-header__dropdown-trigger.active:after{transform:scaleX(1)}.landing-header__dropdown-menu{position:absolute;top:calc(100% + 14px);left:0;min-width:290px;padding:12px;border-radius:24px;background:#0e0e12fa;border:1px solid rgba(229,201,107,.18);box-shadow:0 24px 50px #00000047;display:grid;gap:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease;z-index:12}.landing-header__dropdown.is-open .landing-header__dropdown-menu,.landing-header__dropdown:hover .landing-header__dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.landing-header__dropdown-menu a{display:block;padding:12px 14px;border-radius:16px;color:#ffffffd6;text-decoration:none;transition:background .18s ease,color .18s ease,transform .18s ease}.landing-header__dropdown-menu a:hover,.landing-header__dropdown-menu a.active{background:#e5c96b1f;color:#fff8ea;transform:translate(2px)}.landing-header__tools{gap:14px}.landing-header__social{gap:10px}.landing-profile{position:relative}.landing-profile__trigger{display:inline-flex;align-items:center;justify-content:center;width:62px;height:62px;padding:0;overflow:hidden;border-radius:999px;border:1px solid rgba(229,201,107,.2);background:#ffffff0a;color:var(--landing-white);box-shadow:0 10px 24px #00000029}.landing-profile__trigger svg{display:block;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.landing-profile__avatar{width:100%;height:100%;border-radius:999px;object-fit:cover;object-position:center 22%;display:block;transform:scale(1.18)}.landing-profile__menu{position:absolute;top:calc(100% + 12px);right:0;width:min(280px,calc(100vw - 24px));min-width:0;padding:14px;border-radius:22px;background:#0e0e12fa;border:1px solid rgba(229,201,107,.18);box-shadow:0 24px 50px #00000047;display:grid;gap:10px}.landing-profile__summary{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;align-items:center;min-width:0;padding:8px 6px 12px;border-bottom:1px solid rgba(255,255,255,.08);color:var(--landing-gold-soft)}.landing-profile__summary>div{min-width:0}.landing-profile__summary strong{display:block;max-width:100%;color:var(--landing-white);font-size:.92rem;line-height:1.3;overflow-wrap:anywhere;word-break:break-word}.landing-profile__summary span{color:#ffffffa8;font-size:.8rem}.landing-profile__menu button{display:inline-flex;align-items:center;gap:10px;width:100%;padding:11px 12px;border-radius:16px;border:0;background:#ffffff0a;color:var(--landing-white);text-align:left}.landing-profile__menu button:hover{background:#e5c96b1f}.landing-login__overlay{position:fixed;inset:0;z-index:95;display:flex;align-items:center;justify-content:center;padding:24px;background:#050508b8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.landing-login{position:relative;width:min(520px,100%);padding:18px;border-radius:34px;background:linear-gradient(145deg,#0e0e12fc,#15151bf7 58%,#0b0b0ffa);border:1px solid rgba(229,201,107,.18);box-shadow:0 28px 64px #00000057}.landing-login__close{position:absolute;top:24px;right:24px;width:42px;height:42px;border-radius:14px;border:1px solid rgba(229,201,107,.16);background:#ffffff0d;color:var(--landing-white);padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center}.landing-login__close:hover{background:#e5c96b24}.landing-login__brand{margin-bottom:20px;padding:24px 24px 0}.landing-login__logo{width:72px;height:72px;margin-bottom:14px;border-radius:20px;background:#ffffff0d;padding:10px}.landing-login__brand h2{margin:0 0 12px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,4vw,2.4rem);color:var(--landing-white)}.landing-login__brand p{margin:0;color:#ffffffb8;line-height:1.7}.landing-login__form{display:grid;gap:14px;padding:24px;border-radius:28px;background:#ffffff0a;border:1px solid rgba(229,201,107,.12)}.landing-login__form label{display:grid;gap:8px}.landing-login__form label span{color:var(--landing-gold-soft);font-weight:700}.landing-login__form input{box-sizing:border-box;width:100%;border:1px solid rgba(229,201,107,.16);border-radius:18px;background:#ffffff14;color:var(--landing-white);padding:14px 16px;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.landing-login__form input::placeholder{color:#ffffff85}.landing-login__form>*{min-width:0}.landing-login__form input:focus{border-color:#e5c96b94;box-shadow:0 0 0 4px #c9a22724}.landing-login__password-input{position:relative}.landing-login__password-input input{padding-right:48px}.landing-login__password-toggle{position:absolute;top:50%;right:14px;transform:translateY(-50%);width:28px;height:28px;border:0;background:transparent;color:#fff8eac7;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.landing-login__password-toggle:hover{color:var(--landing-gold-soft)}.landing-login__submit{width:100%;margin-top:8px}.landing-login__google{position:relative;width:100%;min-width:0;margin-top:8px;min-height:52px}.landing-login__google-visual{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:12px;width:100%;min-height:52px;padding:0 18px;border-radius:18px;border:1px solid rgba(229,201,107,.18);background:#fff;color:#24324a;box-sizing:border-box;box-shadow:0 8px 20px #0f172a0d}.landing-login__google-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px}.landing-login__google>div{width:100%}.landing-login__google>div,.landing-login__google iframe{width:100%!important;max-width:100%!important}.landing-login__google>div:last-child{position:absolute;inset:0;opacity:.01;border-radius:18px;overflow:hidden}.landing-login__error{padding:12px 14px;border-radius:16px;background:#c9a2271f;border:1px solid rgba(229,201,107,.2);color:#f4e4a5}.landing-header__social a,.landing-footer__social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;color:var(--landing-gold-soft);border:1px solid rgba(229,201,107,.2);background:#ffffff08;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease}.landing-header__social a:visited,.landing-footer__social a:visited{color:var(--landing-gold-soft)}.landing-header__social a:hover,.landing-header__social a:focus-visible,.landing-footer__social a:hover,.landing-footer__social a:focus-visible{transform:translateY(-2px);background:#c9a22724;border-color:#e5c96b70;color:#fff8ea}.landing-header__cta,.landing-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:999px;border:1px solid transparent;font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease}.landing-header__cta,.landing-btn--primary{background:linear-gradient(135deg,var(--landing-gold-soft) 0%,var(--landing-gold) 100%);color:#18140b;box-shadow:0 18px 40px #c9a22738}.landing-header__cta:visited,.landing-btn--primary:visited{color:#18140b}.landing-header__cta:hover,.landing-btn:hover{transform:translateY(-2px)}.landing-header__cta:hover,.landing-header__cta:focus-visible,.landing-btn--primary:hover,.landing-btn--primary:focus-visible{background:linear-gradient(135deg,#edd883,#c99b14);color:#18140b;box-shadow:0 22px 44px #c9a22747}.landing-btn--ghost{border:1px solid rgba(255,255,255,.26);background:#ffffff0a;color:var(--landing-white)}.landing-btn--ghost:visited{color:var(--landing-white)}.landing-btn--ghost:hover,.landing-btn--ghost:focus-visible{background:#e5c96b1f;border-color:#e5c96b57;color:#fff8ea}.landing-btn--ghost-dark{border:1px solid rgba(201,162,39,.24);background:#1414180a;color:#7f6210}.landing-btn--ghost-dark:visited{color:#7f6210}.landing-btn--ghost-dark:hover,.landing-btn--ghost-dark:focus-visible{background:#c9a22724;border-color:#c9a22757;color:#5c4305}.landing-btn--danger{border:1px solid rgba(201,162,39,.26);background:linear-gradient(180deg,#1b1b21fa,#0f0f14fa);color:#fff4d6}.landing-btn--danger:visited{color:#fff4d6}.landing-btn--danger:hover,.landing-btn--danger:focus-visible{background:linear-gradient(180deg,#2c210cfa,#121218fa);border-color:#e5c96b61;color:#fff8ea}.landing-main{padding:28px 0 0}.landing-page{display:flex;flex-direction:column;gap:42px;padding-bottom:56px}.landing-hero,.landing-gallery,.landing-admissions,.landing-inner-hero,.landing-contact-banner{position:relative;overflow:hidden}.landing-hero{min-height:min(84vh,820px);padding:52px;border-radius:40px;background:linear-gradient(110deg,#0b0b0ff5,#0b0b0fe0 52%,#0b0b0f8f),radial-gradient(circle at top center,rgba(229,201,107,.12),transparent 26%),#111116;box-shadow:var(--landing-shadow);border:1px solid rgba(229,201,107,.1)}.landing-hero__backdrop{position:absolute;inset:0;background:radial-gradient(circle at 28% 32%,rgba(229,201,107,.18),transparent 22%),linear-gradient(90deg,#0b0b0f38,#0b0b0f1f)}.landing-hero__content{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);align-items:center;gap:40px;min-height:100%}.landing-section-tag{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--landing-gold-soft);font-weight:800}.landing-section-tag:before,.landing-section-tag:after{content:"";width:28px;height:1px;background:linear-gradient(90deg,transparent,var(--landing-gold))}.landing-section-tag--light{color:#8b6d0d}.landing-hero h1,.landing-section-heading h1,.landing-section-heading h2{margin:0;font-family:Georgia,Times New Roman,serif;line-height:.98}.landing-hero h1{max-width:640px;font-size:clamp(3rem,6vw,5.8rem);letter-spacing:-.03em}.landing-hero p,.landing-section-heading p,.landing-news-card__body p,.landing-showcase__card p,.landing-gallery__overlay span,.landing-admissions__step p,.landing-community__card span,.landing-contact-card p,.landing-document-card p,.landing-info-panel p,.landing-footer__brand p,.landing-contact-banner p{color:#ffffffb8;line-height:1.7}.landing-hero__copy>p{max-width:560px;margin:22px 0 0;font-size:1.05rem}.landing-hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.landing-hero__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px}.landing-hero__metrics article{padding:18px;border-radius:22px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.landing-hero__metrics strong,.landing-admissions__step strong{display:block;margin-bottom:8px;color:var(--landing-gold-soft);font-family:Georgia,Times New Roman,serif}.landing-hero__metrics strong{font-size:1.7rem}.landing-hero__metrics span{color:#ffffffb3}.landing-hero__visual{position:relative;display:flex;justify-content:flex-end;align-items:stretch}.landing-hero__frame{position:relative;width:min(100%,620px);aspect-ratio:.86;min-height:640px;border-radius:34px;overflow:hidden;border:1px solid rgba(229,201,107,.28);box-shadow:0 28px 80px #00000057;background:linear-gradient(180deg,#18181ef0,#0b0b0feb)}.landing-hero__frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.landing-calendar-card__header span{display:block;margin-bottom:6px;color:var(--landing-gold-soft);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.landing-hero__ornament{position:absolute;z-index:1;pointer-events:none;border-radius:999px;background:linear-gradient(90deg,transparent 0%,rgba(229,201,107,.9) 48%,rgba(201,162,39,.22) 100%)}.landing-hero__ornament--top{top:26px;left:0;width:40%;height:8px}.landing-hero__ornament--bottom{left:-80px;bottom:-110px;width:65%;height:220px;transform:rotate(8deg);opacity:.7;filter:blur(.2px)}.landing-hero__controls{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px}.landing-hero__controls button,.landing-gallery__arrow,.landing-gallery__dots button{border:0;cursor:pointer}.landing-hero__controls>button,.landing-gallery__arrow{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:999px;background:#ffffff0f;color:var(--landing-gold-soft);border:1px solid rgba(229,201,107,.22);outline:none;-webkit-tap-highlight-color:transparent}.landing-hero__controls>button:hover,.landing-gallery__arrow:hover,.landing-hero__controls>button:focus-visible,.landing-gallery__arrow:focus-visible,.landing-hero__controls>button:active,.landing-gallery__arrow:active{background:#c9a22729;color:#fff8ea;border-color:#e5c96b66;box-shadow:0 0 0 3px #c9a22724}.landing-hero__dots,.landing-gallery__dots{display:flex;align-items:center;gap:8px}.landing-hero__dots button,.landing-gallery__dots button{width:12px;height:12px;border-radius:999px;background:#ffffff38;outline:none;-webkit-tap-highlight-color:transparent}.landing-hero__dots button.is-active,.landing-gallery__dots button.is-active{background:var(--landing-gold-soft)}.landing-news-section,.landing-showcase,.landing-community,.landing-document-section,.landing-contact-grid{border-radius:36px}.landing-news-section,.landing-document-section{padding:54px;background:linear-gradient(180deg,#faf7f1,#f5f0e5);color:#141418;box-shadow:0 24px 60px #00000029}.landing-section-heading{max-width:740px}.landing-showcase>.landing-section-heading,.landing-document-section>.landing-section-heading,.landing-inner-hero>.landing-section-heading,.landing-admissions__panel>.landing-section-heading{margin:0 auto 30px;text-align:center}.landing-section-heading--center{margin:0 auto 30px;text-align:center}.landing-section-heading--dark p{color:#ffffffbd}.landing-section-heading h2,.landing-section-heading h1{margin-bottom:14px;font-size:clamp(2.2rem,4vw,3.8rem);color:inherit}.landing-news-section .landing-section-heading p,.landing-showcase .landing-section-heading p,.landing-document-section .landing-section-heading p,.landing-inner-hero .landing-section-heading p,.landing-contact-grid .landing-section-heading p{color:#4f4a42}.landing-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.landing-news-card{position:relative;overflow:hidden;border-radius:30px;background:var(--landing-white);border:1px solid rgba(24,20,11,.06);box-shadow:0 16px 34px #00000014;transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease}.landing-news-card:after,.landing-showcase__card:after,.landing-community__card:after,.landing-info-panel:after,.landing-document-card:after,.landing-contact-card:after,.landing-principle-card:after,.landing-symbol-card:after,.landing-profile-card:after,.landing-value-band:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(229,201,107,.14),transparent 42%);opacity:0;transition:opacity .26s ease}.landing-news-card:hover,.landing-showcase__card:hover,.landing-community__card:hover,.landing-info-panel:hover,.landing-document-card:hover,.landing-contact-card:hover,.landing-principle-card:hover,.landing-symbol-card:hover,.landing-profile-card:hover,.landing-value-band:hover{transform:translateY(-8px);box-shadow:0 28px 50px #00000029;border-color:#c9a22747}.landing-news-card:hover:after,.landing-showcase__card:hover:after,.landing-community__card:hover:after,.landing-info-panel:hover:after,.landing-document-card:hover:after,.landing-contact-card:hover:after,.landing-principle-card:hover:after,.landing-symbol-card:hover:after,.landing-profile-card:hover:after,.landing-value-band:hover:after{opacity:1}.landing-news-card__image-wrap{position:relative;height:280px}.landing-news-card__image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .42s ease}.landing-news-card:hover .landing-news-card__image{transform:scale(1.05)}.landing-news-card__image-wrap:after{content:"";position:absolute;inset:auto 0 0;height:36%;background:linear-gradient(180deg,transparent,rgba(11,11,15,.88))}.landing-news-card__date{position:absolute;left:20px;bottom:18px;z-index:1;display:inline-flex;padding:8px 14px;border-radius:999px;background:#0b0b0fc2;color:var(--landing-gold-soft);font-size:.84rem;font-weight:700}.landing-news-card__body{padding:24px}.landing-news-card__body h3,.landing-showcase__card h3,.landing-info-panel h2,.landing-document-card h3,.landing-contact-card h2,.landing-contact-banner h2{margin:0 0 10px;color:#141418;font-family:Georgia,Times New Roman,serif}.landing-news-card__body h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.landing-news-card__body p,.landing-showcase__card p,.landing-info-panel p,.landing-document-card p,.landing-contact-card p{color:#54504b}.landing-news-card__body p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.landing-inline-link{display:inline-flex;align-items:center;gap:8px;margin-top:18px;color:#86680d;font-weight:700;transition:color .18s ease,transform .18s ease}.landing-inline-link:visited{color:#86680d}.landing-inline-link:hover,.landing-inline-link:focus-visible{color:#5c4305;transform:translate(2px)}.landing-news-section__action{display:flex;justify-content:center;margin-top:28px}.landing-news-modal__overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:#030305b8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overscroll-behavior:none}.landing-news-modal{width:min(1240px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;border-radius:34px;background:linear-gradient(180deg,#faf7f1,#efe8db);color:#141418;box-shadow:0 28px 60px #0000004d}.landing-news-modal__header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:26px 28px 24px;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c);border-bottom:1px solid rgba(202,165,64,.18)}.landing-news-modal__header h2{margin:0;color:#fff8ea}.landing-news-modal__header p{margin:10px 0 0;color:#fff8eabd}.landing-news-modal__close{width:44px;height:44px;border-radius:16px;border:1px solid rgba(202,165,64,.26);background:#ffffff14;color:#fff8ea;padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;transition:background .2s ease,border-color .2s ease,transform .2s ease}.landing-news-modal__close:hover{background:#caa54029;border-color:#caa5405c;transform:translateY(-1px)}.landing-news-modal__body{padding:28px;overflow:auto;overscroll-behavior:contain}.landing-news-modal__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.landing-showcase{padding:52px;background:linear-gradient(180deg,#15151beb,#0b0b0ffa);border:1px solid rgba(229,201,107,.12)}.landing-showcase__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}.landing-showcase__card,.landing-community__card,.landing-info-panel,.landing-document-card,.landing-contact-card{position:relative;padding:24px;border-radius:28px;border:1px solid rgba(229,201,107,.12);transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease;overflow:hidden}.landing-showcase__card{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:16px;row-gap:8px;align-items:start;background:linear-gradient(180deg,#ffffff0a,#ffffff05)}.landing-showcase__icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:2px;border-radius:16px;background:#c9a2271f;color:var(--landing-gold-soft);grid-row:1 / span 2;transition:transform .22s ease,background .22s ease,color .22s ease}.landing-showcase__card:hover .landing-showcase__icon,.landing-principle-card:hover .landing-principle-card__icon,.landing-community__card:hover>svg{transform:scale(1.08) translate(2px);background:#c9a2272e;color:#fff1b8}.landing-principle-card:hover .landing-principle-card__icon{background:linear-gradient(135deg,#c9a22738,#e5c96b1f);color:#7e5f0e}.landing-showcase__card h3,.landing-community__card strong{color:var(--landing-white)}.landing-showcase__card h3,.landing-showcase__card p{grid-column:2}.landing-gallery{padding:56px 46px;border-radius:40px;background:radial-gradient(circle at top center,rgba(229,201,107,.1),transparent 22%),linear-gradient(180deg,#121217,#0b0b0f);border:1px solid rgba(229,201,107,.12);box-shadow:var(--landing-shadow)}.landing-gallery__viewport{display:grid;grid-template-columns:60px minmax(0,1fr) 60px;align-items:center;gap:16px;margin-top:30px}.landing-gallery__track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.landing-gallery__card{position:relative;min-height:360px;border-radius:28px;overflow:hidden;opacity:.42;filter:saturate(.78) brightness(.72);transform:scale(.97);transition:opacity .26s ease,filter .26s ease,transform .26s ease,box-shadow .26s ease}.landing-gallery__card.is-active{opacity:1;filter:saturate(1) brightness(1);transform:scale(1);box-shadow:0 20px 48px #00000042}.landing-gallery__card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .42s ease}.landing-gallery__card:hover img{transform:scale(1.05)}.landing-gallery__overlay{position:absolute;inset:auto 0 0;padding:22px;background:linear-gradient(180deg,transparent,rgba(11,11,15,.92));transition:transform .26s ease,background .26s ease}.landing-gallery__card:hover .landing-gallery__overlay{transform:translateY(-4px);background:linear-gradient(180deg,transparent,rgba(11,11,15,.97))}.landing-gallery__overlay strong{display:block;margin-bottom:4px;color:var(--landing-white);font-family:Georgia,Times New Roman,serif;font-size:1.08rem}.landing-gallery__dots{justify-content:center;margin-top:18px}.landing-admissions{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:22px}.landing-admissions__panel,.landing-calendar-card,.landing-contact-banner,.landing-inner-hero,.landing-info-panel,.landing-document-card,.landing-contact-card{box-shadow:0 18px 42px #00000024}.landing-admissions__panel,.landing-calendar-card,.landing-inner-hero,.landing-contact-banner{padding:42px;border-radius:34px}.landing-admissions__panel,.landing-contact-banner{background:linear-gradient(180deg,#f8f6f1,#efe8db);color:#141418}.landing-admissions__panel .landing-section-heading p,.landing-contact-banner p,.landing-inner-hero p{color:#4f4a42}.landing-admissions__steps{display:grid;gap:16px;margin-top:28px}.landing-admissions__step{display:grid;grid-template-columns:72px minmax(0,1fr);gap:18px;padding:18px;border-radius:22px;background:#1414180a;border:1px solid rgba(201,162,39,.16)}.landing-admissions__step strong{font-size:2rem;color:#8b6d0d}.landing-admissions__step p{color:#4f4a42}.landing-calendar-card{height:100%;background:linear-gradient(180deg,#15151bf5,#0b0b0ffa);color:var(--landing-white);border:1px solid rgba(229,201,107,.14)}.landing-calendar-card__header{display:flex;align-items:center;gap:10px;margin-bottom:24px;color:var(--landing-gold-soft)}.landing-calendar-card ul,.landing-bullet-list{margin:0;padding:0;list-style:none}.landing-calendar-card li{display:grid;grid-template-columns:86px minmax(0,1fr);gap:18px;padding:16px 0;border-top:1px solid rgba(255,255,255,.08)}.landing-calendar-card li:first-child{border-top:0;padding-top:0}.landing-calendar-card li strong{color:var(--landing-gold-soft)}.landing-calendar-card li span{color:#ffffffbd;line-height:1.6}.landing-calendar-card__event{display:grid;gap:4px;width:100%;border-radius:18px;padding:10px 12px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;transition:background .22s ease,transform .22s ease}.landing-calendar-card__event span{color:#ffffffe6;font-weight:700}.landing-calendar-card__event small{color:#ffffff9e;font-size:.78rem;line-height:1.45}.landing-calendar-card__event:hover span,.landing-calendar-card__event:focus-visible span{color:var(--landing-gold-soft)}.landing-calendar-card__event:hover,.landing-calendar-card__event:focus-visible{background:#ffffff0d;transform:translate(4px)}.landing-calendar-modal{width:min(760px,100%)}.landing-calendar-modal__content{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.landing-calendar-modal__meta,.landing-calendar-modal__detail{padding:18px;border-radius:22px;background:#ffffffb8;border:1px solid rgba(201,162,39,.16)}.landing-calendar-modal__meta strong,.landing-calendar-modal__detail strong{display:block;margin-bottom:8px;color:#7e5f0e;font-family:Georgia,Times New Roman,serif}.landing-calendar-modal__meta span,.landing-calendar-modal__detail p{color:#4f4a42;line-height:1.7}.landing-calendar-modal__detail{margin-top:18px}.landing-community{padding:48px;background:linear-gradient(180deg,#15151beb,#0b0b0ffa);border:1px solid rgba(229,201,107,.12)}.landing-community__grid,.landing-document-grid,.landing-info-panels,.landing-contact-grid{display:grid;gap:20px}.landing-community__grid,.landing-info-panels,.landing-contact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-community__card{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:16px;row-gap:8px;align-items:center;text-align:left;background:#ffffff0a;color:var(--landing-gold-soft)}.landing-community__card>svg{width:46px;height:46px;padding:11px;border-radius:16px;grid-row:1 / span 2;background:#c9a22724;transition:transform .22s ease,background .22s ease}.landing-community__card strong{display:block;margin:0;font-family:Georgia,Times New Roman,serif}.landing-community__card span{color:#ffffffb3}.landing-inner-hero{padding:46px;border-radius:34px;background:linear-gradient(180deg,#f8f6f1,#efe7d9)}.landing-inner-hero--dark{background:linear-gradient(110deg,#0b0b0ff5,#0b0b0fe6 55%,#0b0b0fb8),radial-gradient(circle at 12% 24%,rgba(229,201,107,.14),transparent 20%),linear-gradient(180deg,#15151b,#0b0b0f);border:1px solid rgba(229,201,107,.14)}.landing-inner-hero--dark .landing-section-heading h1,.landing-inner-hero--dark .landing-section-heading h2,.landing-inner-hero--dark .landing-section-heading p{color:var(--landing-white)}.landing-inner-hero--dark .landing-section-heading p{color:#ffffffbd}.landing-inner-hero--institutional{min-height:280px;display:flex;align-items:end}.landing-identity-showcase,.landing-symbols-stage,.landing-documents-intro{padding:42px;border-radius:34px;background:linear-gradient(180deg,#f8f6f1,#efe7d9);color:#141418;box-shadow:0 18px 42px #00000024}.landing-identity-showcase{overflow:hidden}.landing-identity-showcase__intro,.landing-symbols-stage__copy,.landing-documents-intro__lead{max-width:760px}.landing-identity-showcase__intro h2,.landing-identity-panel__heading h2,.landing-symbols-stage__copy h2,.landing-anthem-stage__header h2,.landing-documents-intro__lead h2{margin:0;color:#141418;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,3vw,3rem)}.landing-identity-showcase__intro p,.landing-symbols-stage__copy p,.landing-documents-intro__lead p,.landing-documents-intro__note p{color:#4f4a42;line-height:1.7}.landing-identity-showcase__grid{display:grid;gap:20px}.landing-identity-showcase__grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:30px;align-items:stretch}.landing-identity-card{position:relative;display:grid;gap:20px;align-content:start;min-height:320px;width:100%;padding:30px;border-radius:28px;background:radial-gradient(circle at top right,rgba(201,162,39,.16),transparent 30%),linear-gradient(180deg,#121217,#171821 58%,#2b210d);color:var(--landing-white);border:1px solid rgba(229,201,107,.16);box-shadow:0 18px 42px #0000002e;overflow:hidden;text-align:left;cursor:pointer;transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease}.landing-identity-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0%,rgba(229,201,107,.08) 50%,transparent 100%);opacity:0;transition:opacity .26s ease;pointer-events:none}.landing-identity-card:hover{transform:translateY(-8px);box-shadow:0 26px 54px #0000003d;border-color:#e5c96b57}.landing-identity-card:hover:after{opacity:1}.landing-identity-card__head{display:flex;align-items:center;gap:14px}.landing-identity-card__icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:#e5c96b24;color:var(--landing-gold-soft);flex:0 0 auto;transition:transform .22s ease,background .22s ease,color .22s ease}.landing-identity-card__copy{display:grid;gap:12px}.landing-identity-card h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;line-height:1.15}.landing-identity-card p{margin:0;color:#ffffffc2;line-height:1.75}.landing-identity-card__link{display:inline-flex;align-items:center;gap:8px;width:fit-content;margin-top:4px;color:var(--landing-gold-soft);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;opacity:.86}.landing-identity-card__link:after{content:"";width:22px;height:1px;background:currentColor;opacity:.7}.landing-identity-card:hover .landing-identity-card__icon{transform:scale(1.08) translate(2px);background:#c9a2272e;color:#fff1b8}.landing-identity-modal{width:min(920px,100%)}.landing-identity-modal__content{display:grid;gap:16px}.landing-identity-modal__content p{margin:0;color:#4f4a42;line-height:1.8}.landing-identity-columns,.landing-anthem-stage{display:grid;gap:22px}.landing-identity-panel,.landing-anthem-stage__video{padding:38px;border-radius:34px;background:linear-gradient(180deg,#fffdf7,#f8f2e4);border:1px solid rgba(201,162,39,.16);box-shadow:0 18px 42px #00000014}.landing-identity-panel--principles{background:radial-gradient(circle at top left,rgba(201,162,39,.12),transparent 24%),linear-gradient(180deg,#fffdf7,#f8f2e4)}.landing-identity-panel__heading{margin-bottom:26px}.landing-identity-panel__heading h2{margin-top:0}.landing-symbols-grid--showcase{margin-top:28px;grid-template-columns:repeat(3,minmax(0,1fr))}.landing-symbols-stage{display:grid;gap:26px;overflow:hidden;background:radial-gradient(circle at top,rgba(201,162,39,.12),transparent 20%),radial-gradient(circle at bottom right,rgba(201,162,39,.08),transparent 26%),linear-gradient(180deg,#f8f6f1,#efe7d9);border:1px solid rgba(201,162,39,.18);box-shadow:0 18px 42px #00000024;position:relative}.landing-symbols-stage:before,.landing-symbols-stage:after{content:"";position:absolute;left:28px;right:28px;height:1px;background:linear-gradient(90deg,transparent,rgba(229,201,107,.9),transparent)}.landing-symbols-stage:after{bottom:28px}.landing-symbols-panel{position:relative;border-radius:28px;background:linear-gradient(180deg,#fffdf7,#f8f2e4);border:1px solid rgba(201,162,39,.18);overflow:hidden;opacity:0;transform:translateY(28px);animation:landingSymbolsReveal .7s ease forwards;transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease}.landing-symbols-panel:hover{transform:translateY(-4px);box-shadow:0 20px 44px #0000001f;border-color:#c9a22757}.landing-symbols-panel--flag{animation-delay:80ms}.landing-symbols-grid-panel .landing-symbols-panel:nth-child(1){animation-delay:.18s}.landing-symbols-grid-panel .landing-symbols-panel:nth-child(2){animation-delay:.28s}.landing-symbols-panel--anthem{animation-delay:.38s}.landing-symbols-panel__title{display:inline-flex;align-items:center;gap:10px;padding:22px 28px 14px;color:#8b6d0d;font-size:.92rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.landing-symbols-panel__title svg{flex:0 0 auto}.landing-symbols-panel__content,.landing-symbols-panel__anthem{border-top:1px solid rgba(201,162,39,.16)}.landing-symbols-panel__content--hero{display:grid;grid-template-columns:minmax(280px,.92fr) minmax(0,1.08fr);gap:20px;align-items:center;padding:26px 28px 28px}.landing-symbols-panel__content--stacked{display:grid;gap:18px;padding:20px 28px 28px}.landing-symbols-panel__image{display:grid;place-items:center;min-height:240px}.landing-symbols-panel__image img{width:min(100%,260px);max-height:250px;object-fit:contain;display:block;background:transparent;filter:drop-shadow(0 18px 28px rgba(0,0,0,.34));transition:transform .36s ease,filter .36s ease}.landing-symbols-panel__image--flag{min-height:320px}.landing-symbols-panel__image--flag img{width:min(100%,460px);max-height:320px}.landing-symbols-panel:hover .landing-symbols-panel__image img{transform:scale(1.04);filter:drop-shadow(0 22px 32px rgba(0,0,0,.42))}.landing-symbols-panel__copy{display:grid;gap:16px;align-content:center}.landing-symbols-panel__copy p{margin:0;color:#4f4a42;line-height:1.8}.landing-symbols-panel__quote{max-width:360px;color:#141418;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,2.2vw,2.1rem);line-height:1.18;letter-spacing:-.02em;text-transform:none}.landing-symbols-grid-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.landing-symbols-panel__anthem{display:grid;gap:24px;padding:24px 28px 30px}.landing-symbols-panel__anthem-media{display:grid;gap:18px;align-content:start}.landing-anthem-embed{position:relative;overflow:hidden;border-radius:28px;border:1px solid rgba(201,162,39,.18);background:#f2ead8;aspect-ratio:16 / 9}.landing-anthem-embed__frame{position:absolute;inset:0;width:100%;height:100%;border:0}.landing-anthem-lyrics--symbols{margin-top:0;padding:28px;background:radial-gradient(circle at top,rgba(201,162,39,.08),transparent 24%),linear-gradient(180deg,#0c0c10f5,#111116fa);border:1px solid rgba(229,201,107,.22);box-shadow:0 18px 36px #00000029}.landing-anthem-lyrics--symbols .landing-anthem-lyrics__header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid rgba(229,201,107,.18)}.landing-anthem-lyrics--symbols .landing-section-tag{color:var(--landing-gold-soft)}.landing-anthem-lyrics--symbols .landing-anthem-lyrics__header h3{margin:6px 0 0;color:#fff8ea}.landing-anthem-lyrics--symbols .landing-anthem-lyrics__grid{margin-top:18px}.landing-anthem-lyrics--symbols .landing-btn--ghost{border-color:#e5c96b57;background:#e5c96b1f;color:#fff8ea}.landing-anthem-lyrics--symbols .landing-btn--ghost:hover,.landing-anthem-lyrics--symbols .landing-btn--ghost:focus-visible{background:#e5c96b33;border-color:#e5c96b7a;color:#fffdf7}.landing-anthem-verse{display:grid;gap:10px;padding:18px 20px;border-radius:22px;background:#ffffff05;border:1px solid rgba(229,201,107,.12);animation:landingAnthemVerseReveal .52s ease both;transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease}.landing-anthem-verse strong{color:var(--landing-gold-soft);font-size:.9rem;letter-spacing:.16em;text-transform:uppercase}.landing-anthem-verse p{margin:0;color:#ffffffd1;line-height:1.75}.landing-anthem-verse:hover{transform:translateY(-6px);box-shadow:0 18px 34px #0000001f;border-color:#c9a22742}@keyframes landingSymbolsReveal{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.landing-anthem-stage{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.landing-anthem-stage__header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:24px}.landing-documents-intro{display:block}.landing-document-grid--institutional{margin-top:0}.landing-document-card__content{display:grid;gap:10px}.landing-document-card__eyebrow{color:#8b6d0d;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800}.landing-document-card__content h3{margin:0;color:#141418;font-family:Georgia,Times New Roman,serif;font-size:1.45rem}.landing-info-panels{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-institutional-accordion{display:grid;gap:18px}.landing-accordion-panel{overflow:hidden;border-radius:30px;background:linear-gradient(180deg,#fffdf7,#f8f2e4);border:1px solid rgba(201,162,39,.16);box-shadow:0 18px 42px #00000014}.landing-accordion-panel__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 28px;border:0;background:radial-gradient(circle at top left,rgba(201,162,39,.1),transparent 30%),linear-gradient(135deg,#fffaf0,#f4ead3);color:#141418;text-align:left;cursor:pointer;transition:background .22s ease,color .22s ease}.landing-accordion-panel__trigger h2{margin:6px 0 0;color:#141418;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.45rem,2vw,2rem)}.landing-accordion-panel__trigger svg{flex:0 0 auto;color:#8b6d0d;transition:transform .22s ease,color .22s ease}.landing-accordion-panel.is-open .landing-accordion-panel__trigger{background:radial-gradient(circle at top left,rgba(201,162,39,.14),transparent 34%),linear-gradient(135deg,#fff7e7,#f1e3bf)}.landing-accordion-panel.is-open .landing-accordion-panel__trigger svg{transform:rotate(180deg);color:#6e5100}.landing-accordion-panel__body{padding:0 28px 28px}.landing-accordion-panel__body .landing-info-panels,.landing-accordion-panel__body .landing-principles-grid,.landing-accordion-panel__body .landing-symbols-grid,.landing-accordion-panel__body .landing-profile-grid,.landing-accordion-panel__body .landing-document-grid{margin-top:0}.landing-accordion-panel__body .landing-value-band,.landing-accordion-panel__body .landing-anthem-lyrics{margin-top:20px}.landing-info-panel{overflow:hidden;padding:0;background:linear-gradient(180deg,#fff,#f8f4ec)}.landing-info-panel__header{display:flex;align-items:center;justify-content:center;min-height:112px;padding:18px 22px;text-align:center;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c);border-bottom:1px solid rgba(201,162,39,.18);transition:background .26s ease}.landing-info-panel__header h2{margin:0;color:#fff8ea;font-size:clamp(1.4rem,2.1vw,1.85rem)}.landing-info-panel__body{display:grid;gap:12px;padding:24px;background:radial-gradient(circle at bottom right,rgba(201,162,39,.1),transparent 28%),linear-gradient(180deg,#fffef9,#f7f1e4)}.landing-info-panel:hover .landing-info-panel__header{background:linear-gradient(135deg,#111116,#1d1f2c 55%,#4b3810)}.landing-bullet-list li{position:relative;padding-left:22px;color:#4f4a42;line-height:1.7}.landing-bullet-list li+li{margin-top:10px}.landing-bullet-list li:before{content:"";position:absolute;left:0;top:.68em;width:8px;height:8px;border-radius:999px;background:var(--landing-gold)}.landing-document-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:28px}.landing-document-card,.landing-contact-card{background:linear-gradient(180deg,#fff,#f8f4ec)}.landing-document-card__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.landing-document-card__actions .landing-btn{min-height:44px}.landing-document-card{display:grid;gap:14px}.landing-document-card__preview{position:relative;overflow:hidden;min-height:180px;padding:12px;display:flex;align-items:center;justify-content:center;border-radius:18px;border:1px solid rgba(201,162,39,.2);background:radial-gradient(circle at top right,rgba(201,162,39,.2),transparent 38%),linear-gradient(180deg,#fffdf7,#f8f2e4)}.landing-document-card__preview iframe,.landing-document-card__preview object{width:100%;height:180px;border:0;display:block;background:#fff}.landing-document-card__preview-image{width:100%;height:180px;display:block;object-fit:contain;object-position:center top;padding:4px;border-radius:12px;background:#fff;box-shadow:0 10px 24px #241c0914}.landing-document-card__preview-fallback{min-height:180px;padding:18px 18px 50px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;text-align:center}.landing-document-card__icon{width:58px;height:58px;display:grid;place-items:center;color:#8c6915;border-radius:18px;background:radial-gradient(circle at top,#c9a2273d,#c9a22714);border:1px solid rgba(201,162,39,.2)}.landing-document-card__preview-fallback strong{color:#2f2a1f;font-size:.9rem;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.landing-document-card__preview-fallback span{color:#6e6555;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.landing-document-card__preview-badge{position:absolute;left:14px;bottom:14px;display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;background:#0f0f0fd6;color:#fff9e8;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.landing-contact-workspace{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:22px}.landing-contact-form-card,.landing-map-card{padding:34px;border-radius:34px;background:linear-gradient(180deg,#f8f6f1,#efe8db);color:#141418;box-shadow:0 18px 42px #00000024}.landing-contact-form-card .landing-section-heading p,.landing-map-card .landing-section-heading p{color:#4f4a42}.landing-contact-form{margin-top:24px;min-width:0}.landing-contact-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}.landing-contact-form label{display:grid;gap:8px;min-width:0}.landing-contact-form label span{color:#3d372d;font-weight:700}.landing-contact-form input,.landing-contact-form textarea{box-sizing:border-box;width:100%;max-width:100%;border:1px solid rgba(201,162,39,.22);border-radius:18px;background:#ffffffdb;padding:14px 16px;color:#141418;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.landing-contact-form input:focus,.landing-contact-form textarea:focus{border-color:#c9a22799;box-shadow:0 0 0 4px #c9a2271f}.landing-contact-form__full{margin-top:16px;min-width:0}.landing-contact-form__footer{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:20px}.landing-contact-form__success{margin:0;color:#5f4b10;font-weight:600}.landing-map-frame{overflow:hidden;margin-top:24px;border-radius:28px;min-height:420px;border:1px solid rgba(201,162,39,.18);box-shadow:0 14px 30px #0000001f}.landing-map-frame iframe{width:100%;height:100%;min-height:420px;border:0}.landing-contact-banner{display:flex;align-items:center;justify-content:space-between;gap:20px}.landing-school-calendar{display:grid;gap:14px;margin-top:28px}.landing-school-calendar__topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-radius:22px;background:linear-gradient(180deg,#141418,#1c1c24)}.landing-school-calendar__topbar strong{color:var(--landing-gold-soft);font-family:Georgia,Times New Roman,serif;font-size:1.35rem}.landing-school-calendar__topbar span{color:#ffffffb3;font-size:.9rem}.landing-school-calendar__weekdays,.landing-school-calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.landing-school-calendar__weekdays span{text-align:center;color:#7b6a42;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.landing-school-calendar__cell{display:grid;align-content:space-between;min-height:96px;padding:14px 12px;border-radius:20px;background:#1414180a;border:1px solid rgba(201,162,39,.12)}.landing-school-calendar__cell strong{color:#141418;font-size:1rem;font-weight:800}.landing-school-calendar__cell span{color:#6b5d3c;font-size:.7rem;line-height:1.25;word-break:break-word;overflow-wrap:anywhere}.landing-school-calendar__cell.is-muted{opacity:.38;background:#14141805}.landing-school-calendar__cell.is-highlighted{background:linear-gradient(180deg,#c9a2272e,#c9a2270f);border-color:#c9a22757;box-shadow:inset 0 0 0 1px #e5c96b2e;cursor:pointer}.landing-school-calendar__cell.is-highlighted strong{color:#7e5f0e}.landing-footer{padding:0 0 32px}.landing-footer__grid{display:grid;grid-template-columns:1.2fr .8fr .8fr 1fr;gap:26px;padding:42px 0 28px;border-top:1px solid rgba(229,201,107,.18)}.landing-footer__brand p,.landing-footer__contact span,.landing-footer__links a{color:#ffffffad}.landing-footer h3{margin:0 0 18px;color:var(--landing-gold-soft);font-family:Georgia,Times New Roman,serif}.landing-footer__links,.landing-footer__contact{display:grid;gap:10px}.landing-footer__links a{transition:color .18s ease}.landing-footer__links a:visited{color:#ffffffad}.landing-footer__links a:hover,.landing-footer__links a:focus-visible{color:var(--landing-gold-soft)}.landing-footer__social{display:flex;gap:10px;flex-wrap:wrap}.landing-footer__bottom{display:flex;justify-content:center;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);color:#ffffff8a;text-align:center}.landing-admin__overlay{position:fixed;inset:0;z-index:90;display:flex;justify-content:center;padding:24px;background:#030305b8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.landing-admin{width:min(1240px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;border-radius:34px;background:linear-gradient(180deg,#faf7f1,#efe8db);color:#141418;box-shadow:0 28px 60px #0000004d}.landing-admin__header,.landing-admin__body{padding:28px}.landing-admin__header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:26px 28px 24px;background:linear-gradient(135deg,#0d0d10,#171821 55%,#2c210c);border-bottom:1px solid rgba(202,165,64,.18)}.landing-admin__header h2,.landing-admin__workspace-header h3,.landing-admin__form h4{margin:0;font-family:Georgia,Times New Roman,serif}.landing-admin__header p,.landing-admin__workspace-header p{margin:10px 0 0;color:#5d564a}.landing-admin__header h2{color:#f7f4ed}.landing-admin__header p{color:#f7f4edcc}.landing-admin__close{width:44px;height:44px;border-radius:16px;border:1px solid rgba(202,165,64,.26);background:#ffffff14;color:#fff8ea;padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;transition:background .2s ease,border-color .2s ease,transform .2s ease}.landing-admin__close:hover{background:#caa54029;border-color:#caa5405c;transform:translateY(-1px)}.landing-admin__body{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px;overflow:auto}.landing-admin__sidebar{display:grid;align-content:start;gap:10px}.landing-admin__tab{display:inline-flex;align-items:center;gap:10px;padding:14px 16px;border-radius:18px;border:1px solid rgba(20,20,24,.08);background:#ffffffb3;color:#2a261e}.landing-admin__tab.is-active{background:linear-gradient(135deg,var(--landing-gold-soft),var(--landing-gold));color:#141418}.landing-admin__grid{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:20px;margin-top:20px;align-items:start}.landing-admin__form,.landing-admin__list{min-width:0;padding:22px;border-radius:24px;background:#ffffffd1;border:1px solid rgba(20,20,24,.08)}.landing-admin__form{display:grid;gap:14px;min-width:0;overflow:hidden}.landing-admin__form>*{min-width:0;max-width:100%}.landing-admin__form input,.landing-admin__form textarea{min-width:0;box-sizing:border-box;width:100%;max-width:100%;border:1px solid rgba(201,162,39,.18);border-radius:18px;background:#fff;padding:13px 14px;color:#141418}.landing-admin__form textarea{resize:vertical}.landing-admin__counter{margin-top:-6px;font-size:.78rem;color:#7a6e5e;text-align:right}.landing-admin__preview{display:block;position:relative;inline-size:100%;width:100%;max-width:100%;min-width:0;overflow:hidden;box-sizing:border-box;contain:paint;border-radius:22px;border:1px dashed rgba(201,162,39,.22);background:#ffffffb8}.landing-admin__preview--image{aspect-ratio:16 / 7;min-height:170px;max-height:220px}.landing-admin__preview--image img{width:100%;height:100%;max-width:100%;min-width:0;object-fit:cover;display:block}.landing-admin__preview-empty{min-height:160px;display:grid;place-items:center;gap:8px;text-align:center;color:#7b705d;padding:18px}.landing-admin__file-preview{display:grid;grid-template-columns:24px minmax(0,1fr);gap:14px;align-items:center;padding:18px;color:#2a261e}.landing-admin__file-preview strong{display:block}.landing-admin__file-preview span{color:#726a5b;font-size:.9rem;min-width:0;overflow-wrap:anywhere;word-break:break-word}.landing-admin__form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.landing-admin__field{display:grid;gap:8px}.landing-admin__field>span{color:#3d372d;font-weight:700}.landing-admin__field>input{min-height:54px}.landing-admin__time-picker{position:relative}.landing-admin__time-input{position:absolute;inset:0;opacity:0;pointer-events:none}.landing-admin__date-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.landing-admin__date-field input{cursor:pointer}.landing-admin__date-trigger{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 16px;border-radius:16px;border:1px solid rgba(201,162,39,.2);background:#c9a22714;color:#7f6210;font-weight:700}.landing-admin__time-trigger{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:54px;padding:0 18px;border-radius:18px;border:1px solid rgba(201,162,39,.24);background:linear-gradient(180deg,#c9a2271f,#ffffffe0);color:#7f6210;font-weight:800;font-size:1rem}.landing-admin__time-trigger:hover,.landing-admin__time-trigger:focus-visible{background:linear-gradient(180deg,#c9a22733,#fffffff0);border-color:#c9a22761}.landing-admin__calendar-popover{display:grid;gap:12px;padding:16px;border-radius:20px;background:#ffffffeb;border:1px solid rgba(201,162,39,.16);box-shadow:0 16px 30px #00000014}.landing-admin__calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.landing-admin__calendar-toolbar button{min-height:36px;padding:0 12px;border-radius:999px;border:1px solid rgba(201,162,39,.16);background:#c9a22714;color:#7f6210;font-weight:700}.landing-admin__calendar-toolbar strong{color:#2b2417;font-family:Georgia,Times New Roman,serif;text-transform:capitalize}.landing-admin__calendar-weekdays,.landing-admin__calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.landing-admin__calendar-weekdays span{text-align:center;color:#8d7a4b;font-size:.78rem;font-weight:700}.landing-admin__calendar-day{min-height:38px;border-radius:12px;border:1px solid rgba(201,162,39,.12);background:#fff;color:#2a261e;font-weight:700}.landing-admin__calendar-day.is-muted{opacity:.38}.landing-admin__calendar-day.is-selected{background:linear-gradient(135deg,var(--landing-gold-soft),var(--landing-gold));color:#18140b;border-color:#c9a2274d}.landing-admin__form-meta{padding:12px 14px;border-radius:16px;background:#c9a22714;border:1px solid rgba(201,162,39,.16);color:#5c4a16;font-weight:600}.landing-admin__checkbox{display:inline-flex;align-items:center;gap:10px;color:#4f4a42}.landing-admin__actions{display:flex;flex-wrap:wrap;gap:12px}.landing-admin__upload{display:inline-flex;align-items:center;gap:10px;padding:14px 16px;border-radius:18px;border:1px dashed rgba(201,162,39,.28);background:#ffffffc2;color:#5b4c22;cursor:pointer}.landing-admin__upload input{display:none}.landing-admin__list{display:grid;gap:12px;max-height:560px;overflow:auto}.landing-admin__item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:18px;background:#fff;border:1px solid rgba(20,20,24,.06)}.landing-admin__item strong{display:block;color:#141418}.landing-admin__item span{color:#726a5b;font-size:.85rem}.landing-admin__item-actions{display:inline-flex;gap:8px}.landing-admin__item-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 12px;border-radius:999px;border:1px solid rgba(20,20,24,.08);background:#1414180a;color:#2a261e;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.landing-admin__item-actions button svg{display:block;stroke:currentColor;stroke-width:2.2;min-width:16px}.landing-admin__item-actions button:hover{transform:translateY(-1px)}.landing-admin__action-button{gap:8px;font-weight:700;font-size:.84rem}.landing-admin__action-button span{line-height:1}.landing-admin__action-button--edit{background:#c9a2271f;border-color:#c9a22742;color:#7f6210}.landing-admin__action-button--edit:hover{background:#c9a22733}.landing-admin__action-button--delete{background:linear-gradient(180deg,#1b1b21fa,#0f0f14fa);border-color:#c9a2273d;color:#fff4d6}.landing-admin__action-button--delete:hover{background:linear-gradient(180deg,#2c210cfa,#121218fa);border-color:#e5c96b57;color:#fff8ea}.landing-admin__list--cards{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));align-content:start}.landing-admin__card{display:grid;gap:0;overflow:hidden;border-radius:22px;background:#fff;border:1px solid rgba(20,20,24,.06);box-shadow:0 14px 30px #0000000f}.landing-admin__card-media{position:relative;height:160px;background:linear-gradient(135deg,#f2e6bf,#faf6e9)}.landing-admin__card-media img{width:100%;height:100%;object-fit:cover;display:block}.landing-admin__card-actions-overlay{position:absolute;top:12px;right:12px;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.landing-admin__card-actions-overlay .landing-admin__action-button{min-height:34px;padding:0 10px;background:#fffffff5;box-shadow:0 10px 24px #00000024}.landing-admin__card-actions-overlay .landing-admin__action-button--edit{color:#7f6210}.landing-admin__card-actions-overlay .landing-admin__action-button--delete{background:#141418f5;border-color:#c9a2273d;color:#fff4d6}.landing-admin__card-actions-overlay .landing-admin__action-button--delete:hover,.landing-admin__card-actions-overlay .landing-admin__action-button--delete:focus-visible{background:#2c210cfa;border-color:#e5c96b57;color:#fff8ea}.landing-admin__card-body{padding:18px 18px 10px}.landing-admin__card-body strong{display:block;color:#141418}.landing-admin__card-body span{display:inline-block;margin-top:6px;color:#7b6e5b;font-size:.85rem}.landing-admin__card-body p{margin:12px 0 0;color:#4f4a42;line-height:1.6}.landing-admin__card-footer{padding:0 18px 18px;border-top:1px solid rgba(20,20,24,.06);background:linear-gradient(180deg,#f8f4eca3,#fffffffa)}.landing-admin__card .landing-admin__item-actions{display:flex;flex-wrap:wrap;width:100%;padding-top:14px}.landing-admin__card--document,.landing-admin__card--calendar{grid-template-columns:auto 1fr auto;align-items:start;gap:12px;padding:18px}.landing-admin__card-file,.landing-admin__calendar-pill{display:grid;place-items:center;width:56px;min-width:56px;min-height:56px;border-radius:18px;background:linear-gradient(135deg,#c9a2272e,#e5c96b14);color:#7e5f0e}.landing-admin__calendar-pill strong{font-family:Georgia,Times New Roman,serif;font-size:1.2rem}.landing-admin__calendar-pill span{font-size:.72rem;text-transform:uppercase}.landing-admin__link{display:inline-flex;align-items:center;gap:8px;margin-top:12px;color:#8a6710;text-decoration:none;font-weight:700}.landing-principles-grid,.landing-symbols-grid,.landing-profile-grid{display:grid;gap:20px;margin-top:28px}.landing-principles-grid,.landing-symbols-grid,.landing-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-symbol-card--anthem{align-self:stretch}.landing-symbol-card__media--anthem{position:relative;width:100%;border:0;cursor:pointer}.landing-symbol-card__media--anthem img{width:100%;max-height:220px;object-fit:cover}.landing-symbol-card__play{position:absolute;left:18px;right:18px;bottom:18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:999px;background:#0b0b0fb8;color:#fff8ea;border:1px solid rgba(229,201,107,.22);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-weight:700;transition:transform .22s ease,background .22s ease,border-color .22s ease}.landing-symbol-card__media--anthem:hover .landing-symbol-card__play,.landing-symbol-card__media--anthem:focus-visible .landing-symbol-card__play{transform:translateY(-2px);background:#261d0cd6;border-color:#e5c96b6b}.landing-anthem-lyrics{display:grid;gap:18px;margin-top:24px;padding:24px;border-radius:30px;background:radial-gradient(circle at top left,rgba(201,162,39,.1),transparent 24%),linear-gradient(180deg,#fffdf7,#f8f2e4);border:1px solid rgba(201,162,39,.18);box-shadow:0 18px 42px #00000014}.landing-anthem-lyrics__header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.landing-anthem-lyrics__header h3{margin:6px 0 0;color:#141418;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.45rem,2vw,1.95rem)}.landing-anthem-lyrics__header p,.landing-anthem-lyrics__grid p{margin:0;color:#54504b;line-height:1.8}.landing-anthem-lyrics__header .landing-btn[disabled]{opacity:.58;cursor:not-allowed}.landing-anthem-lyrics__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.landing-anthem-lyrics__grid p{padding:18px 20px;border-radius:22px;background:#ffffffb8;border:1px solid rgba(201,162,39,.14)}.landing-anthem-lyrics.landing-anthem-lyrics--symbols{margin-top:0;padding:28px;background:radial-gradient(circle at top left,rgba(201,162,39,.1),transparent 24%),linear-gradient(180deg,#fffdf7,#f8f2e4);border:1px solid rgba(229,201,107,.22);box-shadow:0 18px 36px #00000014}.landing-anthem-lyrics.landing-anthem-lyrics--symbols .landing-anthem-lyrics__header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid rgba(229,201,107,.18)}.landing-anthem-lyrics.landing-anthem-lyrics--symbols .landing-section-tag{color:#8b6d0d}.landing-anthem-lyrics.landing-anthem-lyrics--symbols .landing-anthem-lyrics__header h3{margin:6px 0 0;color:#141418}.landing-anthem-lyrics.landing-anthem-lyrics--symbols .landing-anthem-lyrics__grid{margin-top:18px}.landing-anthem-lyrics.landing-anthem-lyrics--symbols .landing-btn--ghost,.landing-anthem-lyrics.landing-anthem-lyrics--symbols .landing-btn--ghost:visited{border-color:#c9a22747;background:#c9a22714;color:#7f6210}.landing-anthem-lyrics.landing-anthem-lyrics--symbols .landing-btn--ghost:hover,.landing-anthem-lyrics.landing-anthem-lyrics--symbols .landing-btn--ghost:focus-visible{background:#c9a22729;border-color:#c9a22766;color:#5c4305}.landing-anthem-lyrics.landing-anthem-lyrics--symbols .landing-anthem-verse{display:grid;gap:10px;padding:18px 20px;border-radius:22px;background:#ffffffa8;border:1px solid rgba(201,162,39,.12)}.landing-anthem-lyrics.landing-anthem-lyrics--symbols .landing-anthem-verse strong{color:var(--landing-gold-soft);font-size:.9rem;letter-spacing:.16em;text-transform:uppercase}.landing-anthem-lyrics.landing-anthem-lyrics--symbols .landing-anthem-verse p{margin:0;color:#4f4a42;line-height:1.75;padding:0;border-radius:0;background:transparent;border:0;box-shadow:none}.landing-anthem-lyrics__grid .landing-anthem-verse:nth-child(1){animation-delay:.04s}.landing-anthem-lyrics__grid .landing-anthem-verse:nth-child(2){animation-delay:.12s}.landing-anthem-lyrics__grid .landing-anthem-verse:nth-child(3){animation-delay:.2s}.landing-anthem-lyrics__grid .landing-anthem-verse:nth-child(4){animation-delay:.28s}@keyframes landingAnthemVerseReveal{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.landing-anthem-modal{width:min(960px,100%)}.landing-anthem-modal__frame{overflow:hidden;border-radius:24px;background:#0f1014;border:1px solid rgba(201,162,39,.16)}.landing-anthem-modal__video{width:100%;max-height:min(72vh,720px);display:block;background:#0f1014}.landing-principle-card,.landing-symbol-card,.landing-profile-card,.landing-value-band{position:relative;padding:24px;border-radius:28px;background:linear-gradient(180deg,#fff,#f8f4ec);border:1px solid rgba(201,162,39,.16);box-shadow:0 18px 42px #00000014;transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease;overflow:hidden}.landing-principle-card h3,.landing-symbol-card h3,.landing-profile-card h3,.landing-value-band h3{margin:0 0 10px;color:#141418;font-family:Georgia,Times New Roman,serif}.landing-principle-card p,.landing-symbol-card p,.landing-value-band p{margin:0;color:#54504b;line-height:1.7}.landing-principle-card__icon,.landing-profile-card__header svg{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:16px;color:#7e5f0e;background:linear-gradient(135deg,#c9a2272e,#e5c96b14)}.landing-principle-card{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:16px;row-gap:8px;align-items:start}.landing-principle-card__icon{grid-row:1 / span 2;margin-bottom:0;transition:transform .22s ease,background .22s ease,color .22s ease}.landing-principle-card h3,.landing-principle-card p{grid-column:2}.landing-symbol-card{overflow:hidden;padding:0}.landing-symbol-card--featured{grid-column:1 / -1;width:min(100%,420px);justify-self:center}.landing-symbol-card__media{display:grid;place-items:center;min-height:260px;padding:24px;background:radial-gradient(circle at top,rgba(201,162,39,.16),transparent 38%),linear-gradient(180deg,#fffaf0,#f2e7cf);border-bottom:1px solid rgba(201,162,39,.16)}.landing-symbol-card__media img{width:min(100%,300px);max-height:220px;object-fit:contain;display:block;filter:drop-shadow(0 18px 28px rgba(0,0,0,.12));transition:transform .36s ease,filter .36s ease}.landing-symbol-card--featured .landing-symbol-card__media img{width:min(100%,220px)}.landing-symbol-card:hover .landing-symbol-card__media img{transform:scale(1.04);filter:drop-shadow(0 22px 34px rgba(0,0,0,.16))}.landing-symbol-card h3,.landing-symbol-card p{padding-left:24px;padding-right:24px}.landing-symbol-card h3{padding-top:22px}.landing-symbol-card p{padding-bottom:24px}.landing-profile-card__header{display:flex;align-items:center;gap:14px;margin-bottom:16px}.landing-profile-card__header svg{margin-bottom:0;flex:0 0 auto}.landing-profile-card__header h3{margin:0}.landing-profile-card .landing-bullet-list,.landing-value-band .landing-bullet-list{margin-top:12px}.landing-value-band .landing-bullet-list{padding-left:72px}.landing-value-band{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;margin-top:24px}.landing-value-band__copy .landing-section-tag{margin-bottom:14px}@media(max-width:1120px){.landing-header__inner{flex-wrap:wrap}.landing-header__menu{width:100%;flex-direction:column;align-items:stretch}.landing-header__nav{justify-content:flex-start;flex-wrap:wrap}.landing-header__tools{justify-content:space-between}.landing-hero__content,.landing-admissions,.landing-admin__body,.landing-admin__grid,.landing-contact-workspace,.landing-news-grid,.landing-news-modal__grid,.landing-showcase__grid,.landing-principles-grid,.landing-symbols-grid,.landing-anthem-lyrics__grid,.landing-profile-grid,.landing-value-band,.landing-community__grid,.landing-info-panels,.landing-contact-grid,.landing-document-grid,.landing-footer__grid,.landing-identity-showcase__grid,.landing-anthem-stage,.landing-symbols-grid-panel,.landing-symbols-panel__anthem,.landing-symbols-panel__content--hero{grid-template-columns:1fr}.landing-hero__visual{justify-content:center}.landing-profile__menu{left:0;right:auto}.landing-gallery__viewport{grid-template-columns:1fr}.landing-gallery__track{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-gallery__arrow{display:none}.landing-calendar-modal__content{grid-template-columns:1fr}.landing-anthem-lyrics__header{align-items:stretch;flex-direction:column}.landing-showcase__card,.landing-community__card,.landing-principle-card{grid-template-columns:52px minmax(0,1fr)}.landing-value-band .landing-bullet-list{padding-left:0}}@media(max-width:820px){.landing-header{padding-top:14px}.landing-header__toggle{display:inline-flex;align-items:center;justify-content:center}.landing-header__menu{display:none;padding:16px 18px 18px;border-radius:24px;background:#0e0e12fa;border:1px solid rgba(229,201,107,.16)}.landing-header__menu.is-open{display:flex}.landing-header__nav,.landing-header__tools{flex-direction:column;align-items:stretch}.landing-header__dropdown-menu{position:static;min-width:0;padding:8px 0 0;border:0;box-shadow:none;background:transparent;display:none;opacity:1;visibility:visible;transform:none}.landing-header__dropdown.is-open .landing-header__dropdown-menu{display:grid}.landing-header__dropdown-trigger{width:100%;justify-content:flex-start}.landing-header__dropdown-menu a{padding-left:22px;padding-right:22px}.landing-header__cta,.landing-profile__trigger{width:100%}.landing-header__social{justify-content:center}.landing-main,.landing-header__inner,.landing-footer{width:min(100%,calc(100% - 24px))}.landing-hero,.landing-news-section,.landing-showcase,.landing-gallery,.landing-admissions__panel,.landing-calendar-card,.landing-community,.landing-inner-hero,.landing-document-section,.landing-contact-banner,.landing-contact-form-card,.landing-map-card,.landing-identity-showcase,.landing-identity-panel,.landing-symbols-stage,.landing-anthem-stage__video,.landing-documents-intro{padding:28px 22px}.landing-hero{min-height:auto}.landing-hero__content{gap:26px}.landing-hero__frame{min-height:420px;aspect-ratio:1 / 1.06}.landing-hero__metrics,.landing-gallery__track{grid-template-columns:1fr}.landing-gallery__card{min-height:280px}.landing-showcase__card,.landing-community__card,.landing-principle-card{grid-template-columns:1fr;row-gap:12px}.landing-showcase__icon,.landing-community__card>svg,.landing-principle-card__icon{grid-row:auto}.landing-showcase__card h3,.landing-showcase__card p,.landing-principle-card h3,.landing-principle-card p{grid-column:auto}.landing-admissions__step,.landing-calendar-card li,.landing-contact-banner,.landing-contact-form__grid,.landing-anthem-stage__header{grid-template-columns:1fr}.landing-contact-banner{flex-direction:column;align-items:flex-start}.landing-anthem-stage__header{display:grid;align-items:stretch}.landing-symbols-stage__header:before,.landing-symbols-stage__header:after{display:none}.landing-symbols-panel__image--flag{min-height:250px}.landing-identity-card:nth-child(2){transform:none}.landing-school-calendar__topbar{flex-direction:column;align-items:flex-start}.landing-school-calendar__weekdays,.landing-school-calendar__grid{gap:8px}.landing-school-calendar__cell{min-height:76px;padding:12px 10px}.landing-admin__overlay,.landing-news-modal__overlay{padding:12px}.landing-news-modal__body{padding:22px}.landing-login{padding:14px}}.landing-main>*,.landing-page>*,.landing-header__inner>*,.landing-hero__content>*,.landing-section-heading>*,.landing-symbols-panel__content>*,.landing-contact-workspace>*,.landing-document-card__content>*{min-width:0}.landing-login__overlay,.landing-news-modal__overlay,.landing-admin__overlay{z-index:47000}.landing-login,.landing-news-modal,.landing-admin__panel,.landing-calendar-modal,.landing-identity-modal,.landing-anthem-modal{max-width:min(100%,100%);max-height:calc(100vh - 48px)}@media(max-width:960px){.landing-header__inner,.landing-main,.landing-footer{width:min(100%,calc(100% - 28px))}.landing-page{gap:28px;padding-bottom:40px}.landing-hero,.landing-news-section,.landing-showcase,.landing-gallery,.landing-admissions__panel,.landing-calendar-card,.landing-community,.landing-inner-hero,.landing-document-section,.landing-contact-banner,.landing-contact-form-card,.landing-map-card,.landing-identity-showcase,.landing-identity-panel,.landing-symbols-stage,.landing-documents-intro{padding:24px 20px;border-radius:26px}.landing-btn,.landing-header__cta{min-height:46px;padding-inline:18px}.landing-news-modal__body,.landing-admin__panel-body{padding:20px}}@media(max-width:720px){.landing-header__inner,.landing-main,.landing-footer{width:min(100%,calc(100% - 20px))}.landing-hero h1,.landing-section-heading h1,.landing-section-heading h2{line-height:1.04}.landing-hero__actions,.landing-document-card__actions,.landing-contact-form__footer,.landing-news-modal__footer{display:grid;grid-template-columns:1fr;gap:10px}.landing-hero__actions>*,.landing-document-card__actions>*,.landing-contact-form__footer>*,.landing-news-modal__footer>*{width:100%}.landing-header__tools,.landing-footer__bottom,.landing-contact-banner,.landing-anthem-lyrics__header,.landing-symbols-panel__title,.landing-news-modal__header{align-items:stretch;flex-direction:column}.landing-login__overlay,.landing-news-modal__overlay,.landing-admin__overlay{padding:10px;align-items:flex-start}.landing-login,.landing-news-modal,.landing-admin__panel,.landing-calendar-modal,.landing-identity-modal,.landing-anthem-modal{width:100%;max-height:calc(100vh - 20px);border-radius:20px}.landing-news-modal__header,.landing-news-modal__body,.landing-admin__panel-header,.landing-admin__panel-body,.landing-login__brand,.landing-login__form{padding-left:16px;padding-right:16px}.landing-anthem-lyrics,.landing-anthem-lyrics.landing-anthem-lyrics--symbols{padding:18px;border-radius:22px}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:#18212f;background-color:#f7f3eb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;background:#f7f3eb;color:#18212f;overflow-x:hidden}img,picture,video,canvas,svg{display:block;max-width:100%}input,textarea,select,button{font:inherit}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;padding-right:44px;border:1px solid rgba(201,162,39,.26);background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,#a57812 50%),linear-gradient(135deg,#a57812 50%,transparent 50%),linear-gradient(180deg,#c9a2271f,#c9a2270a);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px),100% 0;background-size:6px 6px,6px 6px,42px 100%;background-repeat:no-repeat;border-radius:14px;color:#111827;box-shadow:0 10px 24px #0f172a0a;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;cursor:pointer;color-scheme:light}select:hover{border-color:#c9a22775;background-color:#fffdf8}select:focus,select:focus-visible{outline:none;border-color:#c9a227;box-shadow:0 0 0 4px #c9a22724;background-color:#fffef9}select option{background:#fffdf8;color:#111827}select option:checked,select option:hover,select option:focus{background:linear-gradient(180deg,#f3e6b8,#dbc06d);color:#111827}.styled-select{position:relative;width:100%;min-width:0;max-width:100%;box-sizing:border-box}.styled-select__trigger{width:100%;max-width:100%;min-width:0;min-height:44px;padding:12px 14px;box-sizing:border-box;border-radius:14px;border:1px solid rgba(201,162,39,.26);background:linear-gradient(180deg,#fff,#fffaf0);color:#111827;box-shadow:0 10px 24px #0f172a0a;display:inline-flex;align-items:center;justify-content:space-between;gap:12px;font:inherit;line-height:1.3;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.styled-select__trigger:hover{border-color:#c9a2277a;transform:translateY(-1px)}.styled-select.is-open .styled-select__trigger,.styled-select__trigger:focus-visible{outline:none;border-color:#c9a227;box-shadow:0 0 0 4px #c9a22724}.styled-select__value{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.styled-select__value.is-placeholder{color:#8f8572}.styled-select__icon{flex-shrink:0;color:#a57812;transition:transform .18s ease}.styled-select.is-open .styled-select__icon{transform:rotate(180deg)}.styled-select__menu{position:fixed;z-index:110000;padding:8px;border-radius:16px;border:1px solid rgba(201,162,39,.22);background:linear-gradient(180deg,#fffef9,#f7f0de);box-shadow:0 22px 50px #0f172a2e;display:grid;gap:4px;overflow-y:auto}.styled-select__option{width:100%;min-height:40px;padding:10px 12px;border:0;border-radius:12px;background:transparent;color:#111827;font:inherit;line-height:1.3;text-align:left;box-shadow:none}.styled-select__option:hover,.styled-select__option:focus-visible{outline:none;background:#c9a2271f;color:#7e5f0e}.styled-select__option.is-selected{background:linear-gradient(135deg,#d8b75a,#b98b1f);color:#18120a;font-weight:700}.styled-select__option:disabled,.styled-select.is-disabled .styled-select__trigger{cursor:not-allowed;opacity:.68}.password-requirements{display:grid;gap:8px;margin-top:8px;padding:12px 14px;border-radius:14px;background:linear-gradient(180deg,#fffefb,#f8f2e3);border:1px solid rgba(202,165,64,.18)}.password-requirements__title{font-size:.84rem;font-weight:700;color:#7a5a0d}.password-requirements__list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.password-requirements__item{display:flex;align-items:center;gap:8px;font-size:.88rem;color:#64748b}.password-requirements__item.is-met{color:#166534;font-weight:600}.password-requirements__check{width:18px;min-width:18px;height:18px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#94a3b81f;color:#64748b;font-size:.8rem;line-height:1}.password-requirements__item.is-met .password-requirements__check{background:#1665341f;color:#166534}h1{font-size:clamp(2rem,4vw,3.2rem);line-height:1.08}button{border-radius:12px;border:1px solid transparent;padding:.72em 1.1em;font-size:1em;font-weight:500;font-family:inherit;background-color:transparent;cursor:pointer;transition:border-color .25s,transform .2s ease,box-shadow .2s ease}button:hover{border-color:transparent}button:focus,button:focus-visible{outline:none}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:transparent}}html,body,#root{height:100%;width:100%;margin:0;padding:0;background-color:#f7f3eb}.student-dashboard{width:100%;height:100vh;display:flex;background-color:#f9f7f3;overflow:hidden}.main-content{flex:1;width:100%;padding:40px;background-color:#fff;border-top-left-radius:20px;border-bottom-left-radius:20px}@media(max-width:720px){html{font-size:15px}.main-content{padding:20px 16px;border-radius:18px 18px 0 0}}
