@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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:Readex Pro Variable;font-style:normal;font-display:swap;font-weight:160 700;src:url(/assets/readex-pro-arabic-wght-normal-DiwT_uOQ.woff2) format("woff2-variations");unicode-range:U+0600-06FF,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:Readex Pro Variable;font-style:normal;font-display:swap;font-weight:160 700;src:url(/assets/readex-pro-vietnamese-wght-normal-Do5Nl5oc.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Readex Pro Variable;font-style:normal;font-display:swap;font-weight:160 700;src:url(/assets/readex-pro-latin-ext-wght-normal-CsYMu49W.woff2) format("woff2-variations");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:Readex Pro Variable;font-style:normal;font-display:swap;font-weight:160 700;src:url(/assets/readex-pro-latin-wght-normal--ekFhJJC.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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 Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/cairo-arabic-wght-normal-CJWMIGCx.woff2) format("woff2-variations");unicode-range:U+0600-06FF,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 Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/cairo-latin-ext-wght-normal-at8nfxId.woff2) format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/cairo-latin-wght-normal-PfPtmrPZ.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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}:root{--bg: #f7f8fc;--surface: #ffffff;--surface-2: #f4f5fa;--surface-3: #eceef6;--border: #e2e5ef;--border-2: #c8cedd;--text: #182033;--text-2: #566078;--text-3: #858da1;--text-4: #aab0bf;--accent: #1089a0;--accent-hover: #0c6c7d;--accent-soft: #e6f6f8;--accent-border: #9bd4de;--secondary: #12a594;--secondary-soft: #e7f8f5;--purple: #8b5cf6;--purple-soft: #f3edff;--yellow: #d89012;--yellow-soft: #fff7df;--blue: #3282f6;--blue-soft: #eaf3ff;--green: #1a7f37;--green-bg: #dafbe1;--green-border: #aceebb;--red: #cf222e;--red-bg: #ffebe9;--red-border: #ffcecb;--r: 8px;--control-height: 38px;--control-font-size: 13px;--touch-target: 36px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .04);--shadow-lg: 0 12px 28px rgba(0, 0, 0, .09), 0 4px 8px rgba(0, 0, 0, .05)}[data-theme=dark]{--bg: #0c1216;--surface: #161b22;--surface-2: #1c2128;--surface-3: #21262d;--border: #282e36;--border-2: #3d444d;--text: #e6edf3;--text-2: #aab3be;--text-3: #8b949e;--text-4: #4d545e;--accent: #1089a0;--accent-hover: #27aec4;--accent-soft: #0d3a42;--accent-border: #18626f;--secondary: #42cbbb;--secondary-soft: #153b38;--purple: #ad8cff;--purple-soft: #33264c;--yellow: #f1bd52;--yellow-soft: #443719;--blue: #70a7ff;--blue-soft: #1d304e;--green: #3fb950;--green-bg: #0d2119;--green-border: #1b4721;--red: #f85149;--red-bg: #1d0d0d;--red-border: #4a1818}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter Variable,Inter,system-ui,sans-serif}[lang=ar] body{font-family:Readex Pro Variable,Readex Pro,system-ui,sans-serif;font-size:15px}[lang=ar] h1,[lang=ar] h2,[lang=ar] h3{font-family:Cairo Variable,Cairo,Readex Pro Variable,sans-serif}.app-shell{min-height:100vh;padding:16px;display:flex;flex-direction:column;gap:12px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12px;font-weight:500;color:var(--text-2)}.input{width:100%;min-height:36px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);color:var(--text);font-size:13px;font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--text-4);font-size:12px}.input:hover{border-color:var(--accent)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.pw-wrap{position:relative;display:block}.pw-wrap .input{padding-inline-end:38px}.pw-toggle{position:absolute;inset-block-start:0;inset-inline-end:0;height:100%;width:36px;background:transparent;border:none;cursor:pointer;color:var(--text-4);display:flex;align-items:center;justify-content:center;transition:color .15s}.pw-toggle:hover{color:var(--text-2)}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .65s linear infinite;flex-shrink:0}.spinner-white{border-color:#ffffff4d;border-top-color:#fff}.btn{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 12px;box-sizing:border-box;border:0;border-radius:8px;font-family:inherit;font-size:12px;font-weight:600;line-height:1.4;cursor:pointer;outline:none;white-space:nowrap;transition:background .14s ease,color .14s ease,transform .14s ease}.loading-splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:var(--bg);opacity:1;transition:opacity .6s ease}.loading-splash.is-fading{opacity:0;pointer-events:none}.loading-stamp{display:flex;flex-direction:column;align-items:center;gap:20px}.loading-mark{width:min(108px,26vw);height:auto}.loading-wedge{fill:var(--accent);opacity:0;transform:scale(.4);transform-box:fill-box;transform-origin:center;animation:loading-stamp-in .55s cubic-bezier(.2,.75,.3,1.25) forwards}.wedge-1{animation-delay:.15s}.wedge-2{animation-delay:.33s}.wedge-3{animation-delay:.51s}@keyframes loading-stamp-in{0%{opacity:0;transform:scale(.4)}55%{opacity:1;transform:scale(1.09)}to{opacity:1;transform:scale(1)}}.loading-word{color:var(--accent);font-family:Inter Variable,Inter,system-ui,sans-serif;font-size:22px;font-weight:800;letter-spacing:-1px;direction:ltr}.loading-letter{opacity:0;animation:loading-letter-in .45s ease forwards}@keyframes loading-letter-in{to{opacity:1}}@media(prefers-reduced-motion:reduce){.loading-wedge,.loading-letter{animation-duration:.01s;animation-delay:0s!important;opacity:1;transform:none}}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.btn-neutral{border:1px solid var(--border-2);background:transparent;color:var(--text-2)}.btn-neutral:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.btn-ghost{border:1px solid var(--border-2);background:transparent;color:var(--text-2)}.btn-ghost:hover:not(:disabled){border-color:var(--red);background:transparent;color:var(--red)}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px)}.btn-success{background:var(--green);color:#fff}.btn-success:hover:not(:disabled){background:#146c2e;transform:translateY(-1px)}.btn-warning{background:#b76b00;color:#fff}.btn-warning:hover:not(:disabled){background:#965800;transform:translateY(-1px)}.btn-muted{background:#7b8495;color:#fff}.btn-muted:hover:not(:disabled){background:#626b7c;transform:translateY(-1px)}.btn-sm{min-height:30px;padding:5px 10px;font-size:11px}.btn-lg{min-height:38px;padding:9px 14px;font-size:14px;font-weight:600}.btn-block{width:100%}[lang=ar] .btn{min-height:38px;padding-block:6px;font-family:Cairo Variable,Cairo,Readex Pro Variable,sans-serif;font-size:13px;font-weight:600;line-height:1.65;letter-spacing:0}[lang=ar] .btn-lg{min-height:42px;font-size:14px}.brand-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.brand-mark{width:32px;height:32px;background:var(--accent);border-radius:6px;display:flex;align-items:center;justify-content:center;color:#fff}.brand-wordmark{font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.01em}[lang=ar] .brand-wordmark{font-family:Cairo Variable,Cairo,Readex Pro Variable,sans-serif;letter-spacing:normal}.input:disabled{opacity:.55;cursor:not-allowed;background:var(--surface-2)}.dashboard-layout{--shell-header-height: 56px;min-height:100vh;background:var(--bg)}.dashboard-workspace{min-width:0;min-height:100vh}.dashboard-content{min-width:0}.dashboard-content .app-shell{min-height:auto;padding:20px 16px}.learning-hero{position:relative;overflow:hidden;min-height:190px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px;border:1px solid var(--accent-border);border-radius:18px;background:linear-gradient(135deg,var(--accent-soft),var(--surface))}.learning-hero:after{content:"";position:absolute;width:180px;height:180px;inset-block-start:-95px;inset-inline-end:-55px;border:34px solid color-mix(in srgb,var(--accent) 9%,transparent);border-radius:50%}.learning-hero>*{position:relative;z-index:1}.learning-eyebrow{display:block;margin-bottom:7px;color:var(--accent);font-size:12px;font-weight:700}.learning-hero h1{margin:0;font-size:clamp(23px,4vw,32px);line-height:1.45}.learning-hero p{max-width:540px;margin:7px 0 0;color:var(--text-2);font-size:14px;line-height:1.8}.learning-hero-mark{width:76px;height:76px;display:grid;flex:0 0 76px;place-items:center;color:#fff;background:var(--accent);border-radius:22px;box-shadow:0 12px 28px color-mix(in srgb,var(--accent) 25%,transparent);font-family:Cairo Variable,Cairo,sans-serif;font-size:38px;font-weight:700;transform:rotate(-4deg)}.learning-section{display:flex;flex-direction:column;gap:14px;margin-top:10px}.learning-section-heading h2{margin:0;font-size:18px}.learning-section-heading p{margin:3px 0 0;color:var(--text-3);font-size:12px}.learning-card-grid{display:grid;grid-template-columns:1fr;gap:12px}.learning-card{position:relative;min-height:148px;display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:18px;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:var(--shadow-xs);transition:transform .15s,box-shadow .15s,border-color .15s}.learning-card:hover{transform:translateY(-2px);border-color:var(--border-2);box-shadow:var(--shadow-md)}.learning-card-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px}.learning-card-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.learning-card-questions .learning-card-icon{color:var(--accent);background:var(--accent-soft)}.learning-card-exams .learning-card-icon{color:var(--secondary);background:var(--secondary-soft)}.learning-card-results .learning-card-icon{color:var(--purple);background:var(--purple-soft)}.learning-card h3{margin:0;font-size:15px}.learning-card p{margin:3px 0 0;color:var(--text-3);font-size:12px;line-height:1.65}.learning-soon{position:absolute;inset-block-start:18px;inset-inline-end:18px;padding:3px 8px;border-radius:999px;color:var(--yellow);background:var(--yellow-soft);font-size:10px;font-weight:700}.admin-shortcuts{display:grid;grid-template-columns:1fr;gap:10px}.admin-shortcuts a{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:0 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);font-size:13px;font-weight:600;text-decoration:none}.admin-shortcuts a:hover{border-color:var(--accent-border);color:var(--accent);background:var(--accent-soft)}@media(min-width:620px){.learning-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.learning-hero{min-height:174px;padding:22px 18px}.learning-hero-mark{display:none}}.top-nav{height:var(--shell-header-height);position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:10px;padding:0 14px;font-family:Inter Variable,Inter,system-ui,sans-serif;background:color-mix(in srgb,var(--surface) 94%,transparent);border-bottom:1px solid var(--border);box-shadow:0 2px 8px #0a18240b;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.top-nav-title{display:flex;flex:1;min-width:0;flex-direction:column}.top-nav-title strong{font-size:14px;line-height:1.35}.top-nav-title span{color:var(--text-3);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-nav-actions{display:flex;align-items:center;gap:6px}.top-nav-icon,.top-nav-text,.side-nav-close{border:0;font-family:inherit;cursor:pointer;color:var(--text-2);background:transparent}.top-nav-icon{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--border);border-radius:var(--r)}.top-nav-icon:hover,.top-nav-text:hover{color:var(--accent);background:var(--accent-soft)}.top-nav-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.top-nav-text{height:36px;padding:0 8px;border-radius:var(--r);font-size:12px}.logout-button{display:none}.nav-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:59;border:0;padding:0;pointer-events:none;opacity:0;background:#0a121973;transition:opacity .2s}.nav-backdrop.is-visible{opacity:1;pointer-events:auto}.side-nav{position:fixed;z-index:60;inset-block:0;inset-inline-start:0;width:min(82vw,280px);display:flex;flex-direction:column;padding:0;overflow-y:auto;color:var(--text);background:var(--surface);border:0;font-family:Inter Variable,Inter,system-ui,sans-serif;box-shadow:var(--shadow-lg);transform:translate(calc(-100% - 8px));transition:transform .22s ease}[dir=rtl] .side-nav{right:0;left:auto;transform:translate(calc(100% + 8px))}[dir=ltr] .side-nav{left:0;right:auto}.side-nav.is-open,[dir=rtl] .side-nav.is-open{transform:translate(0)}.side-nav-brand{height:var(--shell-header-height);min-height:var(--shell-header-height);display:flex;align-items:center;gap:9px;padding:0 18px;border-bottom:1px solid var(--border)}.side-nav-logo{width:36px;height:36px;display:grid;flex:none;place-items:center;color:#fff;background:var(--accent);border-radius:10px}.side-nav-brand-copy{min-width:0;display:flex;flex-direction:column;justify-content:center}.side-nav-brand-copy .brand-wordmark{line-height:1.25}.side-nav-brand-copy small{max-width:140px;overflow:hidden;color:var(--text-3);font-size:13px;font-weight:400;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.side-nav-close{margin-inline-start:auto;width:32px;height:32px;font-size:24px;line-height:1}.side-nav-section-label{padding:22px 22px 7px;color:var(--text-4);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.side-nav-links{display:flex;flex-direction:column;gap:3px;padding-inline:10px}.side-nav-link{min-height:46px;display:flex;align-items:center;gap:11px;padding:0 12px;color:var(--text-2);border-radius:10px;font-size:13px;font-weight:600;line-height:1.5;text-decoration:none;transition:.15s}.side-nav-link:hover{color:var(--text);background:var(--surface-3)}.side-nav-link.is-active{color:var(--accent);background:var(--accent-soft);font-weight:700}.side-nav-link svg{width:18px;height:18px;flex:0 0 18px}.side-nav-link small{margin-inline-start:auto;padding:2px 6px;color:var(--text-3);background:var(--surface-3);border-radius:8px;font-size:9px}.side-nav-link.is-disabled{cursor:default;opacity:.62}.side-nav-account{position:relative;margin-top:auto;border-top:1px solid var(--border)}.side-nav-user{width:100%;min-height:72px;display:flex;align-items:center;gap:11px;padding:16px 18px;border:0;background:transparent;color:var(--text);font:inherit;text-align:start;cursor:pointer}.side-nav-user:hover,.side-nav-user[aria-expanded=true]{background:var(--surface-2)}.side-nav-user-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.side-nav-user-copy strong{overflow:hidden;font-size:13px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.side-nav-user-copy small{overflow:hidden;color:var(--text-3);font-size:13px;font-weight:400;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.user-avatar{width:38px;height:38px;display:grid;flex:none;place-items:center;color:var(--accent);background:var(--accent-soft);border-radius:50%;font-size:14px;font-weight:700}.account-chevron{width:15px;height:15px;margin-inline-start:auto;fill:none;stroke:var(--text-3);stroke-width:2;transition:transform .15s}.side-nav-user[aria-expanded=true] .account-chevron{transform:rotate(180deg)}.side-nav-account-menu{position:absolute;z-index:5;inset-inline:10px;bottom:calc(100% + 8px);overflow:hidden;padding:0;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow-lg);animation:row-menu-in-up .12s ease-out}.side-nav-account-menu button{width:100%;min-height:39px;display:flex;align-items:center;gap:10px;padding:8px 12px;border:0;background:transparent;color:var(--text-2);font:inherit;font-size:12px;font-weight:600;text-align:start;cursor:pointer}.side-nav-account-menu button:hover{color:var(--text);background:var(--surface-3)}.account-menu-icon{width:18px;height:18px;display:grid;flex:0 0 18px;place-items:center;color:var(--text-3)}.account-menu-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.side-nav-account-menu button .language-icon{width:18px;color:inherit;background:transparent;font-family:Inter Variable,Inter,sans-serif;font-size:10px;font-weight:700;line-height:1}.side-nav-account-menu>div{height:1px;background:var(--border)}.side-nav-account-menu button.is-danger{color:var(--red)}.side-nav-account-menu button.is-danger:hover{background:var(--red-bg)}.mobile-tab-bar{position:fixed;z-index:80;inset-inline:12px;bottom:max(10px,env(safe-area-inset-bottom));height:68px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;padding:6px;border:1px solid color-mix(in srgb,var(--border) 74%,transparent);border-radius:22px;background:color-mix(in srgb,var(--surface) 88%,transparent);box-shadow:0 16px 38px #1820332e,0 4px 12px #18203317,inset 0 1px color-mix(in srgb,#fff 64%,transparent);backdrop-filter:blur(22px) saturate(1.35);-webkit-backdrop-filter:blur(22px) saturate(1.35);isolation:isolate}.mobile-tab-bar:after{content:"";position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:color-mix(in srgb,var(--surface) 88%,transparent);pointer-events:none}.mobile-tab,.mobile-account-tab>.mobile-tab{position:relative;z-index:2;min-width:0;height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:4px 2px;border:0;border-radius:16px;background:transparent;color:var(--text-3);font:inherit;text-decoration:none;cursor:pointer;transition:color .2s ease,background .2s ease,transform .24s cubic-bezier(.22,1,.36,1),box-shadow .2s ease}.mobile-tab:before{content:"";position:absolute;bottom:3px;width:5px;height:5px;border-radius:50%;background:transparent;opacity:0;transition:opacity .2s ease}.mobile-tab svg{position:relative;width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .24s cubic-bezier(.22,1,.36,1)}.mobile-tab small{max-width:100%;overflow:hidden;font-size:10px;font-weight:600;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.mobile-tab.is-active{color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 55%,transparent)}.mobile-tab.is-active:before{background:var(--accent);opacity:.75}.mobile-tab.is-active svg{transform:translateY(-1px)}.mobile-tab.is-disabled{opacity:.58}.mobile-tab-avatar{width:25px;height:25px;display:grid;place-items:center;border:2px solid var(--border-2);border-radius:50%;background:var(--surface-2);color:var(--text-2);font-family:Cairo Variable,Cairo,sans-serif;font-size:10px;font-weight:700}.mobile-tab.is-active .mobile-tab-avatar{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.mobile-account-tab{position:relative;min-width:0}.mobile-account-tab>.mobile-tab{width:100%}.mobile-account-backdrop{position:fixed;z-index:81;inset-block-start:0;inset-inline:12px;bottom:calc(68px + max(10px,env(safe-area-inset-bottom)));border:0;border-radius:0 0 22px 22px;background:#0c121c59;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:modal-overlay-in .16s ease}.mobile-account-menu{position:fixed;z-index:4;inset-inline:12px;bottom:calc(90px + env(safe-area-inset-bottom));overflow:hidden;padding:8px;border:0;border-radius:20px;background:var(--surface);box-shadow:0 18px 48px #1820332e,0 4px 14px #18203314;animation:mobile-sheet-in .22s cubic-bezier(.22,1,.36,1)}.mobile-sheet-handle{display:none}.mobile-account-identity{display:flex;align-items:center;gap:11px;padding:10px 10px 14px}.mobile-account-identity>span{width:42px;height:42px;display:grid;flex:none;place-items:center;border-radius:50%;color:var(--accent);background:var(--accent-soft);font-weight:700}.mobile-account-identity>div{min-width:0;display:flex;flex-direction:column;gap:2px}.mobile-account-identity strong{font-size:14px}.mobile-account-identity small{overflow:hidden;color:var(--text-3);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.mobile-menu-group{overflow:hidden;margin-top:6px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.mobile-account-menu a,.mobile-account-menu button{width:100%;min-height:46px;display:flex;align-items:center;gap:10px;padding:10px 13px;border:0;background:transparent;color:var(--text-2);font:inherit;font-size:13px;font-weight:600;text-align:start;text-decoration:none;cursor:pointer}.mobile-account-menu a:hover,.mobile-account-menu button:hover{color:var(--text);background:var(--surface-3)}.mobile-account-menu .account-menu-icon{width:20px;height:20px;flex-basis:20px;color:var(--text-3)}.mobile-account-menu .account-menu-icon svg{width:19px;height:19px}.mobile-account-menu button .language-icon{color:var(--text-3);background:transparent;font-family:Inter Variable,Inter,sans-serif;font-size:10px;font-weight:700}.mobile-menu-group>*+*{border-top:1px solid var(--border)}.mobile-account-menu .is-danger{color:var(--red)}.mobile-account-menu .is-danger:hover{background:var(--red-bg)}@keyframes mobile-sheet-in{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:768px){.side-nav,.nav-backdrop{display:none}.dashboard-content{padding-bottom:calc(106px + env(safe-area-inset-bottom))}.top-nav{justify-content:center}.top-nav-title{flex:initial;text-align:center}}[lang=ar] .side-nav,[lang=ar] .top-nav{font-family:Cairo Variable,Cairo,Readex Pro Variable,sans-serif}@media(min-width:769px){.dashboard-layout{--shell-header-height: 68px;display:grid;grid-template-columns:248px minmax(0,1fr)}[dir=rtl] .dashboard-layout{grid-template-columns:minmax(0,1fr) 248px;direction:ltr}[dir=rtl] .dashboard-workspace{grid-column:1;grid-row:1;direction:rtl}.side-nav{position:sticky;top:0;width:248px;height:100vh;transform:none;box-shadow:3px 0 10px #0a18240e}[dir=rtl] .side-nav{right:auto;grid-column:2;grid-row:1;direction:rtl;transform:none;box-shadow:-3px 0 10px #0a18240e}.nav-backdrop,.side-nav-close,.top-nav{display:none}.dashboard-content .app-shell{padding:28px 30px}.logout-button{display:grid}.mobile-tab-bar,.page-back{display:none}}.auth-root{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);position:relative}.auth-topleft-brand{position:absolute;top:24px;inset-inline-start:28px;display:flex;align-items:center;gap:8px}.auth-panel{width:100%;max-width:460px;padding:40px 32px}.auth-form-wrap{width:100%;max-width:380px;margin:0 auto}.auth-form-header{margin-bottom:22px}.auth-form-title{font-size:18px;font-weight:700;color:var(--text);letter-spacing:-.01em;margin-bottom:4px}.auth-form-subtitle{font-size:13px;color:var(--text-2)}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-submit{margin-top:4px}.auth-footer-link{margin-top:16px;text-align:center;font-size:12px;color:var(--text-3)}.auth-footer-link a{color:var(--accent);font-weight:500}.auth-footer-link a:hover{text-decoration:underline}.error-banner{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;background:var(--red-bg);border:1px solid var(--red-border);border-radius:var(--r);color:var(--red);font-size:13px}.toast-notice{position:fixed;top:18px;inset-inline-end:18px;z-index:1000;padding:10px 16px;background:var(--green-bg);border:1px solid var(--green-border);border-radius:var(--r);color:var(--green);font-size:13px;font-weight:600;box-shadow:0 4px 16px #0000001f}@media(max-width:768px){.auth-topleft-brand{top:14px;inset-inline-start:16px}.auth-panel{padding:24px 16px}}@media(min-width:768px){.app-shell{padding:32px}}.admin-nav{display:flex;gap:8px;flex-wrap:wrap}.admin-nav a.btn{text-decoration:none;display:inline-flex;align-items:center}.page-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.page-title{font-size:18px;font-weight:700;color:var(--text);letter-spacing:-.01em}.page-back{font-size:13px;color:var(--accent);text-decoration:none}.page-back:hover{text-decoration:underline}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:8px}.page-heading-copy{min-width:0}.page-heading h1{margin:4px 0 0;color:var(--text);font-size:clamp(21px,3vw,26px);font-weight:700;line-height:1.4}.page-heading p{max-width:620px;margin:3px 0 0;color:var(--text-3);font-size:13px;line-height:1.65}.page-heading-action{flex:none}@media(max-width:520px){.page-heading{align-items:stretch;flex-direction:column;gap:12px}.page-heading-action .btn{width:100%}}.badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;line-height:1.25;border:1px solid transparent;white-space:nowrap}.badge-accent{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-border)}.badge-green{background:var(--green-bg);color:var(--green);border-color:var(--green-border)}.badge-red{background:var(--red-bg);color:var(--red);border-color:var(--red-border)}.badge-neutral{background:var(--surface-2);color:var(--text-2);border-color:var(--border)}[lang=ar] .badge{min-height:29px;padding:2px 11px 3px;border-radius:8px;font-family:Readex Pro Variable,Readex Pro,system-ui,sans-serif;font-size:11px;font-weight:600;line-height:1.25;letter-spacing:0}.data-table-card{width:100%;overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow-sm)}.data-table-toolbar{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--surface)}.table-search{width:min(100%,340px);height:36px;position:relative;display:flex;align-items:center}.table-search svg{width:16px;height:16px;position:absolute;inset-inline-start:11px;color:var(--text-3);fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;pointer-events:none}.table-search input{width:100%;height:36px;padding-inline:36px 12px;border:1px solid var(--border);border-radius:var(--r);outline:none;background:var(--surface-2);color:var(--text);font:inherit;font-size:12px;transition:border-color .15s,box-shadow .15s,background .15s}.table-search input:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}.table-search input:disabled{cursor:wait;opacity:.65}.table-count{flex:none;color:var(--text-3);font-size:11px;white-space:nowrap}.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--r);background:var(--surface)}.data-table{width:100%;min-width:680px;border-collapse:collapse;font-size:13px}.data-table th,.data-table td{text-align:start;padding:10px 14px;border-bottom:1px solid var(--border);white-space:nowrap}.data-table th{color:var(--text-2);font-weight:600;font-size:12px;background:var(--surface-2)}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:not(.table-message-row):hover{background:var(--surface-2)}.data-table .table-message-row td{height:130px;text-align:center;color:var(--text-3);font-size:13px;white-space:normal}.data-table th:last-child{width:64px;text-align:center}.data-table td.actions-cell{width:64px;text-align:center}.branch-manager{display:flex;flex-direction:column;gap:14px}.branch-manager-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.branch-manager-count{color:var(--text-3);font-size:12px}.branch-list{display:flex;flex-direction:column;gap:8px}.branch-list-item{display:flex;align-items:center;gap:12px;min-width:0;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.branch-list-item:hover{border-color:var(--border-2);background:var(--surface-2);box-shadow:var(--shadow-sm)}.branch-list-mark{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border-radius:10px;color:var(--accent);background:var(--accent-soft);font-size:15px;font-weight:750}.branch-list-content{flex:1;min-width:0}.branch-list-content strong{display:block;overflow:hidden;color:var(--text);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.branch-list-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;margin-top:3px;color:var(--text-3);font-size:12px}.branch-list-meta code{padding:2px 6px;border-radius:5px;color:var(--text-2);background:var(--surface-3);font:inherit;direction:ltr}.branch-manager-state{padding:34px 16px;border:1px dashed var(--border);border-radius:12px;color:var(--text-3);text-align:center}.curriculum-tree{display:flex;flex-direction:column;gap:12px}.unit-overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:14px}.unit-overview-card{position:relative;min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-xs);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.unit-overview-card:hover{transform:translateY(-2px);border-color:var(--accent-border);box-shadow:var(--shadow-md)}.unit-overview-open{display:flex;width:100%;min-height:88px;align-items:center;gap:12px;padding:16px 54px 16px 16px;border:0;color:var(--text);background:transparent;font:inherit;text-align:start;cursor:pointer}[dir=rtl] .unit-overview-open{padding:16px 16px 16px 54px}.unit-overview-open:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.unit-overview-arrow{width:20px;height:20px;flex:none;fill:none;stroke:var(--text-3);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease,color .18s ease}[dir=rtl] .unit-overview-arrow{transform:rotate(180deg)}.unit-overview-card:hover .unit-overview-arrow{color:var(--accent);transform:translate(3px)}[dir=rtl] .unit-overview-card:hover .unit-overview-arrow{transform:rotate(180deg) translate(3px)}.unit-overview-actions{position:absolute;inset-block-start:50%;inset-inline-end:11px;z-index:2;transform:translateY(-50%)}.unit-nodes-page{display:flex;flex-direction:column;gap:12px}.unit-nodes-meta{display:flex;min-height:34px;align-items:center;gap:10px;color:var(--text-3)}.unit-nodes-meta>div{flex:1;min-width:0}.unit-nodes-meta span{display:block;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.unit-nodes-meta strong{font-size:13px;font-weight:600;white-space:nowrap}.unit-node-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}.curriculum-unit{overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-xs);transition:border-color .18s ease,box-shadow .18s ease}.curriculum-unit.is-expanded{border-color:var(--accent-border);box-shadow:var(--shadow-sm)}.curriculum-unit-header{display:flex;align-items:center;gap:4px;padding:7px}.curriculum-unit-toggle{display:flex;flex:1;min-width:0;align-items:center;gap:12px;padding:9px;border:0;border-radius:11px;color:var(--text);background:transparent;font:inherit;text-align:start}.curriculum-unit-number{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:12px;color:var(--accent);background:var(--accent-soft);font-size:15px;font-weight:750}.curriculum-unit-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}.curriculum-unit-copy>strong{overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.curriculum-unit-copy>span{display:flex;flex-wrap:wrap;gap:4px 10px;color:var(--text-3);font-size:12px}.curriculum-unit-body{display:grid;gap:9px;padding:12px;border-top:1px solid var(--border);background:var(--surface-2);animation:curriculum-open .2s ease}.curriculum-node{display:flex;align-items:center;gap:11px;min-width:0;padding:11px 10px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-xs);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.curriculum-node:hover{transform:translateY(-1px);border-color:var(--border-2);box-shadow:var(--shadow-sm)}.curriculum-node-index{display:grid;flex:0 0 30px;width:30px;height:30px;place-items:center;border-radius:9px;color:var(--text-2);background:var(--surface-3);font-size:12px;font-weight:700}.curriculum-node-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.curriculum-node-copy strong{overflow:hidden;color:var(--text);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.curriculum-node-copy span{overflow:hidden;color:var(--text-3);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.curriculum-unit-empty{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px dashed var(--border-2);border-radius:12px;background:var(--surface)}.curriculum-unit-empty p{margin:0;color:var(--text-3);font-size:13px}@keyframes curriculum-open{0%{opacity:0;transform:translateY(-4px)}}@media(max-width:600px){.unit-overview-grid{grid-template-columns:1fr}.unit-overview-open{min-height:82px;padding-block:12px}.unit-node-grid{grid-template-columns:1fr}.unit-nodes-meta span,.unit-nodes-meta strong{font-size:14px}.curriculum-unit{border-radius:18px}.curriculum-unit-header{padding:6px}.curriculum-unit-toggle{gap:10px;padding:8px 6px}.curriculum-unit-number{flex-basis:40px;width:40px;height:40px}.curriculum-unit-copy>strong{font-size:16px}.curriculum-unit-copy>span{font-size:13px}.curriculum-unit-body{padding:10px}.curriculum-node{padding:12px 8px}.curriculum-node-copy strong{font-size:15px}.curriculum-node-copy span{font-size:13px}.curriculum-unit-empty{align-items:stretch;flex-direction:column}}.subjects-filter-row{display:flex;gap:12px;max-width:480px;margin-bottom:12px}.subjects-filter-field{flex:0 1 234px;width:234px;min-width:0}@media(max-width:520px){.subjects-filter-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.subjects-filter-field{width:auto}}.row-actions-trigger{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--r);background:transparent;color:var(--text-3);cursor:pointer;transition:background .15s,color .15s}.row-actions-trigger:hover,.row-actions-trigger[aria-expanded=true]{background:var(--surface-3);color:var(--text)}.row-actions-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.row-actions-trigger svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}.row-actions-menu{position:fixed;z-index:9999;min-width:180px;overflow:hidden;padding:0;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);box-shadow:var(--shadow-lg);animation:row-menu-in .12s ease-out}@keyframes row-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.row-actions-menu.opens-above{animation-name:row-menu-in-up}@keyframes row-menu-in-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.row-actions-item{width:100%;min-height:36px;display:flex;align-items:center;gap:10px;padding:8px 14px;border:0;border-radius:0;background:transparent;color:var(--text);cursor:pointer;font:inherit;font-size:13px;text-align:start}.row-actions-item:hover:not(:disabled){background:var(--surface-3)}.row-actions-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.row-actions-item:disabled{opacity:.4;cursor:not-allowed}.row-actions-item.is-danger{color:var(--red)}.row-actions-item.is-danger:hover:not(:disabled){background:var(--red-bg)}.row-actions-divider{height:1px;margin:0;background:var(--border)}.row-actions-icon{width:16px;height:16px;display:grid;place-items:center}[lang=ar] .row-actions-menu{font-family:Cairo Variable,Cairo,Readex Pro Variable,sans-serif}.empty-state{padding:32px 16px;text-align:center;color:var(--text-3);font-size:13px}@media(max-width:560px){.data-table-toolbar{align-items:stretch;flex-direction:column;padding:12px}.table-search{width:100%}.table-count{padding-inline:2px}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:stretch;justify-content:flex-end;padding:14px 16px;z-index:300;animation:modal-overlay-in .18s ease}.modal-panel{position:relative;width:min(500px,100%);overflow:hidden;display:flex;flex-direction:column;background:var(--surface);border-radius:12px;border:1px solid var(--border);box-shadow:0 0 0 1px #0000000a,0 4px 16px #0000000f,0 16px 40px #0000001f,0 32px 64px #00000014;animation:modal-panel-in .26s cubic-bezier(.22,1,.36,1)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 16px;border-bottom:1px solid var(--border);flex-shrink:0;gap:12px}.modal-title{font-size:15px;font-weight:700;color:var(--text)}.modal-heading-copy{min-width:0}.modal-subtitle{margin:3px 0 0;color:var(--text-3);font-size:11px;font-weight:400;line-height:1.55}.modal-close{width:30px;height:30px;flex:none;display:grid;place-items:center;padding:0;background:transparent;border:1px solid var(--border);border-radius:var(--r);color:var(--text-3);cursor:pointer;transition:background .12s,color .12s,border-color .12s}.modal-close svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round}.modal-close:hover{color:var(--text);background:var(--surface-3);border-color:var(--border-2)}.modal-body{flex:1;min-height:0;overflow-y:auto;padding:20px 22px;display:flex;flex-direction:column;gap:14px}.modal-body::-webkit-scrollbar{width:3px}.modal-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.modal-footer{display:flex;align-items:center;gap:8px;padding:14px 22px;border-top:1px solid var(--border);background:var(--surface-2);flex-shrink:0}@keyframes modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-panel-in{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:translate(0)}}[dir=rtl] .modal-panel{animation-name:modal-panel-in-rtl}@keyframes modal-panel-in-rtl{0%{opacity:0;transform:translate(-32px)}to{opacity:1;transform:translate(0)}}@media(max-width:600px){.modal-overlay{padding:0;align-items:flex-end}.modal-panel{width:100%;max-height:92vh;border-radius:12px 12px 0 0;animation-name:modal-panel-in-mobile}[dir=rtl] .modal-panel{animation-name:modal-panel-in-mobile}@keyframes modal-panel-in-mobile{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}}@media(max-width:768px){:root{--control-height: 46px;--control-font-size: 16px;--touch-target: 44px}body,[lang=ar] body{font-size:16px}.dashboard-content .app-shell{padding:20px 16px;gap:16px}.field label,.perm-group-label{font-size:14px}.input,.select{min-height:var(--control-height);font-size:var(--control-font-size)}.input::placeholder{font-size:15px}.btn,[lang=ar] .btn,.btn-lg,[lang=ar] .btn-lg{min-height:44px;padding:9px 14px;font-size:15px}.btn-sm{min-height:40px;font-size:14px}.top-nav-title strong{font-size:16px}.top-nav-title span{font-size:12px}.top-nav-icon,.top-nav-text{min-width:44px;height:44px}.top-nav-text{font-size:14px}.mobile-tab small{font-size:11px}.mobile-account-menu a,.mobile-account-menu button{min-height:48px;font-size:15px}.page-heading h1{font-size:24px}.page-heading p{font-size:15px;line-height:1.7}.page-back{font-size:14px}.learning-card h3{font-size:17px}.learning-card p,.learning-section-heading p{font-size:14px}.admin-shortcuts a{min-height:58px;font-size:15px}.data-table-toolbar{min-height:72px}.table-search,.table-search input{height:46px}.table-search input{font-size:16px}.table-count,.branch-manager-count{font-size:13px}.data-table{font-size:15px}.data-table th{font-size:13px}.data-table th,.data-table td{padding-block:13px}.badge,[lang=ar] .badge{font-size:11px}.row-actions-trigger,.modal-close{width:44px;height:44px}.row-actions-item{min-height:44px;font-size:15px}.modal-title{font-size:18px}.modal-header{padding:14px 16px}.modal-body{padding:18px 16px}.modal-footer{padding:12px 16px}.branch-list-content strong{font-size:16px}.branch-list-meta{font-size:13px}.checkbox-row{min-height:44px;font-size:15px}.checkbox-box{width:20px;height:20px;flex-basis:20px}.checkbox-chip{min-height:44px;font-size:14px}.auth-form-title{font-size:22px}.auth-form-subtitle,.error-banner{font-size:15px}.auth-footer-link{font-size:14px}}.perm-group{display:flex;flex-direction:column;gap:6px}.perm-group-label{font-size:12px;font-weight:600;color:var(--text-2)}.perm-checks{display:flex;flex-wrap:wrap;gap:8px}.role-perm-badges{display:flex;flex-wrap:wrap;gap:6px}.select{width:100%;min-height:36px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);color:var(--text);font-size:13px}.select:focus{border-color:var(--accent);outline:none}.styled-checkbox{display:inline-flex;align-items:center;gap:8px;color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none}.styled-checkbox input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.checkbox-box{width:15px;height:15px;display:grid;flex:0 0 15px;place-items:center;border:1.5px solid var(--border-2);border-radius:3px;background:var(--surface);color:#fff;transition:background .14s,border-color .14s,box-shadow .14s}.checkbox-box svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.styled-checkbox:hover .checkbox-box{border-color:var(--accent)}.styled-checkbox:focus-within .checkbox-box{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.styled-checkbox.is-checked .checkbox-box{border-color:var(--accent);background:var(--accent)}.styled-checkbox.is-disabled{cursor:not-allowed;opacity:.5}.checkbox-row{width:100%;min-height:38px;font-size:13px;font-weight:500}.checkbox-chip{padding:8px;border:1px solid var(--border);border-radius:var(--r);background:transparent;font-size:12px;font-weight:500;line-height:1;transition:border-color .14s,color .14s}.checkbox-chip:hover,.checkbox-chip.is-checked{border-color:var(--border-2);color:var(--text)}.checkbox-chip.is-checked{font-weight:600}.checkbox-bare{flex:none;padding:0;border:0;background:transparent}.checkbox-bare .checkbox-label:empty{display:none}.student-preview{display:flex;flex-direction:column;gap:12px;padding:4px}.student-preview-topbar,.student-preview-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.student-preview-topbar>span{color:var(--text-3);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.student-question-card{overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-sm)}.student-question-header{display:flex;align-items:center;gap:11px;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--surface-2)}.student-question-number{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border-radius:11px;color:#fff;background:var(--accent);font-size:15px;font-weight:750}.student-question-header>div{display:flex;min-width:0;flex-direction:column;gap:2px}.student-question-header strong{font-size:14px}.student-question-header div span{color:var(--text-3);font-size:12px}.student-question-content{display:flex;flex-direction:column;gap:18px;padding:20px}.student-question-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.student-question-images img{width:100%;max-height:280px;object-fit:contain;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.student-question-text{margin:0;color:var(--text);font-size:17px;font-weight:600;line-height:1.9;white-space:pre-wrap}.student-options{display:grid;gap:9px}.student-option{position:relative;display:flex;min-height:52px;align-items:center;gap:11px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.student-option:hover{transform:translateY(-1px);border-color:var(--accent-border);background:var(--surface-2)}.student-option.is-selected{border-color:var(--accent);background:var(--accent-soft)}.student-option input{position:absolute;opacity:0;pointer-events:none}.student-option-letter{display:grid;flex:0 0 30px;width:30px;height:30px;place-items:center;border-radius:9px;color:var(--text-2);background:var(--surface-3);direction:ltr;font-size:12px;font-weight:750}.student-option.is-selected .student-option-letter{color:#fff;background:var(--accent)}.student-radio-mark{width:18px;height:18px;margin-inline-start:auto;border:2px solid var(--border-2);border-radius:50%;box-shadow:inset 0 0 0 4px var(--surface)}.student-option.is-selected .student-radio-mark{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 4px var(--accent-soft)}.student-number-answer{display:flex;align-items:stretch}.student-number-answer input,.student-text-answer,.student-match-row select,.student-cloze-text input{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;outline:none}.student-number-answer input{width:100%;min-height:48px;padding:10px 12px;border-radius:10px;font-size:16px}.student-number-answer span{display:grid;min-width:62px;margin-inline-start:-1px;place-items:center;padding:0 12px;border:1px solid var(--border);border-radius:10px;color:var(--text-2);background:var(--surface-2)}.student-ordering{display:grid;gap:8px}.student-order-item{display:flex;min-height:50px;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface);box-shadow:var(--shadow-xs)}.student-drag-handle{color:var(--text-4);font-size:20px;cursor:grab}.student-order-number{display:grid;flex:0 0 28px;width:28px;height:28px;place-items:center;border-radius:8px;color:var(--accent);background:var(--accent-soft);font-size:12px;font-weight:700}.student-matching{display:grid;gap:9px}.student-match-row{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr);align-items:center;gap:9px}.student-match-prompt{display:flex;min-height:46px;align-items:center;gap:9px;padding:9px 11px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.student-match-prompt b{display:grid;flex:0 0 25px;width:25px;height:25px;place-items:center;border-radius:7px;color:var(--accent);background:var(--accent-soft);font-size:11px}.student-match-row svg{width:18px;fill:none;stroke:var(--text-3);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}[dir=rtl] .student-match-row svg{transform:rotate(180deg)}.student-match-row select{width:100%;min-height:46px;padding:8px 10px;border-radius:10px}.student-text-answer{width:100%;min-height:90px;padding:12px;border-radius:11px;resize:vertical}.student-cloze-text{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}.student-cloze-text input{min-width:40px;height:34px;padding:4px 8px;border-width:0 0 2px;border-color:var(--accent);border-radius:0}.student-preview-footer{padding:2px 0}.student-preview-footer>span{color:var(--text-3);font-size:12px}.question-entry-form{width:min(100%,1360px);margin-inline:auto;padding:26px 28px 80px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm)}.question-entry-layout{display:flex;flex-direction:column;gap:16px;counter-reset:question-entry-step}.question-entry-column{display:contents}.question-entry-section{overflow:visible;counter-increment:question-entry-step}.question-entry-section-header{display:flex;min-height:28px;align-items:center;padding:0}.question-entry-section-header h3{margin:0;color:var(--text-2);font-size:13px;font-weight:700}.question-entry-step{display:grid;flex:0 0 24px;width:24px;height:24px;margin-inline-end:8px;place-items:center;border-radius:7px;color:var(--accent);background:var(--accent-soft);font-size:11px;font-weight:750}.question-entry-step:before{content:counter(question-entry-step)}.question-entry-section-body{display:flex;flex-direction:column;gap:14px;padding:14px 0 8px}.question-entry-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.question-status-actions{display:flex;width:min(100%,1360px);margin:0 auto 10px;flex-wrap:wrap;gap:7px}.question-status-action{min-height:34px}.question-status-action.is-review-primary{background:color-mix(in srgb,var(--accent) 82%,#fff)}.question-status-action.is-review-primary:hover:not(:disabled){background:var(--accent)}.image-upload-button{width:fit-content;margin-top:8px;cursor:pointer}.image-upload-button svg{flex:none}.page-skeleton-shell{width:100%}.page-skeleton,.skeleton-editor{width:min(100%,1360px);margin-inline:auto}.page-skeleton{display:grid;gap:10px}.skeleton-card{display:flex;min-height:102px;align-items:center;gap:16px;padding:20px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.skeleton-card>div{display:grid;flex:1;gap:9px}.skeleton-avatar,.skeleton-line,.skeleton-label,.skeleton-textarea,.skeleton-heading span,.skeleton-action,.skeleton-table-head span,.skeleton-node-number,.skeleton-menu,.skeleton-hero-mark,.skeleton-shortcuts span{position:relative;display:block;overflow:hidden;background:var(--surface-3)}.skeleton-avatar{width:44px;height:44px;flex:0 0 44px;border-radius:11px}.skeleton-line{width:100%;height:10px;border-radius:5px}.skeleton-line:nth-child(2){width:72%}.skeleton-line:nth-child(3){width:42%}.skeleton-card.is-question{min-height:116px;align-items:flex-start}.skeleton-card.is-question .skeleton-avatar{width:36px;height:36px;flex-basis:36px}.skeleton-card.is-question .skeleton-line:first-child{width:30%}.skeleton-card.is-question .skeleton-line:nth-child(2){width:92%;height:13px}.skeleton-card.is-question .skeleton-line:nth-child(3){width:68%;height:13px}.skeleton-card.is-question .skeleton-line:nth-child(4){width:38%}.skeleton-menu{width:32px;height:32px;flex:0 0 32px;border-radius:8px}.skeleton-table-row td{height:64px}.skeleton-table-row .skeleton-line{width:min(100%,150px)}.skeleton-page-header{display:flex;align-items:end;justify-content:space-between;gap:20px}.skeleton-page-header .skeleton-heading{margin-inline:0}.skeleton-action{width:112px;height:38px;border-radius:8px}.skeleton-table-card{overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.skeleton-table-head,.skeleton-table-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:24px;padding-inline:16px}.skeleton-table-head{min-height:44px;background:var(--surface-2)}.skeleton-table-head span{width:64px;height:9px;border-radius:5px}.skeleton-table-grid{min-height:64px;border-top:1px solid var(--border)}.skeleton-table-grid .skeleton-line{width:min(100%,130px)}.skeleton-node-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skeleton-node-card,.skeleton-branch-row{display:flex;min-height:82px;align-items:center;gap:14px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.skeleton-node-card>div,.skeleton-branch-row>div{display:grid;flex:1;gap:9px}.skeleton-node-number{width:34px;height:34px;flex:0 0 34px;border-radius:9px}.skeleton-branch-list{gap:8px}.skeleton-dashboard-hero{display:flex;min-height:190px;align-items:center;justify-content:space-between;gap:24px;padding:26px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.skeleton-dashboard-hero>div{display:grid;width:min(70%,560px);gap:12px}.skeleton-dashboard-hero .skeleton-line:first-of-type{width:72%;height:24px}.skeleton-hero-mark{width:108px;height:108px;border-radius:28px}.skeleton-dashboard-section{display:grid;gap:14px;margin-top:10px}.skeleton-dashboard-section .skeleton-heading{margin-inline:0}.skeleton-dashboard-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.skeleton-dashboard-card{display:flex;min-height:124px;align-items:center;gap:14px;padding:18px;border:1px solid var(--border);border-radius:15px;background:var(--surface)}.skeleton-dashboard-card>div{display:grid;flex:1;gap:9px}.skeleton-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.skeleton-shortcuts span{height:54px;border-radius:12px}.skeleton-heading{display:grid;width:min(100%,1360px);margin:4px auto 0;gap:9px}.skeleton-heading span:first-child{width:220px;height:25px;border-radius:7px}.skeleton-heading span:last-child{width:140px;height:11px;border-radius:5px}.skeleton-editor{display:grid;gap:28px;padding:30px 28px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.skeleton-section{display:grid;gap:11px}.skeleton-label{width:120px;height:12px;border-radius:5px}.skeleton-textarea{height:112px;border-radius:9px}.skeleton-avatar:after,.skeleton-line:after,.skeleton-label:after,.skeleton-textarea:after,.skeleton-heading span:after,.skeleton-action:after,.skeleton-table-head span:after,.skeleton-node-number:after,.skeleton-menu:after,.skeleton-hero-mark:after,.skeleton-shortcuts span:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--surface) 70%,transparent),transparent);animation:skeleton-shimmer 1.35s ease-in-out infinite}[dir=rtl] .skeleton-avatar:after,[dir=rtl] .skeleton-line:after,[dir=rtl] .skeleton-label:after,[dir=rtl] .skeleton-textarea:after,[dir=rtl] .skeleton-heading span:after,[dir=rtl] .skeleton-action:after,[dir=rtl] .skeleton-table-head span:after,[dir=rtl] .skeleton-node-number:after,[dir=rtl] .skeleton-menu:after,[dir=rtl] .skeleton-hero-mark:after,[dir=rtl] .skeleton-shortcuts span:after{animation-direction:reverse}@keyframes skeleton-shimmer{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.page-skeleton *,.skeleton-editor *{animation:none!important}}@media(max-width:768px){.skeleton-node-grid,.skeleton-dashboard-cards,.skeleton-shortcuts{grid-template-columns:1fr}.skeleton-hero-mark{display:none}.skeleton-dashboard-hero>div{width:100%}.skeleton-table-head,.skeleton-table-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.skeleton-table-head span:nth-child(n+4),.skeleton-table-grid span:nth-child(n+4){display:none}}.question-entry-actions{position:sticky;z-index:28;bottom:0;display:flex;min-height:62px;align-items:center;justify-content:space-between;gap:14px;margin:18px -28px -80px;padding:10px 18px;border:0;border-top:1px solid var(--border);border-radius:0 0 18px 18px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 -8px 20px #18203312;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.question-entry-review{display:flex;flex:1;min-width:0;align-items:center;gap:10px}.question-entry-review .styled-checkbox{flex:none}.question-entry-review .input{width:min(100%,420px)}.question-entry-action-buttons{display:flex;flex:none;gap:8px}.occurrence-manager{display:flex;flex-direction:column;gap:12px}.occurrence-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.occurrence-toolbar>div{display:flex;min-width:0;flex-direction:column;gap:6px}.occurrence-toolbar>div>span{color:var(--text-3);font-size:12px;font-weight:600}.occurrence-years{display:flex;flex-wrap:wrap;gap:6px}.occurrence-years>span:not(.badge){color:var(--text-3);font-size:13px}.occurrence-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}.occurrence-card{display:flex;min-width:0;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2)}.occurrence-year{display:grid;flex:0 0 54px;min-height:38px;place-items:center;border-radius:9px;color:var(--accent);background:var(--accent-soft);font-size:14px;font-weight:750;direction:ltr}.occurrence-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.occurrence-copy strong{overflow:hidden;color:var(--text);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.occurrence-copy span{color:var(--text-3);font-size:12px}.occurrence-marks{display:flex;min-width:38px;flex-direction:column;align-items:center}.occurrence-marks strong{color:var(--text);font-size:14px}.occurrence-marks span{color:var(--text-3);font-size:10px}.occurrence-empty{margin:0;padding:18px;border:1px dashed var(--border);border-radius:10px;color:var(--text-3);text-align:center}.question-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px;margin-bottom:12px}.question-filter-grid .field{min-width:0}.question-list{display:flex;flex-direction:column;gap:10px}.question-list-card{display:flex;min-width:0;align-items:flex-start;gap:14px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-xs);cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.question-list-card:hover{transform:translateY(-1px);border-color:var(--border-2);box-shadow:var(--shadow-sm)}.question-list-index{display:grid;flex:0 0 36px;width:36px;height:36px;place-items:center;border-radius:10px;color:var(--text-2);background:var(--surface-2);font-size:12px;font-weight:700}.question-list-main{display:flex;flex:1;min-width:0;flex-direction:column;gap:9px}.question-list-heading{display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:7px 16px}.question-status-text{display:inline-flex;align-items:center;gap:7px;color:var(--text-2);font-size:12px;font-weight:600}.question-status-text i{width:7px;height:7px;border-radius:50%;background:var(--text-4)}.question-status-text.is-in_review{color:var(--accent)}.question-status-text.is-in_review i{background:var(--accent)}.question-status-text.is-published{color:var(--green)}.question-status-text.is-published i{background:var(--green)}.question-status-text.is-archived{color:var(--red)}.question-status-text.is-archived i{background:var(--red)}.question-type-text{overflow:hidden;color:var(--text-3);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.question-list-main>p{display:-webkit-box;overflow:hidden;margin:0;color:var(--text);font-size:15px;font-weight:600;line-height:1.75;-webkit-box-orient:vertical;-webkit-line-clamp:2}.question-list-meta{display:flex;flex-wrap:wrap;gap:6px 20px;color:var(--text-3)}.question-list-meta>span{display:inline-flex;min-width:0;align-items:center;gap:6px;font-size:12px}.question-list-meta svg{width:15px;height:15px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.question-list-actions{flex:none}@media(max-width:768px){.question-status-action{min-height:42px;flex:1}.question-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.question-entry-form{padding:16px 14px;border-radius:16px}.question-entry-section-header{min-height:30px}.question-entry-section-header h3{font-size:14px}.question-entry-section-body{padding:12px 0 8px}.question-entry-field-grid{grid-template-columns:1fr}.question-entry-actions{bottom:calc(90px + env(safe-area-inset-bottom));min-height:64px;margin:18px -14px -16px;padding:10px 14px;border-radius:0 0 16px 16px}.question-entry-actions{align-items:stretch;flex-direction:column}.question-entry-review{width:100%;flex-wrap:wrap}.question-entry-review .input,.question-entry-action-buttons{width:100%}.question-entry-action-buttons .btn{flex:1}.occurrence-toolbar{align-items:stretch;flex-direction:column}.occurrence-toolbar>.btn{width:100%}.occurrence-list{grid-template-columns:1fr}.question-list-card{gap:10px;padding:13px 10px;border-radius:12px}.question-list-index{flex-basis:32px;width:32px;height:32px}.question-list-main>p{font-size:15px;-webkit-line-clamp:3}.question-list-heading{gap:5px 12px}.question-status-text,.question-type-text,.question-list-meta>span{font-size:13px}}@media(max-width:600px){.question-filter-grid{grid-template-columns:1fr}.student-question-content{padding:16px}.student-question-text{font-size:17px}.student-match-row{grid-template-columns:1fr}.student-match-row svg{display:none}}@media(max-width:768px){.select{min-height:var(--control-height);font-size:var(--control-font-size)}.perm-group-label{font-size:14px}.checkbox-row{min-height:44px;font-size:15px}.checkbox-box{width:20px;height:20px;flex-basis:20px}.checkbox-chip{min-height:44px;font-size:14px}}.pwa-update-toast{position:fixed;bottom:20px;inset-inline-end:20px;z-index:10000;display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:var(--r);box-shadow:var(--shadow-lg);animation:pwa-update-in .22s ease-out}@keyframes pwa-update-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.pwa-update-toast{animation:none}}.pwa-update-text{font-size:13px;font-weight:500;color:var(--text)}.pwa-update-toast .btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px}.pwa-update-dismiss{background:none;border:none;color:var(--text-3);font-size:16px;line-height:1;padding:2px 4px;cursor:pointer}.pwa-update-dismiss:hover{color:var(--text)}@media(max-width:768px){.pwa-update-toast{bottom:calc(env(safe-area-inset-bottom,0px) + 12px);inset-inline-start:12px;inset-inline-end:12px}}.confirm-overlay{position:fixed;z-index:11000;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#0c121c6b;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:confirm-fade-in .15s ease}.confirm-dialog{width:min(100%,420px);padding:24px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-lg);animation:confirm-slide-up .2s cubic-bezier(.22,1,.36,1)}.confirm-header{display:flex;align-items:center;gap:11px}.confirm-icon{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border-radius:11px;color:var(--red);background:var(--red-bg)}.confirm-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.confirm-title{margin:0;color:var(--text);font-size:16px;font-weight:700;line-height:1.4}.confirm-message{margin:13px 0 0;color:var(--text-2);font-size:14px;line-height:1.7;white-space:pre-line}.confirm-actions{display:flex;gap:8px;margin-top:20px}.confirm-actions .btn{flex:1}.confirm-actions.is-single{justify-content:flex-end}.confirm-actions.is-single .btn{flex:0 1 140px}@keyframes confirm-fade-in{0%{opacity:0}}@keyframes confirm-slide-up{0%{opacity:0;transform:translateY(12px) scale(.98)}}@media(max-width:600px){.confirm-overlay{align-items:end;padding:12px;padding-bottom:calc(90px + env(safe-area-inset-bottom))}.confirm-dialog{padding:20px 18px 18px;border-radius:20px}.confirm-title{font-size:18px}.confirm-message{font-size:15px}.confirm-actions{margin-top:18px}}
