@font-face{font-family:Cairo;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/cairo-arabic-400-normal.bdb3e8f1.woff2) format("woff2"),url(/_next/static/media/cairo-arabic-400-normal.5b6c5853.woff) format("woff");unicode-range:u+06??,u+0750-077f,u+0870-088e,u+0890-0891,u+0897-08e1,u+08e3-08ff,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-10ec4,u+10efc-10eff,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:Cairo;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/cairo-latin-ext-400-normal.c2556185.woff2) format("woff2"),url(/_next/static/media/cairo-latin-ext-400-normal.bbae51e2.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cairo;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/cairo-latin-400-normal.21e47acc.woff2) format("woff2"),url(/_next/static/media/cairo-latin-400-normal.0d52679f.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cairo;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/cairo-arabic-600-normal.f0d0406b.woff2) format("woff2"),url(/_next/static/media/cairo-arabic-600-normal.787b34c8.woff) format("woff");unicode-range:u+06??,u+0750-077f,u+0870-088e,u+0890-0891,u+0897-08e1,u+08e3-08ff,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-10ec4,u+10efc-10eff,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:Cairo;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/cairo-latin-ext-600-normal.dfaff630.woff2) format("woff2"),url(/_next/static/media/cairo-latin-ext-600-normal.b72743b1.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cairo;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/cairo-latin-600-normal.afc3403b.woff2) format("woff2"),url(/_next/static/media/cairo-latin-600-normal.793b9980.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cairo;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/cairo-arabic-700-normal.051e538e.woff2) format("woff2"),url(/_next/static/media/cairo-arabic-700-normal.2dbfd9fe.woff) format("woff");unicode-range:u+06??,u+0750-077f,u+0870-088e,u+0890-0891,u+0897-08e1,u+08e3-08ff,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-10ec4,u+10efc-10eff,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:Cairo;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/cairo-latin-ext-700-normal.30b90317.woff2) format("woff2"),url(/_next/static/media/cairo-latin-ext-700-normal.ced81e67.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cairo;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/cairo-latin-700-normal.a4cd8812.woff2) format("woff2"),url(/_next/static/media/cairo-latin-700-normal.b9ae7023.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.justify-between{justify-content:space-between}.gap-3{gap:calc(var(--spacing) * 3)}}:root{color-scheme:light;--ink:#17324d;--muted:#667085;--teal:#19786e;--paper:#f6f5f1;--green:#e9f4f1;--blue:#edf4fa;--gold:#fbf4e6;--red:#fbecec}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:Cairo,sans-serif;font-size:15px;line-height:1.75}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{opacity:.5;cursor:wait}a{color:var(--teal);text-decoration:none}:focus-visible{outline-offset:3px;outline:3px solid #b7791f}h1,h2,h3,p{margin:0}h1{font-size:22px;line-height:1.5}h1,h2{font-weight:700}h2{font-size:19px}h3{font-size:17px}.shell{width:100%;max-width:430px;min-height:100dvh;margin-inline:auto;padding:28px 20px 36px}.header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.subtle{font-size:13px}.muted,.subtle{color:var(--muted)}.back,.text-button{color:var(--teal);background:0 0;min-height:44px;padding:8px}.primary{background:var(--teal);color:#fff;border-radius:14px;min-height:50px;padding:12px 18px;font-weight:600}.primary,.secondary{text-align:center;width:100%;display:block}.secondary{color:var(--ink);background:#fff;border:1px solid #e0e4e5;border-radius:14px;min-height:48px;padding:12px}.card{background:#fff;border-radius:18px;padding:18px}.stack{gap:12px;display:grid}.space{margin-top:24px}.small-space{margin-top:12px}.login{flex-direction:column;justify-content:center;gap:24px;min-height:100dvh;padding-bottom:80px;display:flex}.mark{background:var(--green);width:56px;height:56px;color:var(--teal);border-radius:18px;place-items:center;font-size:30px;display:grid}label{font-size:14px;font-weight:600;display:block}input:not([type=checkbox]),select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #d9dfe2;border-radius:12px;min-height:48px;padding:10px 12px}input[type=checkbox]{accent-color:var(--teal);width:20px;height:20px}.check{align-items:center;gap:10px;min-height:44px;font-weight:400;display:flex}.code{text-align:center;letter-spacing:12px;font-variant-numeric:tabular-nums;font-size:28px!important}.notice{background:var(--gold);color:#94621b;border-radius:14px;padding:12px 16px;font-size:13px}.error{background:var(--red);color:#a03f3f}.toast{z-index:20;background:var(--ink);color:#fff;border-radius:14px;max-width:390px;margin:auto;padding:12px 16px;position:fixed;bottom:16px;left:16px;right:16px;box-shadow:0 4px 20px #17324d20}.toast.error{color:#fff;background:#a03f3f}.progress-track{background:#e4e9e6;border-radius:8px;height:7px;margin-top:12px;overflow:hidden}.progress-fill{background:var(--teal);height:100%;transition:width .2s}.student-row{text-align:right;width:100%;color:var(--ink);background:#fff;border-radius:16px;align-items:center;gap:12px;padding:16px;display:flex}.student-row .name{flex:1;font-weight:600}.index{min-width:20px;font-size:13px}.chevron,.index{color:var(--muted)}.chevron{font-size:22px}.badge{min-height:38px;color:var(--muted);white-space:nowrap;background:#f2f3f4;border-radius:24px;justify-content:center;align-items:center;padding:4px 18px;font-size:14px;display:inline-flex}.badge.MEMORIZED{color:#19786e;background:#eaf6ef}.badge.NOT_MEMORIZED{background:var(--red);color:#a03f3f}.badge.ABSENT{color:var(--muted);background:#f2f3f4}.home-footer{gap:10px;margin-top:24px;display:grid}.assignment-today{background:var(--gold);border-radius:18px;margin-bottom:24px;padding:16px 18px}.assignment-today h3{color:#94621b;margin-bottom:6px;font-size:15px}.assignment-today p{font-weight:600}.assignment-today .subtle{font-weight:400}.actions{direction:ltr;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:6px;display:grid}.action{min-height:48px;color:var(--ink);background:var(--blue);direction:rtl;border-radius:14px;padding:8px 4px;font-size:15px;font-weight:600}.action.memory{background:var(--green);color:var(--teal)}.action.assignment{background:var(--gold);color:#94621b}.absent{background:var(--red);color:#a03f3f;border:1px solid #f0caca;border-radius:14px;width:100%;min-height:46px;margin-top:12px}.entries{margin-top:28px}.entries h3{margin-bottom:12px}.entry{background:#fff;border-radius:16px;padding:12px 18px}.entry-top{align-items:center;gap:10px;display:flex}.entry-top .range{flex:1;font-size:16px;font-weight:600}.entry .subtle{margin-top:6px}.entry .badge{background:var(--blue);color:var(--ink);padding-inline:14px}.entry .badge.memory{background:var(--green);color:var(--teal)}.result{margin-top:22px}.result>p{color:var(--muted);margin-bottom:10px;font-size:14px}.result-options{gap:8px;display:flex}.result-options button{flex:1;min-height:44px;padding-inline:8px}.result-options [aria-pressed=true]{outline-offset:2px;outline:2px solid}.bottom-action{margin-top:24px}.report-link{text-align:center;min-height:44px;padding:10px;display:block}dialog{background:var(--paper);color:var(--ink);border:0;border-radius:24px 24px 0 0;width:100%;max-width:430px;max-height:90dvh;margin:auto auto 0;padding:0;box-shadow:0 -10px 40px #17324d15}dialog::backdrop{background:#17324d66}.sheet{padding:20px;overflow:auto}.sheet-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.sheet-header button{width:44px;height:44px;color:var(--muted);background:#fff;border-radius:50%;font-size:24px}.range-fields{border:0;margin:0;padding:0}.range-fields legend{margin-bottom:8px;font-size:15px;font-weight:700}.range-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:10px;display:grid}.range-grid label{color:var(--muted);font-size:12px}.range-grid select{padding:10px 8px}.range-grid input{text-align:center;direction:ltr}.range-amount{background:var(--blue);color:var(--ink);border-radius:12px;margin-top:12px;padding:10px 12px;font-size:14px}.summary-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.summary-grid .card{text-align:center;padding:14px 4px}.summary-grid strong{font-size:26px;display:block}.summary-grid span{font-size:13px}.totals{justify-content:space-between;gap:12px;display:flex}.totals strong{font-size:20px}.closed{background:var(--green);color:var(--teal)}@media (min-width:700px){.shell{padding-top:44px}dialog{border-radius:24px;margin:auto}.login{padding-top:70px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}h3{font-weight:700}.student-row .name{overflow-wrap:anywhere;min-width:0}@media (max-width:360px){.student-row{gap:8px;padding:14px}.student-row .badge{padding-inline:10px;font-size:12px}.student-row .index{min-width:14px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}