/*! source-sha1:07face2b38d80f9e9bbdae1a6f8fbfe52904bce4 */
@font-face{font-family:ITF Ghroob;src:url(../fonts/itf-ghroob-light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:ITF Ghroob;src:url(../fonts/itf-ghroob-regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:ITF Ghroob;src:url(../fonts/itf-ghroob-medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:ITF Ghroob;src:url(../fonts/itf-ghroob-bold.woff2) format("woff2");font-weight:600 700;font-style:normal;font-display:swap}@font-face{font-family:ITF Ghroob;src:url(../fonts/itf-ghroob-extrabold.woff2) format("woff2");font-weight:800 1000;font-style:normal;font-display:swap}:root{--font-family: "ITF Ghroob", sans-serif;color-scheme:light;--palette-sage: #738678;--palette-mist: #c9d2cc;--palette-cream: #f4f1ea;--palette-fern: #a8b6af;--palette-slate: #3e4a45;--palette-forest: #143f0a;--palette-brass: #b08d57;--system-bar-bg: #f4f1ea;--logo-tile-bg: #fbfaf6;--navy: #1d3b2a;--navy-2: #3e4a45;--brand: #2f6146;--gold: #a4804a;--cyan: #8fb39c;--cyan-2: #e6eae3;--blue: #2f6146;--ink: #17241d;--muted: #5c6a63;--line: rgba(62, 74, 69, .14);--surface: rgba(251, 250, 246, .92);--surface-strong: #fffefb;--surface-border: rgba(255, 255, 255, .9);--header-bg: rgba(251, 250, 246, .8);--card-bg: rgba(255, 254, 250, .86);--soft-bg: rgba(115, 134, 120, .13);--table-bg: rgba(255, 254, 250, .9);--table-head: rgba(115, 134, 120, .15);--input-bg: #fffefb;--danger: #b3412f;--success: #1e7a4f;--warning: #9a6420;--on-primary: #f7f5ee;--on-brand: #f7f5ee;--shadow: 0 22px 60px rgba(29, 59, 42, .11), 0 2px 8px rgba(29, 59, 42, .05);--shadow-sm: 0 8px 22px rgba(29, 59, 42, .08);--ring: 0 0 0 3px rgba(176, 141, 87, .38);--hairline: inset 0 1px 0 rgba(255, 255, 255, .7);--primary-gradient: linear-gradient(135deg, #3d7757, #2f6146 50%, #1d3b2a);--brand-gradient: linear-gradient(135deg, #1d3b2a, #2f6146 58%, #b08d57);--hero-gradient: linear-gradient(145deg, rgba(20, 48, 32, .98), rgba(47, 97, 70, .94) 58%, rgba(176, 141, 87, .82));--footer-gradient: linear-gradient(135deg, #14261c, #1d3b2a 58%, #102018);--placeholder-gradient: radial-gradient(120% 90% at 50% 0%, rgba(176, 141, 87, .22), transparent 60%), linear-gradient(160deg, #265437, #16301f 55%, #0c1d13);--body-bg: radial-gradient(1100px 560px at 100% -8%, rgba(115, 134, 120, .18), transparent 62%), radial-gradient(900px 520px at -8% 12%, rgba(176, 141, 87, .09), transparent 60%), linear-gradient(180deg, #f4f1ea 0%, #efeee6 52%, #f4f1ea 100%);--pattern-opacity: .045;--pattern-color: #1d3b2a;--dashboard-nav-start: #1a3024;--dashboard-nav-end: #2c4a38;--dashboard-nav-border: rgba(176, 141, 87, .2);--dashboard-nav-active: rgba(176, 141, 87, .24);--ease-out: cubic-bezier(.22, .8, .24, 1);--ease-spring: cubic-bezier(.34, 1.4, .64, 1);--dur-fast: .16s;--dur: .26s}.reports-launch-wrap{margin-top:-6px}.reports-launch-button{border-color:#b08d5775;background:linear-gradient(125deg,#2f6146f5,#1d3b2af5 50%,#7a6238f0);box-shadow:0 28px 74px #2f61462e}.reports-launch-icon{color:#2f6146;background:linear-gradient(135deg,#fff,#d5e8db)}.reports-title{margin-bottom:18px}.reports-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:148px;padding:24px;border:1px solid rgba(176,141,87,.3);border-radius:22px;color:#fff;background:linear-gradient(125deg,#14261c,#2f6146 52%,#2f6146);box-shadow:0 28px 72px #14261c33}.reports-hero:after{content:"";position:absolute;inset:auto 0 0;height:4px;background:linear-gradient(90deg,#b08d57,#a9c2b2,#b08d57)}.reports-hero-main,.reports-back-link,.reports-toolbar,.reports-filter-form,.reports-select-shell,.reports-tabs,.student-report-head,.student-report-identity,.report-contact-row,.report-contact-actions,.student-report-account,.halaqa-report-card header,.report-data-grid article{display:flex;align-items:center}.reports-hero-main{gap:16px;min-width:0}.reports-hero-icon{display:grid;place-items:center;width:72px;height:72px;flex:0 0 72px;border-radius:20px;color:#1d3b2a;background:linear-gradient(135deg,#fff,#b08d57);box-shadow:0 16px 38px #0003}.reports-hero-icon svg,.reports-back-link svg,.reports-select-shell svg,.reports-summary-icon svg,.reports-tabs svg,.student-report-pdf svg,.report-contact-actions svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.reports-hero-icon svg{width:34px;height:34px;stroke-width:2.1}.reports-hero h2{margin:7px 0 5px;color:#fff;font-size:2rem}.reports-hero p{margin:0;color:#fffc}.reports-hero-badge{color:#fff5c8;background:#b08d5726}.reports-back-link{position:relative;z-index:1;justify-content:center;gap:8px;min-width:108px;min-height:44px;padding:9px 14px;border:1px solid rgba(255,255,255,.2);border-radius:14px;color:#fff;font-weight:900;background:#ffffff1a}.reports-back-link svg{width:20px;height:20px;stroke-width:2.2}.reports-toolbar{justify-content:space-between;gap:14px;margin:18px 0;padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 14px 34px #14261c12}.reports-filter-form{flex:1;gap:12px;min-width:0}.reports-filter-form>label{flex:0 0 auto;color:var(--navy);font-weight:900}.reports-select-shell{position:relative;flex:1;min-width:220px}.reports-select-shell svg{position:absolute;inset-inline-start:14px;z-index:1;width:20px;height:20px;color:var(--brand);stroke-width:2;pointer-events:none}.reports-select-shell select{width:100%;min-height:48px;padding-inline-start:44px;border-radius:12px}.reports-export-button{min-width:154px;min-height:48px}.reports-export-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}.reports-qr-export-button{border-color:color-mix(in srgb,#2f6146 36%,var(--line));color:#2f6146;background:color-mix(in srgb,#2f6146 9%,var(--surface-strong))}.reports-qr-export-button:hover{color:#fff;background:linear-gradient(135deg,#2f6146,#1d3b2a)}.reports-summary-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;margin-bottom:18px}.reports-summary-card{position:relative;overflow:hidden;display:grid;gap:7px;min-width:0;min-height:118px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 14px 32px #14261c12}.reports-summary-card strong{color:var(--navy);direction:ltr;font-size:1.4rem;font-variant-numeric:tabular-nums;line-height:1;unicode-bidi:isolate}.reports-summary-card strong small{font-size:.7em}.reports-summary-card>span:last-child{overflow:hidden;color:var(--muted);font-size:.78rem;font-weight:900;line-height:1.35}.reports-summary-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:var(--brand);background:var(--soft-bg)}.reports-summary-icon svg{width:19px;height:19px;stroke-width:2}.reports-summary-present .reports-summary-icon,.reports-summary-pages .reports-summary-icon{color:#2f6146;background:#2f61461c}.reports-summary-absent .reports-summary-icon{color:var(--danger);background:#b3412f1c}.reports-summary-late .reports-summary-icon{color:var(--warning);background:#b67b271f}.reports-tabs{gap:8px;padding:8px;overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:var(--soft-bg);scrollbar-width:thin}.reports-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:1 0 176px;min-height:48px;padding:10px 14px;border:1px solid transparent;border-radius:12px;color:var(--navy);font-weight:900;background:var(--surface);cursor:pointer}.reports-tabs button.is-active{color:#fff;border-color:#b08d5759;background:linear-gradient(120deg,#1d3b2a,#2f6146 60%,#2f6146);box-shadow:0 14px 30px #14261c2e}.reports-tabs svg{width:20px;height:20px;flex:0 0 20px;stroke-width:2}.reports-panel{margin-top:16px}.reports-panel[hidden]{display:none!important}.reports-panel-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:14px}.reports-panel-heading h2{margin:5px 0 0;color:var(--navy);font-size:1.45rem}.reports-result-count{padding:7px 12px;border-radius:999px;color:#2f6146;font-weight:900;background:#2f61461a}.student-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.student-report-card{position:relative;overflow:hidden;min-width:0;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 18px 42px #14261c14}.student-report-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#b08d57,#2f6146,#2f6146)}.student-report-head{gap:10px;min-width:0}.student-report-avatar{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;overflow:hidden;border-radius:14px;color:#fff;font-size:1.15rem;font-weight:900;background:linear-gradient(135deg,#1d3b2a,#2f6146)}.student-report-avatar img{width:100%;height:100%;object-fit:cover}.student-report-identity{display:grid;align-items:initial;gap:2px;flex:1;min-width:0}.student-report-identity strong,.student-report-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-report-identity strong{color:var(--navy);font-size:1.05rem}.student-report-identity small{color:var(--muted);font-weight:800}.student-report-pdf{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border:1px solid rgba(179,65,47,.18);border-radius:12px;color:var(--danger);background:#b3412f17}.student-report-pdf svg{width:22px;height:22px;stroke-width:2}.student-report-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:14px 0}.student-report-metrics span{display:grid;gap:3px;min-width:0;padding:9px 4px;border-radius:10px;text-align:center;background:var(--soft-bg)}.student-report-metrics b{overflow:hidden;color:var(--navy);direction:ltr;font-size:1rem;font-variant-numeric:tabular-nums;text-overflow:ellipsis;unicode-bidi:isolate}.student-report-metrics small{color:var(--muted);font-size:.68rem;font-weight:900}.student-report-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-top:1px solid var(--line);border-inline-start:1px solid var(--line)}.student-report-facts>div{min-width:0;padding:8px 10px;border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line)}.student-report-facts .is-wide{grid-column:1 / -1}.student-report-facts dt,.student-report-facts dd{margin:0}.student-report-facts dt{color:var(--muted);font-size:.68rem;font-weight:900}.student-report-facts dd{overflow-wrap:anywhere;color:var(--ink);font-size:.8rem;font-weight:800}.student-report-contacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px}.report-contact-row{justify-content:space-between;gap:7px;min-width:0;min-height:48px;padding:7px 8px;border:1px solid var(--line);border-radius:11px;background:var(--surface-strong)}.report-contact-copy{display:grid;gap:1px;min-width:0}.report-contact-copy small{color:var(--muted);font-size:.66rem;font-weight:900}.report-contact-copy b{overflow:hidden;max-width:150px;color:var(--ink);font-size:.76rem;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.report-contact-actions{gap:5px;flex:0 0 auto}.report-contact-actions a{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;color:#2f6146;background:#2f61461a}.report-contact-actions a:last-child{color:#1e7a4f;background:#1e7a4f1f}.report-contact-actions svg{width:16px;height:16px;stroke-width:2}.student-report-account{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;padding:10px;border-radius:12px;color:#fff;background:linear-gradient(120deg,#14261c,#2f6146 70%,#2f6146)}.student-report-account span{display:grid;gap:2px;min-width:0}.student-report-account small{color:#ffffffb3;font-size:.66rem;font-weight:900}.student-report-account b{overflow:hidden;max-width:100%;color:#fff;font-size:.78rem;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.student-report-status{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}.student-report-status small{color:var(--muted);font-weight:900}.student-report-status p{margin:3px 0 0;overflow-wrap:anywhere;color:var(--ink);font-size:.8rem}.halaqa-report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.halaqa-report-card{min-width:0;padding:15px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 16px 36px #14261c12}.halaqa-report-card header{justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}.halaqa-report-card header strong,.halaqa-report-card header small{display:block}.halaqa-report-card header strong{color:var(--navy)}.halaqa-report-card header small{color:var(--muted);font-weight:800}.halaqa-report-card header>b{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;color:#2f6146;background:#2f61461a}.halaqa-report-card>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}.halaqa-report-card>div span{display:grid;gap:2px;padding:8px 4px;border-radius:9px;text-align:center;background:var(--soft-bg)}.halaqa-report-card>div b{color:var(--navy)}.halaqa-report-card>div small{color:var(--muted);font-size:.67rem;font-weight:900}.report-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.report-data-grid article{gap:8px;min-width:0;padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.report-data-grid article>div{display:grid;gap:1px;flex:1;min-width:0}.report-data-grid article>div strong,.report-data-grid article>div small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-data-grid article>div strong{color:var(--navy)}.report-data-grid article>div small{color:var(--muted);font-weight:800}.report-data-grid article>span{display:grid;gap:1px;min-width:58px;padding:6px;border-radius:9px;text-align:center;background:var(--soft-bg)}.report-data-grid article>span b{color:var(--navy);direction:ltr;font-variant-numeric:tabular-nums;unicode-bidi:isolate}.report-data-grid article>span small{color:var(--muted);font-size:.64rem;font-weight:900}.report-data-grid article>span.success b{color:var(--success)}.report-data-grid article>span.warning b{color:var(--warning)}.report-data-grid article>span.danger b{color:var(--danger)}.reports-panel-description{max-width:820px;margin:-4px 0 14px;color:var(--muted);line-height:1.8}.absence-alert-card{border-inline-start:4px solid color-mix(in srgb,var(--danger) 72%,transparent)}.weekly-star-report-card{border-inline-start:4px solid color-mix(in srgb,var(--warning) 72%,transparent)}.absence-alert-card>div small,.weekly-star-report-card>div small{line-height:1.6;white-space:normal}.reports-empty{grid-column:1 / -1;padding:36px;border:1px dashed var(--line);border-radius:16px;color:var(--muted);font-weight:900;text-align:center;background:var(--soft-bg)}@media(prefers-reduced-motion:no-preference){.reports-launch-button:before{animation:presence-shine 3.8s ease-in-out infinite}.reports-hero,.reports-toolbar,.reports-summary-grid,.reports-tabs,.reports-panel.is-active{animation:app-rise .38s ease both}.reports-toolbar{animation-delay:.04s}.reports-summary-grid{animation-delay:.08s}.reports-tabs{animation-delay:.12s}.reports-panel.is-active{animation-delay:.16s}.reports-launch-button,.reports-tabs button,.reports-summary-card,.student-report-card,.student-report-pdf,.report-contact-actions a,.halaqa-report-card,.report-data-grid article{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}.reports-launch-button:hover,.reports-summary-card:hover,.student-report-card:hover,.halaqa-report-card:hover{transform:translateY(-3px);box-shadow:0 24px 54px #14261c24}.student-report-pdf:hover,.report-contact-actions a:hover{transform:translateY(-2px) scale(1.04)}}@media(max-width:1180px){.reports-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.halaqa-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.student-report-grid,.report-data-grid{grid-template-columns:1fr}.student-report-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.reports-hero{align-items:flex-start;flex-direction:column;min-height:0;padding:17px;border-radius:18px}.reports-hero-main{align-items:flex-start}.reports-hero-icon{width:54px;height:54px;flex-basis:54px;border-radius:15px}.reports-hero-icon svg{width:26px;height:26px}.reports-hero h2{font-size:1.35rem}.reports-back-link{align-self:stretch}.reports-toolbar,.reports-filter-form{align-items:stretch;flex-direction:column}.reports-filter-form{gap:7px}.reports-select-shell,.reports-export-button{width:100%;min-width:0}.reports-export-actions{display:grid;grid-template-columns:1fr;width:100%}.reports-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.reports-summary-card{min-height:104px;padding:12px}.reports-tabs{margin-inline:-4px}.reports-tabs button{flex-basis:156px;min-height:44px;padding:8px 10px}.reports-panel-heading{align-items:flex-start}.student-report-card{padding:13px;border-radius:15px}.student-report-facts,.student-report-contacts,.student-report-account{grid-template-columns:1fr}.student-report-facts .is-wide{grid-column:auto}.report-contact-copy b{max-width:190px}.halaqa-report-grid{grid-template-columns:1fr}.report-data-grid article{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.quran-report-grid article{grid-template-columns:repeat(2,minmax(0,1fr))}.report-data-grid article>div{grid-column:1 / -1}.report-data-grid article>span{min-width:0}}.site-settings-launch-wrap{margin-top:-4px}.site-settings-launch-button{width:min(920px,100%);border-color:#b08d5785;background:linear-gradient(125deg,#14261c,#2f6146 48%,#2f6146);box-shadow:0 30px 78px #14261c38}.site-settings-launch-icon{color:#1d3b2a;background:linear-gradient(135deg,#fffdf7,#b08d57)}.site-settings-title{position:relative;padding-inline-end:230px}.site-admin-details{position:absolute;z-index:60;inset-block-start:14px;inset-inline-start:0}.profile-admin-details{position:relative;inset:auto;flex:0 0 auto}.site-admin-details[open]:before{content:"";position:fixed;z-index:50;inset:0;background:#09120d6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.site-admin-details-trigger,.account-force-logout{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid color-mix(in srgb,var(--gold) 55%,var(--line));border-radius:50%;color:#fff;background:linear-gradient(135deg,#1d3b2a,#7a6238);box-shadow:0 10px 24px #14261c33;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;list-style:none}.site-admin-details-trigger::-webkit-details-marker{display:none}.site-admin-details-trigger:hover,.site-admin-details[open] .site-admin-details-trigger,.account-force-logout:hover{transform:translateY(-2px);border-color:#b08d57;box-shadow:0 14px 30px #14261c4d}.site-admin-details[open] .site-admin-details-trigger{position:relative;z-index:52}.site-admin-details-trigger svg,.account-force-logout svg,.site-admin-logout svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.site-admin-details-card{position:fixed;z-index:51;top:50%;left:50%;transform:translate(-50%,-50%);width:min(340px,calc(100vw - 32px));padding:18px;border:1px solid color-mix(in srgb,var(--gold) 55%,var(--line));border-radius:8px;color:var(--ink);background:var(--panel);box-shadow:0 24px 60px #0e1a1342}.site-admin-details-close{position:absolute;inset-block-start:10px;inset-inline-end:10px;display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:50%;color:var(--muted);background:color-mix(in srgb,var(--panel) 92%,var(--gold));cursor:pointer}.site-admin-details-close:hover{color:#fff;border-color:#2f6146;background:#2f6146}.site-admin-details-close svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.site-admin-details-head{display:flex;align-items:center;gap:11px;margin-bottom:14px;padding-inline-end:32px}.site-admin-details-head small,.site-admin-credentials small{display:block;color:var(--muted);font-weight:800}.site-admin-details-head strong,.site-admin-credentials b{display:block;color:var(--navy)}.site-admin-details-avatar{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:50%;color:#1d3b2a;background:linear-gradient(135deg,#fffdf7,#b08d57);font-weight:900}.site-admin-credentials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px}.site-admin-credentials>span{min-width:0;padding:10px;border:1px solid var(--line);border-radius:7px;background:color-mix(in srgb,var(--panel) 88%,var(--gold))}.site-admin-credentials b{overflow-wrap:anywhere}.site-admin-logout{width:100%;justify-content:center}.account-card-identity{flex:1 1 auto;min-width:0}.account-name-line{display:flex;align-items:center;gap:8px;min-width:0}.account-name-line strong{min-width:0;overflow-wrap:normal;word-break:normal;line-height:1.55}.account-name-line form{flex:0 0 auto}.account-force-logout{width:30px;height:30px;border-color:#9e352659;color:#9e3526;background:color-mix(in srgb,var(--panel) 88%,#9e3526);box-shadow:none}.account-force-logout svg{width:16px;height:16px}.site-settings-back{position:absolute;inset-block-start:14px;inset-inline-end:0}.site-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.site-settings-panel{position:relative;overflow:hidden;margin:0;border-color:color-mix(in srgb,var(--line) 70%,var(--gold))}.site-settings-panel:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#1d3b2a,#b08d57,#2f6146)}.site-settings-about{grid-column:1 / -1}.site-settings-panel-head{display:flex;align-items:center;gap:13px;margin-bottom:22px}.site-settings-panel-head h2{margin:2px 0 0}.site-settings-panel-icon{display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;border:1px solid color-mix(in srgb,var(--gold) 44%,var(--line));border-radius:14px;color:#fff;background:linear-gradient(135deg,#1d3b2a,#2f6146);box-shadow:0 14px 30px #14261c2e}.site-settings-panel-icon svg,.student-phone-actions svg,.student-report-download svg,.teacher-report-download svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.student-phone-input-shell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.student-phone-display,.student-phone-actions,.student-row-actions{display:inline-flex;align-items:center}.student-phone-display{justify-content:space-between;gap:10px;width:100%}.student-phone-actions{direction:rtl;gap:6px;flex:0 0 auto}.student-phone-actions a{display:grid;place-items:center;width:42px;height:42px;border:1px solid color-mix(in srgb,var(--brand) 28%,var(--line));border-radius:10px;color:var(--brand);background:color-mix(in srgb,var(--brand) 7%,var(--surface-strong));transition:transform .16s ease,color .16s ease,background .16s ease}.student-phone-actions a.is-whatsapp{color:#1e7a4f;border-color:color-mix(in srgb,#1e7a4f 28%,var(--line));background:color-mix(in srgb,#1e7a4f 8%,var(--surface-strong))}.student-phone-actions a:hover{transform:translateY(-2px);color:#fff;background:var(--brand)}.student-phone-actions a.is-whatsapp:hover{background:#1e7a4f}.student-login-qr-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:center;justify-items:stretch;gap:16px;margin-top:20px;padding:16px;border:1px solid color-mix(in srgb,var(--gold) 38%,var(--line));border-radius:18px;background:radial-gradient(circle at 10% 0,color-mix(in srgb,var(--gold) 22%,transparent),transparent 10rem),linear-gradient(135deg,color-mix(in srgb,var(--surface-strong) 88%,var(--gold)),var(--surface));box-shadow:0 18px 46px #14261c14}.student-login-qr-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--gold),#2f6146,var(--navy))}.student-login-qr-copy{position:relative;z-index:1;display:grid;justify-items:start;width:100%;min-width:0;text-align:start}.student-login-qr-copy h3{margin:6px 0 4px;color:var(--navy);font-size:1.3rem}.student-login-qr-copy p{margin:0;color:var(--muted);font-weight:900}.student-login-qr-stack{position:relative;z-index:1;display:grid;grid-template-columns:150px minmax(144px,154px);align-items:center;justify-content:flex-end;gap:10px;width:auto;margin-inline:0}.student-login-qr-frame{position:relative;display:grid;place-items:center;flex:0 0 150px;width:150px;aspect-ratio:1;min-height:0;padding:8px;border:1px solid color-mix(in srgb,var(--navy) 26%,var(--line));border-radius:14px;background:#fffdf7;box-shadow:inset 0 0 0 4px #b08d5729,0 14px 30px #101e161a}.student-login-qr-frame svg{display:block;width:100%;height:auto;max-width:100%;border-radius:10px}.student-login-qr-actions{display:grid;gap:8px;width:154px;min-width:0}.student-login-qr-actions form{margin:0}.student-login-qr-download,.student-login-qr-reset{width:100%;justify-content:center;gap:8px;min-height:40px;padding-inline:12px;font-size:.88rem;white-space:nowrap}.student-login-qr-download{border-color:color-mix(in srgb,#2f6146 36%,var(--line));color:#2f6146;background:color-mix(in srgb,#2f6146 9%,var(--surface-strong))}.student-login-qr-download:hover{color:#fff;background:linear-gradient(135deg,#2f6146,#1d3b2a)}.student-login-qr-reset{border-color:color-mix(in srgb,var(--gold) 42%,var(--line));color:var(--navy);background:color-mix(in srgb,var(--gold) 10%,var(--surface-strong))}.student-login-qr-download svg,.student-login-qr-reset svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.student-admin-hero{padding-top:78px}.student-report-download{position:absolute;z-index:2;inset-block-start:18px;inset-inline-end:18px}.teacher-report-download{width:fit-content;margin-top:16px}.student-row-actions{gap:7px;flex-wrap:wrap;min-width:230px}.student-row-actions .btn{min-height:38px;padding:8px 11px;font-size:.82rem;white-space:nowrap}.student-row-actions-mobile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-width:0;margin-top:10px}.student-row-actions-mobile .btn{width:100%}@media(max-width:900px){.site-settings-grid{grid-template-columns:1fr}.site-settings-about{grid-column:auto}}@media(max-width:720px){.site-settings-title{padding-inline-end:0}.site-settings-back{position:static;width:100%;margin-top:12px}.site-settings-launch-button{min-height:84px;padding:13px}.site-settings-launch-icon{width:52px;height:52px}.site-settings-panel{padding:14px}.student-admin-hero{padding-top:66px}.student-report-download{inset-block-start:10px;inset-inline:10px auto;min-height:40px;padding:8px 11px}.student-phone-input-shell{grid-template-columns:minmax(0,1fr) 90px}.student-phone-actions a{width:40px;height:40px}.student-login-qr-card{grid-template-columns:1fr;justify-items:center;justify-content:center;text-align:center}.student-login-qr-copy{justify-items:center;text-align:center}.student-login-qr-stack{justify-content:center;width:100%}.student-login-qr-frame{flex:0 1 150px}.student-login-qr-actions{width:min(154px,100%)}.qr-login-box{padding:16px;border-radius:22px}.qr-login-head{align-items:flex-start;padding-inline-start:42px}.qr-login-options{grid-template-columns:1fr}.qr-login-option{min-height:82px;grid-template-columns:42px minmax(0,1fr);align-items:center;justify-items:start;text-align:start}.qr-camera-stage,.qr-camera-stage video{min-height:240px}.quran-juz-card{border-radius:14px}.quran-juz-card>summary{grid-template-columns:34px minmax(0,1fr);gap:8px;padding:11px}.quran-juz-arrow{width:34px;height:34px;border-radius:9px}.quran-juz-count,.quran-juz-percent{width:100%;justify-content:center;margin:0;white-space:normal}.quran-juz-detail{padding:0 8px 10px}.quran-juz-detail .table-wrap{overflow:visible;border-radius:0}.table-quran-juz-details,.table-quran-juz-details tbody,.table-quran-juz-details tr{width:100%!important;max-width:100%}.table-quran-juz-details tr{margin-bottom:8px!important;padding:9px!important;border-radius:12px!important}.table-quran-juz-details td,.table-quran-juz-details.has-actions td{grid-template-columns:minmax(92px,.8fr) minmax(0,1.2fr)!important;gap:8px!important;width:100%!important;min-width:0!important;padding:8px 0!important;white-space:normal!important;text-align:start!important;overflow-wrap:anywhere}.table-quran-juz-details td>*{max-width:100%}.table-quran-juz-details .badge{white-space:normal;text-align:center}}@media(max-width:420px){.student-row-actions-mobile{grid-template-columns:1fr}.quran-juz-title strong{font-size:.96rem}.quran-juz-title small,.table-quran-juz-details td{font-size:.82rem}}.automatic-absence-jump{margin-top:14px}.automatic-absence-jump svg,.notification-action-link svg,.automatic-absence-form-actions svg,.absence-excuse-state svg,.absence-excuse-composer svg,.absence-excuses-title svg,.absence-excuse-stat svg,.absence-review-card svg,.scanner-hero-actions svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9}.automatic-absence-panel{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px;align-items:center;padding:clamp(22px,4vw,38px);border:1px solid color-mix(in srgb,var(--brand) 32%,var(--line));border-radius:30px;background:radial-gradient(circle at 8% 12%,rgba(176,141,87,.23),transparent 34%),linear-gradient(135deg,color-mix(in srgb,var(--surface-strong) 94%,var(--cyan-2)),var(--surface));box-shadow:0 28px 80px #1d3b2a24}.automatic-absence-panel:after{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--gold),var(--brand),var(--gold))}.automatic-absence-visual{position:relative;display:grid;place-items:center;width:178px;height:178px;margin:auto;border:1px solid rgba(255,255,255,.58);border-radius:46px;color:#f7f5ee;background:var(--brand-gradient);box-shadow:0 26px 56px #1d3b2a3d;transform:rotate(-2deg)}.automatic-absence-visual svg{width:78px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4;filter:drop-shadow(0 9px 16px rgba(0,0,0,.18));animation:absence-bell-pulse 3.4s ease-in-out infinite}.automatic-absence-ring{position:absolute;width:126px;height:126px;border:1px solid rgba(255,255,255,.3);border-radius:50%;animation:absence-ring 2.7s ease-out infinite}.automatic-absence-copy h2{margin:4px 0 8px;color:var(--ink);font-size:clamp(1.45rem,3vw,2.1rem)}.automatic-absence-copy>p{max-width:780px;margin:0 0 18px;color:var(--muted)}.automatic-absence-copy code{padding:2px 8px;border:1px solid color-mix(in srgb,var(--gold) 42%,transparent);border-radius:8px;color:var(--warning);background:color-mix(in srgb,var(--gold) 12%,transparent);direction:ltr}.automatic-absence-form textarea{min-height:116px;resize:vertical;line-height:1.85}.automatic-absence-form-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px}.automatic-absence-form-actions>span{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:.84rem}.automatic-absence-form-actions>span i{width:9px;height:9px;border-radius:50%;background:var(--success);box-shadow:0 0 0 6px color-mix(in srgb,var(--success) 12%,transparent)}.automatic-absence-form-actions .btn svg,.automatic-absence-jump svg,.notification-action-link svg,.absence-excuses-title .btn svg{width:20px}.notification-inbox-card.is-absence-notification{border-color:color-mix(in srgb,var(--gold) 42%,var(--line));background:linear-gradient(110deg,color-mix(in srgb,var(--gold) 7%,transparent),transparent 42%),var(--surface)}.notification-inbox-content{min-width:0}.absence-notification-action{margin-top:16px}.absence-excuse-state{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--surface-strong) 76%,transparent);animation:absence-action-enter .45s cubic-bezier(.2,.8,.2,1) both}.absence-excuse-state-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:13px;color:var(--warning);background:color-mix(in srgb,var(--warning) 12%,transparent)}.absence-excuse-state-icon svg{width:21px}.absence-excuse-state>span:last-child{display:grid;gap:2px}.absence-excuse-state b{color:var(--ink)}.absence-excuse-state small{color:var(--muted)}.absence-excuse-state.is-approved .absence-excuse-state-icon,.absence-excuse-state.is-resolved .absence-excuse-state-icon{color:var(--success);background:color-mix(in srgb,var(--success) 13%,transparent)}.absence-excuse-state.is-rejected .absence-excuse-state-icon{color:var(--danger);background:color-mix(in srgb,var(--danger) 13%,transparent)}.absence-excuse-composer{overflow:hidden;border:1px solid color-mix(in srgb,var(--brand) 32%,var(--line));border-radius:20px;background:color-mix(in srgb,var(--surface-strong) 86%,transparent);transition:border-color .25s ease,box-shadow .25s ease}.absence-excuse-composer[open]{border-color:color-mix(in srgb,var(--brand) 62%,var(--line));box-shadow:0 18px 44px #1d3b2a1f}.absence-excuse-composer summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;color:var(--on-primary);cursor:pointer;list-style:none;background:var(--primary-gradient)}.absence-excuse-composer summary::-webkit-details-marker{display:none}.absence-excuse-composer summary>span{display:inline-flex;align-items:center;gap:9px;font-weight:800}.absence-excuse-composer summary svg{width:22px}.absence-excuse-composer summary small{color:#ffffffc2}.absence-excuse-composer form{display:grid;gap:9px;padding:17px;animation:absence-action-enter .36s ease both}.absence-excuse-composer form label{color:var(--ink);font-weight:800}.absence-excuse-composer textarea{min-height:108px;resize:vertical}.absence-excuse-composer form>div{display:flex;align-items:center;justify-content:space-between;gap:14px}.absence-excuse-composer form>div>span{color:var(--muted);font-size:.82rem}.notification-action-link{width:fit-content;margin-top:15px}.scanner-hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.scanner-excuses-link{border-color:#b08d576b!important;color:#fff7d8!important;background:#b08d571f!important}.absence-excuses-title .btn{margin-top:14px}.absence-excuses-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.absence-excuse-stat{position:relative;overflow:hidden;display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;column-gap:12px;padding:18px;border:1px solid var(--line);border-radius:22px;color:var(--ink);background:var(--surface);box-shadow:0 16px 38px #1d3b2a14;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.absence-excuse-stat:hover,.absence-excuse-stat.is-active{transform:translateY(-4px);border-color:color-mix(in srgb,currentColor 34%,var(--line));box-shadow:0 22px 46px #1d3b2a24}.absence-excuse-stat>span{grid-row:1 / 3;display:grid;place-items:center;width:48px;height:48px;border-radius:16px;color:var(--warning);background:color-mix(in srgb,var(--warning) 12%,transparent)}.absence-excuse-stat>span svg{width:25px}.absence-excuse-stat>b{font-size:1.55rem;line-height:1}.absence-excuse-stat>small{color:var(--muted)}.absence-excuse-stat.is-approved>span{color:var(--success);background:color-mix(in srgb,var(--success) 12%,transparent)}.absence-excuse-stat.is-rejected>span{color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,transparent)}.absence-excuse-stat.is-all>span{color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,transparent)}.absence-excuses-list{display:grid;gap:16px}.absence-review-card{position:relative;overflow:hidden;padding:clamp(18px,3vw,26px);border:1px solid var(--line);border-radius:26px;background:var(--surface);box-shadow:0 20px 54px #1d3b2a1a;animation:absence-card-enter .52s cubic-bezier(.2,.8,.2,1) both}.absence-review-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--warning)}.absence-review-card.is-approved:before{background:var(--success)}.absence-review-card.is-rejected:before{background:var(--danger)}.absence-review-student{display:flex;align-items:center;gap:12px}.absence-review-student>div{display:grid;min-width:0;gap:2px}.absence-review-student strong{color:var(--ink);font-size:1.08rem}.absence-review-student small,.absence-review-meta{color:var(--muted)}.absence-review-avatar{display:grid;overflow:hidden;place-items:center;width:52px;height:52px;flex:0 0 52px;border:2px solid color-mix(in srgb,var(--brand) 28%,transparent);border-radius:18px;color:var(--on-brand);font-size:1.2rem;font-weight:900;background:var(--primary-gradient)}.absence-review-avatar img{width:100%;height:100%;object-fit:cover}.absence-review-status{margin-inline-start:auto;padding:7px 11px;border-radius:999px;color:var(--warning);font-size:.78rem;font-weight:900;background:color-mix(in srgb,var(--warning) 13%,transparent)}.absence-review-status.is-approved{color:var(--success);background:color-mix(in srgb,var(--success) 13%,transparent)}.absence-review-status.is-rejected{color:var(--danger);background:color-mix(in srgb,var(--danger) 13%,transparent)}.absence-review-card blockquote{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;margin:18px 0 12px;padding:16px;border:0;border-radius:18px;color:var(--ink);background:color-mix(in srgb,var(--brand) 8%,var(--surface-strong))}.absence-review-card blockquote svg{width:28px;color:var(--gold)}.absence-review-card blockquote p{margin:0;line-height:1.85}.absence-review-meta{display:flex;flex-wrap:wrap;gap:7px 16px;font-size:.8rem}.absence-review-meta span{display:inline-flex;align-items:center;gap:6px}.absence-review-meta span:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold)}.absence-review-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.absence-decision{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 16px;border:1px solid var(--line);border-radius:18px;color:var(--ink);text-align:start;background:color-mix(in srgb,var(--surface-strong) 78%,transparent);cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease}.absence-decision:hover{transform:translateY(-2px)}.absence-decision.is-approve:hover,.absence-decision.is-approve.is-selected{border-color:color-mix(in srgb,var(--success) 52%,var(--line));background:color-mix(in srgb,var(--success) 9%,var(--surface-strong))}.absence-decision.is-reject:hover,.absence-decision.is-reject.is-selected{border-color:color-mix(in srgb,var(--danger) 52%,var(--line));background:color-mix(in srgb,var(--danger) 9%,var(--surface-strong))}.absence-decision>svg{width:30px;flex:0 0 30px}.absence-decision.is-approve>svg{color:var(--success)}.absence-decision.is-reject>svg{color:var(--danger)}.absence-decision>span{display:grid;gap:1px}.absence-decision b{color:inherit}.absence-decision small{color:var(--muted)}.absence-excuses-empty{display:grid;place-items:center;gap:7px;min-height:220px;text-align:center}.absence-excuses-empty svg{width:54px;color:var(--brand)}.absence-excuses-empty strong{color:var(--ink);font-size:1.08rem}.absence-excuses-empty span{color:var(--muted)}[data-theme=dark] .automatic-absence-panel,[data-theme=dark] .notification-inbox-card.is-absence-notification,[data-theme=dark] .absence-review-card,[data-theme=dark] .absence-excuse-stat{box-shadow:0 24px 68px #00000047}[data-theme=dark] .automatic-absence-panel{background:radial-gradient(circle at 8% 12%,rgba(176,141,87,.15),transparent 34%),linear-gradient(135deg,#0e1712fa,#13221af5)}@keyframes absence-bell-pulse{0%,to{transform:rotate(0) scale(1)}8%{transform:rotate(7deg) scale(1.04)}16%{transform:rotate(-7deg) scale(1.04)}24%{transform:rotate(4deg) scale(1.02)}32%{transform:rotate(0) scale(1)}}@keyframes absence-ring{0%{transform:scale(.74);opacity:.72}72%,to{transform:scale(1.25);opacity:0}}@keyframes absence-card-enter{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes absence-action-enter{0%{transform:translateY(-7px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:820px){.automatic-absence-panel{grid-template-columns:1fr}.automatic-absence-visual{width:132px;height:132px;border-radius:36px}.automatic-absence-visual svg{width:58px}.automatic-absence-ring{width:96px;height:96px}.absence-excuses-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.automatic-absence-form-actions,.absence-excuse-composer form>div,.scanner-hero-actions{align-items:stretch;flex-direction:column}.automatic-absence-form-actions .btn,.absence-excuse-composer form .btn,.scanner-hero-actions .scanner-back-link{width:100%;justify-content:center}.absence-excuses-overview{gap:9px}.absence-excuse-stat{grid-template-columns:40px 1fr;padding:13px;border-radius:18px}.absence-excuse-stat>span{width:40px;height:40px;border-radius:13px}.absence-review-actions{grid-template-columns:1fr}.absence-review-status{align-self:flex-start}.absence-excuse-composer summary small{display:none}}@media(prefers-reduced-motion:reduce){.automatic-absence-visual svg,.automatic-absence-ring,.absence-review-card,.absence-excuse-state,.absence-excuse-composer form{animation:none!important}}@media(max-width:390px){.student-report-head{align-items:flex-start}.student-report-avatar{width:42px;height:42px;flex-basis:42px}.student-report-pdf{width:38px;height:38px;flex-basis:38px}.student-report-metrics{gap:4px}.student-report-metrics span{padding:8px 2px}.report-contact-copy b{max-width:145px}}.course-command{display:grid;gap:22px}.course-current-card{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;color:#fff;border-radius:26px;background:linear-gradient(135deg,#1d3b2af5,#1d3b2adb 58%,#8fb39cc7),var(--primary-gradient);box-shadow:0 28px 76px #1d3b2a3d}.course-current-card:after{content:"";position:absolute;inset:auto -8% -44% auto;width:280px;aspect-ratio:1;border-radius:50%;border:42px solid rgba(255,255,255,.12)}.course-current-main,.course-progress-shell,.course-picker-footer,.toggle-line{display:flex;align-items:center;gap:14px}.course-current-main,.course-progress-shell{position:relative;z-index:1}.course-current-card h2{margin:10px 0 6px;color:#fff;font-size:clamp(1.7rem,3vw,3rem)}.course-current-card p,.course-progress-shell small,.course-progress-shell .meta{color:#ffffffc7}.course-icon-orbit{display:grid;place-items:center;width:72px;height:72px;flex:0 0 72px;border-radius:24px;color:#1d3b2a;background:linear-gradient(135deg,#fff,var(--cyan-2));box-shadow:0 18px 44px #00000038}.course-icon-orbit svg,.course-student-option svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.course-progress-ring{display:grid;place-items:center;width:104px;height:104px;flex:0 0 104px;border-radius:50%;background:radial-gradient(circle,rgba(29,59,42,.96) 56%,transparent 57%),conic-gradient(var(--cyan) var(--progress, 0%),rgba(255,255,255,.2) 0);box-shadow:inset 0 0 0 1px #ffffff29,0 18px 42px #0000002e}.course-progress-ring strong{color:#fff;font-size:1.25rem}.course-progress-shell b{display:block;color:#fff;font-size:1.35rem}.course-admin-grid{align-items:start;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr)}.course-form-panel{position:relative;overflow:hidden}.toggle-line{min-height:44px;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--soft-bg);color:var(--navy);font-weight:800}.course-form-grid .toggle-line.full{width:fit-content;min-width:min(100%,220px);justify-self:center;justify-content:center}.course-form-grid .toggle-line span{white-space:nowrap}.course-student-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:12px;max-height:none;overflow:visible;padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--soft-bg)}.course-student-option{display:grid;grid-template-columns:auto 52px minmax(0,1fr);align-items:center;gap:12px;min-height:68px;padding:10px 12px;border:1px solid transparent;border-radius:15px;cursor:pointer;background:var(--surface)}.course-student-option:has(input:checked){border-color:#1e8a5a6b;background:#1e8a5a1c}.course-student-avatar{display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;border-radius:15px;object-fit:cover;color:#fff;font-weight:900;background:var(--brand-gradient)}.course-student-option b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-student-label{display:grid;gap:4px;min-width:0}.course-student-label small{color:var(--muted);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-student-option.is-hidden{display:none}.course-student-mini-pager{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:4px}.course-student-mini-pager[hidden]{display:none!important}.course-student-mini-pager .btn{min-width:110px}.course-picker-footer{display:grid;grid-template-columns:1fr;justify-items:center;gap:14px}.course-picker-footer .badge{justify-self:end}.course-picker-footer .btn{justify-self:center}.course-select-all-line{justify-content:flex-start;width:100%;min-height:50px;padding:10px 12px;border:1px solid var(--line);border-radius:15px;background:var(--soft-bg)}.course-archive-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.course-archive-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--soft-bg)}.course-archive-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:188px}.course-archive-actions form,.course-archive-actions .btn{width:auto}.course-archive-card.is-active{border-color:#1e8a5a61;background:#1e8a5a1a}.course-archive-card>a{display:grid;gap:5px;min-width:0}.course-archive-card>a>.badge{display:inline-flex;justify-content:center;width:100%}.course-archive-card strong{color:var(--navy)}.course-archive-card>a small,.course-archive-card>a span:not(.badge){color:var(--muted)}.table-course-summary th a{color:var(--navy);text-decoration:underline;text-underline-offset:4px}.course-summary-panel .course-stat-grid{gap:18px;margin-bottom:18px}.table-course-summary{border-collapse:separate;border-spacing:0 8px;background:transparent}.course-summary-filter{flex:1 1 760px;justify-content:flex-start;align-items:center;width:min(1120px,100%)}.course-summary-filter input,.course-summary-filter select{min-width:0;width:100%}.table-course-summary tr[data-course-summary-row][hidden],.table-course-summary tr[data-course-summary-empty][hidden],.table-course-summary tr.is-filtered-out{display:none!important}.table-course-summary th,.table-course-summary td{padding-block:15px}.course-scope-panel{margin-top:20px;margin-bottom:20px}.course-scope-filter{width:min(560px,100%)}.course-scope-filter select{min-width:min(100%,360px)}.course-archive-metrics{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:4px}.course-archive-metrics b{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:999px;color:var(--navy);font-size:.82rem;background:#b08d571f}.course-page-actions{display:flex;justify-content:center;gap:12px;margin-top:22px;text-align:center}.course-create-action{margin-top:28px}.points-bulk-action{margin-top:-26px;margin-bottom:30px}.course-create-action .btn,.course-page-actions .btn{min-width:min(100%,240px)}.course-standalone-form-panel{max-width:none}.student-record-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.student-record-grid .panel{min-width:0;overflow:hidden}.student-record-grid .table-wrap,.student-ledger-wrap{width:100%;max-width:100%}.table-student-attendance,.table-student-points,.table-student-donations{min-width:0;table-layout:auto}@media(prefers-reduced-motion:no-preference){.course-current-card,.course-student-option,.course-archive-card{animation:app-rise .3s ease both;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.course-student-option:hover,.course-archive-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px #1d3b2a1a}}@media(prefers-reduced-motion:no-preference){.finance-workbench>*{animation:app-rise .42s cubic-bezier(.2,.8,.2,1) both}.finance-workbench>:nth-child(2){animation-delay:.06s}.finance-workbench>:nth-child(3){animation-delay:.12s}.finance-balance-card,.finance-action-panel,.finance-balance-icon,.finance-action-icon{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.finance-balance-card:hover,.finance-action-panel:hover{transform:translateY(-3px);border-color:color-mix(in srgb,currentColor 32%,var(--line));box-shadow:0 30px 68px #1d3b2a29}.finance-balance-card:hover .finance-balance-icon,.finance-action-panel:hover .finance-action-icon{transform:scale(1.04) rotate(-2deg)}}@media(max-width:980px){.course-current-card,.course-progress-shell{align-items:flex-start;flex-direction:column}.course-admin-grid,.student-record-grid{grid-template-columns:1fr}.finance-archive-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.course-current-card{padding:18px;border-radius:22px}.course-icon-orbit{width:58px;height:58px;flex-basis:58px;border-radius:19px}.course-progress-ring{width:86px;height:86px;flex-basis:86px}.course-student-picker{grid-template-columns:1fr;max-height:none}.finance-archive-summary,.course-archive-list{grid-template-columns:1fr}.course-picker-footer,.course-archive-card{align-items:stretch;grid-template-columns:1fr}.course-archive-actions{justify-content:flex-start;min-width:0}.course-picker-footer{flex-direction:column}.table-course-summary td:nth-child(1):before{content:"\627\644\637\627\644\628"}.table-course-summary td:nth-child(2):before{content:"\627\644\635\641\62d\627\62a"}.table-course-summary td:nth-child(3):before{content:"\646\642\627\637  \627\644\642\631\622\646"}.table-course-summary td:nth-child(4):before{content:"\627\644\646\642\627\637  \627\644\643\644\64a\629"}.table-course-summary td:nth-child(5):before{content:"\646\642\627\637  \627\644\62f\648\631\629"}.table-course-summary td:nth-child(6):before{content:"\627\644\633\628\631"}.table-course-summary td:nth-child(7):before{content:"\627\644\62a\628\631\639\627\62a"}.table-course-summary td:nth-child(8):before{content:"\627\644\62f\648\627\645"}.table-course-summary td:nth-child(9):before{content:"\627\644\62d\636\648\631"}.table-course-summary td:nth-child(10):before{content:"\627\644\62a\623\62e\631"}.table-course-summary td:nth-child(11):before{content:"\627\644\63a\64a\627\628"}.table-student-attendance td:nth-child(1):before{content:"\627\644\62a\627\631\64a\62e"}.table-student-attendance td:nth-child(2):before{content:"\627\644\62d\627\644\629"}}@media(max-width:980px){.quran-exam-type-grid{grid-template-columns:1fr}.quran-exam-live-summary,.quran-exam-filter-summary{align-items:stretch;flex-direction:column}.quran-exam-live-summary p{max-width:none}}@media(max-width:720px){.quran-exam-panel-head,.quran-exam-archive-head{align-items:stretch}.quran-exam-filter-toolbar{display:grid;grid-template-columns:1fr;width:100%}.quran-exam-filter-button{width:100%}.table-auth-logs td:nth-child(1):before{content:"\627\644\62d\627\644\629"}.table-auth-logs td:nth-child(2):before{content:"\627\644\62d\633\627\628"}.table-auth-logs td:nth-child(3):before{content:"\627\644\62c\647\627\632  \648\627\644\646\638\627\645"}.table-auth-logs td:nth-child(4):before{content:"\627\644\645\62a\635\641\62d"}.table-auth-logs td:nth-child(5):before{content:"IP"}.table-auth-logs td:nth-child(6):before{content:"\627\644\62a\627\631\64a\62e  \648\627\644\648\642\62a"}}html[data-theme=dark]{color-scheme:dark;--system-bar-bg: #0b120e;--logo-tile-bg: #15211a;--navy: #efe9da;--navy-2: #c9d2cc;--brand: #8fbf9f;--gold: #d4b57a;--cyan: #a8b6af;--cyan-2: #18241d;--blue: #9cc9aa;--ink: #e7ebe5;--muted: #9dada5;--line: rgba(201, 210, 204, .1);--surface: rgba(18, 28, 22, .86);--surface-strong: #111a15;--surface-border: rgba(212, 181, 122, .1);--header-bg: rgba(13, 21, 16, .74);--card-bg: rgba(20, 31, 25, .78);--soft-bg: rgba(143, 191, 159, .1);--table-bg: rgba(16, 25, 20, .86);--table-head: rgba(143, 191, 159, .09);--input-bg: #0e1712;--danger: #f08a78;--success: #6fd3a0;--warning: #e9b866;--on-primary: #f4f1ea;--on-brand: #f4f1ea;--shadow: 0 24px 70px rgba(0, 0, 0, .5), 0 2px 10px rgba(0, 0, 0, .3);--shadow-sm: 0 10px 26px rgba(0, 0, 0, .36);--ring: 0 0 0 3px rgba(212, 181, 122, .42);--hairline: inset 0 1px 0 rgba(255, 255, 255, .045);--primary-gradient: linear-gradient(135deg, #3f8060, #2a5a40 52%, #183826);--brand-gradient: linear-gradient(135deg, #0f2218, #1d3b2a 58%, #7a6238);--hero-gradient: linear-gradient(145deg, rgba(10, 24, 16, .98), rgba(29, 59, 42, .95) 58%, rgba(122, 98, 56, .85));--footer-gradient: linear-gradient(135deg, #070d0a, #0d1812 58%, #050a07);--placeholder-gradient: radial-gradient(120% 90% at 50% 0%, rgba(212, 181, 122, .18), transparent 60%), linear-gradient(160deg, #1b3a28, #0f2217 55%, #08130d);--body-bg: radial-gradient(1000px 540px at 88% -10%, rgba(47, 97, 70, .32), transparent 62%), radial-gradient(760px 460px at -6% 4%, rgba(212, 181, 122, .07), transparent 60%), linear-gradient(180deg, #0b120e 0%, #0d1611 46%, #080d0a 100%);--pattern-opacity: .05;--pattern-color: #d4b57a;--dashboard-nav-start: #0f1c15;--dashboard-nav-end: #17301f;--dashboard-nav-border: rgba(212, 181, 122, .16);--dashboard-nav-active: rgba(212, 181, 122, .18)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-family);color:var(--ink);background-color:var(--system-bar-bg);background-image:var(--body-bg);min-height:100vh;min-height:100dvh;overflow-x:hidden}html{min-height:100%;background:var(--system-bar-bg);overflow-x:hidden}a{color:inherit;text-decoration:none}img,video{max-width:100%}button,input,textarea,select,optgroup,code,kbd,pre,samp{font:inherit}*,:before,:after,::placeholder{font-family:var(--font-family)!important}.page-shell{width:min(1280px,calc(100% - 56px));min-height:100vh;margin:0 auto;display:flex;flex-direction:column}main{flex:1}.site-header{position:sticky;top:14px;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0 18px;padding:10px 12px;background:var(--header-bg);border:1px solid var(--surface-border);border-radius:22px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}@media(min-width:721px){.page-shell{padding-top:92px}.site-header{position:fixed;top:14px;left:50%;width:min(1280px,calc(100% - 56px));margin:0;transform:translate(-50%)}}.brand,.mobile-brand,.header-actions,.main-nav,.dashboard-nav,.row-actions,.filter-tabs,.quick-stats{display:flex;align-items:center;gap:10px}.action-icon{display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:10px;color:var(--navy);background:color-mix(in srgb,var(--soft-bg) 76%,transparent);cursor:pointer;text-decoration:none;transition:transform .15s ease,border-color .15s ease,background .15s ease,color .15s ease}.action-icon:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--blue) 46%,var(--line));background:color-mix(in srgb,var(--soft-bg) 88%,var(--blue))}.action-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.action-icon-delete{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 44%,var(--line));background:color-mix(in srgb,var(--danger) 11%,transparent)}.action-icon-delete:hover{color:#fff;border-color:var(--danger);background:var(--danger)}.action-icon-save{color:var(--success);border-color:color-mix(in srgb,var(--success) 38%,var(--line));background:color-mix(in srgb,var(--success) 10%,transparent)}.action-icon-save:hover{color:#fff;border-color:var(--success);background:var(--success)}.action-icon-approve{color:var(--success);border-color:color-mix(in srgb,var(--success) 44%,var(--line));background:color-mix(in srgb,var(--success) 12%,transparent)}.action-icon-approve:hover:not(:disabled){color:#fff;border-color:var(--success);background:var(--success)}.action-icon:disabled{opacity:.46;cursor:not-allowed;transform:none}.action-icon-undo{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 44%,var(--line));background:color-mix(in srgb,var(--warning) 11%,transparent)}.action-icon-undo:hover{color:#fff;border-color:var(--warning);background:var(--warning)}.action-icon-restore{color:var(--success);border-color:color-mix(in srgb,var(--success) 42%,var(--line));background:color-mix(in srgb,var(--success) 12%,transparent)}.action-icon-restore:hover{color:#fff;border-color:var(--success);background:var(--success)}.action-icon-muted{cursor:not-allowed;color:var(--muted);opacity:.58;background:color-mix(in srgb,var(--soft-bg) 62%,transparent)}.row-actions .action-icon,.course-archive-actions .action-icon{flex:0 0 auto}.header-actions{flex:0 0 auto;flex-wrap:nowrap}.mobile-topbar,.mobile-bottom-tabs{display:none}.brand,.mobile-brand{flex:0 0 auto;min-width:max-content}.brand-mark{overflow:hidden;display:grid;place-items:center;width:44px;height:44px;border-radius:15px;color:#fff;font-weight:900;font-size:1.25rem;padding:3px;background:var(--logo-tile-bg);box-shadow:0 0 0 6px #8fb39c24,0 16px 32px #1d3b2a38}.brand-mark img{width:100%;height:100%;display:block;object-fit:contain;border-radius:inherit}.main-nav a,.dashboard-nav a,.btn{white-space:nowrap}.main-nav a,.dashboard-nav a{display:inline-flex;align-items:center;gap:7px}.main-nav a span,.dashboard-nav a span{white-space:nowrap}.main-nav svg,.dashboard-nav svg,.btn svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.mobile-menu-toggle{display:none}.app-download-nav-link{display:none!important}.brand strong,.brand small,.mobile-brand strong,.mobile-brand small{display:block}.brand small,.mobile-brand small{color:var(--muted);margin-top:2px}.main-nav{flex:1 1 auto;min-width:0;flex-wrap:nowrap;justify-content:center;gap:5px}.main-nav a,.dashboard-nav a,.filter-tabs a{padding:9px 12px;border-radius:999px;color:var(--navy-2);font-weight:700}.main-nav a:hover,.dashboard-nav a:hover,.filter-tabs a:hover,.filter-tabs .is-active{background:var(--soft-bg);color:var(--blue)}.main-nav a.is-active,.filter-tabs .is-active{color:var(--on-primary);background:var(--primary-gradient);box-shadow:0 12px 26px #1d3b2a38}.dashboard-nav a.is-active{color:#f7f5ee;background:#b08d573d;box-shadow:inset 0 0 0 1px #b08d5738,0 10px 24px #00000029}.dashboard-nav{flex-wrap:wrap;margin:0 0 20px;padding:10px;background:linear-gradient(135deg,#14261cf5,#14261cf5);color:#f7f5ee;border-radius:20px;box-shadow:var(--shadow)}.dashboard-nav a{position:relative;color:#f7f5ee}.nav-notification-count{position:absolute;inset-block-start:-7px;inset-inline-start:-7px;display:grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border:2px solid var(--surface-strong);border-radius:999px;color:#fff;background:var(--danger);box-shadow:0 10px 24px #c8513d47;font-size:.78rem;font-weight:900;line-height:1;z-index:2}.dashboard-nav a:hover{background:#b08d572e;color:#fff}.user-chip{display:inline-flex;align-items:center;gap:8px;color:var(--navy);font-weight:800;white-space:nowrap;padding:6px 10px;border-radius:14px;background:var(--soft-bg)}.user-chip-avatar{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:8px;color:#fff;font-size:.9rem;font-weight:900;line-height:1;object-fit:cover;background:var(--brand-gradient)}.mobile-user-chip{display:none}.account-switcher{position:relative;flex:0 0 auto}.account-switcher-trigger{max-width:220px;border:0;font:inherit;cursor:pointer}.account-switcher-current-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.account-switcher-chevron{width:15px;height:15px;flex:0 0 15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .16s ease}.account-switcher.is-open .account-switcher-chevron{transform:rotate(180deg)}.account-switcher-menu{position:absolute;z-index:120;inset-block-start:calc(100% + 9px);inset-inline-end:0;width:min(286px,calc(100vw - 28px));overflow:hidden;padding:8px;border:1px solid var(--line);border-radius:18px;color:var(--ink);background:color-mix(in srgb,var(--surface-strong) 94%,var(--soft-bg));box-shadow:0 24px 54px color-mix(in srgb,var(--navy) 24%,transparent)}.account-switcher-list{display:grid;gap:5px}.account-switcher-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:5px;min-width:0;padding:4px;border:1px solid transparent;border-radius:14px}.account-switcher-row.is-current{border-color:color-mix(in srgb,var(--gold) 38%,var(--line));background:color-mix(in srgb,var(--gold) 11%,var(--soft-bg))}.account-switcher-row>form{min-width:0;margin:0}.account-switcher-account{display:grid;grid-template-columns:36px minmax(0,1fr) 18px;align-items:center;gap:9px;width:100%;min-width:0;padding:5px;border:0;border-radius:11px;color:inherit;background:transparent;font:inherit;text-align:start}button.account-switcher-account{cursor:pointer}button.account-switcher-account:hover{background:var(--soft-bg)}.account-switcher-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;object-fit:cover;color:var(--on-primary);background:var(--brand-gradient);font-size:.82rem;font-weight:900}.account-switcher-copy{display:grid;min-width:0;line-height:1.25}.account-switcher-copy strong,.account-switcher-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-switcher-copy strong{color:var(--ink);font-size:.82rem}.account-switcher-copy small{margin-top:3px;color:var(--muted);font-size:.68rem}.account-switcher-check{width:17px;height:17px;fill:none;stroke:var(--success);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.account-switcher-logout{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid color-mix(in srgb,var(--danger) 28%,var(--line));border-radius:10px;color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,transparent);cursor:pointer}.account-switcher-logout:hover{color:#fff;background:var(--danger)}.account-switcher-logout svg,.account-switcher-add svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.account-switcher-add{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;margin-top:7px;border:1px dashed color-mix(in srgb,var(--gold) 48%,var(--line));border-radius:12px;color:var(--navy);background:color-mix(in srgb,var(--gold) 8%,transparent);font-size:.78rem;font-weight:900}.account-switcher-add:hover{border-style:solid;background:color-mix(in srgb,var(--gold) 16%,var(--soft-bg))}.add-account-title{margin-top:0!important}.btn,.icon-btn{border:0;cursor:pointer;font-weight:800;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 16px;border-radius:14px}.btn:hover,.icon-btn:hover{transform:translateY(-1px)}form.is-submitting button[type=submit],form.is-submitting button:not([type]),form.is-submitting input[type=submit],button.is-loading,input[type=submit].is-loading{cursor:wait;opacity:.72;pointer-events:none}main.is-ajax-filtering{opacity:.68;pointer-events:none}.btn.is-loading,.icon-btn.is-loading,button.is-loading{position:relative}.btn.is-loading:after,.icon-btn.is-loading:after,button.is-loading:after{content:"";width:14px;height:14px;flex:0 0 14px;border:2px solid currentColor;border-inline-start-color:transparent;border-radius:999px;animation:app-spin .72s linear infinite}@media(prefers-reduced-motion:no-preference){.panel,.album-card,.student-card,.stat-card,.lesson-preview,.alert,.media-tile{animation:app-rise .28s ease both}.main-nav a,.dashboard-nav a,.filter-tabs a,.mobile-tab,.upload-mode-tabs button,.album-card,.student-card,.stat-card,.lesson-preview,.media-tile,.table-wrap tbody tr,.hero-feature-card,.hero-feature-icon,input,textarea,select{transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease,color .16s ease,opacity .16s ease}.album-card:hover,.student-card:hover,.stat-card:hover,.lesson-preview:hover,.media-tile:hover{transform:translateY(-3px)}.hero-feature-card:hover{transform:translateY(-4px);box-shadow:0 22px 48px #1d3b2a29}.hero-feature-card:hover .hero-feature-icon{transform:rotate(-3deg) scale(1.04)}.table-wrap tbody tr:hover{background:#b08d5712}.hero-copy>.hero-kicker,.hero-identity-title,.hero-copy>p,.hero-feature-card,.hero-visual{animation:app-rise .42s ease both}.hero-identity-title{animation-delay:.04s}.hero-copy>p{animation-delay:.08s}.hero-feature-card:nth-child(1){animation-delay:.12s}.hero-feature-card:nth-child(2){animation-delay:.18s}.hero-feature-card:nth-child(3){animation-delay:.24s}.hero-visual{animation-delay:.16s}}@keyframes app-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes app-spin{to{transform:rotate(360deg)}}.btn-primary{color:var(--on-primary);background:var(--primary-gradient);box-shadow:0 16px 34px #1d3b2a40}.btn-ghost{color:var(--navy);background:var(--soft-bg)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:42px;height:42px;min-width:42px;min-height:42px;padding:0;border:0;border-radius:14px;cursor:pointer;color:var(--navy);font-weight:900;background:var(--soft-bg);transition:transform .18s ease,background .18s ease}.theme-toggle:hover{transform:translateY(-1px)}.theme-toggle-icon{position:relative;display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px}.theme-icon{position:absolute;inset:0;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:opacity .16s ease,transform .16s ease}.theme-icon-sun{opacity:0;transform:rotate(-20deg) scale(.82)}.theme-icon-moon,html[data-theme=dark] .theme-icon-sun{opacity:1;transform:rotate(0) scale(1)}html[data-theme=dark] .theme-icon-moon{opacity:0;transform:rotate(18deg) scale(.82)}.theme-toggle [data-theme-toggle-label]{display:none}.logout-button{width:42px;min-width:42px;padding-inline:0}.logout-button svg{color:var(--danger)}.logout-label{display:none}.btn-danger{color:#fff;background:var(--danger)}.hero{position:relative;display:grid;grid-template-columns:minmax(0,.84fr) minmax(420px,1.16fr);gap:24px;align-items:stretch;min-height:560px;padding:34px 0 22px}.hero-copy{align-self:center;padding:34px 0}.eyebrow{display:inline-flex;padding:8px 13px;border-radius:999px;background:#b08d572e;color:var(--blue);font-weight:900}.hero h1,.page-title h1{margin:18px 0 12px;color:var(--navy);font-size:clamp(1.95rem,4vw,3.8rem);line-height:1.08;letter-spacing:0}.hero p,.page-title p{color:var(--muted);font-size:1.15rem;line-height:1.9;max-width:640px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.hero-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:26px}.hero-feature-card{position:relative;overflow:hidden;display:grid;gap:7px;padding:14px;border:1px solid var(--surface-border);border-radius:20px;background:linear-gradient(145deg,#ffffffb8,#b08d571f);box-shadow:0 18px 40px #1d3b2a1a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}html[data-theme=dark] .hero-feature-card{background:linear-gradient(145deg,#14261cd1,#8fb39c17)}.hero-feature-card:after{content:"";position:absolute;inset:auto -22px -26px auto;width:74px;height:74px;border-radius:999px;background:#8fb39c1f}.hero-feature-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:15px;color:var(--on-primary);background:var(--primary-gradient);box-shadow:0 14px 28px #1d3b2a33}.hero-feature-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.hero-feature-card strong,.hero-feature-card small{position:relative;z-index:1}.hero-feature-card strong{color:var(--navy)}.hero-feature-card small{color:var(--muted);line-height:1.6}.about-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,.92fr) minmax(360px,.8fr);gap:clamp(20px,4vw,52px);align-items:center;min-height:560px;padding:clamp(24px,5vw,58px) 0 32px}.about-hero:before{content:"";position:absolute;inset:8% auto auto 4%;z-index:-1;width:min(36vw,420px);aspect-ratio:1;border-radius:999px;background:radial-gradient(circle,rgba(176,141,87,.32),transparent 68%);filter:blur(4px)}.about-hero-copy h1{margin:18px 0 14px;color:var(--navy);font-size:clamp(2.4rem,6vw,5.6rem);line-height:1.02}.about-hero-copy p,.about-story p{max-width:720px;color:var(--muted);font-size:1.12rem;line-height:2}.about-hero-actions,.account-submit-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.about-visual{position:relative;display:grid;place-items:center;min-height:470px;border-radius:32px;overflow:hidden;background:radial-gradient(circle at 28% 22%,rgba(176,141,87,.34),transparent 18rem),var(--hero-gradient);box-shadow:0 34px 90px #1d3b2a3d}.about-visual:before,.about-visual:after{content:"";position:absolute;border-radius:999px;pointer-events:none}.about-visual:before{inset:-82px auto auto -74px;width:210px;aspect-ratio:1;border:38px solid rgba(255,255,255,.1)}.about-visual:after{inset:auto -70px -86px auto;width:250px;aspect-ratio:1;border:42px solid rgba(176,141,87,.18)}.about-visual-mark{position:relative;z-index:2;display:grid;place-items:center;width:min(62%,280px);aspect-ratio:1;border-radius:34px;background:#f7f5ee1a;border:1px solid rgba(176,141,87,.24);box-shadow:inset 0 1px #ffffff2e,0 28px 80px #0000003d;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.about-visual-mark img{width:82%;height:82%;object-fit:contain}.about-orbit{position:absolute;border:1px solid rgba(176,141,87,.24);border-radius:999px;animation:app-float 5.8s ease-in-out infinite}.about-orbit-one{width:78%;aspect-ratio:1}.about-orbit-two{width:48%;aspect-ratio:1;animation-delay:-2.4s}.about-visual-card{position:absolute;z-index:3;width:min(260px,64%);padding:16px;border:1px solid rgba(176,141,87,.24);border-radius:18px;color:#f7f5ee;background:#14261cbd;box-shadow:0 18px 48px #0000003d;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.about-visual-card strong,.about-visual-card span{display:block}.about-visual-card span{margin-top:4px;color:#f7f5eeb8;line-height:1.7}.about-visual-card-main{inset:28px 28px auto auto}.about-visual-card-side{inset:auto auto 28px 28px}.about-stat-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.about-stat-card{position:relative;overflow:hidden;min-height:142px;padding:22px;border:1px solid var(--surface-border);border-radius:24px;background:var(--card-bg);box-shadow:var(--shadow)}.about-stat-card:after{content:"";position:absolute;inset:auto -38px -42px auto;width:130px;aspect-ratio:1;border-radius:999px;background:#8fb39c24}.about-stat-card strong{position:relative;z-index:1;display:block;color:var(--navy);font-size:clamp(2.2rem,5vw,4.4rem);line-height:1}.about-stat-card span{position:relative;z-index:1;display:block;margin-top:12px;color:var(--muted);font-weight:900}.about-story{display:grid;grid-template-columns:minmax(0,.8fr) minmax(360px,1fr);gap:24px;align-items:start}.about-story h2{margin:16px 0 10px;color:var(--navy);font-size:clamp(1.9rem,4vw,3.4rem);line-height:1.12}.about-story-grid{display:grid;gap:12px}.about-story-grid article,.about-feature-band article{position:relative;overflow:hidden;border:1px solid var(--surface-border);background:var(--card-bg);box-shadow:var(--shadow)}.about-story-grid article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 16px;padding:18px;border-radius:22px}.about-story-grid article span{grid-row:span 2;display:grid;place-items:center;width:54px;height:54px;border-radius:16px;color:var(--on-primary);font-weight:900;background:var(--primary-gradient)}.about-story-grid article strong{color:var(--navy);font-size:1.15rem}.about-story-grid article p{margin:0;font-size:.98rem}.about-feature-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.about-feature-band article{display:grid;gap:10px;min-height:188px;padding:20px;border-radius:24px}.about-feature-band svg{width:36px;height:36px;color:var(--blue);fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.about-feature-band strong{color:var(--navy);font-size:1.08rem}.about-feature-band span{color:var(--muted);line-height:1.7}@keyframes app-float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(2deg)}}.mobile-hero-links{display:none}.hero-visual{position:relative;overflow:hidden;min-height:480px;border-radius:30px;background:var(--hero-gradient);box-shadow:0 34px 80px #1d3b2a33}.hero-slider-frame{position:absolute;inset:0;overflow:hidden;border-radius:inherit}.slide{position:absolute;inset:0;opacity:0;transition:opacity .7s ease}.slide.is-active{opacity:1}.slide img,.slide-placeholder{width:100%;height:100%;object-fit:cover}.slide-placeholder,.media-placeholder,.cover-placeholder,.avatar-fallback{display:grid;place-items:center;color:#fff;background:var(--placeholder-gradient)}.hero-glass{position:absolute;inset-inline:20px;bottom:20px;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.hero-stat{padding:10px 12px;color:#fff;background:#ffffff24;border:1px solid rgba(255,255,255,.26);border-radius:16px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.hero-stat strong{display:block;font-size:1.25rem}.section{margin:54px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.section-head>*{min-width:0}.section-head h2,.panel h2,.panel h3{margin:0;color:var(--navy)}.section-head p{margin:6px 0 0;color:var(--muted)}.title-with-filter{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap}.lesson-series-filter{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;min-width:0;max-width:100%;padding:8px;border-radius:16px;background:var(--surface);border:1px solid var(--surface-border)}.lesson-series-filter>input[type=hidden]{display:none}.lesson-series-filter label{display:inline-flex;align-items:center;min-height:48px;white-space:nowrap;line-height:1}.lesson-series-filter input,.lesson-series-filter select{min-height:48px}.lesson-series-filter select{min-width:210px}.lesson-series-filter .filter-control{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;flex:0 1 238px;min-width:min(100%,190px);max-width:100%}.lesson-series-filter .filter-control.is-search{flex:1 1 380px;min-width:min(100%,300px)}.lesson-series-filter .filter-control.is-sort{flex:0 1 360px}.lesson-series-filter .filter-control.is-compact{flex-basis:200px}.lesson-series-filter .filter-control.is-button{display:flex;flex:0 0 auto;min-width:auto}.lesson-series-filter .filter-control label{min-height:auto;margin:0;color:var(--navy);font-size:.92rem;font-weight:900;line-height:1.2}.lesson-series-filter .filter-control input,.lesson-series-filter .filter-control select,.lesson-series-filter .filter-control .btn{width:100%;min-width:0}.lesson-series-filter .filter-inline-group{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,.72fr);gap:8px;min-width:0}.course-summary-panel .section-head,.quran-summary-panel .section-head{align-items:flex-start}.quran-summary-panel .lesson-series-filter,.quran-exam-archive .quran-archive-filter{width:min(960px,100%)}.grid{display:grid;gap:22px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.panel,.album-card,.student-card,.stat-card,.lesson-preview{background:var(--surface);border:1px solid var(--surface-border);border-radius:22px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.panel{padding:22px}.album-card{overflow:hidden}.album-cover,.media-tile{position:relative;aspect-ratio:16 / 10;overflow:hidden;background:var(--soft-bg)}.media-open{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;cursor:pointer;background:transparent;color:inherit}.album-cover img,.media-tile img,.media-tile video{width:100%;height:100%;object-fit:cover}.video-cover{position:absolute;inset:0;display:grid;place-items:center;gap:10px;color:#fff;background:var(--placeholder-gradient)}.play-mark{display:grid;place-items:center;width:58px;height:58px;padding-inline-start:4px;border-radius:999px;color:#fff;font-size:1.25rem;font-weight:900;background:#14261cc7;box-shadow:0 0 0 8px #8fb39c29,0 18px 40px #1d3b2a3d}.media-open>.play-mark{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.gallery-locked-panel{display:grid;place-items:center;max-width:720px;margin-inline:auto;text-align:center}.gallery-locked-icon{display:grid;place-items:center;width:76px;height:76px;margin-bottom:12px;border-radius:24px;color:var(--on-primary);background:var(--primary-gradient);box-shadow:0 20px 42px #1d3b2a3d}.gallery-locked-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.gallery-locked-panel h2{margin:0;color:var(--navy)}.gallery-locked-panel p{max-width:520px;margin:8px 0 18px;color:var(--muted);line-height:1.8}.album-body,.student-card,.stat-card,.lesson-preview{padding:18px}.meta{color:var(--muted);font-size:.94rem}.student-card{display:flex;align-items:center;gap:14px}.student-table-person{display:inline-flex;align-items:center;gap:12px;font-weight:900}.student-mini-avatar{display:grid;place-items:center;width:58px;height:58px;flex:0 0 58px;border-radius:18px;object-fit:cover;color:#fff;font-size:1rem;font-weight:900;background:var(--brand-gradient)}.profile-change-review-panel,.profile-change-history-panel{overflow:hidden}.profile-change-panel-tools,.profile-change-head-actions,.profile-change-review-meta,.profile-change-reject-actions,.profile-change-history-action{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.profile-change-review-list{display:grid;gap:16px}.profile-change-review-card{display:grid;gap:16px;padding:18px;border:1px solid color-mix(in srgb,var(--gold) 24%,var(--line));border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 96%,var(--gold)),var(--surface));box-shadow:0 14px 34px #0e171214}.profile-change-review-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.profile-change-review-head .student-table-person>span{display:grid;gap:3px}.profile-change-comparison{display:grid;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--surface-strong)}.profile-change-comparison-head,.profile-change-comparison-row{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(0,1fr) minmax(0,1fr);align-items:stretch}.profile-change-comparison-head{color:var(--navy);background:color-mix(in srgb,var(--gold) 13%,var(--soft-bg))}.profile-change-comparison-row+.profile-change-comparison-row{border-top:1px solid var(--line)}.profile-change-comparison :where(b,strong,span){min-width:0;padding:11px 13px;overflow-wrap:anywhere}.profile-change-comparison :where(b,strong,span)+:where(b,strong,span){border-inline-start:1px solid var(--line)}.profile-change-proposed{color:var(--brand);font-weight:900;background:color-mix(in srgb,var(--brand) 7%,transparent)}.profile-change-avatar-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,180px));gap:14px;justify-content:start}.profile-change-avatar-comparison figure{display:grid;gap:7px;min-width:0;margin:0}.profile-change-avatar-comparison figcaption{color:var(--muted);font-size:.82rem;font-weight:900}.profile-change-avatar-frame{display:grid;place-items:center;width:min(180px,100%);aspect-ratio:4 / 3;overflow:hidden;border:1px solid color-mix(in srgb,var(--gold) 28%,var(--line));border-radius:16px;background:var(--soft-bg);box-shadow:0 10px 24px #0e17121a}.profile-change-avatar-frame img{display:block;width:100%;height:100%;object-fit:cover}.profile-change-avatar-empty{padding:12px;color:var(--muted);font-size:.8rem;font-weight:800;text-align:center}.profile-change-review-meta{color:var(--muted);font-size:.82rem}.profile-change-review-meta span+span:before{content:"\b7";margin-inline-end:10px;color:var(--gold)}.profile-change-review-note{display:grid;gap:4px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--danger) 24%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--danger) 7%,var(--soft-bg))}.profile-change-review-note strong{color:var(--danger);font-size:.82rem}.profile-change-review-actions{display:grid;gap:10px}.profile-change-decision-row{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap}.profile-change-decision-row form{display:flex}.profile-change-decision-row .btn{min-width:148px}.profile-change-reject-panel{padding:14px;border:1px solid color-mix(in srgb,var(--danger) 30%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--danger) 6%,var(--surface-strong))}.profile-change-reject-panel[hidden]{display:none}.profile-change-reject-panel form{display:grid;gap:10px}.profile-change-reject-panel label{color:var(--navy);font-weight:900}.profile-change-reject-panel label span{color:var(--muted);font-size:.8rem}.profile-change-reject-panel textarea{min-height:82px;resize:vertical}.profile-change-history-action{align-items:center}.profile-change-history-action small{color:var(--muted)}.profile-change-review-empty{padding:22px;border:1px dashed var(--line);border-radius:16px;color:var(--muted);text-align:center;background:var(--soft-bg)}.profile-change-history-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:18px}.profile-change-history-filters a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:14px;color:var(--navy);background:var(--soft-bg);font-weight:900}.profile-change-history-filters a.is-active{border-color:color-mix(in srgb,var(--gold) 55%,var(--line));background:color-mix(in srgb,var(--gold) 17%,var(--surface-strong));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gold) 13%,transparent)}.profile-change-history-filters b{display:grid;place-items:center;min-width:25px;height:25px;padding:0 6px;border-radius:999px;color:var(--on-primary);background:var(--brand-gradient);font-size:.78rem}@media(max-width:720px){.profile-change-review-card{padding:14px;border-radius:17px}.profile-change-review-head,.profile-change-panel-tools{align-items:stretch;flex-direction:column}.profile-change-head-actions{justify-content:space-between}.profile-change-comparison-head{display:none}.profile-change-comparison-row{grid-template-columns:1fr}.profile-change-comparison :where(b,strong,span)+:where(b,strong,span){border-inline-start:0;border-top:1px solid var(--line)}.profile-change-comparison-row>span{display:grid;grid-template-columns:minmax(92px,auto) minmax(0,1fr);gap:8px}.profile-change-comparison-row>span:before{color:var(--muted);font-size:.78rem;font-weight:900}.profile-change-comparison-row>span:nth-of-type(1):before{content:"\648\642\62a  \627\644\625\631\633\627\644"}.profile-change-comparison-row>span:nth-of-type(2):before{content:"\627\644\642\64a\645\629  \627\644\62c\62f\64a\62f\629"}.profile-change-avatar-comparison{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-change-decision-row{flex-wrap:nowrap}.profile-change-decision-row form,.profile-change-decision-row .btn{flex:1 1 0;min-width:0}.profile-change-decision-row .btn{width:100%;padding-inline:8px;white-space:normal;font-size:.84rem}.profile-change-history-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}.stars-block{margin-bottom:28px}.weekly-stars{direction:rtl;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:18px}.star-card{direction:rtl;display:flex;flex-direction:column;align-items:center;text-align:center;padding:18px;border-radius:22px;background:var(--surface);border:1px solid var(--surface-border);box-shadow:var(--shadow)}.star-rank-1{grid-column:auto;transform:none}.star-rank-2{grid-column:auto}.star-rank-3{grid-column:auto;opacity:1}.rank-badge{display:inline-flex;margin-bottom:12px;padding:7px 12px;border-radius:999px;color:var(--on-primary);font-weight:900;background:var(--primary-gradient)}.star-avatar{width:136px;height:136px;margin:0 auto 14px;border-radius:32px;overflow:hidden;background:var(--soft-bg);box-shadow:0 18px 38px #1d3b2a2e}.star-rank-1 .star-avatar{width:136px;height:136px;border-radius:32px}.star-rank-3 .star-avatar{width:136px;height:136px}.star-avatar img,.star-avatar .avatar-fallback{width:100%;height:100%;border-radius:inherit;object-fit:cover;font-size:2rem}.star-card h3{margin:0 0 6px;color:var(--navy)}.latest-lesson-row{max-width:none;margin:0}.home-lessons-section{margin-top:34px}.home-section-title{position:relative;display:grid;place-items:center;gap:8px;margin-bottom:18px;text-align:center}.home-section-title h2{margin:0;color:var(--navy)}.home-section-title p{max-width:620px;margin:0;color:var(--muted);line-height:1.8}.home-section-title .btn{margin-top:4px}.hero-kicker{display:inline-flex;align-items:center;width:fit-content;min-height:27px;margin-bottom:2px;padding:4px 11px;border:1px solid color-mix(in srgb,var(--gold) 30%,var(--line));border-radius:999px;color:var(--navy-2);background:color-mix(in srgb,var(--gold) 11%,var(--surface));box-shadow:0 8px 20px color-mix(in srgb,var(--navy) 7%,transparent);font-size:clamp(.7rem,1vw,.8rem);font-weight:800;line-height:1.2}.hero h1.hero-identity-title{display:block;width:fit-content;max-width:100%;margin:3px 0 6px;font-size:clamp(1.65rem,3.7vw,3.1rem);line-height:1.12;white-space:nowrap}.hero-copy>p{margin-block:0}.loop-logo-frame{display:inline-grid;place-items:center;width:max(1.2em,calc((.86em * var(--logo-ratio, 1)) + .32em));height:1.2em;flex:0 0 auto;overflow:hidden;border:.06em solid color-mix(in srgb,var(--cyan) 36%,currentColor);border-radius:.18em;background:#e6eae3}.home-section-title--with-action{padding-inline:150px}.home-section-title--with-action .btn{position:absolute;left:0;top:50%;margin-top:0;transform:translateY(-50%)}.latest-lessons-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.home-lesson-card{display:flex;flex-direction:column;gap:12px}.home-lesson-card h3{margin:0;color:var(--navy);font-size:1.2rem}.home-lesson-card p{margin:0;color:var(--muted);line-height:1.8}.lesson-read-more{align-self:flex-start;margin-top:12px}.home-lesson-card .lesson-read-more{margin-top:auto}.lesson-meta-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.lesson-meta-row span{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border-radius:999px;color:var(--blue);font-size:.9rem;font-weight:900;background:#b08d5724}.avatar,.avatar-fallback{width:58px;height:58px;flex:0 0 auto;border-radius:18px;object-fit:cover}.avatar-lg{width:104px;height:104px;border-radius:28px}.student-profile-title .profile-id{gap:28px}.student-profile-title .avatar-lg,.student-profile-title .avatar-fallback.avatar-lg{flex:0 0 auto}.student-delete-section{display:flex;justify-content:center;margin-top:34px;margin-bottom:8px}.stat-card strong{display:block;color:var(--navy);font-size:2rem;line-height:1.1}.stat-card strong small{font-size:1rem}.progress-panel{margin-top:18px}.quran-progress{overflow:hidden;height:18px;border-radius:999px;background:var(--soft-bg);box-shadow:inset 0 1px 4px #1d3b2a1f}.quran-progress span{display:block;height:100%;min-width:0;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--cyan));box-shadow:0 0 24px #b08d5752}.quran-juz-list{display:grid;gap:14px}.quran-juz-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel-bg) 84%,var(--soft-bg));box-shadow:0 16px 34px #1d3b2a14}.quran-juz-card>summary{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:16px;cursor:pointer;list-style:none}.quran-juz-card>summary::-webkit-details-marker{display:none}.quran-juz-arrow{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:#fff;background:linear-gradient(135deg,var(--blue),var(--cyan));box-shadow:0 12px 24px #2f61463d;transition:transform .2s ease}.quran-juz-arrow svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.quran-juz-card[open] .quran-juz-arrow{transform:rotate(90deg)}.quran-juz-title{display:grid;gap:4px;min-width:0}.quran-juz-title strong{color:var(--navy);font-size:1.08rem;font-weight:900}.quran-juz-title small{color:var(--muted);font-weight:800}.quran-juz-count,.quran-juz-percent{white-space:nowrap}.quran-juz-bar{grid-column:2 / -1;overflow:hidden;height:9px;border-radius:999px;background:color-mix(in srgb,var(--soft-bg) 72%,transparent);box-shadow:inset 0 1px 4px #1d3b2a29}.quran-juz-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--cyan));box-shadow:0 0 18px #b08d5757}.quran-juz-detail{padding:0 16px 18px}.quran-juz-detail .table-wrap{border-radius:14px;overflow-x:hidden}.table-quran-juz-details{width:100%;min-width:0;table-layout:fixed}.table-quran-juz-details th,.table-quran-juz-details td{padding:12px 14px;vertical-align:middle}.table-quran-juz-details th:first-child,.table-quran-juz-details td:first-child{width:44%;white-space:normal;overflow-wrap:anywhere;line-height:1.7}.table-quran-juz-details th:nth-child(2),.table-quran-juz-details td:nth-child(2){width:23%;text-align:center;white-space:nowrap}.table-quran-juz-details th:nth-child(3),.table-quran-juz-details td:nth-child(3){width:19%;text-align:center;white-space:nowrap}.table-quran-juz-details.has-actions th:nth-child(4),.table-quran-juz-details.has-actions td:nth-child(4){width:14%;min-width:76px;text-align:center}.quran-juz-actions{display:inline-flex;align-items:center;justify-content:center;gap:8px}.quran-juz-actions form{display:contents}.quran-juz-action{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;color:var(--navy);background:color-mix(in srgb,var(--soft-bg) 72%,transparent);cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease,color .15s ease}.quran-juz-action:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--blue) 48%,var(--line));background:color-mix(in srgb,var(--soft-bg) 88%,var(--blue))}.quran-juz-action svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.quran-juz-action-delete{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 42%,var(--line));background:color-mix(in srgb,var(--danger) 11%,transparent)}.quran-juz-action-delete:hover{color:#fff;border-color:var(--danger);background:var(--danger)}.quran-juz-empty{margin:0}.finance-workbench{align-items:stretch}.finance-workbench>*{min-width:0}.finance-balance-card,.finance-action-panel{position:relative;overflow:hidden;isolation:isolate;border-color:color-mix(in srgb,var(--blue) 20%,var(--line));box-shadow:0 24px 54px #1d3b2a1f}.finance-balance-card:before,.finance-action-panel:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 18% 12%,rgba(176,141,87,.18),transparent 34%),linear-gradient(145deg,rgba(255,255,255,.06),transparent 42%);opacity:.9}.finance-balance-card:after,.finance-action-panel:after{content:"";position:absolute;inset-inline-end:-54px;inset-block-end:-58px;z-index:-1;width:156px;height:156px;border-radius:999px;border:34px solid currentColor;opacity:.08}.finance-balance-card{display:grid;grid-template-columns:74px minmax(0,1fr);place-items:center;align-content:center;gap:18px;min-height:100%;text-align:start;color:var(--blue)}.finance-balance-card strong{margin:6px 0 4px;font-size:clamp(2rem,4vw,3.2rem)}.finance-balance-card small,.finance-balance-card span{color:var(--muted);font-weight:900}.finance-balance-icon,.finance-action-icon{display:grid;place-items:center;color:var(--on-primary);background:var(--primary-gradient);box-shadow:0 18px 36px #1d3b2a3d}.finance-balance-icon{width:74px;height:74px;border-radius:24px}.finance-balance-icon svg,.finance-action-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.finance-action-panel{display:flex;flex-direction:column;padding:22px}.finance-action-panel.is-deposit{color:var(--success)}.finance-action-panel.is-withdraw{color:var(--danger)}.finance-action-panel.is-deposit .finance-action-icon{background:linear-gradient(135deg,#1e8a5a,#8fb39c)}.finance-action-panel.is-withdraw .finance-action-icon{background:linear-gradient(135deg,#c8513d,#f29585)}.finance-action-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.finance-action-icon{width:54px;height:54px;flex:0 0 54px;border-radius:18px}.finance-action-icon svg{width:27px;height:27px}.finance-action-head h2{margin:0}.finance-action-head p{margin:4px 0 0;color:var(--muted);font-size:.94rem;font-weight:800;line-height:1.55}.finance-action-panel form{display:flex;flex:1;flex-direction:column}.finance-action-panel .field{margin-bottom:14px}.finance-action-panel .field.full{margin-top:auto;margin-bottom:0}.finance-action-panel input,.finance-action-panel select{min-height:48px;border-color:color-mix(in srgb,currentColor 18%,var(--line));transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.finance-action-panel input:focus,.finance-action-panel select:focus{border-color:color-mix(in srgb,currentColor 48%,var(--line));box-shadow:0 0 0 4px color-mix(in srgb,currentColor 12%,transparent);transform:translateY(-1px)}.finance-action-panel .btn{width:100%;min-height:48px}.finance-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.finance-summary-total{grid-column:1 / -1}.finance-archive-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:4px 0 22px}.finance-archive-card{position:relative;overflow:hidden;display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px;min-height:108px;padding:16px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--card-bg) 86%,transparent);box-shadow:0 16px 36px #1d3b2a14}.finance-archive-card:after{content:"";position:absolute;inset-inline-end:-34px;inset-block-start:-34px;width:94px;height:94px;border-radius:999px;background:currentColor;opacity:.08}.finance-archive-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;color:var(--on-primary);background:var(--primary-gradient);box-shadow:0 12px 28px #1d3b2a38}.finance-archive-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.finance-archive-card small,.finance-archive-card strong{position:relative;z-index:1;display:block}.finance-archive-card small{color:var(--muted);font-weight:800;line-height:1.55}.finance-archive-card strong{margin-top:8px;color:var(--navy);font-size:1.35rem;line-height:1.1}.finance-archive-card strong span{font-size:.86rem}.finance-archive-card.is-withdraw{color:var(--danger)}.finance-archive-card.is-withdraw .finance-archive-icon{background:linear-gradient(135deg,#c8513d,#f29585)}.finance-archive-card.is-deposit{color:var(--success)}.finance-archive-card.is-deposit .finance-archive-icon{background:linear-gradient(135deg,#1e8a5a,#8fb39c)}@media(max-width:980px){.finance-archive-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.finance-balance-card{grid-template-columns:1fr;justify-items:start}.finance-action-head{align-items:flex-start}.finance-archive-summary{grid-template-columns:1fr}}.quran-exam-layout{align-items:stretch}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.quran-exam-title{padding-bottom:8px}.quran-exam-panel{position:relative;overflow:hidden}.quran-exam-panel:after{content:"";position:absolute;inset:auto -34px -36px auto;width:110px;height:110px;border-radius:999px;background:#b08d5717;pointer-events:none}.quran-exam-panel-head{position:relative;z-index:1;display:flex;align-items:start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.quran-exam-panel-head p{margin:6px 0 0;color:var(--muted)}.quran-exam-live-badge{min-width:92px;align-self:start}.quran-exam-form{position:relative;z-index:1}.quran-exam-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quran-exam-type-option,.quran-exam-filter-button{border:1px solid var(--line);background:var(--card-bg);color:var(--ink)}.quran-exam-type-option{display:flex;align-items:center;gap:12px;width:100%;min-height:82px;padding:14px;text-align:start;border-radius:18px;cursor:pointer;box-shadow:0 14px 34px #1d3b2a12}.quran-exam-type-option.is-active{color:var(--on-primary);border-color:transparent;background:var(--primary-gradient);box-shadow:0 18px 36px #1d3b2a38}.quran-exam-type-icon,.quran-exam-field-icon,.quran-exam-rule-icon{display:inline-grid;place-items:center;flex:0 0 auto}.quran-exam-type-icon,.quran-exam-rule-icon{width:42px;height:42px;border-radius:14px;background:color-mix(in srgb,var(--cyan) 13%,transparent);color:var(--blue)}.quran-exam-type-option.is-active .quran-exam-type-icon{color:#fff;background:#ffffff2e}.quran-exam-type-icon svg,.quran-exam-field-icon svg,.quran-exam-rule-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.quran-exam-type-copy{display:grid;gap:4px}.quran-exam-type-copy strong,.quran-exam-type-copy small{display:block}.quran-exam-type-copy small,.quran-exam-live-summary p,.quran-exam-rule-card p,.quran-exam-filter-summary .meta{color:var(--muted)}.quran-exam-type-option.is-active .quran-exam-type-copy small{color:#ffffffd1}.quran-exam-live-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,#8fb39c21,#1d3b2a0f)}.quran-exam-live-summary strong,.quran-exam-rule-card strong{color:var(--navy)}.quran-exam-live-summary p{max-width:420px;margin:0;line-height:1.8}.quran-exam-conditional.is-hidden{display:none}.quran-exam-field-card{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:16px;background:var(--soft-bg)}.quran-exam-field-card>:last-child{flex:1}.quran-exam-field-icon{width:38px;height:38px;border-radius:12px;color:var(--blue);background:color-mix(in srgb,var(--cyan) 13%,transparent)}.quran-exam-rule-grid{position:relative;z-index:1;display:grid;gap:14px}.quran-exam-rule-card{display:grid;gap:8px;padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:var(--card-bg);box-shadow:0 14px 34px #1d3b2a12}.quran-exam-rule-card b{color:var(--success)}.quran-exam-archive-head{align-items:center}.quran-exam-filter-toolbar{display:flex;flex-wrap:wrap;gap:10px}.quran-exam-filter-button{min-height:42px;padding:9px 14px;border-radius:999px;cursor:pointer;font-weight:800;transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.quran-exam-filter-button.is-active{color:var(--on-primary);border-color:transparent;background:var(--primary-gradient);box-shadow:0 16px 32px #1d3b2a33}.quran-exam-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.rank-fraction{display:flex!important;flex-direction:row;align-items:baseline;justify-content:flex-start;gap:8px;width:100%;margin-bottom:6px;direction:rtl;text-align:right;white-space:nowrap}.rank-number{display:block;width:100%;margin-bottom:6px;text-align:right}.rank-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.rank-metric-card{box-shadow:none}.student-portal-rank-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.student-sort-filter{margin-top:12px}.student-search-filter{display:grid;grid-template-columns:auto minmax(320px,1.35fr) auto minmax(240px,.95fr) auto;align-items:center;width:min(980px,100%)}.student-search-filter input,.student-search-filter select{min-width:0;width:100%}.sort-direction-button{min-height:48px;white-space:nowrap}.table-students-summary tr[data-student-row][hidden],.table-students-summary tr[data-student-empty-row][hidden],.table-students-summary tr.is-filtered-out{display:none!important}.student-table-actions{display:flex;justify-content:center;margin-top:18px}.setting-checkbox-card{min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:var(--soft-bg)}.album-visibility-inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:10px 16px;width:100%;margin-top:2px}.album-visibility-inline .compact-toggle{width:100%}.album-visibility-inline .compact-toggle-label{overflow-wrap:anywhere}.compact-toggle{position:relative;display:inline-flex;align-items:center;gap:7px;min-width:0;color:var(--navy);font-size:.78rem;font-weight:900;line-height:1.35;cursor:pointer}.compact-toggle-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.compact-toggle-control{position:relative;flex:0 0 auto;width:34px;height:18px;border:1px solid color-mix(in srgb,var(--muted) 44%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--muted) 18%,var(--surface));box-shadow:inset 0 1px 3px #0000001f;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.compact-toggle-control:after{content:"";position:absolute;inset-block-start:2px;inset-inline-start:2px;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #0000003d;transition:transform .16s ease}.compact-toggle-input:checked+.compact-toggle-control{border-color:color-mix(in srgb,var(--success) 75%,var(--line));background:var(--success)}.compact-toggle-input:checked+.compact-toggle-control:after{transform:translate(-16px)}.compact-toggle:focus-within .compact-toggle-control{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 15%,transparent)}.lesson-preview{min-height:100%}.page-title{padding:38px 0 12px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:grid;gap:7px}.field.full{grid-column:1 / -1}.form-grid>.full{grid-column:1 / -1}.form-actions{display:flex;justify-content:flex-end;margin-top:16px}.is-hidden{display:none!important}.upload-mode-tabs{display:inline-flex;gap:8px;padding:6px;margin:14px 0 18px;border-radius:16px;background:var(--soft-bg)}.upload-mode-tabs button{border:0;cursor:pointer;padding:10px 14px;border-radius:12px;color:var(--navy);font-weight:900;background:transparent}.upload-mode-tabs button.is-active{color:var(--on-primary);background:var(--primary-gradient);box-shadow:0 12px 26px #1d3b2a38}label{color:var(--navy);font-weight:800}label.is-required:after{content:"*";color:var(--danger);font-size:.85em;margin-inline-start:4px}input,textarea,select,.rich-editor{width:100%;border:1px solid var(--line);outline:none;border-radius:15px;background:var(--input-bg);color:var(--ink);padding:12px 14px}select{appearance:none;color-scheme:light;padding-inline-start:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2310233f' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:16px 16px;background-position:left 16px center}html[data-theme=dark] select{color-scheme:dark;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23e9f6ff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}select option{color:#14261c;background-color:#fff}html[data-theme=dark] select option{color:#f2f0e9;background-color:#131e17}textarea,.rich-editor{min-height:150px;resize:vertical;line-height:1.8}input:focus,textarea:focus,select:focus,.rich-editor:focus{border-color:#b08d57e0;box-shadow:0 0 0 4px #b08d5726}.rich-toolbar{display:flex;gap:8px;margin-bottom:8px}.icon-btn{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:var(--navy);background:var(--soft-bg)}.table-wrap{overflow-x:auto;border-radius:18px;border:1px solid var(--line);background:var(--table-bg)}table{width:100%;border-collapse:collapse;min-width:760px;background:var(--table-bg)}table.compact-table,.table-quran-students,.table-lessons,.table-quran-exams,.table-student-exams,.table-student-points,.table-student-donations,.table-points-standings,.table-auth-logs,.table-activity-logs,.table-presence{min-width:0}.table-activity-logs th:first-child,.table-activity-logs td:first-child{width:68px}.compact-table th{width:42%}th,td{padding:14px;text-align:right;border-bottom:1px solid var(--line)}th{color:var(--navy);background:var(--table-head);font-weight:900}tr:last-child td{border-bottom:0}.badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 10px;border-radius:999px;font-weight:800;background:color-mix(in srgb,var(--cyan) 13%,transparent);color:var(--blue)}.badge.success{color:var(--success);background:#1e8a5a1f}.badge.danger{color:var(--danger);background:#c8513d1f}.badge.warning{color:var(--warning);background:#c77b1621}.logs-title{padding-bottom:4px}.logs-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:12px 0 22px}.logs-stats .stat-card{position:relative;overflow:hidden;display:grid;gap:10px;min-height:138px}.logs-stats .stat-card:after{content:"";position:absolute;inset:auto -28px -36px auto;width:96px;height:96px;border-radius:999px;background:#b08d5721}.stat-icon,.log-mark svg{display:inline-grid;place-items:center}.stat-icon{width:42px;height:42px;border-radius:14px;color:var(--blue);background:color-mix(in srgb,var(--cyan) 13%,transparent)}.stat-icon svg,.log-mark svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.stat-icon.success,.log-mark.success{color:var(--success);background:#1e8a5a1f}.stat-icon.danger,.log-mark.danger{color:var(--danger);background:#c8513d1f}.stat-icon.warning,.log-mark.warning{color:var(--warning);background:#c77b1621}.logs-panel+.logs-panel{margin-top:22px}.panel-heading,.logs-filter-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.logs-filter{display:flex;align-items:center;gap:8px;min-width:min(320px,100%);padding:8px;border-radius:16px;background:var(--soft-bg)}.logs-filter label{white-space:nowrap}.log-mark{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:6px 10px;border-radius:999px;color:var(--blue);font-weight:900;background:color-mix(in srgb,var(--cyan) 13%,transparent)}.table-auth-logs td strong,.table-auth-logs td small,.table-activity-logs td strong,.table-activity-logs td small{display:block}.table-auth-logs td small,.table-activity-logs td small{margin-top:2px;color:var(--muted);font-weight:700}.log-reversal-state{display:block;width:fit-content;margin-top:8px;padding:4px 9px;border-radius:999px;color:var(--warning);background:#c77b161f}.table-activity-logs tr.is-reversed-log{background:color-mix(in srgb,var(--warning) 8%,transparent)}.presence-launch-wrap{display:flex;justify-content:center;margin:8px 0 24px}.presence-launch-button{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:16px;width:min(820px,100%);min-height:92px;padding:16px 20px;border:1px solid rgba(176,141,87,.42);border-radius:26px;color:#fff;background:radial-gradient(circle at 14% 24%,rgba(176,141,87,.34),transparent 18rem),linear-gradient(135deg,#0e1812,#1d3b2a 54%,#8fb39c);box-shadow:0 28px 74px #1d3b2a33}.presence-launch-button:before,.presence-launch-button:after{content:"";position:absolute;pointer-events:none;z-index:-1}.presence-launch-button:before{inset:0;background:linear-gradient(100deg,transparent 0 28%,rgba(255,255,255,.24) 45%,transparent 62% 100%);transform:translate(115%)}.presence-launch-button:after{inset:auto -44px -56px auto;width:170px;aspect-ratio:1;border:28px solid rgba(255,255,255,.13);border-radius:999px}.presence-launch-icon,.presence-hero-icon,.presence-stat-icon{display:inline-grid;place-items:center;flex:0 0 auto}.presence-launch-icon{width:64px;height:64px;border-radius:22px;color:#1d3b2a;background:linear-gradient(135deg,#fff,#b08d57);box-shadow:0 18px 42px #0003}.presence-launch-icon svg,.presence-launch-arrow svg,.presence-hero-icon svg,.presence-stat-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.presence-launch-copy{display:grid;gap:5px;min-width:0;text-align:start}.presence-launch-copy strong{font-size:clamp(1.1rem,2.4vw,1.65rem);line-height:1.35}.presence-launch-copy small{color:#ffffffc7;font-weight:800}.presence-launch-arrow{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:999px;background:#ffffff21}.presence-command{display:grid;gap:18px}.presence-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px;color:#fff;border-color:#b08d5742;background:radial-gradient(circle at 12% 20%,rgba(176,141,87,.28),transparent 20rem),linear-gradient(135deg,#14261cfa,#1d3b2ad1 58%,#8fb39cad)}.presence-hero:after{content:"";position:absolute;inset:auto -70px -88px auto;width:230px;aspect-ratio:1;border:36px solid rgba(255,255,255,.1);border-radius:999px}.presence-hero-main{position:relative;z-index:1;display:flex;align-items:center;gap:16px}.presence-hero-icon{width:76px;height:76px;border-radius:26px;color:#1d3b2a;background:linear-gradient(135deg,#fff,#8fb39c);box-shadow:0 18px 44px #00000038}.presence-hero h2{margin:8px 0 6px;color:#fff;font-size:clamp(1.65rem,3vw,3rem)}.presence-hero p{margin:0;color:#ffffffc7}.presence-live-badge{gap:7px;color:#8ce6b4;background:#1e8a5a38}.presence-live-badge i{width:9px;height:9px;border-radius:999px;background:currentColor;box-shadow:0 0 0 7px #8ce6b41f}.presence-updated{position:relative;z-index:1;display:grid;gap:6px;min-width:150px;padding:14px 16px;border:1px solid rgba(255,255,255,.18);border-radius:18px;text-align:center;background:#ffffff1a}.presence-updated span{color:#ffffffb8;font-weight:800}.presence-updated strong{direction:ltr;color:#fff;font-size:1.45rem}.presence-stats-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.presence-stat-card{position:relative;overflow:hidden;display:grid;gap:9px;min-height:128px;padding:18px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:0 18px 44px #1d3b2a14}.presence-stat-card:after{content:"";position:absolute;inset:auto -28px -34px auto;width:92px;height:92px;border-radius:999px;background:#b08d571f}.presence-stat-icon{width:42px;height:42px;border-radius:14px;color:var(--blue);background:color-mix(in srgb,var(--cyan) 13%,transparent)}.presence-stat-icon.online{color:var(--success);background:#1e8a5a1f}.presence-stat-icon.student{color:var(--cyan);background:#b08d571f}.presence-stat-icon.admin{color:var(--warning);background:#c77b1621}.presence-stat-icon.teacher{color:var(--blue);background:color-mix(in srgb,var(--blue) 13%,transparent)}.presence-stat-card>span:not(.presence-stat-icon){color:var(--muted);font-weight:800;line-height:1.35}.presence-stat-card strong{position:relative;z-index:1;color:var(--navy);direction:ltr;font-size:1.72rem;font-variant-numeric:tabular-nums;line-height:1;unicode-bidi:isolate}.presence-count-caption{position:relative;z-index:1;color:var(--muted);font-size:.72rem;font-weight:900;line-height:1}.presence-filter-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:8px;border:1px solid var(--line);border-radius:20px;background:var(--soft-bg)}.presence-filter-pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:0;min-height:50px;padding:10px 14px;border:1px solid transparent;border-radius:16px;color:var(--navy);font-weight:900;background:var(--surface)}.presence-filter-pill span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.presence-filter-pill b{min-width:48px;padding:4px 9px;border-radius:999px;color:var(--blue);direction:ltr;font-variant-numeric:tabular-nums;text-align:center;unicode-bidi:isolate;white-space:nowrap;background:color-mix(in srgb,var(--cyan) 13%,transparent)}.presence-filter-pill.is-active{color:#fff;border-color:#b08d5757;background:var(--brand-gradient);box-shadow:0 18px 38px #1d3b2a33}.presence-filter-pill.is-active b{color:#1d3b2a;background:#ffffffd1}.presence-table-panel{overflow:hidden}.presence-mobile-list{display:none}.presence-table-panel .table-wrap{overflow-x:auto}.table-presence{table-layout:fixed}.table-presence th,.table-presence td{padding:13px 10px;vertical-align:middle}.table-presence th:first-child,.table-presence td:first-child{width:24%}.table-presence th:nth-child(2),.table-presence td:nth-child(2),.table-presence th:nth-child(3),.table-presence td:nth-child(3),.table-presence th:nth-child(4),.table-presence td:nth-child(4){width:12%}.presence-person{display:inline-flex;align-items:center;gap:10px;min-width:0;max-width:100%}.presence-avatar{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border-radius:15px;object-fit:cover;color:#fff;font-weight:900;background:var(--brand-gradient)}.presence-avatar-fallback{box-shadow:inset 0 0 0 1px #ffffff2e}.presence-person strong,.presence-person small,.table-presence td:nth-child(4) strong,.table-presence td:nth-child(4) small{display:block}.presence-person strong,.presence-person small{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.presence-person small,.table-presence td:nth-child(4) small{margin-top:2px;color:var(--muted);font-weight:800}.presence-state{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:6px 10px;border-radius:999px;font-weight:900;white-space:nowrap}.presence-state>span{width:9px;height:9px;border-radius:999px;background:currentColor}.presence-state.is-online{color:var(--success);background:#1e8a5a1f}.presence-state.is-online>span{box-shadow:0 0 0 7px #1e8a5a1f}.presence-state.is-offline{color:var(--muted);background:var(--soft-bg)}.presence-count{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:34px;padding:5px 10px;border-radius:999px;color:var(--blue);font-weight:900;background:color-mix(in srgb,var(--cyan) 13%,transparent)}.presence-count.success{color:var(--success);background:#1e8a5a1f}.presence-count.danger{color:var(--danger);background:#c8513d1f}.presence-count.warning{color:var(--warning);background:#c77b1621}.table-presence tr.is-online{background:color-mix(in srgb,var(--success) 8%,transparent)}.presence-command.is-refreshing .presence-table-panel{box-shadow:0 0 0 1px #b08d5733,0 24px 70px #1d3b2a1f}@media(prefers-reduced-motion:no-preference){.presence-launch-button:before{animation:presence-shine 3.8s ease-in-out infinite}.presence-launch-button,.presence-hero,.presence-stat-card,.presence-filter-pill,.table-presence tr{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.presence-launch-button:hover,.presence-stat-card:hover,.presence-filter-pill:hover{transform:translateY(-2px);box-shadow:0 26px 58px #1d3b2a29}.presence-live-badge i,.presence-state.is-online>span{animation:presence-pulse 1.7s ease-in-out infinite}.presence-hero,.presence-stats-grid,.presence-filter-bar,.presence-table-panel{animation:app-rise .34s ease both}.presence-stats-grid{animation-delay:.04s}.presence-filter-bar{animation-delay:.08s}.presence-table-panel{animation-delay:.12s}}@keyframes presence-shine{0%,48%{transform:translate(115%)}72%,to{transform:translate(-115%)}}@keyframes presence-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.22);opacity:.66}}@media(max-width:980px){.presence-hero,.presence-hero-main,.presence-launch-button{align-items:flex-start;flex-direction:column}.presence-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.presence-updated,.presence-launch-button{width:100%}}@media(max-width:720px){.presence-launch-button{min-height:0;padding:15px;border-radius:22px}.presence-launch-icon,.presence-hero-icon{width:58px;height:58px;border-radius:19px}.presence-launch-arrow{align-self:flex-end}.presence-stats-grid,.presence-filter-bar{grid-template-columns:1fr}.presence-hero{padding:18px;border-radius:22px}.presence-table-panel .table-wrap{overflow-x:visible}.table-presence td:nth-child(1):before{content:"\627\644\62d\633\627\628"}.table-presence td:nth-child(2):before{content:"\627\644\646\648\639"}.table-presence td:nth-child(3):before{content:"\627\644\62d\627\644\629"}.table-presence td:nth-child(4):before{content:"\622\62e\631  \638\647\648\631"}.table-presence td:nth-child(5):before{content:"\62f\62e\648\644  \646\627\62c\62d"}.table-presence td:nth-child(6):before{content:"\62f\62e\648\644  \641\627\634\644"}.table-presence td:nth-child(7):before{content:"\62e\631\648\62c"}.table-presence td:nth-child(8):before{content:"\62a\639\62f\64a\644\627\62a"}.table-presence td:first-child{grid-template-columns:1fr}.table-presence td:first-child:before{display:none}.presence-person{justify-self:stretch;width:100%}}.device-details{line-height:1.5}code{direction:ltr;display:inline-block;padding:4px 7px;border-radius:8px;color:var(--navy);background:var(--soft-bg)}.plain-name{display:inline;color:var(--ink);font-weight:700}.plain-name+.plain-name:before{content:"\60c  ";color:var(--muted)}.alert{margin:16px 0;padding:14px 16px;border-radius:16px;font-weight:800}.alert-success{color:var(--success);background:#1e8a5a1f}.alert-danger{color:var(--danger);background:#c8513d1f}.alert-info{color:var(--navy-2);background:#b08d5724}.notification-center{position:relative;z-index:40}.notification-trigger{position:relative;display:inline-grid;place-items:center;width:48px;height:48px;border:1px solid color-mix(in srgb,var(--gold) 48%,var(--line));border-radius:16px;color:#1d3b2a;background:linear-gradient(135deg,#fff2b3,#d9a532);box-shadow:0 16px 34px #d9a53247;cursor:pointer}.notification-trigger svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.notification-trigger b{position:absolute;inset-block-start:-7px;inset-inline-end:-7px;display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border:2px solid var(--surface);border-radius:999px;color:#fff;background:var(--danger);font-size:.78rem;font-weight:900;line-height:1}.notification-trigger b[hidden]{display:none}.notification-popover{position:absolute;inset-block-start:calc(100% + 12px);inset-inline-end:0;width:min(360px,calc(100vw - 32px));padding:12px;border:1px solid color-mix(in srgb,var(--gold) 38%,var(--line));border-radius:20px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 26px 70px #00000038;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.notification-popover[hidden]{display:none}.notification-headsup-stack{position:fixed;inset-block-start:max(14px,env(safe-area-inset-top));inset-inline:0;z-index:2000;display:grid;justify-items:center;gap:10px;padding-inline:14px;pointer-events:none}.notification-headsup{width:min(460px,calc(100vw - 28px));display:grid;grid-template-columns:54px minmax(0,1fr) 34px;align-items:center;gap:12px;padding:10px;border:1px solid color-mix(in srgb,var(--gold) 45%,var(--line));border-radius:18px;color:var(--cream);background:linear-gradient(145deg,#1d3b2af5,#0c140ffa),var(--brand);box-shadow:0 24px 70px #00000057,inset 0 1px #ffeba53d;pointer-events:auto;transform:translateY(calc(-100% - 24px));opacity:0;transition:transform .34s cubic-bezier(.2,.9,.22,1),opacity .24s ease;cursor:pointer}.notification-headsup.is-visible{transform:translateY(0);opacity:1}.notification-headsup-media{width:54px;height:54px;overflow:hidden;border-radius:14px;background:linear-gradient(135deg,#f8dc80,#c99026);box-shadow:inset 0 0 0 1px #ffffff2e}.notification-headsup-media img{width:100%;height:100%;object-fit:cover;display:block}.notification-headsup-content{min-width:0;display:grid;gap:3px}.notification-headsup-content strong{color:#fff;font-size:.98rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-headsup-content span{color:color-mix(in srgb,var(--cream) 88%,#fff);font-size:.86rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-headsup-content small{color:color-mix(in srgb,var(--gold) 85%,#fff);font-size:.72rem;font-weight:900}.notification-headsup-close{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:12px;color:#fff;background:#ffffff1f;cursor:pointer}.notification-headsup-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round}.notification-popover-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 4px 10px}.notification-popover-head strong{color:var(--navy)}.notification-popover-head a{color:var(--brand);font-weight:900}.notification-compose-shortcut{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;margin:0 0 12px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--gold) 68%,transparent);border-radius:15px;color:#fff;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 88%,#0e1611),color-mix(in srgb,var(--blue) 76%,var(--brand)) 58%,color-mix(in srgb,var(--gold) 84%,#8b5f12));box-shadow:0 14px 30px color-mix(in srgb,var(--brand) 24%,transparent),inset 0 1px #fff3}.notification-compose-shortcut:after{content:"";position:absolute;inset:-60% auto -60% -18%;z-index:-1;width:34%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);transform:translate(0) rotate(18deg);transition:transform .34s ease}.notification-compose-shortcut:hover:after,.notification-compose-shortcut:focus-visible:after{transform:translate(420%) rotate(18deg)}.notification-compose-shortcut:hover,.notification-compose-shortcut:focus-visible{color:#fff;transform:translateY(-1px);box-shadow:0 18px 36px color-mix(in srgb,var(--brand) 32%,transparent),inset 0 1px #ffffff42}.notification-compose-shortcut-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#ffffff2b;box-shadow:inset 0 0 0 1px #fff3}.notification-compose-shortcut-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.notification-compose-shortcut-copy{display:grid;gap:2px;min-width:0}.notification-compose-shortcut-copy strong,.notification-compose-shortcut-copy small{color:inherit}.notification-compose-shortcut-copy strong{font-size:.94rem}.notification-compose-shortcut-copy small{opacity:.86;font-size:.73rem;font-weight:700}.notification-compose-shortcut-arrow{font-size:1.2rem;font-weight:900}.notification-popover-list,.notification-history-list,.notification-inbox-list{display:grid;gap:12px}.notification-mini-card,.notification-history-card,.notification-inbox-card{position:relative;display:grid;gap:6px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--card-bg)}.notification-mini-card{cursor:pointer}.notification-mini-card.is-unread,.notification-inbox-card.is-unread{border-color:color-mix(in srgb,var(--gold) 52%,var(--line));box-shadow:inset 4px 0 color-mix(in srgb,var(--gold) 80%,var(--brand))}.notification-mini-card strong,.notification-history-card strong,.notification-inbox-card strong{color:var(--navy)}.notification-mini-card span,.notification-history-card p,.notification-inbox-card p{margin:0;color:var(--muted);line-height:1.65}.notification-mini-card small,.notification-history-card small,.notification-inbox-card small{color:var(--muted);font-weight:800}.notification-mini-image,.notification-history-image,.notification-preview-image{width:100%;border-radius:14px;object-fit:cover}.notification-mini-image{max-height:120px;margin-bottom:4px}.notification-history-image,.notification-preview-image{max-height:220px;margin-top:10px;border:1px solid var(--line)}.push-permission-prompt{position:fixed;inset-inline:auto 22px;inset-block-end:22px;z-index:120;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;width:min(560px,calc(100vw - 32px));padding:14px;border:1px solid color-mix(in srgb,var(--gold) 45%,var(--line));border-radius:22px;background:radial-gradient(circle at 8% 0,color-mix(in srgb,var(--gold) 22%,transparent),transparent 14rem),color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 28px 78px #00000047;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);opacity:0;transform:translateY(18px) scale(.98);transition:opacity .24s ease,transform .24s ease}.push-permission-prompt.is-visible{opacity:1;transform:translateY(0) scale(1)}.push-permission-prompt.is-modal{inset:50% auto auto 50%;width:min(620px,calc(100vw - 28px));padding:20px;border-width:2px;transform:translate(-50%,calc(-50% + 18px)) scale(.98)}.push-permission-prompt.is-modal.is-visible{transform:translate(-50%,-50%) scale(1)}.push-permission-prompt.has-error{border-color:color-mix(in srgb,var(--danger) 58%,var(--line));background:radial-gradient(circle at 8% 0,color-mix(in srgb,var(--danger) 16%,transparent),transparent 14rem),color-mix(in srgb,var(--surface) 96%,transparent)}.push-permission-prompt.is-enabled{border-color:color-mix(in srgb,var(--success) 58%,var(--line));background:radial-gradient(circle at 8% 0,color-mix(in srgb,var(--success) 18%,transparent),transparent 14rem),color-mix(in srgb,var(--surface) 96%,transparent)}.push-permission-prompt strong,.push-permission-prompt span{display:block}.push-permission-prompt strong{color:var(--navy)}.push-permission-prompt span{margin-top:4px;color:var(--muted);line-height:1.6}.notification-page-title{position:relative}.notification-page-title:after{content:"";position:absolute;inset-inline-end:4%;inset-block-start:10%;width:120px;height:120px;border-radius:999px;background:color-mix(in srgb,var(--gold) 20%,transparent);filter:blur(2px);opacity:.45;pointer-events:none}.notification-studio{margin-top:34px}.notification-composer{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr);gap:22px;align-items:start}.notification-message-panel,.notification-audience-panel,.notification-history-panel{position:relative;overflow:hidden;padding:22px;border:1px solid var(--surface-border);border-radius:24px;background:radial-gradient(circle at 10% 0,color-mix(in srgb,var(--gold) 13%,transparent),transparent 18rem),var(--surface);box-shadow:var(--shadow)}.notification-panel-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}.notification-panel-head h2{margin:0;color:var(--navy)}.notification-spark{display:grid;place-items:center;width:52px;height:52px;border-radius:18px;color:#1d3b2a;background:linear-gradient(135deg,#fff1af,#d69f27);box-shadow:0 16px 34px #d9a53238}.notification-spark.is-soft{color:var(--brand);background:color-mix(in srgb,var(--gold) 16%,var(--surface));box-shadow:none}.notification-spark svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.notification-phone-preview{display:grid;grid-template-columns:12px minmax(0,1fr);gap:12px;margin-top:18px;padding:16px;border:1px solid color-mix(in srgb,var(--gold) 32%,var(--line));border-radius:22px;background:color-mix(in srgb,var(--surface) 76%,transparent);box-shadow:inset 0 1px #ffffff1f}.notification-phone-dot{width:10px;height:10px;margin-top:8px;border-radius:999px;background:var(--gold);box-shadow:0 0 0 7px color-mix(in srgb,var(--gold) 16%,transparent)}.notification-phone-preview small,.notification-phone-preview p{color:var(--muted)}.notification-phone-preview strong{display:block;color:var(--navy);font-size:1.05rem}.notification-phone-preview p{margin:5px 0 0;line-height:1.7}.notification-send-mode .segmented-choice{max-width:360px}.notification-schedule-grid{display:grid;grid-template-columns:minmax(160px,1.4fr) repeat(3,minmax(92px,.7fr));gap:12px}.notification-schedule-grid[hidden]{display:none}.audience-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.audience-card{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px;min-height:112px;padding:14px;border:1px solid var(--line);border-radius:20px;background:var(--card-bg);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.audience-card:hover{transform:translateY(-2px)}.audience-card input{position:absolute;opacity:0;pointer-events:none}.audience-card:has(input:checked){border-color:color-mix(in srgb,var(--gold) 62%,var(--line));box-shadow:0 18px 42px #d9a53229}.audience-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:16px;color:var(--brand);background:color-mix(in srgb,var(--gold) 15%,var(--surface))}.audience-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.audience-card b,.audience-card small{display:block}.audience-card b{color:var(--navy)}.audience-card small{margin-top:5px;color:var(--muted);line-height:1.55}.audience-extra{display:grid;gap:10px;margin-top:16px;padding:16px;border:1px dashed color-mix(in srgb,var(--gold) 40%,var(--line));border-radius:20px;background:color-mix(in srgb,var(--gold) 8%,transparent)}.audience-extra[hidden]{display:none}.selected-users-panel input[type=search]{width:100%}.user-pick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;max-height:300px;overflow:auto;padding-inline-end:4px}.user-pick-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.user-pick-card b,.user-pick-card small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-pick-card small{color:var(--muted)}.notification-submit-panel{margin-top:16px}.notification-submit-panel .btn{width:100%;justify-content:center;min-height:54px}.notification-history-card,.notification-inbox-card{grid-template-columns:52px minmax(0,1fr) auto;align-items:center}.notification-live-card{grid-template-columns:52px minmax(0,1fr) auto;align-items:start;cursor:pointer}.notification-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.icon-action{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:14px;color:var(--brand);background:var(--soft-bg);cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.icon-action:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--gold) 55%,var(--line))}.icon-action svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.icon-action.is-danger{color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,var(--surface))}.notification-delivery-stats,.notification-delivery-details{grid-column:1 / -1}.notification-delivery-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:8px}.notification-delivery-stats span,.notification-delivery-card{display:grid;gap:3px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--soft-bg)}.notification-delivery-stats b,.notification-delivery-card b{color:var(--navy)}.notification-delivery-stats small,.notification-delivery-card small{color:var(--muted);font-weight:800}.notification-delivery-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.notification-delivery-details[hidden],.notification-edit-modal[hidden]{display:none}.notification-edit-modal{position:fixed;inset:0;z-index:180;display:grid;place-items:center;padding:18px;background:#00000075;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.notification-edit-card{width:min(720px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:22px;border:1px solid color-mix(in srgb,var(--gold) 35%,var(--line));border-radius:24px;background:var(--surface);box-shadow:0 30px 90px #00000057}.checkbox-line{display:inline-flex;align-items:center;gap:8px;margin-top:10px;color:var(--muted);font-weight:900}.gallery-approval-panel{border-color:#b08d5747;background:radial-gradient(circle at 8% 0,rgba(176,141,87,.12),transparent 22rem),var(--surface)}.approval-album-grid{align-items:stretch}.approval-album-card{border-color:color-mix(in srgb,var(--warning) 28%,var(--line))}.approval-album-card .album-body{display:grid;gap:10px}.approval-album-card h3,.album-body h3,.album-body .meta{min-width:0;overflow-wrap:anywhere}.approval-album-card .album-body>.row-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:10px;width:100%}.approval-album-card .album-body>.row-actions>.btn{grid-column:1 / -1}.approval-album-card .album-body>.row-actions form .btn,.approval-album-card .album-body>.row-actions>.btn{width:100%}.approval-card-actions{display:grid!important;grid-template-columns:1fr;align-items:stretch;gap:10px}.approval-action-form{display:grid;min-width:0}.approval-wide-action{width:100%;justify-content:center}.gallery-hero-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));align-items:stretch;width:min(720px,100%)}.gallery-hero-actions>form,.gallery-hero-actions>.btn,.gallery-hero-actions>form>.btn{display:inline-flex;width:100%;min-width:0}.gallery-hero-actions .btn{justify-content:center;min-height:52px;white-space:normal}.gallery-page-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;width:100%;margin-top:18px}.album-mosque-badge{border-color:color-mix(in srgb,var(--gold) 42%,var(--line));color:color-mix(in srgb,var(--gold) 82%,var(--navy));background:color-mix(in srgb,var(--gold) 10%,var(--soft-bg))}.gallery-rejected-link{position:relative;min-height:48px;padding-inline:16px;box-shadow:0 16px 34px color-mix(in srgb,var(--danger) 18%,transparent)}.gallery-rejected-link b{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;color:var(--danger);background:#fff;font-size:.78rem;line-height:1}.gallery-rejected-title .gallery-page-actions{justify-content:space-between}.gallery-rejected-panel{border-color:color-mix(in srgb,var(--danger) 24%,var(--line));background:radial-gradient(circle at 92% 0,color-mix(in srgb,var(--danger) 10%,transparent),transparent 18rem),var(--surface)}.rejected-gallery-card{border-color:color-mix(in srgb,var(--danger) 28%,var(--line))}.rejected-gallery-card .album-body{display:grid;gap:10px}.rejected-media-cover video,.rejected-media-tile video{width:100%;height:100%;object-fit:cover}.album-pending-pill{position:absolute;inset-inline:12px auto;bottom:12px;z-index:2;padding:7px 10px;border-radius:999px;color:#fff;background:color-mix(in srgb,var(--warning) 86%,#1d3b2a);box-shadow:0 12px 28px #00000038;font-size:.8rem;font-weight:900}.media-approval-body{display:grid;gap:10px;padding:12px}.media-approval-body strong{color:var(--navy)}.media-approval-body small{color:var(--muted)}.auth-wrap{display:grid;place-items:center;min-height:calc(100vh - 150px)}.auth-card{width:min(460px,100%)}body.auth-screen{height:100vh;height:100dvh;overflow:hidden;overscroll-behavior:none}body.auth-screen .page-shell{height:100vh;height:100dvh;min-height:0;overflow:hidden}body.auth-screen main{display:flex;flex-direction:column;min-height:0;overflow:hidden}body.auth-screen .auth-wrap{flex:1;width:100%;min-height:0;padding-block:0;overflow:hidden}body.auth-screen .auth-card{max-height:100%}body.auth-screen .site-footer{display:none}.auth-field-error{display:grid;gap:2px;margin:0 0 2px;padding:8px 11px;border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);border-radius:12px;color:var(--danger);background:color-mix(in srgb,var(--danger) 11%,transparent);font-size:.82rem;font-weight:900;line-height:1.45}.qr-login-divider{display:flex;align-items:center;gap:12px;margin:20px 0 14px;color:var(--muted);font-weight:900}.qr-login-divider:before,.qr-login-divider:after{content:"";height:1px;flex:1;background:var(--line)}.qr-login-divider span{display:grid;place-items:center;width:42px;height:30px;border-radius:999px;color:var(--navy);background:var(--soft-bg)}.qr-login-open{width:100%;justify-content:center;gap:9px;border-color:color-mix(in srgb,var(--gold) 42%,var(--line));color:var(--navy);background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong) 84%,var(--gold)),var(--surface))}.qr-login-open svg,.qr-login-option svg,.qr-login-icon svg,.qr-login-close svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.qr-login-is-open{overflow:hidden}.qr-login-modal[hidden]{display:none!important}.qr-login-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px}.qr-login-backdrop{position:absolute;inset:0;border:0;background:#101e169e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.qr-login-box{--qr-modal-ink: #1b3226;--qr-modal-muted: #5b6962;--qr-modal-line: #d9dfd8;position:relative;z-index:1;width:min(520px,100%);max-height:min(760px,calc(100vh - 34px));overflow:auto;padding:20px;border:1px solid color-mix(in srgb,var(--gold) 38%,#d9dfd8);border-radius:22px;color:var(--qr-modal-ink);background:radial-gradient(circle at 12% 0,color-mix(in srgb,var(--gold) 20%,transparent),transparent 13rem),#fff;box-shadow:0 32px 90px #101e1657}.qr-login-close{position:absolute;inset-block-start:14px;inset-inline-start:14px;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--qr-modal-line);border-radius:12px;color:var(--qr-modal-ink);background:#f7f5ef;cursor:pointer}.qr-login-head{display:flex;align-items:center;gap:14px;padding-inline-start:48px}.qr-login-head h2{margin:4px 0 0;color:var(--qr-modal-ink)}.qr-login-icon{display:grid;place-items:center;width:58px;height:58px;flex:0 0 58px;border-radius:18px;color:#fff;background:linear-gradient(135deg,var(--navy),#2f6146);box-shadow:0 16px 36px #14261c33}.qr-login-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0 12px}.qr-login-option{display:grid;justify-items:center;gap:9px;min-height:108px;padding:16px 12px;border:1px solid var(--qr-modal-line);border-radius:16px;color:var(--qr-modal-ink);font-weight:900;background:#f7f5ef;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.qr-login-option:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--gold) 55%,var(--line));box-shadow:0 16px 34px #14261c1f}.qr-login-option svg{width:32px;height:32px;color:#2f6146}.qr-camera-stage{position:relative;overflow:hidden;min-height:270px;border:1px solid color-mix(in srgb,var(--gold) 40%,var(--line));border-radius:18px;background:#07100b}.qr-camera-stage video{display:block;width:100%;min-height:270px;object-fit:cover}.qr-scan-line{position:absolute;inset-inline:12%;top:50%;height:2px;border-radius:999px;background:linear-gradient(90deg,transparent,#b08d57,transparent);box-shadow:0 0 20px #b08d57bf;animation:qr-scan-line 1.8s ease-in-out infinite}.qr-login-status{min-height:24px;margin:10px 0 0;color:var(--qr-modal-muted);font-weight:800;text-align:center}.qr-login-status.is-error{color:var(--danger)}@keyframes qr-scan-line{0%,to{transform:translateY(-95px);opacity:.55}50%{transform:translateY(95px);opacity:1}}@media(max-width:720px){body.auth-screen .dashboard-nav{display:none}body.auth-screen .auth-card{padding:17px;border-radius:19px}body.auth-screen .auth-card h1{margin-block:0 12px;font-size:1.65rem;line-height:1.25}body.auth-screen .auth-card .eyebrow{margin-bottom:4px}body.auth-screen .auth-card .form-grid{gap:10px}body.auth-screen .qr-login-divider{margin:13px 0 10px}.qr-login-box{padding:16px;border-radius:22px}.qr-login-head{align-items:flex-start;padding-inline-start:42px}.qr-login-options{grid-template-columns:1fr}.qr-login-option{min-height:82px;grid-template-columns:42px minmax(0,1fr);align-items:center;justify-items:start;text-align:start}.qr-camera-stage,.qr-camera-stage video{min-height:240px}}.drop-zone{display:grid;place-items:center;gap:16px;min-height:170px;padding:22px;border:2px dashed rgba(143,179,156,.34);border-radius:22px;background:var(--soft-bg);text-align:center;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.drop-zone.has-preview{min-height:224px;align-content:center;border-color:color-mix(in srgb,var(--cyan) 55%,var(--line));background:radial-gradient(circle at 12% 8%,color-mix(in srgb,var(--cyan-2) 20%,transparent),transparent 15rem),var(--soft-bg)}.drop-zone.is-dragging{border-color:var(--cyan);background:#b08d572e;transform:translateY(-1px)}.drop-zone input{display:none}.drop-zone>span{display:grid;gap:6px}.drop-zone-previews{display:flex;align-items:stretch;gap:12px;width:100%;max-width:100%;padding:4px 4px 12px;overflow-x:auto;overflow-y:visible;overscroll-behavior-inline:contain;scrollbar-color:color-mix(in srgb,var(--cyan) 72%,var(--brand)) color-mix(in srgb,var(--surface) 78%,transparent);scrollbar-width:thin}.drop-zone-previews::-webkit-scrollbar{height:8px}.drop-zone-previews::-webkit-scrollbar-track{border-radius:999px;background:color-mix(in srgb,var(--surface) 76%,transparent)}.drop-zone-previews::-webkit-scrollbar-thumb{border-radius:999px;background:linear-gradient(90deg,var(--brand),var(--cyan))}.drop-zone-previews[hidden]{display:none}.drop-zone-preview{position:relative;display:grid;grid-template-rows:84px auto auto;gap:6px;flex:0 0 104px;width:104px;min-width:104px;padding:8px;border:1px solid color-mix(in srgb,var(--cyan) 26%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--surface) 82%,transparent);box-shadow:0 14px 34px #0000001f;animation:uploadPreviewIn .34s cubic-bezier(.2,.9,.2,1.1) both;animation-delay:calc(var(--preview-index, 0) * 40ms)}.drop-zone-preview img,.drop-zone-video-thumb,.drop-zone-file-thumb{display:grid;place-items:center;width:100%;height:84px;border-radius:12px;object-fit:cover;overflow:hidden;background:var(--brand-gradient)}.drop-zone-remove{position:absolute;inset-block-start:3px;inset-inline-start:3px;z-index:2;display:grid;place-items:center;width:24px;height:24px;padding:0;border:1px solid color-mix(in srgb,var(--surface) 72%,transparent);border-radius:999px;color:#fff;background:color-mix(in srgb,var(--danger) 88%,#0e1a13);box-shadow:0 8px 18px #0000003d;font-size:1rem;font-weight:900;line-height:1;cursor:pointer;transform:translateY(-2px) scale(.92);opacity:.92;transition:transform .16s ease,opacity .16s ease,box-shadow .16s ease}.drop-zone-remove:hover,.drop-zone-remove:focus-visible{opacity:1;transform:translateY(-3px) scale(1);box-shadow:0 12px 24px #0000004d}.drop-zone-video-thumb,.drop-zone-file-thumb{color:var(--on-brand);background-size:cover;background-position:center}.drop-zone-video-thumb svg,.drop-zone-file-thumb svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 8px 18px rgba(0,0,0,.28))}.drop-zone-preview b,.drop-zone-preview small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drop-zone-preview b{color:var(--navy);font-size:.82rem}.drop-zone-preview small{color:var(--muted);font-size:.74rem;font-weight:800}@keyframes uploadPreviewIn{0%{opacity:0;transform:translateY(14px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.upload-progress{position:relative;overflow:hidden;display:grid;gap:11px;width:100%;margin-top:10px;padding:13px;border:1px solid color-mix(in srgb,var(--cyan) 30%,var(--line));border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--cyan-2) 16%,transparent),transparent 58%),color-mix(in srgb,var(--surface) 88%,transparent);box-shadow:0 18px 42px #1d3b2a1a,inset 0 1px #ffffff61;--upload-progress: 0%}.upload-progress-head,.upload-progress-stats{align-items:center;gap:10px}.upload-progress-head{display:grid;grid-template-columns:minmax(0,1fr) auto}.upload-progress-head strong{min-width:0;overflow:hidden;color:var(--navy);font-size:.92rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.upload-progress-head b{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:32px;padding:5px 10px;border-radius:999px;color:#fff;font-size:.92rem;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;background:var(--brand-gradient);box-shadow:0 10px 24px #1d3b2a29}.upload-progress-track{position:relative;overflow:hidden;width:100%;height:13px;border-radius:999px;background:color-mix(in srgb,var(--line) 72%,transparent);box-shadow:inset 0 2px 8px #0000001f}.upload-progress-bar,.upload-progress>span{position:absolute;inset-block:0;inset-inline-start:0;width:var(--upload-progress);min-width:0;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--cyan),var(--cyan-2));box-shadow:0 0 22px color-mix(in srgb,var(--cyan) 42%,transparent);transition:width .18s ease}.upload-progress-bar:after,.upload-progress>span:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);transform:translate(-100%);animation:uploadProgressSheen 1.6s ease-in-out infinite}.upload-progress-stats{display:grid;grid-template-columns:1fr;color:var(--muted);font-size:.82rem;font-weight:900;font-variant-numeric:tabular-nums}.upload-progress-stats span{display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:28px;padding:4px 9px;border-radius:999px;direction:ltr;unicode-bidi:isolate;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;background:color-mix(in srgb,var(--soft-bg) 82%,transparent)}@media(min-width:640px){.upload-progress-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.upload-progress.is-complete{border-color:color-mix(in srgb,var(--success) 34%,var(--line))}.upload-progress.has-error{border-color:color-mix(in srgb,var(--danger) 45%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--danger) 10%,transparent),transparent 58%),color-mix(in srgb,var(--surface) 88%,transparent)}.upload-progress.has-error .upload-progress-head strong{color:var(--danger)}.upload-progress[hidden]{display:none}@keyframes uploadProgressSheen{0%{transform:translate(-100%)}to{transform:translate(100%)}}.attendance-options{direction:rtl;display:grid;grid-template-columns:repeat(5,minmax(88px,1fr));gap:8px}.attendance-options label{display:inline-flex;align-items:center;justify-content:space-between;flex-direction:row-reverse;gap:6px;min-width:0;padding:8px 10px;border-radius:999px;background:var(--soft-bg);overflow-wrap:normal;white-space:nowrap}.attendance-options input{width:auto;flex:0 0 auto;margin:0}.attendance-save-actions{margin-top:16px}.student-ledger-wrap{overflow-x:visible}.table-student-points th,.table-student-points td,.table-student-donations th,.table-student-donations td{padding:9px 12px}.table-student-points .badge{min-height:24px;padding:3px 9px}.series-list{display:grid;gap:10px;margin-top:18px}.series-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:16px;background:var(--card-bg)}.checkbox-field{display:inline-flex;grid-template-columns:none;align-items:center;justify-content:flex-start;flex-direction:row;gap:8px}.checkbox-field input{width:auto}.profile-id{display:flex;align-items:center;gap:16px}.profile-personal-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px;align-items:stretch}.profile-self-card,.account-command-card,.account-studio,.account-card{position:relative;overflow:hidden}.profile-card-head,.account-card-top,.account-directory-head,.permission-board-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.profile-card-head{margin-bottom:18px}.profile-id small,.account-card small{display:block;color:var(--muted);font-weight:800}.profile-id strong{display:block;color:var(--navy);font-size:1.08rem}.account-command-card{display:grid;align-content:center;gap:14px;min-height:100%;color:var(--ink);border-color:#14261c29;background:linear-gradient(145deg,#fffdf7fa,#f9e8cbf5 58%,#b08d57cc);box-shadow:0 24px 70px #14261c24}.account-command-card .eyebrow{width:fit-content;color:var(--navy);background:#14261c14}.account-command-card h2,.account-command-card p{margin:0}.account-command-card h2{color:#14261c}.account-command-card p{color:#4e5e55;line-height:1.9}.account-command-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}.account-command-metrics span{display:grid;gap:4px;min-height:74px;padding:12px;border-radius:16px;color:#4e5e55;border:1px solid rgba(20,38,28,.1);background:#ffffff94}.account-command-metrics b{color:var(--navy);font-size:1.45rem}html[data-theme=dark] .account-command-card{color:#f7f5ee;border-color:#b08d5729;background:linear-gradient(145deg,#040906fa,#102218e6 58%,#7a6238c7);box-shadow:0 24px 78px #00000094}html[data-theme=dark] .account-command-card .eyebrow{color:#f7f5ee;background:#ffffff1f}html[data-theme=dark] .account-command-card h2{color:#f7f5ee}html[data-theme=dark] .account-command-card p{color:#f7f5eebd}html[data-theme=dark] .account-command-metrics span{color:#f7f5eec7;border-color:#ffffff14;background:#ffffff1a}html[data-theme=dark] .account-command-metrics b{color:#f7f5ee}.account-studio>form{display:grid;gap:18px}.account-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.account-type-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;min-height:112px;padding:16px;border:1px solid var(--line);border-radius:20px;color:var(--ink);background:var(--card-bg);cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.account-type-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--cyan) 46%,var(--line))}.account-type-card:has(input:checked){color:#f7f5ee;border-color:transparent;background:var(--primary-gradient);box-shadow:0 18px 44px #1d3b2a3d}.account-type-card input{position:absolute;opacity:0;pointer-events:none}.account-type-card b,.account-type-card small{display:block}.account-type-card small{margin-top:4px;color:var(--muted);line-height:1.55}.account-type-card:has(input:checked) small{color:#f7f5eec2}.account-type-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;color:var(--blue);background:var(--soft-bg)}.account-type-card:has(input:checked) .account-type-icon{color:#1d3b2a;background:#f7f5eedb}.account-type-icon svg,.account-card svg,.about-hero-actions svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.account-editor-grid{display:grid;grid-template-columns:minmax(300px,.62fr) minmax(0,1fr);gap:16px;align-items:start}.account-main-fields,.permission-board,.account-card,.account-empty-card{border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--card-bg) 90%,var(--soft-bg))}.account-main-fields,.permission-board,.account-card{padding:16px}.account-auto-note{display:grid;gap:4px;margin-top:14px;padding:14px;border-radius:16px;color:var(--navy);background:var(--soft-bg)}.account-auto-note span{color:var(--muted);line-height:1.7}.teacher-only-field.is-hidden,[data-teacher-halaqa-field][hidden],[data-teacher-auto-note][hidden]{display:none!important}.permission-board-head{margin-bottom:14px}.permission-board-head h3,.permission-board-head p,.account-directory-head h3{margin:0}.permission-board-head p{color:var(--muted);line-height:1.7}.permission-table{display:grid;border:1px solid var(--line);border-radius:18px;overflow:hidden}.permission-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.34fr);gap:12px;align-items:center;padding:13px;background:var(--table-bg)}.permission-row[hidden]{display:none!important}.permission-row+.permission-row{border-top:1px solid var(--line)}.permission-row strong,.visitor-permission-card strong{display:block;color:var(--navy)}.permission-row small{display:block;margin-top:3px;color:var(--muted);line-height:1.55}.visitor-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.visitor-permission-card{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--table-bg)}.segmented-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:5px;border-radius:14px;background:var(--soft-bg)}.segmented-choice label{position:relative;display:grid;place-items:center;min-height:38px;border-radius:11px;cursor:pointer;color:var(--muted);font-size:.9rem;text-align:center}.segmented-choice input{position:absolute;opacity:0;pointer-events:none}.segmented-choice label:has(input:checked){color:var(--on-primary);background:var(--primary-gradient)}.accounts-directory{display:grid;gap:18px}.account-directory-group{display:grid;gap:12px}.account-directory-head{padding-inline:4px}.account-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.account-card{display:grid;gap:14px;box-shadow:var(--shadow)}.account-card .account-card-top,.account-card .profile-id{width:100%;min-width:0}.account-card .profile-id>.avatar-lg{flex:0 0 auto}.account-card:after{content:"";position:absolute;inset:auto -34px -40px auto;width:120px;aspect-ratio:1;border-radius:999px;background:#8fb39c1f;pointer-events:none}.account-card>*{position:relative;z-index:1}.credential-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.credential-grid span{display:grid;gap:4px;min-width:0;padding:10px;border-radius:14px;background:var(--soft-bg)}.credential-grid b{min-width:0;color:var(--navy);overflow-wrap:anywhere}.account-permission-chips{display:flex;flex-wrap:wrap;gap:6px}.account-permission-chips span{display:inline-flex;min-height:28px;align-items:center;padding:5px 9px;border-radius:999px;color:var(--blue);font-size:.86rem;font-weight:900;background:color-mix(in srgb,var(--cyan) 13%,transparent)}.account-card .row-actions{justify-content:space-between;align-items:center}.account-empty-card{display:grid;place-items:center;min-height:180px;color:var(--muted);font-weight:900;box-shadow:none}.media-actions{position:absolute;inset-inline:10px;bottom:10px;z-index:2;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px;border-radius:14px;background:color-mix(in srgb,var(--surface) 84%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.media-slider-toggle-form{display:inline-flex;align-items:center;gap:5px;min-width:0;margin-inline-start:auto}.compact-toggle-media{gap:5px;color:var(--navy);font-size:.68rem}.compact-toggle-media .compact-toggle-control{width:28px;height:16px}.compact-toggle-media .compact-toggle-control:after{width:10px;height:10px}.compact-toggle-media .compact-toggle-input:checked+.compact-toggle-control:after{transform:translate(-14px)}.compact-toggle-label{min-width:0}.media-slider-toggle-form.is-saving{opacity:.68}.media-slider-toggle-status{color:var(--success);font-size:.62rem;font-weight:900;white-space:nowrap}.media-slider-toggle-form.has-error .media-slider-toggle-status{color:var(--danger)}.restore-media-form{flex:1 1 100%;width:100%}.restore-media-button{width:100%;justify-content:center;min-height:42px}.media-lightbox[hidden],.lesson-modal[hidden]{display:none}.media-lightbox,.lesson-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:28px;background:#040e09db;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.media-lightbox{grid-template-rows:minmax(0,1fr) auto;align-items:center;gap:18px}.lesson-modal-card{position:relative;width:min(760px,calc(100vw - 38px));max-height:min(78vh,680px);overflow:auto;padding:28px;color:var(--ink);background:var(--surface);border:1px solid var(--surface-border);border-radius:24px;box-shadow:0 28px 90px #00000057}.lesson-modal-card .lesson-meta-row{padding-inline-end:96px;margin-bottom:18px}.lesson-modal-card h2{margin:0 0 14px;color:var(--navy)}.lesson-modal-card p{margin:0;color:var(--ink);line-height:2;white-space:pre-line}.lesson-modal-close{color:var(--navy);background:var(--soft-bg)}body.lightbox-open{overflow:hidden}.lightbox-stage{display:grid;place-items:center;width:min(1040px,calc(100vw - 110px));height:min(76vh,720px);min-height:220px;margin:auto}.lightbox-stage img,.lightbox-stage video,.lightbox-stage iframe{max-width:100%;max-height:100%;border:0;border-radius:22px;background:#000;box-shadow:0 28px 90px #00000061}.lightbox-stage img{width:auto;height:auto;object-fit:contain}.lightbox-stage video{width:min(100%,980px)}.lightbox-stage iframe{width:min(100%,980px);height:min(100%,552px)}.lightbox-thumbs{display:flex;align-items:center;justify-content:center;gap:8px;width:min(720px,calc(100vw - 42px));max-width:100%;padding:8px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:#030a07b8;box-shadow:0 18px 50px #00000047}.lightbox-thumbs[hidden]{display:none}.lightbox-thumb{position:relative;display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;padding:0;overflow:hidden;border:2px solid transparent;border-radius:14px;cursor:pointer;color:#fff;background:#ffffff1f;opacity:.74;transition:border-color .18s ease,opacity .18s ease,transform .18s ease}.lightbox-thumb img,.lightbox-thumb video{width:100%;height:100%;object-fit:cover}.lightbox-thumb span{display:grid;place-items:center;width:100%;height:100%;font-size:1.15rem;font-weight:900;background:var(--placeholder-gradient)}.lightbox-thumb.is-active{border-color:var(--cyan);opacity:1;transform:translateY(-2px)}.lightbox-close,.lightbox-arrow{position:absolute;border:0;cursor:pointer;color:#fff;background:#ffffff24;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lightbox-close{top:20px;inset-inline-end:20px;min-height:42px;padding:9px 16px;border-radius:999px;font-weight:900}.lightbox-arrow{top:50%;display:grid;place-items:center;width:54px;height:54px;border-radius:999px;font-size:2.4rem;line-height:1;transform:translateY(-50%)}.lightbox-next{inset-inline-end:20px}.lightbox-prev{inset-inline-start:20px}.lesson-modal-card .lesson-modal-close{color:var(--navy);background:var(--soft-bg)}.pager{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:18px}.pager-pages{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap}.pager-link{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;padding:8px 12px;border-radius:999px;border:0;color:var(--navy);font:inherit;font-weight:900;cursor:pointer;background:var(--soft-bg)}.pager-link.is-active{color:var(--on-primary);background:var(--primary-gradient);box-shadow:0 12px 26px #1d3b2a38}.pager-link.is-disabled{color:var(--muted);opacity:.52;cursor:default}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:48px 0 0;padding:22px;color:#f7f5ee;background:var(--footer-gradient);border-radius:22px 22px 0 0}.site-footer span{color:#ecf4eed1}.site-footer-identity{display:inline-flex;align-items:center;gap:11px}.site-footer-separator{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px color-mix(in srgb,var(--gold) 16%,transparent)}.site-footer-download-link{color:#f7f5eee0;font-weight:800;text-decoration:none;transition:color .18s ease,transform .18s ease}.site-footer-download-link:hover{color:#fff;transform:translateY(-1px)}.brand-mark{background:var(--logo-tile-bg);box-shadow:0 0 0 6px color-mix(in srgb,var(--brand) 14%,transparent),0 16px 32px color-mix(in srgb,var(--navy) 22%,transparent)}.dashboard-nav{border:1px solid var(--dashboard-nav-border);background:linear-gradient(135deg,var(--dashboard-nav-start),var(--dashboard-nav-end))}.dashboard-nav a.is-active,.dashboard-nav a:hover{background:var(--dashboard-nav-active)}html[data-theme=dark] .account-command-card{color:var(--ink);border-color:color-mix(in srgb,var(--gold) 20%,var(--line));background:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 92%,#000),color-mix(in srgb,var(--brand) 16%,var(--surface)) 58%,color-mix(in srgb,var(--gold) 18%,var(--surface-strong)));box-shadow:var(--shadow)}html[data-theme=dark] .account-command-card .eyebrow,html[data-theme=dark] .account-command-card h2,html[data-theme=dark] .account-command-metrics b{color:var(--ink)}html[data-theme=dark] .account-command-card p,html[data-theme=dark] .account-command-metrics span{color:var(--muted)}html[data-theme=dark] .account-command-metrics span{border-color:var(--line);background:var(--soft-bg)}@media(max-width:900px){.notification-composer,.audience-grid{grid-template-columns:1fr}.notification-history-card,.notification-inbox-card,.notification-live-card{grid-template-columns:44px minmax(0,1fr)}.notification-card-actions{grid-column:1 / -1;justify-content:flex-start}.notification-schedule-grid{grid-template-columns:1fr 1fr}.notification-delivery-stats,.notification-delivery-details{grid-template-columns:1fr}.push-permission-prompt{inset-inline:16px;inset-block-end:82px;grid-template-columns:1fr}.push-permission-prompt.is-modal{inset:50% auto auto 50%;transform:translate(-50%,calc(-50% + 18px)) scale(.98)}.push-permission-prompt.is-modal.is-visible{transform:translate(-50%,-50%) scale(1)}.notification-popover{position:fixed;inset-inline:16px;inset-block:84px auto;width:auto}.site-header,.hero,.section-head{display:block}.main-nav,.header-actions{flex-wrap:wrap;justify-content:flex-start;margin-top:12px}.hero{min-height:auto}.hero-visual{min-height:360px}.grid-2,.grid-3,.grid-4,.rank-metrics-grid,.form-grid,.about-hero,.about-story,.about-feature-band,.profile-personal-grid,.account-editor-grid,.account-card-grid{grid-template-columns:1fr}.about-visual{min-height:420px}.account-type-grid,.about-stat-strip{grid-template-columns:1fr}.visitor-permission-grid,.credential-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:721px)and (max-width:1040px){.page-shell{width:min(100% - 36px,1180px);padding-top:154px}.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand actions" "nav nav";align-items:center;row-gap:10px;width:min(1180px,calc(100% - 36px));padding:10px 12px 12px}.site-header>.brand{grid-area:brand;min-width:0}.site-header>.brand>span:not(.brand-mark){min-width:0}.site-header>.brand strong,.site-header>.brand small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-nav{grid-area:nav;justify-content:center;flex-wrap:wrap;gap:6px;width:100%;margin-top:0}.main-nav a{padding:8px 10px;font-size:.94rem}.header-actions{grid-area:actions;justify-content:flex-end;flex-wrap:nowrap;gap:7px;min-width:0;margin-top:0}.header-actions .theme-toggle,.header-actions .logout-button{min-height:38px;padding:8px 10px}.header-actions .user-chip{max-width:176px;min-width:0}.header-actions .user-chip>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-actions .logout-label{display:none}}@media(max-width:560px){.page-shell{width:min(100% - 30px,1180px)}.hero h1,.page-title h1{font-size:1.9rem}.attendance-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.attendance-options label{padding-inline:8px}}@media(max-width:720px){.hero-kicker{min-height:25px;margin-bottom:-10px;padding:4px 9px;font-size:.74rem}.hero h1.hero-identity-title{margin-block:0 -8px;font-size:clamp(1.72rem,7.2vw,2.15rem);line-height:1.14}.hero-copy>p{margin-block:0}.admin-profile-page{display:flex;flex-direction:column}.admin-profile-page .profile-personal-grid{display:contents}.admin-profile-page .profile-self-card{order:99;margin-top:18px}.profile-self-card .profile-card-head{width:100%;align-items:center;flex-direction:row}.page-shell{width:min(100% - 32px,1180px);padding-top:calc(82px + env(safe-area-inset-top));padding-bottom:calc(84px + env(safe-area-inset-bottom))}main>.section:last-of-type{margin-bottom:22px}.hero{display:flex;flex-direction:column;gap:14px;padding-top:8px;padding-bottom:8px}.hero-copy{padding:0;display:contents}.hero-copy>.hero-feature-grid{order:4;margin-top:0}.hero p,.page-title p{font-size:1rem}.hero-feature-grid{grid-template-columns:1fr;gap:9px;margin-top:18px}.hero-feature-card{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:12px;padding:12px}.hero-feature-card small{grid-column:2}.about-hero{min-height:auto;padding-top:8px}.about-hero-copy h1{font-size:2.45rem}.about-hero-actions{display:grid;grid-template-columns:1fr}.about-visual{min-height:360px;border-radius:24px}.about-visual-card{width:calc(100% - 34px);padding:13px}.about-visual-card-main{inset:16px 16px auto auto}.about-visual-card-side{inset:auto auto 16px 16px}.about-stat-card,.about-feature-band article,.about-story-grid article{border-radius:18px}.about-story-grid article{grid-template-columns:1fr}.about-story-grid article span{grid-row:auto;width:46px;height:46px}.account-command-metrics,.visitor-permission-grid,.credential-grid{grid-template-columns:1fr}.account-type-card{min-height:96px}.permission-row{grid-template-columns:1fr;gap:10px;padding:14px;border-radius:0}.permission-row select{min-height:44px}.permission-board-head,.profile-card-head,.account-card-top,.account-directory-head{align-items:flex-start;flex-direction:column}.account-card .row-actions{align-items:stretch}.mobile-hero-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mobile-hero-links a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 10px;border-radius:14px;color:var(--navy);font-weight:900;background:var(--surface);border:1px solid var(--surface-border);box-shadow:0 10px 24px #1d3b2a14}.mobile-hero-links svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.hero-visual{display:grid;gap:10px;min-height:0;overflow:visible;border-radius:0;background:transparent;box-shadow:none}.hero-slider-frame{position:relative;inset:auto;aspect-ratio:16 / 9;min-height:0;border-radius:22px;background:var(--hero-gradient);box-shadow:0 22px 48px #1d3b2a2e}.hero-glass{position:static;inset:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.hero-stat{color:var(--ink);background:var(--surface);border-color:var(--surface-border);box-shadow:0 10px 24px #1d3b2a14}.hero-stat strong{color:var(--navy)}.quran-exam-studio{order:1}.quran-exam-archive{order:2}.quran-exam-overview{order:3}.quran-exam-type-grid{grid-template-columns:1fr;gap:10px}.quran-exam-type-option{min-height:68px;padding:12px 14px}.quran-exam-type-copy{min-width:0}.quran-exam-type-copy strong{line-height:1.35;white-space:normal}.quran-exam-type-copy small{white-space:nowrap}.weekly-stars{grid-template-columns:1fr;direction:rtl;gap:16px}.star-rank-1,.star-rank-2,.star-rank-3{grid-column:auto;transform:none}.star-rank-1{order:1}.star-rank-2{order:2}.star-rank-3{order:3}.star-card{width:100%;padding:18px;border-radius:22px}.rank-badge{margin-bottom:12px;padding:7px 12px;font-size:.92rem}.star-avatar,.star-rank-1 .star-avatar,.star-rank-3 .star-avatar{width:136px;height:136px;margin-bottom:12px;border-radius:32px}.star-card h3{font-size:1.15rem}.star-card .meta{font-size:.92rem}.latest-lessons-grid{grid-template-columns:1fr}.home-lessons-section{margin-top:26px}.section{margin:58px 0}.home-section-title{padding-inline:0}.home-section-title--with-action .btn{position:static;transform:none}.lesson-modal-card{width:calc(100vw - 32px);max-height:calc(100dvh - 132px);padding:22px;margin:auto}.lesson-modal-card .lesson-meta-row{padding-inline-end:0;padding-top:46px}.table-wrap{overflow-x:visible;border:0;border-radius:0}table.responsive-table{display:block;min-width:0;background:transparent}table.responsive-table thead{display:none}table.responsive-table tbody,table.responsive-table tr{display:block;width:100%}table.responsive-table tr{margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--card-bg);box-shadow:0 12px 32px #1d3b2a14}table.responsive-table td{display:grid;grid-template-columns:minmax(108px,.86fr) minmax(0,1.14fr);align-items:center;column-gap:12px;min-width:0;padding:9px 0;border-bottom:1px solid var(--line);text-align:start;overflow-wrap:anywhere}table.responsive-table td>*{min-width:0;max-width:100%;justify-self:start}table.responsive-table td>:where(.row-actions,form,.btn,button){justify-self:stretch}.table-attendance-form td:nth-child(2){grid-template-columns:1fr;row-gap:10px}.table-attendance-form td:nth-child(2)>.attendance-options{width:100%;justify-self:stretch}.table-attendance-form .attendance-options{grid-template-columns:repeat(2,minmax(104px,1fr))}.table-attendance-form .attendance-options label{justify-content:center;min-height:46px;padding-inline:9px}table.responsive-table td:last-child{border-bottom:0}.quran-juz-card>summary{grid-template-columns:38px minmax(0,1fr)}.quran-juz-count,.quran-juz-percent{justify-self:start}.quran-juz-bar{grid-column:1 / -1}table.responsive-table td:before{display:block;margin:0;color:var(--navy);font-weight:900;line-height:1.45;text-align:start}.table-transactions td:nth-child(1):before{content:"\627\644\646\648\639"}.table-transactions td:nth-child(2):before{content:"\627\644\645\628\644\63a"}.table-transactions td:nth-child(3):before{content:"\627\644\645\635\62f\631/\627\644\633\628\628"}.table-transactions td:nth-child(4):before{content:"\627\644\645\634\631\641"}.table-transactions td:nth-child(5):before{content:"\627\644\62a\627\631\64a\62e"}.table-transactions td:nth-child(6):before{content:"\625\62c\631\627\621\627\62a"}.table-points td:nth-child(1):before{content:"\627\644\637\627\644\628"}.table-points td:nth-child(2):before{content:"\627\644\642\64a\645\629"}.table-points td:nth-child(3):before{content:"\627\644\645\634\631\641"}.table-points td:nth-child(4):before{content:"\627\644\62a\627\631\64a\62e"}.table-points td:nth-child(5):before{content:"\625\62c\631\627\621\627\62a"}.table-points-standings td:nth-child(1):before{content:"\627\644\637\627\644\628"}.table-points-standings td:nth-child(2):before{content:"\627\644\646\642\627\637  \627\644\643\644\64a\629"}.table-points-standings td:nth-child(3):before{content:"\646\642\627\637  \627\644\62f\648\631\629"}.table-lessons td:nth-child(1):before{content:"\627\644\639\646\648\627\646"}.table-lessons td:nth-child(2):before{content:"\627\644\633\644\633\644\629"}.table-lessons td:nth-child(3):before{content:"\627\644\62a\627\631\64a\62e"}.table-lessons td:nth-child(4):before{content:"\625\62c\631\627\621\627\62a"}.table-quran-juz-details td:nth-child(1):before{content:"\631\642\645  \627\644\635\641\62d\627\62a"}.table-quran-juz-details td:nth-child(2):before{content:"\62a\627\631\64a\62e  \627\644\62a\633\645\64a\639"}.table-quran-juz-details td:nth-child(3):before{content:"\646\642\627\637  \627\644\62a\633\645\64a\639"}.table-quran-juz-details.has-actions td:nth-child(4):before{content:"\625\62c\631\627\621\627\62a"}.table-quran-exams td:nth-child(1):before{content:"\627\644\637\627\644\628"}.table-quran-exams td:nth-child(2):before{content:"\646\648\639  \627\644\633\628\631"}.table-quran-exams td:nth-child(3):before{content:"\627\644\62c\632\621"}.table-quran-exams td:nth-child(4):before{content:"\627\644\631\628\639"}.table-quran-exams td:nth-child(5):before{content:"\627\644\639\644\627\645\629"}.table-quran-exams td:nth-child(6):before{content:"\627\644\62a\627\631\64a\62e"}.table-quran-exams td:nth-child(7):before{content:"\627\644\646\642\627\637"}.table-quran-exams td:nth-child(8):before{content:"\627\644\645\634\631\641"}.table-quran-exams td:nth-child(9):before{content:"\625\62c\631\627\621\627\62a"}.table-student-exams td:nth-child(1):before{content:"\646\648\639  \627\644\633\628\631"}.table-student-exams td:nth-child(2):before{content:"\627\644\62c\632\621"}.table-student-exams td:nth-child(3):before{content:"\627\644\631\628\639"}.table-student-exams td:nth-child(4):before{content:"\627\644\639\644\627\645\629"}.table-student-exams td:nth-child(5):before{content:"\627\644\62a\627\631\64a\62e"}.table-student-exams td:nth-child(6):before{content:"\627\644\646\642\627\637"}.table-student-exams td:nth-child(7):before{content:"\627\644\645\634\631\641"}.table-attendance-form td:nth-child(1):before{content:"\627\644\637\627\644\628"}.table-attendance-form td:nth-child(2):before{content:"\627\644\62d\627\644\629"}.table-attendance-archive td:nth-child(1):before{content:"\627\644\62a\627\631\64a\62e"}.table-attendance-archive td:nth-child(2):before{content:"\627\644\62d\636\648\631"}.table-attendance-archive td:nth-child(3):before{content:"\627\644\62a\623\62e\631"}.table-attendance-archive td:nth-child(4):before{content:"\627\644\63a\64a\627\628"}.table-attendance-archive td:nth-child(5):before{content:"\62a\639\62f\64a\644"}.table-attendance-archive td:nth-child(6):before{content:"\62d\630\641"}.table-students-summary td:nth-child(1):before{content:""}.table-students-summary td:nth-child(2):before{content:"\627\644\62d\641\638"}.table-students-summary td:nth-child(3):before{content:"\627\644\62f\648\627\645"}.table-students-summary td:nth-child(4):before{content:"\627\644\62d\636\648\631"}.table-students-summary td:nth-child(5):before{content:"\627\644\62a\623\62e\631"}.table-students-summary td:nth-child(6):before{content:"\627\644\63a\64a\627\628"}.table-students-summary td:nth-child(7):before{content:"\627\644\62a\628\631\639"}.table-students-summary td:nth-child(8):before{content:"\627\644\646\642\627\637  \627\644\643\644\64a\629"}.table-students-summary td:nth-child(9):before{content:"\646\642\627\637  \627\644\62f\648\631\629"}.table-students-summary td:nth-child(10):before{content:"\62a\641\627\635\64a\644"}.table-students-summary td:first-child{grid-template-columns:1fr;padding-top:4px;padding-bottom:12px}.table-students-summary td:first-child:before{display:none}.table-students-summary .student-table-person{justify-content:center;justify-self:center;text-align:center}.table-student-points td:nth-child(1):before{content:"\627\644\62a\627\631\64a\62e"}.table-student-points td:nth-child(2):before{content:"\627\644\642\64a\645\629"}.table-student-donations td:nth-child(1):before{content:"\627\644\62a\627\631\64a\62e"}.table-student-donations td:nth-child(2):before{content:"\627\644\645\628\644\63a"}.table-auth-logs td:nth-child(1):before{content:"\627\644\62d\627\644\629"}.table-auth-logs td:nth-child(2):before{content:"\627\644\62d\633\627\628"}.table-auth-logs td:nth-child(3):before{content:"\627\644\62c\647\627\632  \648\627\644\646\638\627\645"}.table-auth-logs td:nth-child(4):before{content:"\627\644\645\62a\635\641\62d"}.table-auth-logs td:nth-child(5):before{content:"IP"}.table-auth-logs td:nth-child(6):before{content:"\627\644\62a\627\631\64a\62e  \648\627\644\648\642\62a"}.table-activity-logs td:nth-child(1):before{content:"\62a\631\627\62c\639"}.table-activity-logs td:nth-child(2):before{content:"\627\644\646\648\639"}.table-activity-logs td:nth-child(3):before{content:"\627\644\639\645\644\64a\629"}.table-activity-logs td:nth-child(4):before{content:"\627\644\648\635\641"}.table-activity-logs td:nth-child(5):before{content:"\627\644\645\646\641\630"}.table-activity-logs td:nth-child(6):before{content:"IP"}.table-activity-logs td:nth-child(7):before{content:"\627\644\62a\627\631\64a\62e  \648\627\644\648\642\62a"}.row-actions{align-items:stretch;flex-direction:column;justify-self:stretch;min-width:0}.row-actions .btn,.row-actions form,.row-actions button{width:100%;white-space:normal}.row-actions .action-icon,.row-actions button.action-icon,.course-archive-actions .action-icon,.course-archive-actions button.action-icon,table.responsive-table td>.action-icon,table.responsive-table td>form>.action-icon{width:36px;height:36px;justify-self:start;white-space:normal}.row-actions form:has(.action-icon),.course-archive-actions form:has(.action-icon){width:auto}.title-with-filter,.lesson-series-filter{align-items:stretch;width:100%}.lesson-series-filter,.series-row{display:grid;grid-template-columns:1fr}.student-search-filter,.course-summary-filter{grid-template-columns:1fr}.student-search-filter input,.course-summary-filter input{min-width:0;width:100%}.lesson-series-filter{gap:9px;justify-items:stretch}.lesson-series-filter .filter-control,.lesson-series-filter .filter-control.is-search,.lesson-series-filter .filter-control.is-sort,.lesson-series-filter .filter-control.is-compact,.lesson-series-filter .filter-control.is-button{display:grid;grid-template-columns:1fr;width:100%;min-width:0;flex-basis:auto}.lesson-series-filter .filter-inline-group{grid-template-columns:1fr}.lesson-series-filter label{justify-self:start;margin-inline-start:4px}.lesson-series-filter select,.course-scope-filter select,.series-row .btn{width:100%}.site-footer{display:none}.upload-mode-tabs{display:grid;width:100%}.logs-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.logs-filter{width:100%;align-items:stretch;flex-direction:column}.logs-filter label{align-self:flex-start;margin-inline-start:4px}.media-lightbox{grid-template-rows:minmax(0,1fr) auto;align-items:center;justify-items:center;gap:12px;padding:64px 12px calc(14px + env(safe-area-inset-bottom))}.lesson-modal{align-items:center;justify-items:center;padding:74px 14px calc(92px + env(safe-area-inset-bottom))}.lightbox-stage{width:calc(100vw - 34px);height:calc(100dvh - 176px - env(safe-area-inset-bottom));min-height:260px}.lightbox-stage img,.lightbox-stage video,.lightbox-stage iframe{border-radius:18px}.lightbox-stage iframe{height:auto;aspect-ratio:16 / 9}.lightbox-thumbs{justify-content:flex-start;width:calc(100vw - 24px);padding:7px;border-radius:18px;scroll-padding-inline:8px}.lightbox-thumb{flex-basis:52px;width:52px;height:52px;border-radius:12px}.lightbox-arrow{width:44px;height:44px;font-size:2rem}.lightbox-next{inset-inline-end:8px}.lightbox-prev{inset-inline-start:8px}.lightbox-close{top:10px;inset-inline-end:10px}}@media(max-width:720px){.mobile-topbar{position:fixed;top:calc(12px + env(safe-area-inset-top));inset-inline:16px;z-index:80;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:8px 10px;border:1px solid var(--surface-border);border-radius:20px;background:var(--header-bg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-bottom-tabs{position:fixed;right:12px;left:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:70;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:8px 8px 10px;border:1px solid rgba(176,141,87,.16);border-radius:22px;color:#b08d57;background:linear-gradient(135deg,#14261cf5,#14261cf0);box-shadow:0 20px 46px #00000057;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-tab{display:inline-flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;min-width:0;min-height:58px;padding:7px 3px 8px;border-radius:16px;color:inherit;font-size:.68rem;line-height:1.35;font-weight:900;text-align:center;white-space:nowrap;transition:background .18s ease,color .18s ease,transform .18s ease}.mobile-tab svg{width:21px;height:21px;flex:0 0 21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.mobile-tab span{display:block;max-width:100%;min-height:1.4em;padding-bottom:2px;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.mobile-tab.is-active{color:#fff;background:#8fb39c3d;box-shadow:inset 0 0 0 1px #b08d5738}.mobile-tab:active{transform:translateY(1px)}.mobile-brand{display:inline-flex;align-items:center;gap:10px;min-width:0}.mobile-notification-center{margin-inline-start:auto}.mobile-notification-center .notification-trigger{width:44px;height:44px;border-radius:15px}.site-header .notification-center{display:none}.mobile-brand .brand-mark{width:42px;height:42px;border-radius:14px}.mobile-brand strong{color:var(--navy);line-height:1.1}.mobile-brand small{font-size:.86rem}.mobile-menu-toggle{position:static;z-index:1;display:inline-flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;width:48px;height:48px;border:0;border-radius:16px;background:var(--primary-gradient);box-shadow:0 14px 34px #1d3b2a3d;opacity:1;pointer-events:auto;transform:translateY(0);transition:opacity .2s ease,transform .2s ease}.mobile-menu-toggle span{display:block;width:24px;height:2px;border-radius:999px;background:var(--on-primary);transform-origin:center}.site-header{position:fixed;top:calc(82px + env(safe-area-inset-top));inset-inline:16px;z-index:79;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"user user" "nav nav" "theme logout" "download download";align-items:stretch;gap:8px;direction:ltr;overflow:hidden;transition:max-height .32s ease,padding .32s ease,border-color .32s ease,opacity .2s ease,transform .32s ease}.site-header{max-height:0;margin:0;padding-top:0;padding-bottom:0;border-color:transparent;opacity:0;pointer-events:none;transform:translateY(-16px)}.site-header>.brand{display:none}.site-header>*,.header-actions>*{direction:rtl}.site-header .mobile-user-chip{grid-area:user;display:block;width:100%;min-height:0;padding:0;border-radius:0;font-size:inherit}.site-header .mobile-user-chip>.account-switcher-trigger{display:flex;width:100%;max-width:none;min-height:54px;justify-content:flex-start;padding:9px 12px;border-radius:16px;font-size:1.05rem}.site-header .mobile-user-chip .user-chip-avatar{width:38px;height:38px;flex-basis:38px;border-radius:10px}.site-header .mobile-user-chip .account-switcher-menu{position:static;width:100%;margin-top:8px;box-shadow:inset 0 1px color-mix(in srgb,#fff 6%,transparent)}.main-nav{grid-area:nav;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;margin-top:0}.header-actions{display:contents;margin-top:0;margin-bottom:0}.header-actions .user-chip{display:none}.header-actions .theme-toggle{grid-area:theme;align-self:start;justify-self:stretch;width:100%;height:46px;min-width:0;min-height:46px}.site-header.is-guest .header-actions .theme-toggle{grid-area:auto;grid-column:1 / -1;justify-self:stretch;width:100%}.header-actions .logout-form{grid-area:logout;align-self:stretch;justify-self:stretch}.header-actions .logout-button{width:100%;height:46px;min-width:0;min-height:46px;padding:0;border-radius:16px}.header-actions .login-button{grid-column:1 / -1;grid-row:1;width:100%;min-height:54px;justify-self:stretch;border-radius:16px}.main-nav a{justify-content:flex-start;min-width:0;min-height:46px;padding:10px 11px;text-align:start;font-size:.9rem;gap:6px;white-space:normal}.main-nav a span{white-space:normal;line-height:1.15}.main-nav svg{width:16px;height:16px;flex-basis:16px}.site-header>.app-download-nav-link{grid-area:download;display:inline-flex!important;align-items:center;justify-content:center;gap:6px;min-height:38px;margin-top:2px;padding:7px 10px;border:1px dashed color-mix(in srgb,var(--brand) 32%,var(--surface-border));border-radius:13px;color:var(--brand);background:transparent!important;box-shadow:none!important;font-size:.78rem}.site-header>.app-download-nav-link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.site-header>.app-download-nav-link:hover,.site-header>.app-download-nav-link.is-active{border-color:var(--brand);color:var(--brand);background:transparent!important}.dashboard-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 4px;position:static;margin:0 0 18px;padding:10px 8px;border-radius:18px}.dashboard-nav a{justify-content:flex-start;gap:5px;min-height:46px;padding:8px 3px;text-align:start;font-size:.78rem;white-space:normal}.dashboard-nav a svg{width:16px;height:16px;flex-basis:16px}.dashboard-nav a span{min-width:0;text-align:start;white-space:normal;overflow-wrap:anywhere;line-height:1.3}body.mobile-menu-open .site-header{max-height:calc(100dvh - 104px);margin:0;padding:12px;border-color:var(--surface-border);opacity:1;pointer-events:auto;overflow-y:auto;transform:translateY(0)}.album-visibility-inline{gap:8px}.album-visibility-inline .compact-toggle{gap:5px;font-size:.72rem}.site-footer{display:none}}.mobile-only-action-label{display:none}@media(max-width:720px){.presence-command{gap:10px}.presence-hero{display:grid;gap:10px;padding:13px;border-radius:18px}.presence-hero-main{align-items:center;flex-direction:row;gap:10px}.presence-hero-icon{width:46px;height:46px;border-radius:16px}.presence-hero-icon svg,.presence-stat-icon svg{width:22px;height:22px}.presence-hero h2{margin:4px 0 0;font-size:1.35rem}.presence-hero p{display:none}.presence-live-badge{min-height:24px;padding:4px 8px;font-size:.76rem}.presence-updated{width:100%;min-width:0;padding:8px 10px;border-radius:14px;grid-template-columns:1fr auto;align-items:center;text-align:start}.presence-updated strong{font-size:1rem}.presence-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.presence-stat-card{min-height:88px;padding:11px;border-radius:16px;gap:6px}.presence-stat-icon{width:34px;height:34px;border-radius:12px}.presence-stat-card>span:not(.presence-stat-icon){font-size:.82rem;line-height:1.25}.presence-stat-card strong{font-size:1.45rem}.presence-filter-bar{grid-auto-flow:column;grid-auto-columns:minmax(132px,1fr);grid-template-columns:none;gap:6px;padding:6px;border-radius:16px;overflow-x:auto;overscroll-behavior-inline:contain}.presence-filter-pill{min-height:42px;padding:7px 6px;gap:5px;border-radius:13px;font-size:.84rem}.presence-filter-pill b{min-width:26px;padding:3px 7px;font-size:.78rem}.presence-table-panel{padding:12px;border-radius:18px}.presence-table-panel .panel-heading{margin-bottom:10px}.presence-table-panel .panel-heading h2{font-size:1.05rem}.presence-table-panel .panel-heading p{display:none}.table-presence tbody{display:grid;gap:9px}table.responsive-table.table-presence tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:0;padding:9px;border-radius:16px}table.responsive-table.table-presence td{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:32px;padding:6px 8px;border:0;border-radius:12px;background:var(--soft-bg);overflow-wrap:normal}table.responsive-table.table-presence td>*{min-width:0;justify-self:auto}table.responsive-table.table-presence td:before{margin:0;color:var(--muted);font-size:.73rem;line-height:1.2;white-space:nowrap}table.responsive-table.table-presence td:first-child{grid-column:1 / -1;justify-content:flex-start;min-height:48px;padding:0 0 8px;border-bottom:1px solid var(--line);border-radius:0;background:transparent}table.responsive-table.table-presence td:first-child:before{display:none}.presence-person{gap:8px;width:100%}.presence-avatar{width:42px;height:42px;flex-basis:42px;border-radius:13px}.presence-person strong,.presence-person small{max-width:190px;white-space:nowrap}.presence-person strong{font-size:.92rem}.presence-person small{font-size:.75rem}.presence-state{min-height:28px;padding:4px 7px;gap:5px;font-size:.78rem}.presence-state>span{width:7px;height:7px}.presence-count,.table-presence .badge{min-width:30px;min-height:26px;padding:3px 8px;font-size:.78rem}.table-presence td:nth-child(4) strong,.table-presence td:nth-child(4) small{font-size:.73rem;white-space:nowrap}.student-profile-title .profile-id{align-items:center;flex-direction:column;gap:14px;padding-top:10px;text-align:center}.student-profile-title .avatar-lg,.student-profile-title .avatar-fallback.avatar-lg{width:96px;height:96px;margin-top:8px;border-radius:26px}.album-delete-form{width:100%!important}.album-delete-button.action-icon{display:inline-flex;width:100%!important;min-height:44px;gap:8px;border-radius:14px;font-weight:900;white-space:nowrap}.album-delete-button .mobile-only-action-label{display:inline}}@media(max-width:720px){.gallery-page-actions{width:100%}.gallery-page-actions{align-items:stretch}.presence-title{margin-bottom:10px}.presence-command{gap:9px}.presence-hero{overflow:hidden}.presence-hero:after{width:92px;border-width:15px;inset:auto -32px -42px auto;opacity:.65}.presence-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}.presence-stat-card{min-height:82px;padding:10px;border-radius:15px}.presence-stat-card:after{width:54px;height:54px;inset:auto -14px -16px auto;opacity:.72}.presence-stat-icon{width:31px;height:31px;border-radius:10px}.presence-stat-card strong{z-index:1;font-size:1.32rem}.presence-filter-bar{grid-auto-flow:column;grid-auto-columns:minmax(132px,1fr);grid-template-columns:none!important;overflow-x:auto}.presence-filter-pill{min-width:0;overflow:hidden}.presence-filter-pill span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.presence-table-panel{padding:10px}.table-presence tbody{gap:8px}table.responsive-table.table-presence tr{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:9px;overflow:hidden}table.responsive-table.table-presence td{position:relative;min-width:0;min-height:34px;padding:6px 7px;overflow:hidden;isolation:isolate}table.responsive-table.table-presence td:before{flex:0 0 auto;max-width:58%;overflow:hidden;text-overflow:ellipsis}table.responsive-table.table-presence td:first-child{min-height:46px;padding-bottom:7px}table.responsive-table.table-presence td:nth-child(4){grid-column:1 / -1}.table-presence td:nth-child(5):before{content:"\646\627\62c\62d"}.table-presence td:nth-child(6):before{content:"\641\627\634\644"}.table-presence td:nth-child(7):before{content:"\62e\631\648\62c"}.table-presence td:nth-child(8):before{content:"\62a\639\62f\64a\644\627\62a"}.presence-person{min-width:0}.presence-person>span:last-child{min-width:0;max-width:calc(100% - 50px)}.presence-person strong,.presence-person small{max-width:100%}.presence-state,.presence-count,.table-presence .badge{flex:0 0 auto;max-width:100%;white-space:nowrap}.presence-state{font-size:.74rem}.presence-count,.table-presence .badge{min-width:28px;min-height:24px;padding:3px 7px;font-size:.74rem}.table-presence td:nth-child(4) strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.presence-desktop-table{display:none!important}.presence-mobile-list{display:grid;gap:8px}.presence-mobile-card{position:relative;overflow:hidden;display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--soft-bg) 88%,transparent),transparent),var(--card-bg);box-shadow:0 12px 26px #1d3b2a14}.presence-mobile-card:after{content:"";position:absolute;inset:auto -20px -26px auto;width:66px;height:66px;border-radius:999px;background:color-mix(in srgb,var(--cyan) 14%,transparent);pointer-events:none}.presence-mobile-card.is-online{border-color:color-mix(in srgb,var(--success) 32%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--success) 11%,transparent),transparent 52%),var(--card-bg)}.presence-mobile-card.is-offline{opacity:.94}.presence-mobile-main{position:relative;z-index:1;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:9px}.presence-mobile-avatar{display:grid;place-items:center;width:42px;height:42px;overflow:hidden;border-radius:13px;color:#fff;font-weight:900;background:var(--brand-gradient)}.presence-mobile-avatar img{width:100%;height:100%;object-fit:cover}.presence-mobile-name{display:grid;gap:1px;min-width:0}.presence-mobile-name strong,.presence-mobile-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.presence-mobile-name strong{color:var(--navy);font-size:.92rem;line-height:1.25}.presence-mobile-name small{color:var(--muted);font-size:.72rem;font-weight:800}.presence-mobile-state{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:28px;padding:4px 8px;border-radius:999px;color:var(--muted);font-size:.72rem;font-weight:900;white-space:nowrap;background:var(--soft-bg)}.presence-mobile-state i{width:7px;height:7px;border-radius:999px;background:currentColor}.presence-mobile-card.is-online .presence-mobile-state{color:var(--success);background:color-mix(in srgb,var(--success) 13%,transparent)}.presence-mobile-meta{position:relative;z-index:1;display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px;align-items:center;color:var(--muted);font-size:.72rem;font-weight:800}.presence-mobile-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.presence-mobile-meta span:first-child{justify-self:start;padding:3px 8px;border-radius:999px;color:var(--blue);background:color-mix(in srgb,var(--cyan) 12%,transparent)}.presence-mobile-metrics{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.presence-mobile-metrics span{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:28px;padding:4px 5px;border-radius:10px;background:color-mix(in srgb,var(--blue) 13%,transparent)}.presence-mobile-metrics b{color:var(--blue);font-size:.82rem;line-height:1}.presence-mobile-metrics small{min-width:0;overflow:hidden;color:var(--navy);font-size:.66rem;font-weight:900;line-height:1;text-overflow:ellipsis;white-space:nowrap}.presence-mobile-metrics span:nth-child(1) b{color:var(--success)}.presence-mobile-metrics span:nth-child(2) b{color:var(--danger)}.presence-mobile-metrics span:nth-child(3) b{color:var(--warning)}.presence-mobile-empty{padding:18px;border:1px dashed var(--line);border-radius:16px;color:var(--muted);text-align:center;font-weight:900;background:var(--soft-bg)}}.student-dashboard-hero,.students-command-hero{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:18px 0 24px;padding:clamp(22px,4vw,36px);border:1px solid rgba(176,141,87,.28);border-radius:28px;color:#fff;background:radial-gradient(circle at 16% 18%,rgba(176,141,87,.24),transparent 18rem),linear-gradient(135deg,#14261cfa,#1d3b2ac7 58%,#8fb39c8f);box-shadow:0 30px 84px #1d3b2a38}.student-dashboard-hero:after,.students-command-hero:after{content:"";position:absolute;z-index:-1;inset:auto -76px -94px auto;width:250px;aspect-ratio:1;border:38px solid rgba(255,255,255,.1);border-radius:999px}.student-hero-main{display:flex;align-items:center;gap:20px;min-width:0}.student-hero-avatar{position:relative;display:grid;place-items:center;width:clamp(96px,12vw,132px);height:clamp(96px,12vw,132px);flex:0 0 auto;overflow:hidden;border:3px solid rgba(255,255,255,.42);border-radius:32px;color:#fff;font-size:2.8rem;font-weight:900;background:var(--brand-gradient);box-shadow:0 24px 58px #00000047}.student-hero-avatar:after{content:"";position:absolute;inset:-8px;border:1px solid rgba(176,141,87,.42);border-radius:38px;pointer-events:none}.student-hero-avatar img{width:100%;height:100%;object-fit:cover}.student-hero-copy{display:grid;gap:8px;min-width:0}.student-hero-badge{display:inline-flex;align-items:center;width:fit-content;min-height:30px;padding:6px 12px;border-radius:999px;color:#b08d57;font-weight:900;background:#ffffff1f}.student-hero-copy h1,.students-command-hero h1{margin:0;color:#fff;font-size:clamp(2.4rem,5vw,4.7rem);line-height:1.05}.student-hero-copy p,.students-command-hero p{max-width:720px;margin:0;color:#ffffffc7;font-weight:800;line-height:1.8}.student-hero-chips{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:4px}.student-hero-chips span{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 11px;border-radius:999px;color:#ffffffdb;font-weight:900;background:#ffffff1f}.student-hero-chips b{color:#fff}.student-hero-orbit,.students-command-orbit{display:grid;place-items:center;width:96px;height:96px;flex:0 0 96px;border-radius:30px;color:#1d3b2a;background:linear-gradient(135deg,#fff,#b08d57);box-shadow:0 24px 58px #0000003d}.student-hero-orbit svg,.students-command-orbit svg,.student-kpi-icon svg,.students-mobile-open svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.student-scope-panel{overflow:hidden;border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--soft-bg) 78%,transparent),transparent),var(--surface)}.student-scope-panel .section-head{margin-bottom:0}.student-dashboard-kpi-grid{gap:14px}.student-kpi-card{position:relative;overflow:hidden;display:grid;gap:8px;min-height:142px;border-radius:22px}.student-kpi-card:after{content:"";position:absolute;inset:auto -28px -34px auto;width:92px;height:92px;border-radius:999px;background:color-mix(in srgb,var(--cyan) 13%,transparent)}.student-kpi-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;color:var(--blue);background:color-mix(in srgb,var(--cyan) 13%,transparent)}.student-kpi-icon.success{color:var(--success);background:#1e8a5a1f}.student-kpi-icon.warning{color:var(--warning);background:#c77b1621}.student-kpi-icon.danger{color:var(--danger);background:#c8513d1f}.student-kpi-card strong,.student-kpi-card span:not(.student-kpi-icon){position:relative;z-index:1}.student-dashboard-panel,.student-editor-panel,.student-info-panel,.students-command-panel{border-radius:24px}.student-rank-panel{background:radial-gradient(circle at 10% 18%,rgba(176,141,87,.12),transparent 18rem),var(--surface)}.student-rank-panel .rank-metric-card{border:1px solid var(--line);background:var(--soft-bg)}.student-progress-showcase .quran-progress{height:22px}.student-admin-bottom-grid{align-items:start}.teacher-profile-request-note{display:grid;gap:4px;margin:0 0 16px;line-height:1.7}.teacher-profile-request-note strong,.teacher-profile-request-note span{display:block}.student-opening-records{display:contents}.student-opening-points-field{width:100%}.student-opening-points-field label,.student-previous-memorization>label{color:var(--navy);font-weight:900}.student-previous-memorization,.student-memorization-ranges{display:grid;gap:12px}.student-opening-points-field,.student-previous-memorization{grid-column:1 / -1}.student-memorization-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) 46px;align-items:end;gap:10px;padding:0}.student-memorization-range .field{gap:6px}.student-memorization-range-remove{display:inline-grid;place-items:center;width:46px;height:46px;padding:0;border:1px solid color-mix(in srgb,var(--danger) 35%,var(--line));border-radius:13px;color:var(--danger);background:color-mix(in srgb,var(--danger) 9%,var(--card-bg));cursor:pointer}.student-memorization-range-remove:hover{color:#fff;background:var(--danger)}.student-memorization-range-remove svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.student-memorization-range-add{justify-self:start}.students-command-hero{align-items:center}.students-command-hero>div:first-child{display:grid;gap:8px}.students-command-panel{position:relative;overflow:hidden}.students-command-panel:after{content:"";position:absolute;inset:-80px auto auto -80px;width:190px;height:190px;border-radius:999px;background:color-mix(in srgb,var(--cyan) 10%,transparent);pointer-events:none}.students-command-panel>*{position:relative;z-index:1}.students-command-panel .section-head{align-items:flex-start}.students-command-panel .student-search-filter{margin-top:14px}.students-desktop-table .table-students-summary{table-layout:auto}.students-mobile-list{display:none}.students-mobile-card{position:relative;overflow:hidden;display:grid;gap:9px;padding:11px;border:1px solid var(--line);border-radius:17px;background:var(--card-bg);box-shadow:0 12px 28px #1d3b2a14}.students-mobile-card:after{content:"";position:absolute;inset:auto -20px -26px auto;width:66px;height:66px;border-radius:999px;background:color-mix(in srgb,var(--cyan) 13%,transparent);pointer-events:none}.students-mobile-main{position:relative;z-index:1;display:grid;grid-template-columns:44px minmax(0,1fr) 36px;align-items:center;gap:9px}.students-mobile-avatar{display:grid;place-items:center;width:44px;height:44px;overflow:hidden;border-radius:14px;color:#fff;font-weight:900;object-fit:cover;background:var(--brand-gradient)}.students-mobile-main strong,.students-mobile-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.students-mobile-main strong{color:var(--navy);font-size:.96rem}.students-mobile-main small{color:var(--muted);font-weight:800}.students-mobile-open{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;color:var(--on-primary);background:var(--primary-gradient)}.students-mobile-open svg{width:20px;height:20px}.students-mobile-metrics{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.students-mobile-metrics span{display:grid;gap:2px;min-width:0;min-height:42px;padding:5px 6px;border-radius:12px;background:var(--soft-bg)}.students-mobile-metrics b,.students-mobile-metrics small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.students-mobile-metrics b{color:var(--blue);font-size:.88rem;line-height:1}.students-mobile-metrics small{color:var(--muted);font-size:.62rem;font-weight:900}.students-mobile-metrics span:nth-child(2) b,.students-mobile-metrics span:nth-child(3) b,.students-mobile-metrics span:nth-child(6) b,.students-mobile-metrics span:nth-child(8) b{color:var(--success)}.students-mobile-metrics span:nth-child(4) b{color:var(--warning)}.students-mobile-metrics span:nth-child(5) b{color:var(--danger)}.students-mobile-empty{padding:18px;border:1px dashed var(--line);border-radius:16px;color:var(--muted);text-align:center;font-weight:900;background:var(--soft-bg)}@media(prefers-reduced-motion:no-preference){.student-dashboard-hero,.students-command-hero,.student-kpi-card,.student-dashboard-panel,.students-command-panel,.students-mobile-card{animation:app-rise .38s cubic-bezier(.2,.8,.2,1) both}.student-hero-avatar,.student-hero-orbit,.students-command-orbit,.student-kpi-card,.students-mobile-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.student-dashboard-hero:hover .student-hero-avatar,.students-command-hero:hover .students-command-orbit,.student-kpi-card:hover,.students-mobile-card:hover{transform:translateY(-2px)}}@media(max-width:980px){.student-dashboard-hero,.students-command-hero{align-items:flex-start;flex-direction:column}.student-hero-orbit,.students-command-orbit{display:none}.student-dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.student-dashboard-hero,.students-command-hero{gap:12px;margin:6px 0 16px;padding:14px;border-radius:20px}.student-dashboard-hero:after,.students-command-hero:after{width:92px;border-width:15px;inset:auto -34px -42px auto}.student-hero-main{align-items:center;gap:11px;width:100%}.student-hero-avatar{width:68px;height:68px;border-radius:20px;font-size:1.8rem}.student-hero-avatar:after{inset:-5px;border-radius:25px}.student-hero-copy{gap:5px}.student-hero-badge{min-height:24px;padding:4px 8px;font-size:.76rem}.student-hero-copy h1,.students-command-hero h1{font-size:1.75rem}.student-hero-copy p,.students-command-hero p{display:none}.student-hero-chips{gap:5px}.student-hero-chips span{min-height:27px;padding:4px 8px;font-size:.73rem}.student-scope-panel{padding:13px;border-radius:18px}.student-scope-panel .section-head{gap:10px}.student-scope-panel .section-head p{display:none}.student-dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}.student-kpi-card{min-height:98px;padding:11px;border-radius:16px}.student-kpi-card:after{width:54px;height:54px;inset:auto -16px -18px auto}.student-kpi-icon{width:32px;height:32px;border-radius:11px}.student-kpi-icon svg{width:19px;height:19px}.student-kpi-card strong{font-size:1.35rem}.student-kpi-card span:not(.student-kpi-icon){font-size:.78rem;line-height:1.25}.student-dashboard-panel,.student-editor-panel,.student-info-panel,.students-command-panel{padding:13px;border-radius:18px}.student-memorization-range{grid-template-columns:repeat(2,minmax(0,1fr))}.student-memorization-range-remove{grid-column:1 / -1;width:100%}.student-memorization-range-add{width:100%}.student-rank-panel .rank-metrics-grid,.student-portal-rank-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.student-dashboard-record-grid{gap:12px}.students-command-panel .section-head{gap:10px}.students-command-panel .student-search-filter{grid-template-columns:1fr;gap:8px;width:100%}.students-desktop-table{display:none!important}.students-mobile-list{display:grid;gap:8px}.student-table-actions{margin-top:12px}}.student-dashboard-hero.student-admin-hero{padding-top:78px}@media(max-width:720px){.student-dashboard-hero.student-admin-hero{padding-top:66px}.quran-juz-card>summary{grid-template-columns:34px minmax(0,1fr);gap:8px;padding:11px}.quran-juz-detail{padding:0 8px 10px}.quran-juz-detail .table-wrap{overflow:visible}.table-quran-juz-details,.table-quran-juz-details tbody,.table-quran-juz-details tr{width:100%!important;max-width:100%}.table-quran-juz-details tr{margin-bottom:8px!important;padding:9px!important;border-radius:12px!important}.table-quran-juz-details td,.table-quran-juz-details.has-actions td{grid-template-columns:minmax(92px,.8fr) minmax(0,1.2fr)!important;gap:8px!important;width:100%!important;min-width:0!important;padding:8px 0!important;white-space:normal!important;text-align:start!important;overflow-wrap:anywhere}}.student-login-qr-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-items:stretch;gap:16px;padding:16px}.student-login-qr-copy{align-content:center;justify-items:start;text-align:start}.student-login-qr-stack{display:grid;grid-template-columns:149px minmax(148px,176px);align-items:center;justify-content:end;gap:12px;width:auto;max-width:100%;margin-inline:0}.student-login-qr-frame{width:149px;height:149px;padding:0;border-radius:14px;line-height:0;overflow:hidden}.student-login-qr-frame svg{width:100%;height:100%;max-width:none;margin:0;border-radius:12px;shape-rendering:crispEdges}.student-login-qr-actions{display:grid;gap:8px;width:100%;min-width:0}.student-login-qr-actions form{display:grid;min-width:0}.student-login-qr-download,.student-login-qr-reset{width:100%;justify-content:center;min-height:40px;padding:8px 10px;border-radius:12px;line-height:1.25;text-align:center;white-space:normal}.student-login-qr-download svg,.student-login-qr-reset svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@media(max-width:720px){.student-login-qr-card{grid-template-columns:1fr;justify-items:center}.student-login-qr-copy{justify-items:center;text-align:center}.student-login-qr-stack{grid-template-columns:149px minmax(0,1fr);justify-content:center;width:min(100%,342px);margin-inline:auto}.student-login-qr-frame{width:149px;height:149px}}@media(max-width:420px){.student-login-qr-stack{grid-template-columns:149px minmax(0,1fr);gap:8px;width:100%}.student-login-qr-frame{width:149px;height:149px}.student-login-qr-download,.student-login-qr-reset{min-height:38px;padding:7px 8px;font-size:.78rem}}html{-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--cyan) 60%,transparent) transparent}body{position:relative;isolation:isolate}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-color:var(--pattern-color);opacity:var(--pattern-opacity);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.1'%3E%3Cpath d='M36 22l4.1 9.9L50 36l-9.9 4.1L36 50l-4.1-9.9L22 36l9.9-4.1z'/%3E%3Crect x='26' y='26' width='20' height='20'/%3E%3Cpath d='M0 36h14M58 36h14M36 0v14M36 58v14'/%3E%3C/g%3E%3C/svg%3E") 0 0 / 72px 72px repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.1'%3E%3Cpath d='M36 22l4.1 9.9L50 36l-9.9 4.1L36 50l-4.1-9.9L22 36l9.9-4.1z'/%3E%3Crect x='26' y='26' width='20' height='20'/%3E%3Cpath d='M0 36h14M58 36h14M36 0v14M36 58v14'/%3E%3C/g%3E%3C/svg%3E") 0 0 / 72px 72px repeat}::selection{color:inherit;background:color-mix(in srgb,var(--gold) 34%,transparent)}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--gold);outline-offset:2px}:where(h1,h2,h3){text-wrap:balance}:where(p){text-wrap:pretty}.site-header{background:var(--header-bg);border-color:var(--surface-border);box-shadow:var(--shadow-sm),var(--hairline);-webkit-backdrop-filter:saturate(1.5) blur(20px);backdrop-filter:saturate(1.5) blur(20px)}html[data-theme=dark] .site-header{border-color:#d4b57a1f}.brand-mark{border-radius:50%;padding:2px;background:var(--logo-tile-bg);box-shadow:0 0 0 1px var(--line),0 0 0 5px color-mix(in srgb,var(--brand) 9%,transparent),0 10px 24px #14261c29;transition:transform var(--dur) var(--ease-spring)}.brand:hover .brand-mark,.mobile-brand:hover .brand-mark{transform:rotate(-6deg) scale(1.04)}.brand strong,.mobile-brand strong{color:var(--navy);letter-spacing:0}html[data-theme=dark] .brand-mark{box-shadow:0 0 0 1px #d4b57a38,0 0 0 5px #d4b57a0f,0 12px 28px #00000073}.site-logo.has-dark-variant>.is-dark-variant{display:none!important}html[data-theme=dark] .site-logo.has-dark-variant>:not(.is-dark-variant){display:none!important}html[data-theme=dark] .site-logo.has-dark-variant>.is-dark-variant{display:block!important}.site-logo{display:contents}.main-nav a,.dashboard-nav a{transition:background-color var(--dur) var(--ease-out),color var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.main-nav a.is-active{color:var(--on-primary);background:var(--primary-gradient);box-shadow:0 10px 22px #14261c38,inset 0 1px #ffffff24}html[data-theme=dark] .main-nav a.is-active{box-shadow:0 10px 24px #00000073,inset 0 0 0 1px #8fbf9f2e}.dashboard-nav{box-shadow:var(--shadow-sm),inset 0 1px #ffffff0f}.dashboard-nav a{color:#f1ede2}.dashboard-nav a.is-active{color:#fff8e8;box-shadow:inset 0 0 0 1px #d4b57a52,0 8px 20px #0003}.btn{transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur) var(--ease-out),filter var(--dur) var(--ease-out),background-color var(--dur) var(--ease-out)}.btn:active,.theme-toggle:active,.icon-btn:active{transform:translateY(0) scale(.97)}.btn-primary{background:var(--primary-gradient);box-shadow:0 12px 26px #14261c38,inset 0 1px #ffffff29}.btn-primary:hover{filter:brightness(1.07) saturate(1.05);box-shadow:0 16px 34px #14261c47,inset 0 1px #ffffff2e}html[data-theme=dark] .btn-primary{box-shadow:0 14px 30px #00000073,inset 0 1px #ffffff14,0 0 0 1px #8fbf9f29}.btn-ghost,.theme-toggle{box-shadow:inset 0 0 0 1px var(--line)}html[data-theme=dark] .theme-toggle{color:var(--gold)}.notification-trigger{width:42px;height:42px;border:1px solid color-mix(in srgb,var(--gold) 38%,var(--line));border-radius:14px;color:var(--navy);background:linear-gradient(160deg,color-mix(in srgb,var(--gold) 20%,var(--surface-strong)),color-mix(in srgb,var(--gold) 8%,var(--surface-strong)));box-shadow:0 8px 20px #b08d572e,var(--hairline);transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.notification-trigger:hover{transform:translateY(-1px);box-shadow:0 12px 26px #b08d5742,var(--hairline)}.notification-trigger svg{width:21px;height:21px}html[data-theme=dark] .notification-trigger{color:var(--gold);border-color:#d4b57a47;background:linear-gradient(160deg,#d4b57a29,#d4b57a0d);box-shadow:0 10px 24px #00000059,var(--hairline)}@media(min-width:1041px)and (max-width:1279px){.site-header{gap:10px}.site-header>.brand{flex:0 1 auto;min-width:0}.site-header>.brand>span:not(.brand-mark){min-width:0}.site-header>.brand strong,.site-header>.brand small{display:block;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-nav{gap:2px}.main-nav a{padding:8px 11px}.main-nav a svg,.header-actions .account-switcher-current-name,.header-actions .account-switcher-chevron{display:none}.header-actions{gap:6px}}.panel,.album-card,.student-card,.stat-card,.lesson-preview{border-color:var(--surface-border);box-shadow:var(--shadow-sm),var(--hairline)}html[data-theme=dark] :is(.panel,.album-card,.student-card,.stat-card,.lesson-preview,.hero-feature-card,.table-wrap){border-color:var(--line);box-shadow:var(--shadow-sm),var(--hairline)}html[data-theme=dark] .panel{background:linear-gradient(180deg,#18251ed1,#111b15d1)}html[data-theme=dark] :is(.album-card,.student-card,.stat-card,.lesson-preview){background:linear-gradient(180deg,#17231ce6,#0f1813e6)}.eyebrow{color:var(--brand);background:color-mix(in srgb,var(--gold) 16%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gold) 22%,transparent)}html[data-theme=dark] .eyebrow{color:var(--gold)}html[data-theme=dark] :is(.hero h1,.page-title h1,h2,h3){color:var(--navy)}.hero-kicker{color:var(--brand)}html[data-theme=dark] .hero-kicker{color:var(--gold)}.hero-slider-frame{box-shadow:var(--shadow)}html[data-theme=dark] .hero-slider-frame{box-shadow:0 30px 80px #0000008c,inset 0 0 0 1px #d4b57a1f}.slide-placeholder{position:relative;display:grid;place-content:center;justify-items:center;gap:12px;padding:36px 28px;overflow:hidden;text-align:center;color:#f4ecd8;background:var(--placeholder-gradient)}.slide-placeholder:before{content:"";position:absolute;inset:0;pointer-events:none;background-color:#d4b57a;opacity:.09;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.1'%3E%3Cpath d='M36 22l4.1 9.9L50 36l-9.9 4.1L36 50l-4.1-9.9L22 36l9.9-4.1z'/%3E%3Crect x='26' y='26' width='20' height='20'/%3E%3Cpath d='M0 36h14M58 36h14M36 0v14M36 58v14'/%3E%3C/g%3E%3C/svg%3E") 0 0 / 72px 72px repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.1'%3E%3Cpath d='M36 22l4.1 9.9L50 36l-9.9 4.1L36 50l-4.1-9.9L22 36l9.9-4.1z'/%3E%3Crect x='26' y='26' width='20' height='20'/%3E%3Cpath d='M0 36h14M58 36h14M36 0v14M36 58v14'/%3E%3C/g%3E%3C/svg%3E") 0 0 / 72px 72px repeat}.slide-placeholder>*{position:relative}.slide .slide-placeholder-mark{width:clamp(120px,34%,210px);height:auto;object-fit:contain;filter:drop-shadow(0 18px 40px rgba(0,0,0,.35))}.slide-placeholder strong{max-width:22ch;color:#f7efdc;font-size:clamp(1.15rem,2.2vw,1.65rem);line-height:1.6}.slide-placeholder small{color:#d4b57a;font-weight:700}@media(prefers-reduced-motion:no-preference){.slide-placeholder-mark{animation:app-float 6.5s ease-in-out infinite}}:where(input:not([type=checkbox],[type=radio],[type=range],[type=file]),select,textarea){transition:border-color var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out),background-color var(--dur)}:where(input:not([type=checkbox],[type=radio],[type=range],[type=file]),select,textarea):focus{border-color:color-mix(in srgb,var(--gold) 70%,var(--line));box-shadow:var(--ring)}.site-footer{position:relative;overflow:hidden;box-shadow:0 -1px #d4b57a24 inset}.site-footer:after{content:"";position:absolute;inset-inline:0;top:0;height:2px;background:linear-gradient(90deg,transparent,rgba(212,181,122,.7),transparent)}@media(max-width:720px){.mobile-topbar,.mobile-bottom-tabs{-webkit-backdrop-filter:saturate(1.5) blur(22px);backdrop-filter:saturate(1.5) blur(22px)}html[data-theme=dark] .mobile-bottom-tabs{border-color:#d4b57a1f}.mobile-tab{transition:color var(--dur) var(--ease-out),background-color var(--dur) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.mobile-tab:active{transform:scale(.94)}}@media(prefers-reduced-motion:no-preference){@view-transition{navigation:auto}.site-header{view-transition-name:site-header}.mobile-bottom-tabs{view-transition-name:mobile-tabs}.mobile-topbar{view-transition-name:mobile-topbar}::view-transition-old(root){animation:app-page-out .16s ease both}::view-transition-new(root){animation:app-page-in .32s var(--ease-out) both}html.is-theme-switching :is(.site-header,.mobile-bottom-tabs,.mobile-topbar){view-transition-name:none}html.is-theme-switching::view-transition-old(root){animation:none}html.is-theme-switching::view-transition-new(root){animation:app-theme-reveal .6s var(--ease-out) both}}@keyframes app-page-out{to{opacity:0}}@keyframes app-page-in{0%{opacity:0;transform:translateY(10px)}}@keyframes app-theme-reveal{0%{clip-path:circle(0 at var(--theme-origin-x, 50%) var(--theme-origin-y, 0))}to{clip-path:circle(150vmax at var(--theme-origin-x, 50%) var(--theme-origin-y, 0))}}@media print{body:before,.site-header,.mobile-topbar,.mobile-bottom-tabs,.dashboard-nav,.site-footer{display:none!important}}.image-prep-status{display:flex;align-items:center;gap:8px;margin-top:8px;color:var(--muted);font-size:.84rem;line-height:1.6}.image-prep-status[hidden]{display:none}.image-prep-status:before{content:"";flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--success)}.image-prep-status.is-busy:before{background:var(--gold);animation:image-prep-pulse 1s ease-in-out infinite}@keyframes image-prep-pulse{50%{opacity:.3;transform:scale(.7)}}@media(prefers-reduced-motion:reduce){.image-prep-status.is-busy:before{animation:none}}@media(max-width:720px){.table-attendance-form td:nth-child(2){grid-template-columns:1fr!important;row-gap:10px}.table-attendance-form td:nth-child(2)>.attendance-options{width:100%;justify-self:stretch}.table-attendance-form .attendance-options{grid-template-columns:repeat(2,minmax(104px,1fr))!important;gap:6px;width:100%}.table-attendance-form .attendance-options label{justify-content:center;min-height:46px;padding-inline:9px;white-space:nowrap;overflow-wrap:normal}}.attendance-scanner-launch{position:relative;isolation:isolate;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin:0 0 24px;padding:20px 22px;overflow:hidden;border:1px solid color-mix(in srgb,var(--brand) 34%,transparent);border-radius:24px;color:#fff;text-decoration:none;background:linear-gradient(120deg,var(--navy),color-mix(in srgb,var(--brand) 82%,#143f0a));box-shadow:0 18px 42px color-mix(in srgb,var(--navy) 24%,transparent);transition:transform .25s ease,box-shadow .25s ease}.attendance-scanner-launch:before{content:"";position:absolute;z-index:-1;inset:-80% 45% -80% -20%;transform:rotate(18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:attendance-launch-shine 4.6s ease-in-out infinite}.attendance-scanner-launch:hover{transform:translateY(-3px);box-shadow:0 23px 52px color-mix(in srgb,var(--navy) 32%,transparent)}[data-theme=dark] .attendance-scanner-launch{border-color:#d4b57a4d;color:#f4efe2;background:linear-gradient(125deg,#0e1a13,#173424 56%,#1f4a33);box-shadow:0 18px 46px #00000057}[data-theme=dark] .attendance-scanner-launch-copy small{color:#efe9daad}[data-theme=dark] .attendance-scanner-launch-copy>span{color:#efe9dad6}.attendance-scanner-launch-icon{display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(255,255,255,.28);border-radius:18px;background:#ffffff21;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.attendance-scanner-launch-icon svg{width:31px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.attendance-scanner-launch-copy{display:grid;gap:3px}.attendance-scanner-launch-copy small{color:#ffffffb8;font-size:.78rem}.attendance-scanner-launch-copy strong{font-size:clamp(1.08rem,2vw,1.38rem)}.attendance-scanner-launch-copy>span{color:#ffffffd1;font-size:.88rem}.attendance-scanner-launch-arrow{font-size:1.65rem;transition:transform .25s ease}.attendance-scanner-launch:hover .attendance-scanner-launch-arrow{transform:translate(-5px)}@keyframes attendance-launch-shine{0%,55%{transform:translate(0) rotate(18deg);opacity:0}70%{opacity:1}to{transform:translate(-250%) rotate(18deg);opacity:0}}@media(max-width:560px){.attendance-scanner-launch{gap:12px;padding:17px;border-radius:20px}.attendance-scanner-launch-icon{width:50px;height:50px}.attendance-scanner-launch-copy>span{display:none}}@media(prefers-reduced-motion:reduce){.attendance-scanner-launch:before{animation:none}}.attendance-options label{--option-tone: var(--brand);border:1px solid transparent;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.attendance-options label:has(input[value=early]){--option-tone: var(--gold)}.attendance-options label:has(input[value=present]){--option-tone: var(--success)}.attendance-options label:has(input[value=late]){--option-tone: color-mix(in srgb, var(--warning) 55%, var(--danger))}.attendance-options label:has(input[value=absent]){--option-tone: var(--danger)}.attendance-options label:has(input[value=excused]){--option-tone: var(--muted)}.attendance-options input{accent-color:var(--option-tone)}.attendance-options label:hover{border-color:color-mix(in srgb,var(--option-tone) 30%,transparent)}.attendance-options label:has(input:checked){border-color:color-mix(in srgb,var(--option-tone) 60%,transparent);color:var(--option-tone);background:color-mix(in srgb,var(--option-tone) 15%,transparent);font-weight:700}.attendance-options label:has(input:focus-visible){outline:2px solid color-mix(in srgb,var(--option-tone) 70%,transparent);outline-offset:2px}@media(max-width:720px){.table-auth-logs td:nth-child(1):before{content:"\627\644\62d\627\644\629"}.table-auth-logs td:nth-child(2):before{content:"\627\644\62d\633\627\628"}.table-auth-logs td:nth-child(3):before{content:"\627\644\62c\647\627\632  \648\627\644\646\638\627\645"}.table-auth-logs td:nth-child(4):before{content:"\627\644\645\62a\635\641\62d"}.table-auth-logs td:nth-child(5):before{content:"IP"}.table-auth-logs td:nth-child(6):before{content:"\627\644\62a\627\631\64a\62e  \648\627\644\648\642\62a"}}.quran-exam-archive{grid-column:1 / -1}@media(max-width:720px){.quran-exam-studio{order:1}.quran-exam-archive{order:2}.quran-exam-overview{order:3}.quran-exam-type-grid{grid-template-columns:1fr!important;gap:10px}.quran-exam-type-option{min-height:68px;padding:12px 14px}.quran-exam-type-copy{min-width:0}.quran-exam-type-copy strong{line-height:1.35;white-space:normal}.quran-exam-type-copy small{white-space:nowrap}}.badge.info{color:var(--gold);background:color-mix(in srgb,var(--gold) 14%,transparent)}.badge.neutral{color:var(--muted);background:color-mix(in srgb,var(--muted) 13%,transparent)}.btn.btn-sm{min-height:36px;padding:7px 12px;font-size:.88rem}.btn.btn-sm svg{width:16px;height:16px}.empty-state{margin:0;padding:22px 18px;border:1px dashed var(--line);border-radius:18px;color:var(--muted);text-align:center;line-height:1.9}@media(max-width:720px){table.responsive-table td[data-label]:before{content:attr(data-label)}}.steps-list{display:grid;gap:10px;margin:0 0 18px;padding-inline-start:20px;color:var(--muted);line-height:1.8}.admin-tool-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;width:min(920px,100%);margin:-8px auto 26px}.admin-tool-link{display:flex;align-items:center;gap:13px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--gold) 32%,var(--line));border-radius:20px;color:var(--navy);background:var(--surface);box-shadow:var(--shadow-sm, var(--shadow));text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.admin-tool-link:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--gold) 60%,transparent)}.admin-tool-link strong{display:block;font-size:1rem}.admin-tool-link small{display:block;margin-top:2px;color:var(--muted);font-size:.82rem;line-height:1.6}.admin-tool-icon{display:grid;flex:0 0 46px;place-items:center;width:46px;height:46px;border-radius:14px;color:#fff;background:linear-gradient(135deg,#1d3b2a,#2f6146);box-shadow:0 10px 22px #14261c2e}.admin-tool-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}html[data-theme=dark] .admin-tool-icon{color:#1a140a;background:linear-gradient(135deg,#e2c48c,#b08d57)}html[data-theme=dark] .presence-launch-button{border-color:#d4b57a52;background:radial-gradient(circle at 14% 24%,rgba(176,141,87,.26),transparent 18rem),linear-gradient(125deg,#0c1510,#173424 54%,#2a5a40);box-shadow:0 26px 64px #00000061}.quran-revision-intro{margin:-4px 0 16px;color:var(--muted);line-height:1.8}.quran-revision-panel .finance-summary-grid{margin-top:14px}.quran-revision-recent{display:grid;gap:8px;margin:16px 0 0;padding:0;list-style:none}.quran-revision-recent li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--soft-bg)}.quran-revision-recent strong,.quran-revision-recent small{display:block}.quran-revision-recent small{color:var(--muted);font-size:.82rem}.field-error{margin-top:8px;color:var(--danger);font-size:.86rem;font-weight:700}.field-hint{display:block;margin-top:6px;color:var(--muted);font-size:.82rem}.quran-certificate-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.quran-certificate-card{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid color-mix(in srgb,var(--gold) 36%,var(--line));border-radius:16px;color:var(--navy);background:color-mix(in srgb,var(--gold) 7%,var(--surface));text-decoration:none;transition:transform .2s ease,border-color .2s ease}.quran-certificate-card:hover{transform:translateY(-2px);border-color:var(--gold)}.quran-certificate-card strong,.quran-certificate-card small{display:block}.quran-certificate-card small{color:var(--muted);font-size:.8rem}.quran-certificate-seal{display:grid;flex:0 0 40px;place-items:center;width:40px;height:40px;border-radius:50%;color:#1a140a;background:linear-gradient(135deg,#e2c48c,#b08d57)}.quran-certificate-seal svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.quran-certificate-download{margin-inline-start:auto;color:var(--gold);font-size:.82rem;font-weight:800}.quran-certificate-card.is-khatma{grid-column:1 / -1;border-color:var(--gold);background:linear-gradient(120deg,color-mix(in srgb,var(--gold) 16%,var(--surface)),var(--surface))}.certificate-verify{max-width:560px;margin:30px auto;text-align:center}.certificate-verify-icon{display:inline-grid;place-items:center;width:64px;height:64px;margin-bottom:12px;border-radius:50%;color:#fff;background:var(--danger)}.certificate-verify-icon.is-valid{background:var(--success)}.certificate-verify-icon svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.certificate-verify-achievement{color:var(--gold);font-size:1.2rem;font-weight:800}.certificate-verify-details{display:grid;gap:8px;margin:18px 0 0;text-align:start}.certificate-verify-details div{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:12px;background:var(--soft-bg)}.certificate-verify-details dt{color:var(--muted)}.certificate-verify-details dd{margin:0;font-weight:700}
