@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c9a0d344f313d307-s.p.3ik2qu-u9tgho.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC7,U+10EC9-10EEE,U+10EF?,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:400;font-display:swap;src:url(../media/aa914dbbd9a27e94-s.0n4hkusom70ae.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5a1ede1938590d51-s.19gzon4xl8qiz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5d6231e6818a3930-s.p.2vs72h_x6qrve.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:500;font-display:swap;src:url(../media/280fac012b00b901-s.p.3ihiqn4pviisd.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC7,U+10EC9-10EEE,U+10EF?,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:500;font-display:swap;src:url(../media/65b08f011bd29e21-s.00vfn3_g-ftpg.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a1b65e215f8df202-s.3w3hylgez90of.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:500;font-display:swap;src:url(../media/3347fc7792f0b5ea-s.p.0c7ha31nuacbu.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ceec3e50f42c26e3-s.p.0da8nscnv1nkd.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC7,U+10EC9-10EEE,U+10EF?,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b140408e2d7eae5d-s.2x1j3gzzngp4x.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:600;font-display:swap;src:url(../media/d3af3242084a193c-s.1jr_z050he_qo.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:600;font-display:swap;src:url(../media/441492499fc86682-s.p.1fbvi_fot8u4l.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5ad8fdb5805e9b4a-s.p.0-uv4l43gdmt7.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC7,U+10EC9-10EEE,U+10EF?,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:700;font-display:swap;src:url(../media/bb8a9270184a3556-s.0phk7_etl12r4.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b3f2ed44161db83e-s.3c64at4xi6rda.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:700;font-display:swap;src:url(../media/84cd8d504984ae62-s.p.0iritm8hg8q1a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Arabic Fallback;src:local(Arial);ascent-override:107.25%;descent-override:41.02%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_arabic_13d3d5b6-module__e5w_za__className{font-family:IBM Plex Sans Arabic,IBM Plex Sans Arabic Fallback;font-style:normal}.ibm_plex_sans_arabic_13d3d5b6-module__e5w_za__variable{--font-body:"IBM Plex Sans Arabic", "IBM Plex Sans Arabic Fallback"}
*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;font-family:Tahoma,Arial,sans-serif}button{background:var(--g);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:10px 14px;font-weight:700}button.secondary{background:var(--surface-2);color:var(--g2)}button.danger{background:var(--red)}button:disabled{opacity:.55;cursor:not-allowed}header{background:linear-gradient(135deg,var(--g2),var(--g));color:#fff;z-index:20;padding:16px 20px;position:sticky;top:0}.headerrow{justify-content:space-between;align-items:center;gap:15px;max-width:1180px;margin:auto;display:flex}header h1{margin:0;font-size:21px}header p{opacity:.85;margin:5px 0 0;font-size:12px}.userbox{text-align:left;font-size:12px}.userbox button{background:#ffffff20;padding:7px 10px}nav{border-bottom:1px solid var(--line);z-index:15;background:#fff;flex-wrap:wrap;gap:7px;padding:10px;display:flex;position:sticky;top:72px}nav button{background:var(--surface-2);color:var(--g2)}nav button.active{background:var(--g);color:#fff}main{max-width:1180px;margin:auto;padding:12px 14px}.grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:11px;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:15px;margin:11px 0;padding:15px;box-shadow:0 2px 12px #0000000a}.stat b{margin-top:5px;font-size:27px;display:block}.muted{color:var(--muted);font-size:12px}.title{justify-content:space-between;align-items:center;gap:10px;display:flex}.title h3{margin:0 0 8px}.formgrid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}label{color:var(--muted);margin-bottom:5px;font-size:12px;display:block}input,select,textarea{border:1px solid var(--line-strong);background:#fff;border-radius:10px;width:100%;padding:10px;font-family:inherit}textarea{resize:vertical;min-height:75px}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--line);text-align:right;vertical-align:top;padding:9px 7px;font-size:12px}.badge{background:var(--accent-soft);border-radius:999px;padding:4px 8px;font-size:11px;display:inline-block}.excellent{background:var(--accent-soft)}.good{color:#2d568e;background:#edf3ff}.redo{color:#a53b32;background:#fff0ee}.warn{color:#89650e;background:#fff7df}.hidden{display:none}.notice{background:#fff8df;border-right:4px solid #d3a629;border-radius:8px;padding:10px;font-size:12px}.error-text{color:var(--red);margin-top:8px;font-size:12px}.rank{font-size:17px;font-weight:800}.pos{color:var(--g);font-weight:700}.neg{color:var(--red);font-weight:700}.progress{background:var(--surface-2);border-radius:99px;height:10px;overflow:hidden}.progress>i{background:var(--g);width:0;height:100%;display:block}.kpi{justify-content:space-between;align-items:center;gap:8px;display:flex}.pill{background:var(--surface-2);border-radius:9px;padding:6px 9px;font-size:12px}.login{background:linear-gradient(135deg,var(--surface-2),var(--surface-2));place-items:center;min-height:100vh;padding:20px;display:grid}.loginbox{background:#fff;border-radius:20px;width:100%;max-width:420px;padding:25px;box-shadow:0 8px 35px #00000012}.loginbox h1{text-align:center;color:var(--g2);margin-top:0}.dedication{background:var(--surface-2);border:1px solid var(--line);text-align:center;border-radius:12px;margin:14px 0;padding:10px 14px}.dedication .dedication-title{color:var(--g2);margin:0 0 4px;font-size:12.5px;font-weight:700}.dedication .dedication-dua{color:var(--muted);margin:0;font-size:11.5px;line-height:1.7}.otp-input{text-align:center;letter-spacing:10px;font-size:24px;font-weight:700}.small{font-size:11px}.center{text-align:center}.two{grid-template-columns:1fr 1fr;gap:10px;display:grid}.toast{background:var(--text);color:#fff;z-index:100;border-radius:10px;padding:11px 15px;position:fixed;bottom:18px;left:18px}@media (max-width:650px){nav{top:68px}.two{grid-template-columns:1fr}th:nth-child(5),td:nth-child(5){display:none}header h1{font-size:17px}header p{display:none}.headerrow{gap:8px}.userbox{font-size:11px}.userbox button{padding:6px 9px}}.islamic-bg{background:radial-gradient(circle at 85% 12%,color-mix(in srgb, var(--accent-2) 35%, transparent),transparent 45%),radial-gradient(circle at 8% 92%,color-mix(in srgb, var(--accent-2) 20%, transparent),transparent 50%),linear-gradient(160deg,var(--text) 0%,var(--text) 45%,var(--text) 100%);position:relative;overflow:hidden}.islamic-bg:before{content:"";opacity:.55;filter:blur(1.5px);pointer-events:none;background-image:url(/quran-bg.svg);background-position:50% 48%;background-repeat:no-repeat;background-size:min(760px,92%);position:absolute;inset:0}.islamic-bg:after{content:"";pointer-events:none;background:radial-gradient(#0000 40%,#05140f8c 100%);position:absolute;inset:0}.islamic-card{z-index:5;-webkit-backdrop-filter:blur(16px);border:1px solid color-mix(in srgb, var(--accent-2) 45%, transparent);background:#fdfaf0e6;position:relative;box-shadow:0 20px 60px #00000059}.islamic-card:before,.islamic-card:after{content:"✦";color:var(--gold);opacity:.55;font-size:14px;position:absolute;top:14px}.islamic-card:before{right:16px}.islamic-card:after{left:16px}.brand{text-align:center}.brand-main{color:var(--g2);margin:0;font-size:21px;font-weight:800}.brand-sub{color:var(--gold);margin:4px 0 0;font-size:15px;font-weight:700}.brand-divider{background:linear-gradient(90deg,transparent,var(--gold),transparent);border-radius:3px;width:70px;height:3px;margin:10px auto 0}button.link{color:var(--g2);text-underline-offset:3px;background:0 0;padding:4px 6px;font-weight:600;text-decoration:underline}button.link.danger-link,.danger-link{color:var(--red)}.row-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.formgrid.compact{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-top:8px}.formgrid .wide{grid-column:1/-1}.range{grid-template-columns:1fr 1fr;gap:10px;display:grid}.range-side{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;grid-template-columns:1fr 80px;align-items:end;gap:4px 8px;padding:8px;display:grid}.range-side label:first-of-type{grid-column:1}.range-side label:nth-of-type(2){grid-area:1/2}.range-side select{grid-area:2/1}.range-side input{grid-area:2/2}.entry-form{border-bottom:1px dashed var(--line);margin-bottom:8px;padding-bottom:12px}.entry-form .row-actions{margin-top:10px}.history{margin:0;padding:0;list-style:none}.history li{border-bottom:1px solid var(--line);justify-content:space-between;gap:8px;padding:9px 4px;font-size:13px;display:flex}.history li.editing{background:#fff8df}.history .badge{margin-inline-start:6px}.tabs{gap:6px;margin-top:4px;padding:2px 0 4px;display:flex;overflow-x:auto}.tabs button{background:var(--surface-2);color:var(--g2);white-space:nowrap}.tabs button.active{background:var(--g);color:#fff}.att-row{flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0;display:flex}.chip{background:var(--surface-2);color:var(--g2);border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;padding:6px 11px;font-size:12px;font-weight:600;display:inline-flex}.chip.on{background:var(--g);color:#fff}.chip.on.late,.chip.on.excused{background:var(--gold)}.chip.on.absent{background:var(--red)}.chip.on .link{color:#fff}.chip input{width:auto;margin:0}.positions{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.pos-tile{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:3px;padding:8px 10px;font-size:13px;display:flex}.student-head h2{color:var(--g2);font-size:20px}.search-row{grid-template-columns:2fr 1fr;gap:8px;margin:10px 0;display:grid}.recent{flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0;display:flex}label.inline{color:var(--text);align-items:center;gap:6px;margin:0;font-size:13px;display:inline-flex}label.inline input{width:auto}.student-list{margin:0;padding:0;list-style:none}.student-list li{border-bottom:1px solid var(--line);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:12px 6px;display:flex}.student-list li:hover{background:var(--surface-2)}.dot{background:var(--gold);vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-inline-start:6px;display:inline-block}.roster{margin:0;padding:0;list-style:none}.roster li{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:9px 4px;display:flex}.roster .note-input{max-width:260px;padding:7px}.userbox-actions{justify-content:flex-end;gap:6px;margin-top:5px;display:flex;position:relative}.sync-badge{background:#ffffff26;padding:6px 9px;font-size:11px}.sync-badge.warn{color:#2b2100;background:#d3a629}.sync-badge.bad{background:var(--red)}.sync-badge.off{background:#ffffff40}.sync-panel{width:min(340px,90vw);color:var(--text);z-index:50;text-align:right;background:#fff;border-radius:14px;max-height:70vh;padding:12px;position:absolute;top:36px;left:0;overflow:auto;box-shadow:0 10px 40px #0003}.outbox{margin:10px 0 0;padding:0;list-style:none}.outbox li{border-top:1px solid var(--line);justify-content:space-between;gap:6px;padding:8px 0;font-size:12px;display:flex}.outbox li.failed{background:#fff0ee}.install-hint{margin:10px 0}@media (max-width:650px){.range,.search-row{grid-template-columns:1fr}.student-head h2{font-size:18px}}@media print{.no-print,header,nav,.toast{display:none!important}body{background:#fff}main{max-width:none;padding:0}.card{box-shadow:none;border:0}th,td{font-size:11px}}.landing{justify-content:center;align-items:flex-start;min-height:100vh;padding:84px 16px 120px;display:flex}.landing-hero{z-index:5;text-align:center;flex-direction:column;align-items:center;width:100%;max-width:760px;display:flex;position:relative}.landing-logo{width:260px;height:260px;box-shadow:0 10px 35px #00000059,0 0 0 4px color-mix(in srgb, var(--accent-2) 55%, transparent);background:#fff;border-radius:50%;display:block;position:relative}.landing-title{font-family:var(--font-reem-kufi),Tahoma,sans-serif;color:#f4ead0;text-shadow:0 2px 8px #00000073;margin:20px 0 0;font-size:28px;font-weight:800;line-height:1.5}.landing-hero .brand-divider{width:110px}.login-trigger{z-index:30;color:var(--g2);border:1px solid color-mix(in srgb, var(--accent-2) 60%, transparent);background:#fdfaf0f2;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;display:inline-flex;position:fixed;top:14px;right:16px;box-shadow:0 4px 16px #00000040}.login-trigger:hover{background:#fff}.login-overlay{z-index:40;background:#05140f99;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow:auto}.login-overlay .loginbox{-webkit-backdrop-filter:none;background:#fdfaf0;position:relative}.login-overlay .islamic-card:after{display:none}.login-close{color:var(--g2);background:0 0;padding:4px 8px;font-size:16px;position:absolute;top:10px;left:12px}@media (max-width:600px){.landing{padding-top:72px}.landing-logo{width:190px;height:190px}.landing-title{font-size:22px}.login-trigger{padding:8px 13px;top:10px;right:10px}}.landing.islamic-bg:before{display:none}.landing-sky{pointer-events:none;position:absolute;inset:0;overflow:hidden}.aurora{will-change:transform,opacity;border-radius:50%;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate;position:absolute}.aurora.a1{background:radial-gradient(circle,#0c122de6 0%,#0c122d73 40%,#0000 70%);width:75vmax;height:75vmax;animation-name:aurora-1;animation-duration:24s;top:-30vmax;left:-25vmax}.aurora.a2{background:radial-gradient(circle,#6f6aa899 0%,#6f6aa83d 42%,#0000 70%);width:65vmax;height:65vmax;animation-name:aurora-2;animation-duration:19s;top:5vmax;right:-20vmax}.aurora.a3{background:radial-gradient(circle,#2a367099 0%,#2a367040 42%,#0000 70%);width:70vmax;height:70vmax;animation-name:aurora-3;animation-duration:28s;bottom:-35vmax;left:5vmax}.aurora.a4{background:radial-gradient(circle,#dcb65c52 0%,color-mix(in srgb, var(--accent-2) 12%, transparent) 45%,transparent 70%);width:45vmax;height:45vmax;animation-name:aurora-4;animation-duration:16s;top:-12vmax;right:5vmax}.aurora.a5{background:radial-gradient(circle,#e3b0627a 0%,#e3b0622e 45%,#0000 70%);width:50vmax;height:50vmax;animation-name:aurora-5;animation-duration:22s;top:35vmax;left:-12vmax}@keyframes aurora-1{0%{opacity:.9;transform:translate(0,0)scale(1)}to{opacity:.55;transform:translate(32vw,22vh)scale(1.25)}}@keyframes aurora-2{0%{opacity:.7;transform:translate(0,0)scale(1.1)}to{opacity:1;transform:translate(-38vw,30vh)scale(.8)}}@keyframes aurora-3{0%{opacity:.85;transform:translate(0,0)scale(.95)}to{opacity:.5;transform:translate(34vw,-26vh)scale(1.25)}}@keyframes aurora-4{0%{opacity:.5;transform:translate(0,0)scale(.9)}to{opacity:1;transform:translate(-40vw,34vh)scale(1.3)}}@keyframes aurora-5{0%{opacity:1;transform:translate(0,0)scale(1.15)}to{opacity:.5;transform:translate(40vw,-22vh)scale(.85)}}.landing-art{aspect-ratio:900/700;opacity:.55;filter:blur(1.5px);background:url(/quran-bg.svg) 50%/contain no-repeat;width:min(760px,92%);position:absolute;top:48%;left:50%;transform:translate(-50%,-48%)}.moon-glow{aspect-ratio:1;background:radial-gradient(circle,#f1e3b88c 0%,color-mix(in srgb, var(--accent-2) 22%, transparent) 38%,transparent 70%);opacity:.35;will-change:opacity;border-radius:50%;width:30%;animation:9s ease-in-out infinite moon-glow;position:absolute;top:24.3%;left:73.3%;transform:translate(-50%,-50%)}.twinkle{opacity:.15;will-change:opacity,transform;background:#f1e3b8;border-radius:50%;width:3px;height:3px;animation:6s ease-in-out infinite twinkle;position:absolute;box-shadow:0 0 6px 1px #f1e3b8b3}.twinkle.t1{animation-duration:7s;top:9%;left:14%}.twinkle.t2{animation-duration:5.5s;animation-delay:1.8s;top:18%;left:86%}.twinkle.t3{animation-duration:8s;animation-delay:3.1s;top:34%;left:6%}.twinkle.t4{animation-duration:6.5s;animation-delay:.9s;top:62%;left:92%}.twinkle.t5{width:2px;height:2px;animation-duration:7.5s;animation-delay:2.4s;top:78%;left:22%}.twinkle.t6{width:2px;height:2px;animation-duration:6s;animation-delay:4s;top:6%;left:58%}.twinkle.t7{animation-duration:8.5s;animation-delay:1.2s;top:88%;left:70%}.logo-wrap,.landing-title,.landing-hero .brand-divider,.landing-about{animation:1.4s cubic-bezier(.22,.61,.36,1) both landing-rise}.logo-wrap{animation-delay:.15s}.landing-title,.landing-hero .brand-divider{animation-delay:.65s}.landing-about{animation-delay:1.15s}@keyframes moon-glow{0%,to{opacity:.3}50%{opacity:.85}}@keyframes twinkle{0%,to{opacity:.1;transform:scale(.7)}50%{opacity:.9;transform:scale(1.15)}}@keyframes landing-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.aurora,.landing-pattern,.logo-wrap:before,.moon-glow,.twinkle,.logo-wrap,.landing-title,.landing-hero .brand-divider,.landing-about{animation:none!important}.moon-glow{opacity:.45}.twinkle{opacity:.5}}.landing-pattern{opacity:.07;will-change:transform;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cg fill='none' stroke='%23e8cf8a' stroke-width='1.1'%3E%3Crect x='27' y='27' width='42' height='42'/%3E%3Crect x='27' y='27' width='42' height='42' transform='rotate(45 48 48)'/%3E%3Ccircle cx='48' cy='48' r='9'/%3E%3Cpath d='M48 0v18.3M48 96V77.7M0 48h18.3M96 48H77.7M0 0l27 27M96 0L69 27M0 96l27-27M96 96L69 69'/%3E%3C/g%3E%3C/svg%3E") 0 0/96px 96px;animation:60s linear infinite pattern-drift;position:absolute;inset:-96px}@keyframes pattern-drift{0%{transform:translate(0,0)}to{transform:translate(96px,96px)}}.landing.islamic-bg:after{z-index:1;background:radial-gradient(75% 70% at 50% 38%,#0000 35%,#03100b73 75%,#020c08bf 100%)}.landing-hero{z-index:5}.logo-wrap{border-radius:50%;display:inline-block;position:relative}.logo-wrap:before{content:"";background:radial-gradient(circle,#e8cf8a61 0%,color-mix(in srgb, var(--accent-2) 16%, transparent) 42%,transparent 68%);pointer-events:none;border-radius:50%;width:150%;height:150%;animation:7s ease-in-out infinite halo-breathe;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes halo-breathe{0%,to{opacity:.6;transform:translate(-50%,-50%)scale(.96)}50%{opacity:1;transform:translate(-50%,-50%)scale(1.04)}}.landing-about{text-align:right;-webkit-backdrop-filter:blur(14px);border:1px solid color-mix(in srgb, var(--accent-2) 55%, transparent);background:#121a3d8c;border-radius:18px;width:100%;max-width:700px;margin-top:26px;padding:26px 30px 24px;position:relative;box-shadow:0 14px 45px #00000059,inset 0 0 0 1px #e8cf8a14}.landing-about h2{text-align:center;font-family:var(--font-reem-kufi),Tahoma,sans-serif;color:#e8cf8a;margin:0;font-size:22px;font-weight:600}.landing-about .ornament{color:#c7a14a;justify-content:center;align-items:center;gap:10px;margin:8px 0 14px;font-size:12px;display:flex}.landing-about .ornament i{background:linear-gradient(90deg,#0000,#c7a14a,#0000);width:56px;height:1px;display:block}.landing-about p{font-family:var(--font-amiri),serif;color:#f4ead0;text-align:right;margin:0 0 12px;font-size:19px;line-height:2}.landing-about p:last-child{margin-bottom:0}.landing-about a{white-space:nowrap;color:#e8cf8a;text-underline-offset:5px;font-weight:700;text-decoration:underline;text-decoration-thickness:1px}.landing-about a:hover{color:#f6e3a8}.landing-about .corner{opacity:.9;border:0 solid #c7a14a;width:18px;height:18px;position:absolute}.landing-about .corner:after{content:"";background:#e8cf8a;width:5px;height:5px;position:absolute;transform:rotate(45deg)}.landing-about .corner.tl{border-top-width:1.5px;border-left-width:1.5px;top:9px;left:9px}.landing-about .corner.tr{border-top-width:1.5px;border-right-width:1.5px;top:9px;right:9px}.landing-about .corner.bl{border-bottom-width:1.5px;border-left-width:1.5px;bottom:9px;left:9px}.landing-about .corner.br{border-bottom-width:1.5px;border-right-width:1.5px;bottom:9px;right:9px}.landing-about .corner.tl:after{top:-3.5px;left:-3.5px}.landing-about .corner.tr:after{top:-3.5px;right:-3.5px}.landing-about .corner.bl:after{bottom:-3.5px;left:-3.5px}.landing-about .corner.br:after{bottom:-3.5px;right:-3.5px}.landing-social{text-align:center;margin-top:22px;animation:1.4s cubic-bezier(.22,.61,.36,1) 1.5s both landing-rise}.landing-social h3{font-family:var(--font-reem-kufi),Tahoma,sans-serif;color:#e8cf8a;margin:0 0 10px;font-size:15px;font-weight:500}.landing-social ul{justify-content:center;gap:14px;margin:0;padding:0;list-style:none;display:flex}.landing-social a{color:#f4ead0;border:1px solid color-mix(in srgb, var(--accent-2) 70%, transparent);background:#121a3d8c;border-radius:50%;place-items:center;width:48px;height:48px;transition:transform .25s,color .25s,border-color .25s;display:grid;box-shadow:0 4px 14px #0000004d}.landing-social a:hover,.landing-social a:focus-visible{color:#e8cf8a;border-color:#e8cf8a;transform:scale(1.1)}.github-link{z-index:20;color:#e8cf8abf;align-items:center;gap:6px;font-size:12px;text-decoration:none;transition:color .2s;display:inline-flex;position:fixed;bottom:16px;left:16px}.github-link:hover,.github-link:focus-visible{color:#f1dc9c}@media (max-width:600px){.landing-about{padding:22px 18px 20px}.landing-about h2{font-size:20px}.landing-about p{font-size:17px}.github-link{position:absolute;bottom:14px;left:14px}}@media (prefers-reduced-motion:reduce){.landing-social{animation:none}.landing-social a{transition:none}.landing-social a:hover{transform:none}}.rings{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:4px 0 12px;display:grid}.ring-card{background:var(--surface-2);border:1px solid var(--line);text-align:center;border-radius:14px;padding:12px}.ring{width:120px;height:120px;margin:auto;position:relative}.ring svg{width:100%;height:100%}.ring-text{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring-text b{color:var(--text);font-size:24px}.ring-label{color:var(--g2);margin-top:6px;font-size:13px;font-weight:700}.tabs.sliding{position:relative}.sliding>button{z-index:1;transition:color .25s;position:relative}.sliding>button.active{background:0 0}.slide-pill{background:var(--g);box-shadow:0 4px 14px color-mix(in srgb, var(--accent) 35%, transparent);pointer-events:none;z-index:0;border-radius:10px;transition:transform .35s cubic-bezier(.3,1.3,.5,1),width .35s,height .35s,opacity .2s;position:absolute;top:0;left:0}.app-bg{isolation:isolate;min-height:100vh;position:relative}.app-bg:before{content:"";z-index:-1;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%231B2550' stroke-opacity='.09' stroke-width='1'%3E%3Cpath d='M40 8l9.4 22.6L72 40l-22.6 9.4L40 72l-9.4-22.6L8 40l22.6-9.4z'/%3E%3Crect x='20' y='20' width='40' height='40' transform='rotate(45 40 40)'/%3E%3Crect x='20' y='20' width='40' height='40'/%3E%3Ccircle cx='40' cy='40' r='6'/%3E%3Cpath d='M0 0l8 8M80 0l-8 8M0 80l8-8M80 80l-8-8'/%3E%3C/g%3E%3C/svg%3E") repeat,radial-gradient(1200px 600px at 100% 0%,color-mix(in srgb, var(--accent-2) 16%, transparent),transparent 60%),radial-gradient(900px 500px at 0% 100%,color-mix(in srgb, var(--accent) 14%, transparent),transparent 60%),linear-gradient(180deg,#f6f3ea 0%,var(--surface-2) 55%,var(--surface-2) 100%);position:fixed;inset:0}header{background:radial-gradient(circle at 90% -20%,color-mix(in srgb, var(--accent-2) 40%, transparent),transparent 45%),linear-gradient(135deg,var(--text) 0%,var(--accent-strong) 45%,var(--accent) 100%);border-bottom:2px solid color-mix(in srgb, var(--accent-2) 65%, transparent);box-shadow:0 6px 24px #121a3d40}header h1{font-family:var(--font-reem-kufi),Tahoma,sans-serif;letter-spacing:.2px;font-weight:700}.brand-row{align-items:center;gap:12px;display:flex}.header-logo{width:46px;height:46px;box-shadow:0 0 0 2px color-mix(in srgb, var(--accent-2) 80%, transparent),0 4px 12px #00000040;object-fit:cover;background:#fff;border-radius:50%}nav{-webkit-backdrop-filter:blur(10px);border-bottom:1px solid color-mix(in srgb, var(--accent-2) 25%, transparent);background:#ffffffc7}nav button,.tabs button{background:color-mix(in srgb, var(--accent) 8%, transparent)}.card{box-shadow:0 1px 0 color-mix(in srgb, var(--accent-2) 25%, transparent) inset,0 6px 22px -6px #121a3d29;background:#fffffff0;border:1px solid #ffffffe6}.card h3,.student-head h2{font-family:var(--font-reem-kufi),Tahoma,sans-serif;font-weight:700}th{background:var(--surface-2)}input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:1px}button{transition:transform .12s,box-shadow .2s,background .2s}button:active{transform:scale(.97)}.stat-tile{align-items:center;gap:12px;display:flex}.stat-tile>div{flex:1}.stat-icon{background:linear-gradient(135deg,color-mix(in srgb, var(--accent) 14%, transparent),color-mix(in srgb, var(--accent-2) 20%, transparent));border-radius:14px;place-items:center;width:46px;height:46px;font-size:22px;display:grid}.stat b small{color:var(--muted);font-size:14px;font-weight:600}.stat-tile .progress{height:6px;margin-top:6px}.progress>i{background:linear-gradient(90deg,var(--g),var(--accent));transition:width .8s ease-out}.rollcall{border-inline-start:4px solid var(--gold)}.chip.on.present{background:var(--g)}@media (max-width:650px){.header-logo{width:38px;height:38px}}@media print{.app-bg:before{display:none}}.student-list li{content-visibility:auto;contain-intrinsic-size:auto 58px}.insights{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:11px;display:grid}.insights .card,.insight h3{margin:0}.insight p{margin:2px 0 8px}.warn-card{border-inline-start:4px solid var(--red)}.star-card{border-inline-start:4px solid var(--gold)}.insight-list{margin:0;padding:0;list-style:none}.insight-list li{border-bottom:1px solid var(--line);cursor:pointer;justify-content:space-between;align-items:center;padding:8px 4px;font-size:13px;display:flex}.insight-list li:last-child{border-bottom:0}.insight-list li:hover{background:var(--surface-2)}.medal{width:22px;display:inline-block}.edit-row td{background:var(--surface-2)}header{position:relative}nav{top:0}.brand-text{text-align:center;flex-direction:column;align-items:center;display:flex}header .dates{flex-direction:column;align-items:center;gap:3px;margin-top:5px;line-height:1.35;display:flex}header .dates .hijri{opacity:.92;white-space:nowrap;font-size:12px;display:block}header .dates .gregorian{opacity:.68;white-space:nowrap;font-size:10.5px;display:block}@media (max-width:650px){nav{top:0}header .dates{gap:2px;margin-top:3px}header .dates .hijri{font-size:11px}header .dates .gregorian{font-size:10px}}.dialog-overlay{z-index:200;background:#05140f8c;place-items:center;padding:16px;animation:.15s ease-out fade-in;display:grid;position:fixed;inset:0}.dialog{border-top:5px solid var(--g);background:#fff;border-radius:16px;width:100%;max-width:440px;padding:20px;animation:.18s ease-out pop-in;box-shadow:0 20px 60px #00000059}.dialog.danger{border-top-color:var(--red)}.dialog h4{color:var(--g2);font-size:17px;font-family:var(--font-reem-kufi),Tahoma,sans-serif;margin:0 0 8px}.dialog.danger h4{color:var(--red)}.dialog p{color:var(--muted);white-space:pre-line;margin:0 0 16px;font-size:14px;line-height:1.8}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}@media (prefers-reduced-motion:reduce){.dialog-overlay,.dialog{animation:none}}.trash-table td{vertical-align:middle}.trash-empty{padding:28px 0;font-size:14px}.badge.kind-profile{color:#5b3a8c;background:#efe7fb}.badge.kind-student{background:var(--accent-soft);color:var(--accent)}.badge.kind-circle{color:#2d568e;background:#edf3ff}.badge.kind-arabic_book,.badge.kind-arabic_entry{color:#a5452c;background:#fdeee9}.badge.kind-quran_entry,.badge.kind-talqeen_session{color:#89650e;background:#fff7df}.badge.kind-edu_note{color:#45535e;background:#eef1f4}@media (max-width:650px){.trash-table th:nth-child(5),.trash-table td:nth-child(5),.staff-table th:nth-child(5),.staff-table td:nth-child(5){display:table-cell}.trash-table th:nth-child(4),.trash-table td:nth-child(4),.staff-table th:nth-child(2),.staff-table td:nth-child(2){display:none}.trash-table td.row-actions,.staff-table td.row-actions{flex-direction:column;align-items:flex-start}}@media (max-width:380px){header{padding:12px 14px}.headerrow{flex-wrap:wrap;justify-content:center;gap:10px}.userbox{text-align:right;justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.userbox-actions{margin-top:0}}.filter-bar{background:var(--card);border:1px solid var(--line);border-radius:14px;align-items:center;gap:8px;margin:11px 0;padding:8px 12px;display:flex;box-shadow:0 2px 12px #0000000a}.filter-bar .filter-label{color:var(--g2);white-space:nowrap;font-weight:700}.filter-bar select{flex:1;min-width:0;font-weight:700}.filter-bar.on{background:var(--accent-soft);border-color:var(--g)}.filter-bar .filter-clear{background:var(--g2);padding:6px 11px;font-size:14px;line-height:1}.cell-select{width:auto;min-width:84px;padding:6px 8px}.lesson-edit{grid-template-columns:1fr auto;align-items:center;gap:8px;margin-top:10px;display:grid}.lesson-show{background:var(--accent-soft);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;display:flex}.lesson-show b{color:var(--g2);font-size:16px}.lesson-card .small{margin:8px 0 0}@media (max-width:650px){.lesson-edit{grid-template-columns:1fr}}.ranking-tabs{margin:8px 0}.ranking-tabs .chip{cursor:pointer}.ranking-tabs .chip.active{background:var(--g);color:#fff}.weights{border-top:1px dashed var(--line);margin-top:14px;padding-top:10px}.weights h4{margin:0 0 8px}.weights-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.weight{background:var(--surface-2);border:1px solid var(--line);color:var(--g2);border-radius:12px;flex-direction:column;gap:4px;padding:8px 10px;font-size:13px;font-weight:600;display:flex}.weight-input{align-items:center;gap:6px;display:flex}.weight-input input{text-align:center;width:100%;font-size:16px}.weights-foot{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.podium{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}.podium li{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;grid-template-columns:40px 1fr auto auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.podium li:first-child{background:#fff7df;border-color:#ecd48f}.medal{text-align:center;font-size:24px;font-weight:800}.podium-name{text-align:right;font-size:16px;font-weight:700}.podium-score{color:var(--g2);font-size:18px}.move{white-space:nowrap;border-radius:999px;padding:2px 7px;font-size:12px;font-weight:700}.move.up{background:var(--accent-soft);color:var(--g)}.move.down{color:var(--red);background:#fff0ee}.move.same{color:var(--muted)}.move.new{color:var(--blue);background:#edf3ff}.rank-table td{vertical-align:top}.unranked li{justify-content:space-between;align-items:center;gap:8px;display:flex}.activity-head{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.activity-row{flex-direction:column;align-items:stretch}.activity-roster{margin-top:8px}.roster-grid{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.roster-grid .chip.on{background:var(--g);color:#fff}.charts{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:10px;display:grid}.mini-chart{background:var(--surface-2);border:1px solid var(--line);border-radius:14px;margin:0;padding:10px}.mini-chart figcaption{color:var(--g2);justify-content:space-between;gap:8px;margin-bottom:4px;font-size:13px;display:flex}.mini-chart svg{direction:ltr;width:100%;height:auto;display:block}.mini-chart .grid-line{stroke:var(--line);stroke-width:1px}.mini-chart .axis-text{fill:var(--muted);font-size:10px}@media (max-width:650px){.podium li{grid-template-columns:34px 1fr auto auto;padding:8px}}a.btn{background:var(--g);color:#fff;font-weight:700;font-size:inherit;border-radius:10px;justify-content:center;align-items:center;padding:10px 14px;text-decoration:none;display:inline-flex}a.btn.secondary{background:var(--surface-2);color:var(--g2)}a.btn.small{padding:6px 10px;font-size:.9em}.guardian-box{background:var(--surface-2);border:1px dashed var(--line);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;display:flex}.guardian-box .phone{color:var(--muted);unicode-bidi:isolate;margin-inline-start:8px;font-weight:600;display:inline-block}.guardian{max-width:720px;margin:0 auto;padding:14px 16px 40px}.guardian-brand{align-items:center;gap:12px;margin:6px 0 4px;display:flex}.guardian-brand h1{font-family:var(--font-reem-kufi),Tahoma,sans-serif;color:var(--g2);margin:0;font-size:1.25rem}.guardian-head h2{font-family:var(--font-reem-kufi),Tahoma,sans-serif;margin:0 0 2px}.guardian-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.guardian-stats .stat b{margin:4px 0;font-size:1.5rem;display:block}.guardian-days{margin:0;padding:0;list-style:none}.guardian-days li{border-bottom:1px solid var(--line);padding:10px 0;line-height:1.8}.guardian-days li:last-child{border-bottom:0}.day-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.juz-grid{direction:rtl;grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.juz-cell{aspect-ratio:1;background:var(--line);color:var(--muted);border:1px solid var(--line);border-radius:8px;justify-content:center;align-items:center;font-weight:700;display:flex;position:relative;overflow:hidden}.juz-cell.part{background:linear-gradient(0deg,var(--accent-soft) var(--fill,50%),var(--line) var(--fill,50%));color:var(--g2)}.juz-cell.full{background:var(--g);color:#fff;border-color:var(--g)}@media (min-width:560px){.juz-grid{grid-template-columns:repeat(10,1fr)}}.juz-cell.sel{outline:3px solid var(--gold);outline-offset:1px}button.juz-cell{cursor:pointer;padding:0}.juz-cell.part{border-color:var(--accent-2)}.send-reports{border-inline-start:4px solid var(--g)}.send-progress{align-self:end}.send-progress b{margin-bottom:4px;display:block}.warn-notice{color:#7a5408;background:#fff7e6;border-color:#f0d9a8}.send-list{margin:8px 0 0;padding:0;list-style:none}.send-list>li{border-bottom:1px solid var(--line);padding:10px 0}.send-list>li:last-child{border-bottom:0}.send-list>li.sent{opacity:.75}.send-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.send-head .phone{text-align:right;unicode-bidi:isolate;display:block}.no-phone{color:#9a5b00;margin-top:2px;font-size:.85em;font-weight:700}.inline-phone{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.inline-phone input{flex:1;min-width:150px;max-width:220px}.msg-preview{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;margin:8px 0 0;padding:10px;font-family:inherit;font-size:.92em;line-height:1.7}.absence-alerts .insight-list li{cursor:default;gap:8px}.absent-name{cursor:pointer;flex:1}.map-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.map-stats .stat{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:10px}.map-stats .stat b{margin:2px 0;font-size:1.25rem;display:block}.memo-map h4{margin:16px 0 8px}.juz-detail{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;margin-top:10px;padding:10px}.juz-detail ul{margin:6px 0 0;padding:0;list-style:none}.juz-detail li{border-bottom:1px dashed var(--line);justify-content:space-between;gap:8px;padding:5px 0;display:flex}.juz-detail li:last-child{border-bottom:0}.goal-box{background:#fffaf0;border:1px solid #efdfb8;border-radius:12px;margin:6px 0;padding:10px}.review-list{margin:0;padding:0;list-style:none}.review-list li{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.review-list li:last-child{border-bottom:0}.review-box{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;margin-bottom:12px;padding:8px 10px}.review-box summary{cursor:pointer;color:var(--g2);font-weight:700}@media (max-width:420px){.map-stats{grid-template-columns:1fr 1fr}}.cert-overlay{z-index:1000;background:#121a3db8;flex-direction:column;align-items:center;padding:12px 8px;display:flex;position:fixed;inset:0;overflow:auto}.cert-actions{gap:8px;margin-bottom:10px;display:flex}.cert-scroll{justify-content:center;width:100%;display:flex}.cert-sheet{--w:min(1123px,96vw);width:var(--w);aspect-ratio:297/210;font-size:calc(var(--w)/60);box-sizing:border-box;color:var(--text);font-family:var(--font-reem-kufi),"Amiri","Traditional Arabic",Tahoma,serif;direction:rtl;background:#f9f3e3 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%23b88716' stroke-opacity='.55' stroke-width='1.6'%3E%3Cpath d='M40 8l9.4 22.6L72 40l-22.6 9.4L40 72l-9.4-22.6L8 40l22.6-9.4z'/%3E%3Crect x='20' y='20' width='40' height='40' transform='rotate(45 40 40)'/%3E%3Crect x='20' y='20' width='40' height='40'/%3E%3C/g%3E%3C/svg%3E");padding:1.1em;box-shadow:0 10px 40px #00000059}.cert-frame{box-sizing:border-box;outline:.12em solid var(--accent);outline-offset:-.75em;text-align:center;background:#fffdf7;border:.35em double #b88716;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:1.2em 3em;display:flex;position:relative}.cert-corner{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 80'%3E%3Cg fill='%23b88716'%3E%3Cpath d='M40 4l8 20 20-8-8 20 20 4-20 4 8 20-20-8-8 20-8-20-20 8 8-20L0 40l20-4-8-20 20 8z' opacity='.85'/%3E%3C/g%3E%3Ccircle cx='40' cy='40' r='9' fill='%23fffdf7'/%3E%3Ccircle cx='40' cy='40' r='5' fill='%231B2550'/%3E%3C/svg%3E") 50%/contain no-repeat;width:3.2em;height:3.2em;position:absolute}.cert-corner.tl{top:.9em;right:.9em}.cert-corner.tr{top:.9em;left:.9em}.cert-corner.bl{bottom:.9em;right:.9em}.cert-corner.br{bottom:.9em;left:.9em}.cert-logo{object-fit:contain;width:4.6em;height:4.6em;margin-bottom:.2em}.cert-center{color:var(--accent);font-size:1.15em;font-weight:700}.cert-basmala{color:#8a6a1c;margin:.35em 0 .1em;font-size:1em}.cert-title{color:#8a6a1c;letter-spacing:.02em;margin:.05em 0 .15em;font-size:2.6em}.cert-text{margin:.2em 0;font-size:1.15em;line-height:1.9}.cert-name{color:var(--accent-strong);border-bottom:.08em solid #b88716;margin:.15em 0 .25em;padding:0 1.2em .1em;font-size:2.1em;font-weight:700}.cert-dua{color:var(--muted);margin:.5em 0 .2em;font-size:.95em}.cert-date{color:var(--muted);justify-content:center;gap:1.6em;margin-top:.3em;font-size:.95em;display:flex}.cert-signs{justify-content:space-between;width:80%;margin-top:.4em;display:flex}.cert-signs div{flex-direction:column;align-items:center;min-width:10em;font-size:.95em;display:flex}.cert-signs b{min-height:1.4em}.cert-signs i{border-bottom:.06em dashed #8a6a1c;width:9em;margin-top:.7em;display:block}@page cert{size:A4 landscape;margin:0}@media print{body.printing-cert>:not(.cert-overlay){display:none!important}body.printing-cert .cert-overlay{background:0 0;padding:0;position:static;overflow:visible}body.printing-cert .no-print-cert{display:none!important}body.printing-cert .cert-sheet{--w:297mm;aspect-ratio:auto;width:297mm;height:210mm;box-shadow:none;page:cert;-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:4.95mm}}.ready-card{border-inline-start:4px solid var(--g)}.ready-card .insight-list li{cursor:default;gap:8px}.register-form{flex-direction:column;gap:12px;display:flex}.register-form h2{font-family:var(--font-reem-kufi),Tahoma,sans-serif;margin:0;font-size:1.15rem}.register-form p{margin:0}.register-form label{flex-direction:column;gap:5px;font-size:.95em;font-weight:600;display:flex}.register-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.hp-field{clip-path:inset(50%);opacity:0;pointer-events:none;width:1px;height:1px;overflow:hidden;position:absolute!important}.register-done h2{font-family:var(--font-reem-kufi),Tahoma,sans-serif;font-size:1.15rem}.reg-list{flex-direction:column;gap:10px;margin:10px 0 0;padding:0;list-style:none;display:flex}.reg-list li{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:8px;padding:10px;display:flex}.reg-list.done li{opacity:.85;flex-direction:row;justify-content:space-between;align-items:center;gap:8px}.reg-actions{flex-wrap:wrap;gap:6px;display:flex}.reg-actions select{flex:1;width:auto;min-width:140px}.dash-tiles{margin-top:4px}.dash-tiles .card{margin:0}.tile-button{text-align:inherit;font:inherit;color:inherit;cursor:pointer;width:100%}.quiet-card .insight-list li{cursor:default;flex-wrap:wrap;gap:4px 10px}.table-scroll{overflow-x:auto}.dash-table td,.dash-table th{white-space:nowrap}@media (max-width:520px){.dash-tiles{grid-template-columns:1fr 1fr;gap:8px}.dash-tiles .stat-tile{flex-direction:column;align-items:flex-start;gap:6px;padding:12px}.dash-tiles .stat-icon{border-radius:11px;width:36px;height:36px;font-size:18px}.dash-tiles .stat b{font-size:22px}}.export-row,.audit-filters{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));align-items:end;gap:8px;display:grid}.export-row label,.audit-filters label{flex-direction:column;gap:4px;font-size:.9em;display:flex}.audit-list{flex-direction:column;gap:8px;margin:12px 0;padding:0;list-style:none;display:flex}.audit-list>li{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:4px;padding:9px 11px;display:flex}.audit-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.audit-changes{margin:0;padding-inline-start:18px;font-size:.92em;line-height:1.7}.audit-changes li{overflow-wrap:anywhere}.switch-row{align-items:center;gap:8px;margin:8px 0;font-weight:600;display:flex}.switch-row input{width:22px;height:22px;accent-color:var(--g)}.honor h2{font-family:var(--font-reem-kufi),Tahoma,sans-serif;margin:0 0 4px;font-size:1.15rem}.honor-list{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.honor-list li{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;align-items:center;gap:10px;padding:9px 12px;display:flex}.honor-list .medal{text-align:center;min-width:1.8em;font-size:1.4rem}.honor-list b{flex:1}.honor-cert li{background:#fffaf0;border-color:#efe0b8}.moves{margin-top:4px}.moves ul{margin:4px 0;padding-inline-start:18px;line-height:1.8}
:root{--font-sans:var(--font-body), "IBM Plex Sans Arabic", "Segoe UI", Tahoma, system-ui, sans-serif;--fs-xs:11px;--fs-sm:12.5px;--fs-md:14px;--fs-lg:17px;--fs-xl:22px;--fs-2xl:clamp(28px, 5vw, 44px);--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--r-sm:8px;--r-md:12px;--r-lg:18px;--r-xl:26px;--shadow-1:0 1px 2px #1018280d;--shadow-2:0 8px 24px -10px #1018282e;--bg:#f7f8fa;--surface:#fff;--surface-2:#f2f4f7;--line:#e4e7ec;--line-strong:#d0d5dd;--text:#101828;--muted:#5d6676;--danger:#c0392b;--danger-soft:#fdecea;--warn:#9a6a00;--warn-soft:#fff6dc;--info-soft:#eef4ff;--accent:#1b2550;--accent-strong:#121a3d;--accent-soft:#eceef6;--accent-2:#c48b38;--accent-2-soft:#f8f0e1;--on-accent:#fff;--g:var(--accent);--g2:var(--accent-strong);--gold:var(--accent-2);--card:var(--surface);--red:var(--danger);--blue:var(--accent);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-palette=navy]{--accent:#1b2550;--accent-strong:#121a3d;--accent-soft:#eceef6;--accent-2:#c48b38;--accent-2-soft:#f8f0e1}[data-palette=indigo]{--accent:#2f3e9e;--accent-strong:#222d78;--accent-soft:#eef0fb;--accent-2:#b8925a;--accent-2-soft:#f7f0e5}[data-palette=plum]{--accent:#6a2c5b;--accent-strong:#4f1f43;--accent-soft:#f6eef4;--accent-2:#c09a73;--accent-2-soft:#f8f1ea}[data-palette=slate]{--accent:#334155;--accent-strong:#1e293b;--accent-soft:#eef1f5;--accent-2:#8a94a6;--accent-2-soft:#f1f3f6}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e1116;--surface:#161a21;--surface-2:#1d222b;--line:#2a303b;--line-strong:#3a4250;--text:#e8eaf0;--muted:#9aa3b2;--danger:#ef6b5b;--danger-soft:#3a1f1c;--warn:#f0c050;--warn-soft:#332a12;--info-soft:#1b2436;--accent:#9db4e6;--accent-strong:#c3d2f3;--accent-soft:#1f2840;--accent-2:#e0bd6a;--accent-2-soft:#2e2719;--on-accent:#0e1116;--shadow-2:0 10px 30px -12px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root:not([data-theme=light])[data-palette=navy],:root:not([data-theme=light]) [data-palette=navy]{--accent:#9db4e6;--accent-strong:#c3d2f3;--accent-soft:#1f2840;--accent-2:#e0bd6a}:root:not([data-theme=light])[data-palette=indigo],:root:not([data-theme=light]) [data-palette=indigo]{--accent:#8f9bff;--accent-strong:#b3bbff;--accent-soft:#232842;--accent-2:#d8b98a}:root:not([data-theme=light])[data-palette=plum],:root:not([data-theme=light]) [data-palette=plum]{--accent:#e3a3d2;--accent-strong:#f0c6e4;--accent-soft:#352234;--accent-2:#dcb995}:root:not([data-theme=light])[data-palette=slate],:root:not([data-theme=light]) [data-palette=slate]{--accent:#b6c2d4;--accent-strong:#dbe3ee;--accent-soft:#252b35;--accent-2:#9aa3b2}}:root[data-theme=dark]{--bg:#0e1116;--surface:#161a21;--surface-2:#1d222b;--line:#2a303b;--line-strong:#3a4250;--text:#e8eaf0;--muted:#9aa3b2;--danger:#ef6b5b;--danger-soft:#3a1f1c;--warn:#f0c050;--warn-soft:#332a12;--info-soft:#1b2436;--accent:#9db4e6;--accent-strong:#c3d2f3;--accent-soft:#1f2840;--accent-2:#e0bd6a;--accent-2-soft:#2e2719;--on-accent:#0e1116;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html,body{font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}body{font-size:var(--fs-md);line-height:1.6}a{color:var(--accent)}::selection{background:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{background:var(--accent);color:var(--on-accent);border-radius:var(--r-md);font-family:inherit;font-weight:600;transition:background .15s,transform .1s,box-shadow .15s}button:hover:not(:disabled){background:var(--accent-strong)}button:active:not(:disabled){transform:scale(.98)}button.secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--line)}button.secondary:hover:not(:disabled){background:var(--line)}button.danger{background:var(--danger);color:#fff}button.link{color:var(--accent);background:0 0;padding:0;font-weight:600}button.link:hover{background:0 0;text-decoration:underline}input,select,textarea{background:var(--surface);color:var(--text);border:1px solid var(--line-strong);border-radius:var(--r-md);font-size:var(--fs-md)}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent);outline-offset:0}label{color:var(--muted);font-size:var(--fs-sm);font-weight:500}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}.card h3,.student-head h2{letter-spacing:0;font-family:inherit;font-weight:700}.muted{color:var(--muted)}th{background:var(--surface-2);color:var(--muted);font-weight:600}th,td{border-bottom-color:var(--line)}.badge,.pill{background:var(--surface-2);color:var(--text)}.notice{background:var(--warn-soft);border-right-color:var(--accent-2);color:var(--text)}.excellent{background:var(--accent-soft);color:var(--accent-strong)}.good{background:var(--info-soft);color:var(--accent)}.redo{background:var(--danger-soft);color:var(--danger)}.warn{background:var(--warn-soft);color:var(--warn)}.progress{background:var(--surface-2)}.progress>i{background:var(--accent)}.toast{background:var(--text);color:var(--bg);border-radius:var(--r-md)}.edit-row td,.insight-list li:hover{background:var(--surface-2)}.insight-list li{border-bottom-color:var(--line)}.stat-icon{background:var(--accent-soft);color:var(--accent)}.chip.on.present{background:var(--accent)}.rollcall,.star-card{border-inline-start-color:var(--accent-2)}.geo-bg{isolation:isolate;position:relative}.geo-bg:before{content:"";z-index:-1;pointer-events:none;background-color:var(--accent);opacity:.07;-webkit-mask-composite:source-in;position:absolute;inset:0;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48'%3E%3Cpath d='M48 0H0v48' fill='none' stroke='%23000' stroke-width='1'/%3E%3C/svg%3E"),linear-gradient(#000,#0000 85%);mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48'%3E%3Cpath d='M48 0H0v48' fill='none' stroke='%23000' stroke-width='1'/%3E%3C/svg%3E"),linear-gradient(#000,#0000 85%);-webkit-mask-position:0 0;mask-position:0 0;-webkit-mask-size:auto;mask-size:auto;-webkit-mask-repeat:repeat;mask-repeat:repeat;-webkit-mask-clip:border-box;mask-clip:border-box;-webkit-mask-origin:border-box;mask-origin:border-box;-webkit-mask-composite:source-in;mask-composite:intersect;-webkit-mask-source-type:auto;mask-mode:match-source}.geo-star{color:var(--accent);display:block}.geo-star path,.geo-star circle,.geo-star rect{fill:none;stroke:currentColor;stroke-width:1px;vector-effect:non-scaling-stroke}.app-bg{background:var(--bg);min-height:100vh}.app-bg:before{content:none}header{background:var(--surface);color:var(--text);border-bottom:1px solid var(--line);box-shadow:none;padding:12px max(16px, env(safe-area-inset-right)) 12px max(16px, env(safe-area-inset-left));position:relative}header:after{content:none}header h1{font-family:inherit;font-size:var(--fs-lg);color:var(--text);font-weight:700}.brand-row{align-items:center;gap:12px;min-width:0;display:flex}.brand-text{text-align:start;align-items:flex-start;min-width:0}header .dates{color:var(--muted);align-items:flex-start}header .dates .hijri,header .dates .gregorian{opacity:1}.header-logo{border-radius:var(--r-md);background:var(--surface-2);width:42px;height:42px;box-shadow:none;border:1px solid var(--line);object-fit:contain}.header-mark{border-radius:var(--r-md);background:var(--accent);width:42px;height:42px;color:var(--on-accent);flex:none;place-items:center;font-size:18px;font-weight:700;display:grid}.userbox,.userbox>span{color:var(--muted)}.userbox button{background:var(--surface-2);color:var(--text);border:1px solid var(--line)}.userbox button:hover{background:var(--line)}.userbox-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;margin-top:4px;display:flex}.userbox button.logout{align-items:center;gap:6px;display:inline-flex}.center-switch{max-width:190px;font-size:var(--fs-sm);border-radius:var(--r-sm);padding:6px 8px}nav{background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding:8px max(12px, env(safe-area-inset-right)) 8px max(12px, env(safe-area-inset-left));gap:4px;top:0}nav>button,nav button{color:var(--muted);border-radius:var(--r-md);white-space:nowrap;background:0 0;align-items:center;gap:7px;padding:8px 13px;font-weight:600;display:inline-flex}nav>button:hover:not(.active){background:var(--surface-2);color:var(--text)}nav>button.active{background:var(--accent-soft);color:var(--accent)}nav>button svg{flex:none}.tabs button{background:var(--surface-2);color:var(--muted)}.tabs button.active{background:var(--accent);color:var(--on-accent)}.slide-pill{background:var(--accent-soft);box-shadow:none;border-radius:var(--r-md)}.sliding>button.active,.tabs.sliding>button.active{color:var(--accent);background:0 0}@media (max-width:760px){nav{scroll-snap-type:x proximity;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}nav::-webkit-scrollbar{display:none}nav>button{scroll-snap-align:center}}@media (max-width:650px){input,select,textarea{font-size:16px}button,a.btn,.chip{min-height:42px}button.link,.juz-cell,button.juz-cell,.login-close,header button{min-height:0}main{padding:10px 10px calc(16px + env(safe-area-inset-bottom))}.card{padding:14px}.header-logo,.header-mark{width:36px;height:36px}.center-switch{max-width:130px}}.plan-banner{border-radius:var(--r-md);background:var(--accent-2-soft);max-width:1180px;color:var(--text);font-size:var(--fs-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:10px auto 0;padding:9px 14px;display:flex}.login{background:var(--bg)}.loginbox{background:var(--surface);color:var(--text);border:1px solid var(--line);box-shadow:var(--shadow-2);border-radius:var(--r-xl)}.loginbox h1{color:var(--text);font-family:inherit}.login-overlay{z-index:80;-webkit-backdrop-filter:blur(4px);background:#10182873;place-items:center;padding:16px;animation:.2s ease-out fade-in;display:grid;position:fixed;inset:0}.login-overlay .loginbox{width:100%;max-width:430px;max-height:calc(100vh - 32px);padding:28px 24px 18px;animation:.35s cubic-bezier(.16,1,.3,1) lg-pop;position:relative;overflow:auto}.login-close{background:var(--surface-2);width:34px;height:34px;color:var(--muted);border:1px solid var(--line);border-radius:50%;padding:0;position:absolute;top:12px;left:12px}.lg-head{text-align:center}.lg-head img,.lg-head .header-mark{border-radius:var(--r-lg);object-fit:contain;width:64px;height:64px;margin:0 auto 10px}.lg-head h2{font-size:var(--fs-lg);margin:0}.lg-head p{color:var(--muted);font-size:var(--fs-sm);margin:4px 0 0}.seg{background:var(--surface-2);border-radius:var(--r-md);gap:4px;margin:16px 0 4px;padding:4px;display:flex}.seg button{color:var(--muted);font-size:var(--fs-sm);background:0 0;flex:1;padding:8px}.seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}.seg button:hover:not(.on){color:var(--text);background:0 0}.otp-input{letter-spacing:.5em;text-align:center;direction:ltr;height:56px;padding-inline-start:.5em;font-family:ui-monospace,Menlo,monospace;font-size:24px}.field{margin-top:12px}.btn-block{width:100%;margin-top:14px}@keyframes lg-pop{0%{opacity:0;transform:translateY(14px)scale(.98)}}@keyframes fade-in{0%{opacity:0}}.dev-credit{border:1px solid var(--line);width:fit-content;color:var(--muted);border-radius:999px;align-items:center;gap:8px;margin:22px auto 0;padding:7px 14px;text-decoration:none;transition:border-color .2s,color .2s;display:flex}.dev-credit:hover{border-color:var(--accent);color:var(--text)}.dev-by{letter-spacing:.3em;font-size:9px}.dev-name{color:var(--text);font-size:13px;font-weight:600}.dev-ig{color:var(--accent);place-items:center;display:grid}.dev-ig svg{width:15px;height:15px}.dev-credit.compact{margin-top:16px}.cx{background:var(--bg);min-height:100vh;color:var(--text);flex-direction:column;display:flex;overflow-x:clip}.cx>main{width:100%;min-width:0;max-width:none;margin:0;padding:0}.cx-nav{width:100%;max-width:1080px;color:inherit;box-shadow:none;background:0 0;justify-content:space-between;align-items:center;gap:12px;margin:0 auto;padding:16px;display:flex;position:relative}.cx-brand{color:var(--text);align-items:center;gap:10px;min-width:0;font-weight:700;text-decoration:none;display:flex}.cx-brand img,.cx-brand .header-mark{border-radius:var(--r-md);object-fit:contain;width:38px;height:38px}.cx-brand span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cx-nav-actions{flex:none;align-items:center;gap:8px;display:flex}.cx-hero{grid-template-columns:1.2fr .8fr;align-items:center;gap:clamp(20px,5vw,56px);width:100%;max-width:1080px;margin:0 auto;padding:clamp(28px,7vw,80px) 16px clamp(28px,6vw,64px);display:grid}.cx-kicker{font-size:var(--fs-sm);color:var(--accent);align-items:center;gap:8px;font-weight:600;display:inline-flex}.cx-kicker:before{content:"";background:currentColor;width:22px;height:1px}.cx-hero h1{font-size:var(--fs-2xl);letter-spacing:-.01em;margin:12px 0 0;font-weight:700;line-height:1.25}.cx-hero p.lead{color:var(--muted);white-space:pre-line;max-width:56ch;margin:16px 0 0;font-size:clamp(15px,2.2vw,18px);line-height:1.9}.cx-cta{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.btn{border-radius:var(--r-md);background:var(--accent);color:var(--on-accent);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-weight:600;text-decoration:none;transition:background .15s;display:inline-flex}.btn:hover{background:var(--accent-strong)}.btn.ghost{color:var(--text);border-color:var(--line-strong);background:0 0}.btn.ghost:hover{background:var(--surface-2)}.cx-art{aspect-ratio:1;justify-self:center;width:100%;max-width:380px;position:relative}.cx-art .cx-stars{pointer-events:none;width:144%;height:144%;position:absolute;inset:-22%}.cx-art .cx-logo{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-2);border-radius:50%;place-items:center;display:grid;position:absolute;inset:22%;overflow:hidden}.cx-art .cx-logo img{object-fit:contain;width:72%;height:72%}.cx-art .cx-logo .header-mark{border-radius:50%;width:46%;height:46%;font-size:clamp(28px,6vw,48px)}.cx-section{width:100%;max-width:1080px;margin:0 auto;padding:8px 16px 40px}.cx-contact{grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:10px;display:grid}.cx-contact a,.cx-contact div{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);color:var(--text);align-items:center;gap:10px;min-width:0;padding:14px;text-decoration:none;display:flex}.cx-contact a:hover{border-color:var(--accent)}.cx-contact svg{width:20px;height:20px;color:var(--accent);flex:none}.cx-contact span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cx-contact small{color:var(--muted);font-size:var(--fs-xs);display:block}.cx-notes{border-radius:var(--r-lg);background:var(--accent-2-soft);border:1px dashed var(--accent-2);white-space:pre-line;padding:18px;line-height:1.9}.cx-footer{border-top:1px solid var(--line);text-align:center;color:var(--muted);font-size:var(--fs-sm);margin-top:auto;padding:20px 16px 26px}.cx-footer a{color:var(--muted)}@media (max-width:760px){.cx-hero{text-align:center;grid-template-columns:1fr}.cx-hero p.lead{margin-inline:auto}.cx-cta,.cx-kicker{justify-content:center}.cx-art{grid-row:1;max-width:240px}}@media (max-width:420px){.cx-nav .btn span{display:none}}.px-hero{text-align:center;width:100%;max-width:980px;margin:0 auto;padding:clamp(32px,8vw,96px) 16px 24px}.px-hero h1{font-size:var(--fs-2xl);margin:14px 0 0;line-height:1.25}.px-hero p{color:var(--muted);max-width:60ch;margin:16px auto 0;font-size:clamp(15px,2.2vw,18px);line-height:1.9}.px-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:12px;width:100%;max-width:980px;margin:0 auto;padding:16px;display:grid}.px-art{aspect-ratio:1;width:min(300px,70vw);margin:-12px auto -8px;position:relative}.px-art .cx-stars{pointer-events:none;width:130%;height:130%;position:absolute;inset:-15%}.px-card{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);padding:18px}.px-card h3{font-size:var(--fs-md);margin:10px 0 4px}.px-card p{color:var(--muted);font-size:var(--fs-sm);margin:0;line-height:1.8}.px-icon{border-radius:var(--r-md);background:var(--accent-soft);width:38px;height:38px;color:var(--accent);place-items:center;display:grid}.px-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.ob{background:var(--bg);min-height:100vh;padding:24px 16px 48px}.ob-box{max-width:620px;margin:0 auto}.ob-steps{counter-reset:s;gap:6px;margin:18px 0;padding:0;list-style:none;display:flex}.ob-steps li{counter-increment:s;background:var(--line);border-radius:99px;flex:1;height:4px}.ob-steps li.on{background:var(--accent)}.ob-title{font-size:var(--fs-xl);margin:0}.ob-sub{color:var(--muted);margin:6px 0 0}.ob-actions{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:18px;display:flex}.slug-input{direction:ltr;align-items:stretch;display:flex}.slug-input span{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-md) 0 0 var(--r-md);color:var(--muted);font-size:var(--fs-sm);white-space:nowrap;border-inline-end:0;place-items:center;padding:0 10px;display:grid}.slug-input input{border-radius:0 var(--r-md) var(--r-md) 0}.palettes{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.palette-opt{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);color:var(--text);text-align:start;flex-direction:column;align-items:flex-start;gap:8px;padding:12px;display:flex}.palette-opt:hover:not(:disabled){background:var(--surface);border-color:var(--line-strong)}.palette-opt.on{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.palette-opt i{gap:4px;display:flex}.palette-opt i b{border:1px solid #00000014;border-radius:50%;width:22px;height:22px}.logo-pick{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.logo-pick img,.logo-pick .header-mark{border-radius:var(--r-lg);object-fit:contain;background:var(--surface-2);border:1px solid var(--line);width:64px;height:64px}.sx-table td,.sx-table th{white-space:nowrap}.status{font-size:var(--fs-xs);background:var(--surface-2);border-radius:99px;padding:2px 8px;font-weight:600;display:inline-block}.status.ACTIVE{background:var(--accent-soft);color:var(--accent)}.status.TRIAL{background:var(--accent-2-soft);color:var(--text)}.status.SUSPENDED{background:var(--danger-soft);color:var(--danger)}.table-wrap{overflow-x:auto}@media (prefers-reduced-motion:reduce){.login-overlay,.login-overlay .loginbox{animation:none}}@media print{.app-bg,body{background:#fff}header,nav{display:none!important}}.panel{border-color:var(--accent-soft);box-shadow:var(--shadow-2);animation:.18s ease-out panel-in}.panel-inset{box-shadow:none;border:1px solid var(--line);background:var(--surface-2);margin:12px 0}.panel-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.panel-head h3{margin:0}button.icon-close{background:var(--surface-2);width:36px;height:36px;color:var(--muted);border:1px solid var(--line);border-radius:999px;flex:none;place-items:center;padding:0;display:inline-grid}button.icon-close:hover:not(:disabled){background:var(--danger-soft);color:var(--danger);border-color:#0000}button.icon-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.on:not(.chip):not(.palette-opt){box-shadow:inset 0 0 0 2px var(--accent)}@keyframes panel-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.panel{animation:none}}.circle-form textarea{font-size:15px;line-height:1.7}.cf-count{margin:4px 0 0}.ob-created{gap:6px;margin:12px 0;padding:0;list-style:none;display:grid}.ob-created li{background:var(--accent-soft);border-radius:10px;padding:8px 12px}.ob-created li>span:first-child{color:var(--accent);font-weight:700}[data-palette]{--g:var(--accent);--g2:var(--accent-strong);--gold:var(--accent-2);--blue:var(--accent)}.color-pick{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.color-pick input[type=color]{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:44px;height:36px;padding:2px}.brand-preview{border:1px dashed var(--line-strong);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;padding:12px;display:flex}.reg-toggle{align-items:center;gap:8px;margin:6px 0 10px;display:flex}td.row-actions{gap:4px 12px}td.row-actions button.link{padding:4px 2px}.pw-field{display:block;position:relative}.pw-field input{width:100%;padding-inline-end:44px}.pw-eye{inset-inline-end:4px;width:36px;height:36px;box-shadow:none;color:var(--muted);border-radius:var(--r-sm);background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.pw-eye:hover,.pw-eye[aria-pressed=true]{color:var(--accent);background:var(--accent-soft)}.pw-match{font-size:var(--fs-sm);margin:4px 0 0}.pw-match.ok{color:#1f8a4c}.userbox-actions{flex-wrap:wrap;align-items:center}.userbox .home-btn{border-radius:var(--r-sm,10px);background:var(--surface-2);color:var(--text);border:1px solid var(--line);align-items:center;gap:6px;padding:7px 10px;font-size:12px;text-decoration:none;display:inline-flex}.userbox .home-btn:hover{background:var(--line)}.back-row{margin:0 2px 8px}.back-btn{font-weight:700;font-size:var(--fs-md);padding:6px 0;text-decoration:none}@media (max-width:650px){.userbox-actions{flex-wrap:nowrap;gap:5px}.userbox .home-btn svg,.userbox button.logout svg{display:none}.userbox .home-btn,.userbox button.logout{white-space:nowrap;padding:6px 9px;font-size:12px}}@media (max-width:520px){.headerrow{flex-wrap:wrap;gap:10px}.userbox{text-align:right;justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.userbox-actions{margin-top:0}}.userbox .sync-badge,.userbox-actions>*{white-space:nowrap}@media (max-width:650px){nav{flex-wrap:wrap;justify-content:center;gap:4px;padding:8px 6px;overflow-x:visible}nav>button{gap:5px;padding:7px 10px;font-size:13px}}.audit-search{width:100%;margin:10px 0 4px}.range input[aria-invalid]{border-color:var(--danger);background:var(--danger-soft)}.range-hint{flex-basis:100%;margin:4px 0 0}:root[data-ui-theme=white]{--bg:#fff!important;--surface:#f8fafc!important;--surface-2:#f1f5f9!important;--line:#e8edf3!important;--line-strong:#d6dde6!important}:root[data-ui-theme=navy]{--bg:#f0f5ff!important;--surface:#fff!important;--surface-2:#e9f0fd!important;--line:#dbe4f5!important;--line-strong:#c3d0ea!important;--accent:#1e3a8a!important;--accent-strong:#0f172a!important;--accent-soft:#e3eafb!important;--accent-2:#c48b38!important;--accent-2-soft:#f8f0e1!important;--on-accent:#fff!important}:root[data-ui-theme=gold]{--bg:#fffbeb!important;--surface:#fffdf6!important;--surface-2:#fdf3d7!important;--line:#f1e3bd!important;--line-strong:#e4cf98!important;--accent:#b45309!important;--accent-strong:#92400e!important;--accent-soft:#fdf0d5!important;--accent-2:#d97706!important;--accent-2-soft:#fef3c7!important;--on-accent:#fff!important}:root[data-ui-theme=emerald]{--bg:#f0faf5!important;--surface:#fff!important;--surface-2:#e6f5ee!important;--line:#d3ebe0!important;--line-strong:#b8dccb!important;--accent:#047857!important;--accent-strong:#065f46!important;--accent-soft:#e2f4ec!important;--accent-2:#b8925a!important;--accent-2-soft:#f7f0e5!important;--on-accent:#fff!important}:root[data-ui-theme=dark]{--accent:#9db4e6!important;--accent-strong:#c3d2f3!important;--accent-soft:#1f2840!important;--accent-2:#e0bd6a!important;--accent-2-soft:#2e2719!important;--on-accent:#0e1116!important}:root[data-ui-theme=navy] .app-bg>header{background:#0f172a;border-color:#0f172a}:root[data-ui-theme=navy] .app-bg>header h1,:root[data-ui-theme=navy] .app-bg>header .dates,:root[data-ui-theme=navy] .app-bg>header .userbox>span{color:#fff}:root[data-ui-theme=navy] .app-bg>header .dates span,:root[data-ui-theme=navy] .app-bg>header .userbox>span{opacity:.85}:root[data-font=cairo] .app-bg{font-family:var(--font-cairo), Tahoma, sans-serif}:root[data-font=tajawal] .app-bg{font-family:var(--font-tajawal), Tahoma, sans-serif}:root[data-font=amiri] .app-bg{font-family:var(--font-amiri-ui), "Traditional Arabic", serif}:root[data-font] .app-bg h1,:root[data-font] .app-bg h2,:root[data-font] .app-bg h3,:root[data-font] .app-bg h4,:root[data-font] .app-bg input,:root[data-font] .app-bg select,:root[data-font] .app-bg textarea,:root[data-font] .app-bg button{font-family:inherit}:root[data-fs=sm] .app-bg{zoom:.9}:root[data-fs=lg] .app-bg{zoom:1.15}.appearance{position:relative}.appearance-btn{white-space:nowrap;padding:5px 10px;font-size:12px}.appearance-pop{top:calc(100% + 6px);z-index:60;border-radius:var(--r-lg);background:var(--surface);width:270px;color:var(--text);border:1px solid var(--line);box-shadow:var(--shadow-2);text-align:start;padding:12px 14px 14px;position:absolute;inset-inline-end:0}.ap-title{font-size:var(--fs-sm);color:var(--muted);margin:8px 0 6px;font-weight:700}.ap-title:first-child{margin-top:0}.ap-swatches{flex-wrap:wrap;gap:8px;display:flex}.ap-swatch{border:2px solid var(--line-strong);width:32px;height:32px;box-shadow:inset 0 0 0 2px var(--surface);border-radius:50%;padding:0}.ap-swatch.on{border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--surface), 0 0 0 2px var(--accent)}.ap-name{font-size:var(--fs-xs);color:var(--muted);margin-top:4px}.ap-row{grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:6px;display:grid}.ap-chip{background:var(--surface-2);color:var(--text);border:1px solid var(--line);flex-direction:column;align-items:center;gap:1px;padding:6px 4px;font-size:13px;font-weight:600;display:flex}.ap-chip small{color:var(--muted);font-family:system-ui,sans-serif;font-size:10px;font-weight:500}.ap-chip.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.ap-chip.size-sm{font-size:12px}.ap-chip.size-lg{font-size:15px}@media (max-width:520px){.appearance-pop{top:70px;width:auto;position:fixed;inset-inline:12px}}
