@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: #ffffff;--surface: #ffffff;--surface-2: #f1f5f9;--surface-3: #e2e8f0;--border: #e2e8f0;--border-2: #cbd5e1;--text: #0f172a;--text-2: #475569;--text-3: #5c6878;--text-4: #94a3b8;--accent: #0f766e;--accent-hover: #115e59;--accent-soft: #f0fdfa;--accent-border: #99f6e4;--accent-fill: #0f766e;--on-accent: #ffffff;--ink: #0f766e;--on-ink: #ffffff;--secondary: #7c3aed;--secondary-soft: #f5f3ff;--secondary-border: #ddd6fe;--tertiary: #b45309;--tertiary-soft: #fffbeb;--tertiary-border: #fde68a;--blue: #1d4ed8;--blue-soft: #eff6ff;--blue-border: #bfdbfe;--rose: #bd285a;--rose-soft: #fdeef3;--rose-border: #f5c2d3;--green: #23775e;--green-fill: #2e9e7d;--green-bg: #eaf5f2;--green-border: #b6ddd2;--red: #a24f4c;--red-fill: #e66e69;--red-bg: #fdf1f0;--red-border: #f7cdcc;--danger: #b91c1c;--danger-bg: #fef2f2;--danger-border: #fecaca;--tone: var(--accent);--tone-soft: var(--accent-soft);--tone-border: var(--accent-border);--tone-fill: var(--ink);--on-tone: var(--on-ink);--r: 8px;--control-height: 38px;--control-font-size: 13px;--touch-target: 36px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .05);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .07), 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 12px rgba(15, 23, 42, .08), 0 2px 4px rgba(15, 23, 42, .04);--shadow-lg: 0 12px 28px rgba(15, 23, 42, .1), 0 4px 8px rgba(15, 23, 42, .05)}[data-theme=dark]{--bg: #111827;--surface: #111827;--surface-2: #1a2234;--surface-3: #243044;--border: #26314a;--border-2: #3c4a66;--text: #e2e8f0;--text-2: #94a3b8;--text-3: #8b98ab;--text-4: #59667d;--accent: #8ab5ae;--accent-hover: #a3c6c0;--accent-soft: #152e2c;--accent-border: #33524e;--accent-fill: #0f766e;--on-accent: #ffffff;--ink: #0f766e;--on-ink: #ffffff;--secondary: #a78bfa;--secondary-soft: #241b4d;--secondary-border: #4c3a9e;--tertiary: #fbbf24;--tertiary-soft: #2a1e05;--tertiary-border: #5a4310;--blue: #93c5fd;--blue-soft: #172554;--blue-border: #1e40af;--rose: #f2789f;--rose-soft: #3a1a2a;--rose-border: #5e2c44;--green: #4dbb98;--green-fill: #4dbb98;--green-bg: #163036;--green-border: #1e544e;--red: #ef8a85;--red-fill: #ef8a85;--red-bg: #382833;--red-border: #724046;--danger: #f87171;--danger-bg: #3b1417;--danger-border: #6b2427}*{box-sizing:border-box}[data-tone]{--tone: var(--accent);--tone-soft: var(--accent-soft);--tone-border: var(--accent-border);--tone-fill: var(--ink);--on-tone: var(--on-ink)}[data-tone=secondary]{--tone: var(--secondary);--tone-soft: var(--secondary-soft);--tone-border: var(--secondary-border);--tone-fill: var(--secondary);--on-tone: #fff}[data-tone=tertiary]{--tone: var(--tertiary);--tone-soft: var(--tertiary-soft);--tone-border: var(--tertiary-border);--tone-fill: var(--tertiary);--on-tone: #fff}[data-tone=blue]{--tone: var(--blue);--tone-soft: var(--blue-soft);--tone-border: var(--blue-border);--tone-fill: var(--blue);--on-tone: #fff}[data-tone=rose]{--tone: var(--rose);--tone-soft: var(--rose-soft);--tone-border: var(--rose-border);--tone-fill: var(--rose);--on-tone: #fff}[data-tone=green]{--tone: var(--green);--tone-soft: var(--green-bg);--tone-border: var(--green-border);--tone-fill: var(--green);--on-tone: #fff}[data-tone=red]{--tone: var(--danger);--tone-soft: var(--danger-bg);--tone-border: var(--danger-border);--tone-fill: var(--danger);--on-tone: #fff}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,.field .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(--tone);border-radius:50%;animation:spin .65s linear infinite;flex-shrink:0}.spinner-white{border-color:color-mix(in srgb,currentColor 30%,transparent);border-top-color:currentColor}.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(--tone-fill);color:var(--on-tone)}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--tone-fill) 82%,#000);transform:translateY(-1px)}[data-theme=dark] .btn-primary{color:var(--bg)}[data-theme=dark] .btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--tone) 82%,#fff)}.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(--danger);background:transparent;color:var(--danger)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 85%,#000);transform:translateY(-1px)}.btn-success{background:var(--green);color:#fff}.btn-success:hover:not(:disabled){background:#146c2e;transform:translateY(-1px)}[data-theme=dark] .btn-danger{background:#d02530}[data-theme=dark] .btn-success{background:#0d7f4b}.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-fill);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--on-accent)}.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}.dashboard-section{display:grid;gap:8px}.dashboard-section+.dashboard-section{margin-block-start:14px}.dashboard-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-inline:4px}.dashboard-section-head h2{margin:0;color:var(--text-2);font-size:14px;font-weight:700}.dashboard-section-link{color:var(--accent);font-size:13px;font-weight:600;text-decoration:none}.dashboard-section-link:hover{text-decoration:underline}.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:#0f121980;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:hidden;color:var(--text-2);background:var(--surface);border:0;border-inline-end:1px solid var(--border);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:10px;padding:0 18px}.side-nav-logo{width:34px;height:34px;display:grid;flex:none;place-items:center;color:var(--on-accent);background:var(--accent-fill);border-radius:9px}.side-nav-brand-copy{min-width:0;display:flex;flex-direction:column;justify-content:center}.side-nav-brand-copy .brand-wordmark{color:var(--text);line-height:1.25}.side-nav-close{margin-inline-start:auto;width:32px;height:32px;padding:0;border:0;font-family:inherit;font-size:24px;line-height:1;color:var(--text-3);background:transparent;cursor:pointer}.side-nav-section-label{padding:18px 22px 6px;color:var(--text-4);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}[dir=rtl] .side-nav-section-label{letter-spacing:0;text-transform:none;font-size:11px}.side-nav-links{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.side-nav-links nav{display:flex;flex-direction:column;gap:2px;padding-inline:10px}.side-nav-links::-webkit-scrollbar{width:3px}.side-nav-links::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:3px}.side-nav-link{position:relative;min-height:42px;display:flex;align-items:center;gap:11px;padding:0 12px;color:var(--text-2);border-radius:8px;font-size:13px;font-weight:500;line-height:1.5;text-decoration:none;transition:.15s}.side-nav-link:hover{color:var(--text);background:var(--surface-2)}.side-nav-link.is-active{color:var(--accent);background:var(--accent-soft);font-weight:600}.side-nav-link:focus-visible,.side-nav-user:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.side-nav-icon{width:22px;height:22px;display:grid;flex:0 0 22px;place-items:center;color:inherit;transition:color .15s}.side-nav-link svg{width:17px;height:17px;flex:0 0 17px}.side-nav-link small{margin-inline-start:auto;padding:2px 6px;color:var(--tertiary);background:var(--tertiary-soft);border:1px solid var(--tertiary-border);border-radius:8px;font-size:9px;font-weight:700}.side-nav-link.is-disabled{cursor:default;opacity:.62}.side-nav-account{position:relative;margin-top:auto;padding:8px 10px;border-top:1px solid var(--border)}.side-nav-user{width:100%;min-height:56px;display:flex;align-items:center;gap:11px;padding:8px;border-radius:10px;color:var(--text);text-align:start;text-decoration:none;transition:background .15s}.side-nav-user:hover{background:var(--surface-2)}.side-nav-user-copy{min-width:0;flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.side-nav-user-copy>*{max-width:100%}.side-nav-user-copy strong{overflow:hidden;unicode-bidi:plaintext;font-size:13px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.side-nav-user-copy small{overflow:hidden;unicode-bidi:plaintext;color:var(--text-3);font-size:12px;font-weight:400;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}button.side-nav-link{width:100%;border:0;background:transparent;font-family:inherit;text-align:start;cursor:pointer}.side-nav-link.is-danger{color:var(--danger)}.side-nav-link.is-danger:hover,.side-nav-link.is-danger:focus-visible,.side-nav-link.is-danger:active{color:var(--danger);background:var(--danger-bg)}.user-avatar{width:36px;height:36px;display:grid;flex:none;place-items:center;color:var(--on-accent);background:var(--accent-fill);border-radius:50%;font-family:"Cairo Variable","Cairo",var(--font-ar, inherit),sans-serif;font-size:16px;font-weight:800;line-height:1;-webkit-user-select:none;user-select:none}.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 #0f172a2e,0 4px 12px #0f172a17,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) 72%,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(--accent-border);border-radius:50%;background:linear-gradient(140deg,var(--accent),var(--secondary));color:#fff;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 #0f172a2e,0 4px 14px #0f172a14;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}.side-nav-badge{flex:none;inline-size:20px;block-size:20px;display:grid;place-items:center;margin-inline-start:auto;border-radius:50%;background:var(--accent-fill);color:var(--on-accent);font-size:10.5px;font-weight:700;line-height:1}.mobile-tab-badge{position:absolute;inset-block-start:5px;inset-inline-start:calc(50% + 5px);box-sizing:border-box;inline-size:19px;block-size:19px;display:grid;place-items:center;border:2px solid var(--surface);border-radius:50%;background:var(--accent-fill);color:var(--on-accent);font-size:9.5px;font-weight:700;line-height:1}.mobile-account-menu .mobile-account-identity{min-height:0;padding:10px 10px 12px;border-radius:12px;color:var(--text)}.mobile-menu-label{padding:12px 6px 0;color:var(--text-3);font-size:11px;font-weight:700}.mobile-menu-group>*+*{border-top:1px solid var(--border)}.mobile-account-menu .is-danger,.mobile-account-menu .is-danger .account-menu-icon{color:var(--danger)}.mobile-account-menu .is-danger:hover,.mobile-account-menu .is-danger:active{color:var(--danger);background:var(--danger-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))}}@media(min-width:769px){.dashboard-layout{--shell-header-height: 68px;height:100vh;min-height:0;overflow:hidden;display:grid;grid-template-columns:248px minmax(0,1fr)}[dir=rtl] .dashboard-layout{grid-template-columns:minmax(0,1fr) 248px;direction:ltr}.dashboard-workspace{grid-column:2;grid-row:1;height:100vh;min-height:0;display:flex;flex-direction:column}.dashboard-content{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.dashboard-content::-webkit-scrollbar{width:8px}.dashboard-content::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:8px}.dashboard-content::-webkit-scrollbar-thumb:hover{background:var(--text-4)}[dir=rtl] .dashboard-workspace{grid-column:1;grid-row:1;direction:rtl}.side-nav{position:fixed;top:0;bottom:0;left:0;right:auto;width:248px;transform:none;box-shadow:none}[dir=rtl] .side-nav{left:auto;right:0;direction:rtl;transform:none;box-shadow:none}.nav-backdrop,.side-nav-close{display:none}.dashboard-content .app-shell{padding:28px 30px}.mobile-tab-bar,.page-back{display:none}.page-heading-crumbs{display:flex}}.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(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--r);color:var(--danger);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-crumbs{display:none;align-items:center;gap:3px;min-width:0;margin-inline-start:-8px;overflow:hidden;font-size:14px}.page-crumb{flex:0 1 auto;min-width:0;max-width:22ch;padding:5px 8px;border-radius:7px;color:var(--text-3);font-weight:500;white-space:nowrap;overflow:hidden;text-decoration:none;text-overflow:ellipsis;transition:background .14s,color .14s}a.page-crumb:hover{color:var(--accent);background:var(--accent-soft)}.page-crumb.is-current{flex-shrink:0;color:var(--accent);font-weight:700}.page-crumb-arrow{width:15px;height:15px;flex:none;color:var(--text-4);fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}[dir=rtl] .page-crumb-arrow{transform:scaleX(-1)}.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(--danger-bg);color:var(--danger);border-color:var(--danger-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}.empty-state{display:flex;flex-direction:column;align-items:center;gap:10px;margin:20px 0;padding:32px 24px;border:1px dashed var(--border-2);border-radius:12px;background:var(--surface-2);text-align:center}.empty-state-icon{width:46px;height:46px;display:grid;place-items:center;margin-bottom:2px;border-radius:50%;color:var(--accent);background:var(--accent-soft)}.empty-state-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.empty-state strong{color:var(--text);font-size:15px;font-weight:650}.empty-state p{max-width:42ch;margin:0;color:var(--text-2);font-size:13px;line-height:1.65}.surface-card,.data-table-card{width:100%;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.data-table-card{overflow:hidden}.data-table-card.is-list{display:grid;gap:12px;overflow:visible;border:0;border-radius:0;background:none}.data-table-card.is-list .data-table-toolbar,.data-table-card.is-list .active-filters,.data-table-card.is-list .table-pagination{min-height:0;padding:0;border-bottom:0;background:none}.data-table-card.is-list .table-pagination{border-top:0}.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)}.active-filters{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;padding:8px 12px;border-bottom:1px solid var(--border);background:var(--surface);min-width:0}.active-filters-label{color:var(--text-2);font-size:11px;font-weight:500}.active-filter-list{display:flex;flex:1 1 160px;flex-wrap:wrap;gap:4px;min-width:0;margin:0;padding:0;list-style:none}.active-filter-list li{min-width:0;max-width:100%}.active-filter-chip{display:flex;align-items:center;gap:5px;max-width:100%;min-height:26px;padding:3px 7px;border:1px solid var(--accent-border);border-radius:6px;background:var(--accent-soft);color:var(--text);font:inherit;font-size:10px;line-height:1.4;text-align:start;cursor:pointer}.active-filter-copy{min-width:0;overflow-wrap:anywhere}.active-filter-copy>span{color:var(--text-2)}.active-filter-copy bdi{font-weight:500}.active-filter-chip svg{width:12px;height:12px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.active-filter-chip:hover:not(:disabled){border-color:var(--accent)}.active-filters-clear{flex-shrink:0;min-height:26px;padding:3px 7px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text-2);font:inherit;font-size:10px;line-height:1.4;cursor:pointer}.active-filters-clear:hover:not(:disabled){color:var(--text);background:var(--surface-2)}.active-filter-chip:focus-visible,.active-filters-clear:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.active-filters button:disabled{opacity:.5;cursor:default}.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}.data-table th:has(.table-sort-button){padding:0}.table-sort-button{width:100%;display:flex;align-items:center;gap:6px;padding:10px 14px;color:inherit;background:none;border:0;font:inherit;font-weight:600;text-align:start;white-space:nowrap;cursor:pointer;transition:color .15s,background .15s}.table-sort-button:hover{color:var(--text);background:var(--surface-3)}.table-sort-button.is-active{color:var(--accent)}.table-sort-arrow{width:13px;height:13px;flex:0 0 13px;opacity:0;transition:opacity .15s}.table-sort-button:hover .table-sort-arrow{opacity:.45}.table-sort-button.is-active .table-sort-arrow{opacity:1}.table-sort-arrow.is-asc path:last-child,.table-sort-arrow.is-desc path:first-child{display:none}.table-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-top:1px solid var(--border)}.table-pagination-range{color:var(--text-3);font-size:12px;font-variant-numeric:tabular-nums}.table-pagination-controls{display:flex;align-items:center;gap:4px;margin-inline-start:auto}.table-pagination-button{min-width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:8px;font:inherit;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer;transition:.15s}.table-pagination-button:hover:not(:disabled){color:var(--text);background:var(--surface-3)}.table-pagination-button.is-current{color:var(--on-accent);background:var(--accent-fill);border-color:var(--accent)}.table-pagination-button:disabled{opacity:.4;cursor:default}.table-pagination-button svg{width:16px;height:16px}[dir=ltr] .table-pagination-button svg:not(.is-back),[dir=rtl] .table-pagination-button svg.is-back{transform:rotate(180deg)}.table-pagination-gap{padding:0 2px;color:var(--text-4)}.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-manager-state{padding:34px 16px;border:1px dashed var(--border);border-radius:12px;color:var(--text-3);text-align:center}.question-node-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr));gap:8px}.question-node-grid .checkbox-chip{min-width:0;margin:0}.question-node-grid .checkbox-label{white-space:normal;overflow-wrap:anywhere}.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(--danger)}.row-actions-item.is-danger:hover:not(:disabled){background:var(--danger-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{margin:0;line-height:1.4;font-size:15px;font-weight:700;color:var(--text)}.modal-heading-copy{min-width:0}.modal-subtitle{margin:2px 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}.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}.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}.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:nowrap;gap:6px}.table-name-tags{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.table-name-tags>span:not(.badge){min-width:0;max-width:240px}.table-name-tags>.badge,.role-perm-badges>.badge{flex-shrink:0}.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;position:relative}.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) 18%,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{border-color:var(--accent-border);background:var(--accent-soft);color:var(--text)}.checkbox-chip.is-checked{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent);font-weight:650}.checkbox-bare{flex:none;padding:0;border:0;background:transparent}.checkbox-bare .checkbox-label:empty{display:none}.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:var(--on-accent);background:var(--accent-fill)}.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)}.passage-question-builder{display:flex;flex-direction:column;gap:12px}.passage-question-hint,.passage-question-empty{margin:0;color:var(--text-3);font-size:13px}.passage-child-type-note{display:block;margin-top:6px;color:var(--text-3);font-size:12px}.passage-question-list{display:grid;gap:12px}.passage-question-card{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.passage-question-header{display:flex;min-height:30px;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--border);padding-bottom:10px}.passage-question-header strong{color:var(--text);font-size:14px}.passage-question-fields{display:grid;grid-template-columns:minmax(180px,1fr) 120px;gap:10px}.passage-question-card textarea{overflow:hidden;resize:none}.passage-blank-picker{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:4px;padding:10px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.passage-blank-picker button{padding:3px 7px;border:1px solid var(--border);border-radius:5px;color:var(--text);background:transparent;font:inherit;cursor:pointer}.passage-blank-picker button:hover:not(.is-blank){border-color:var(--border-2)}.passage-blank-picker button.is-blank{border-color:var(--accent-border);color:var(--on-accent);background:var(--accent-fill);text-decoration:line-through}.passage-blank-answers{display:grid;gap:6px;margin-top:8px}.passage-blank-answers label{display:grid;grid-template-columns:74px minmax(0,1fr);align-items:center;gap:8px}.passage-blank-answers span{color:var(--text-3);font-size:12px}@media(max-width:600px){.passage-question-fields{grid-template-columns:1fr}.passage-question-marks{max-width:140px}}.radio-row{display:flex;flex-wrap:wrap;gap:4px 16px}.radio-row-option{position:relative;display:inline-flex;align-items:center;gap:7px;min-block-size:var(--touch-target);color:var(--text-3);font-size:13.5px;font-weight:500;cursor:pointer;transition:color .14s}.radio-row-option:hover{color:var(--text)}.radio-row-option.is-active{color:var(--text);font-weight:700}.radio-row-dot{flex:none;inline-size:13px;block-size:13px;border:1.5px solid var(--border-2);border-radius:50%;background:var(--surface);transition:.14s}.radio-row-option:hover .radio-row-dot{border-color:var(--text-3)}.radio-row-option.is-active .radio-row-dot{border-color:var(--tone);background:var(--tone);box-shadow:inset 0 0 0 2.5px var(--surface)}.radio-row-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.question-entry-form{display:flex;flex-direction:column;gap:16px;width:min(100%,1360px);margin-inline:auto}.question-entry-layout{display:grid;gap:16px;align-items:start}.question-entry-column{display:flex;flex-direction:column;gap:16px;min-inline-size:0}@media(min-width:1100px){.question-entry-layout{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}}.question-entry-section{min-inline-size:0;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.question-entry-section-header{padding:14px 16px;border-block-end:1px solid var(--border)}.question-entry-section-header h3{margin:0;color:var(--text);font-size:15.5px;font-weight:750}.question-entry-section-body{display:flex;flex-direction:column;gap:14px;padding:16px}.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) 92%,#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-block{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-dash{display:grid;gap:28px}.skeleton-dash .skeleton-heading{margin:0}.skeleton-dash-section{display:grid;gap:12px}.skeleton-dash-head{display:grid;gap:8px}.skeleton-line.is-sub{width:38%;height:9px}.skeleton-dash-card{display:grid;align-content:start;gap:12px;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.skeleton-dash-card.is-row{display:flex;align-items:center;gap:16px}.skeleton-dash-card.is-row>div{display:grid;flex:1;gap:9px}.skeleton-dash-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.skeleton-dash-over-time{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:12px}.skeleton-dash-ring-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.skeleton-dash-legend{display:grid;gap:10px;width:110px}.skeleton-dash-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.skeleton-dash-table{overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.skeleton-dash-table-row{display:grid;grid-template-columns:28px minmax(0,1fr) 88px 88px 32px;align-items:center;gap:12px;padding:16px}.skeleton-dash-table-row+.skeleton-dash-table-row{border-block-start:1px solid var(--border)}.skeleton-dash-table-row.is-head{padding-block:14px;background:var(--surface-2)}.skeleton-dash-table-row>.skeleton-line:nth-child(2){width:55%}.skeleton-dash-table-row>.skeleton-line:nth-child(n+3){width:60%;justify-self:center}.skeleton-block{border-radius:8px}.skeleton-block.is-select{width:180px;height:38px}.skeleton-block.is-preview{width:120px;height:96px;border-radius:14px}.skeleton-block.is-button{width:150px;height:40px}.skeleton-block.is-plot{width:100%;height:220px}.skeleton-block.is-ring{width:180px;height:180px;border-radius:50%}.skeleton-block.is-figure{width:45%;height:26px}.skeleton-block.is-tabs{width:200px;height:36px}.skeleton-block.is-chevron{width:20px;height:20px;border-radius:6px;justify-self:center}@media(max-width:900px){.skeleton-dash-over-time{grid-template-columns:minmax(0,1fr)}.skeleton-dash-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.skeleton-block.is-preview{width:88px;height:76px}.skeleton-block.is-ring{width:140px;height:140px}.skeleton-dash-table-row{grid-template-columns:28px minmax(0,1fr) 32px}.skeleton-dash-table-row>.skeleton-line:nth-child(n+3){display:none}}.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-block: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-block:after{animation-direction:reverse}@keyframes skeleton-shimmer{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.page-skeleton *,.page-skeleton-shell *,.skeleton-editor *{animation:none!important}}@media(max-width:768px){.skeleton-node-grid{grid-template-columns:1fr}.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-field-grid>.is-full{grid-column:1 / -1}.entry-hint{margin:0;color:var(--text-3);font-size:13px}.entry-inline-actions{display:flex;flex-wrap:wrap;gap:8px;margin-block-start:8px}.entry-inline-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.entry-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.entry-list{display:grid;gap:6px;min-inline-size:0}.entry-subhead{color:var(--text-2);font-size:13px;font-weight:650}.entry-list-row{display:flex;align-items:center;gap:6px;min-inline-size:0}.entry-list-row>.input{flex:1;min-inline-size:0}.entry-index{flex:none;inline-size:22px;color:var(--text-3);font-size:12.5px;font-weight:650;text-align:center;font-variant-numeric:tabular-nums}.entry-add{inline-size:fit-content}.entry-pairs{margin-block-start:6px}.entry-pair-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px}.entry-pair-arrow{color:var(--text-3)}.entry-chip{gap:4px;padding-inline-end:4px}.entry-chip .icon-button{inline-size:18px;block-size:18px;color:inherit}.entry-chip .icon-button svg{inline-size:12px;block-size:12px}.occurrence-form{display:flex;flex-direction:column;gap:12px}.rubric-editor-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.icon-button{display:inline-grid;flex:none;place-items:center;inline-size:32px;block-size:32px;padding:0;border:0;border-radius:var(--r);background:none;color:var(--text-3);cursor:pointer;transition:background .14s,color .14s}.icon-button svg{inline-size:16px;block-size:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.icon-button:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.icon-button.is-danger:hover:not(:disabled){color:var(--danger)}.icon-button:disabled{opacity:.35;cursor:default}.icon-button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.question-entry-actions{position:sticky;z-index:20;bottom:calc(86px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:8px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-md, 0 8px 24px rgba(15, 23, 42, .12))}.question-entry-actions .btn{flex:1}@media(min-width:769px){.question-entry-actions{bottom:0;padding:12px 0;border-width:1px 0 0;border-radius:0;background:var(--bg);box-shadow:none}.question-entry-actions .btn{flex:none;min-inline-size:120px}}.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}.questions-table{min-width:920px}.question-table-row{cursor:pointer}.question-table-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.questions-table .question-number-cell{width:54px;color:var(--text-2);font-weight:700;text-align:center}.questions-table .question-text-cell{min-width:180px;max-width:240px;white-space:normal}[dir=rtl] .questions-table .question-text-cell{text-align:right}[dir=ltr] .questions-table .question-text-cell{text-align:left}.question-table-text{display:block;width:100%;max-width:240px;margin:0;padding:0;border:0;background:none;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-family:inherit;color:var(--text);font-size:14px;font-weight:600;line-height:1.7;text-align:inherit}.question-text-tooltip{position:fixed;z-index:1000;width:max-content;padding:7px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;overflow-y:auto;text-align:start}.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-fill)}.question-status-text.is-archived{color:var(--danger)}.question-status-text.is-archived i{background:var(--danger)}.question-type-text{color:var(--text-3);font-size:12px}.questions-table .question-type-cell{max-width:180px;overflow:hidden;text-overflow:ellipsis}.questions-table .question-status-badges{display:flex;flex-wrap:wrap;gap:4px}.questions-table .question-occurrence-cell{text-align:start;font-variant-numeric:tabular-nums}.questions-table .question-years-cell{min-width:120px;max-width:220px;white-space:normal;color:var(--text-3);font-size:12px}@media(max-width:768px){.question-status-action{min-height:42px;flex:1}.question-entry-section-body{padding:14px}.question-entry-field-grid{grid-template-columns:1fr}.occurrence-toolbar{align-items:stretch;flex-direction:column}.occurrence-toolbar>.btn{width:100%}.question-status-text,.question-type-text{font-size:13px}}@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}}.results-page{display:flex;flex-direction:column;gap:20px}.results-page>.page-heading{margin-block-end:0}.results-create{padding:22px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.results-create h2{margin:0 0 6px;color:var(--text);font-size:17px;font-weight:750}.results-create p{max-inline-size:60ch;margin:0 0 16px;color:var(--text-2);font-size:14px;line-height:1.7}.results-history-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-block-end:-8px}.results-history-head h2{margin:0;color:var(--text);font-size:17px;font-weight:750}.results-filters{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.results-filter{padding:5px 12px;border:1px solid var(--border-2);border-radius:999px;background:var(--surface);color:var(--text-2);font:inherit;font-size:12.5px;cursor:pointer;transition:.15s}.results-filter:hover{border-color:var(--accent-border);color:var(--text)}.results-filter.is-selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:650}.history-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.history-row{display:grid;gap:8px;padding:16px 18px;border:1px solid var(--border);border-radius:10px;background:var(--surface);cursor:pointer;transition:border-color .15s}.history-row:hover{border-color:var(--border-2)}.history-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.history-row.is-abandoned{opacity:.62}.history-row.is-static{cursor:default}.history-row.is-static:hover{border-color:var(--border)}.history-row-head{display:flex;align-items:center;gap:8px;min-inline-size:0}.history-row-title{flex:1;min-inline-size:0;margin:0;overflow:hidden;color:var(--text);font-size:14.5px;white-space:nowrap;text-overflow:ellipsis}.history-row-title b{font-weight:750}.history-row-title.is-wrapped{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.6;white-space:normal}.history-row-title.is-wrapped b{font-weight:600}.row-card-chips{display:flex;flex-wrap:wrap;gap:6px}.row-card-text{margin:-2px 0 0;overflow:hidden;color:var(--text-2);font-size:13px;white-space:nowrap;text-overflow:ellipsis}.history-row-name{unicode-bidi:plaintext}.history-row-time{margin-inline-start:6px;color:var(--text-3);font-size:12.5px}.history-row-actions{flex:0 0 auto;margin-block:-4px}.history-row-outcomes{display:flex;flex-wrap:wrap;gap:2px 12px;margin:-2px 0 0;color:var(--text-3);font-size:12px}.history-row-outcomes b{font-weight:650;font-variant-numeric:tabular-nums}.history-row-outcomes b.is-correct{color:var(--green)}.history-row-outcomes b.is-incorrect{color:var(--red)}.history-row-foot{display:flex;align-items:center;gap:12px}.history-row-icon{flex:0 0 auto;inline-size:20px;block-size:20px;fill:none;stroke:var(--text-3);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.history-row-bar{flex:1;display:flex;block-size:4px;border-radius:999px;overflow:hidden;background:var(--surface-3)}.history-row-bar i{display:block;block-size:100%;background:var(--accent)}.row-card-meta{display:flex;flex-wrap:wrap;gap:2px 12px;margin:0;color:var(--text-3);font-size:12.5px;font-variant-numeric:tabular-nums}.history-row-count{flex:0 0 auto;color:var(--text-2);font-size:12.5px;font-weight:650;font-variant-numeric:tabular-nums}.results-more{display:flex;justify-content:center}.row-card-page-skeleton{display:flex;flex-direction:column;gap:20px}.history-row.is-skeleton{cursor:default}.history-row.is-skeleton:hover{border-color:var(--border)}.history-row .skeleton-line.is-title{inline-size:55%;block-size:12px;margin-block:4px}.history-row .skeleton-block.is-icon{flex:0 0 auto;inline-size:20px;block-size:20px;border-radius:6px}.history-row .skeleton-line.is-bar{flex:1;inline-size:auto;block-size:4px}.history-row .skeleton-line.is-count{flex:0 0 auto;inline-size:32px}:where(.session-status){--tone: var(--text-3);--tone-soft: var(--surface-3);--tone-border: var(--border)}.session-status{display:inline-flex;align-items:center;padding-block:3px;padding-inline:10px;border:1px solid var(--tone-border);border-radius:999px;background:var(--tone-soft);color:var(--tone);font-size:11.5px;font-weight:650;white-space:nowrap}.session-status[data-status=abandoned]{border-color:transparent}@media(max-width:640px){.results-page{gap:16px}.results-create{padding:16px}.history-row{padding:12px 14px}.history-row-title{font-size:14px}.history-row-foot{gap:10px}.session-status{padding-inline:8px;font-size:11px}}@media(min-width:769px){.subject-tile{inline-size:46px;block-size:46px;border-radius:13px;font-size:21px}}.subject-tile{flex:0 0 auto;display:grid;place-items:center;inline-size:42px;block-size:42px;border:1px solid var(--subject-border);border-radius:12px;background:var(--subject-soft);color:var(--subject);font-family:"Cairo Variable","Cairo",var(--font-ar, inherit),sans-serif;font-size:19px;font-weight:800;line-height:1;-webkit-user-select:none;user-select:none}.subject-tile.is-sm{inline-size:34px;block-size:34px;border-radius:10px;font-size:16px}.subject-tile.is-xs{inline-size:22px;block-size:22px;border-radius:6px;font-size:11.5px}.subject-tile{--subject: var(--text-2);--subject-soft: var(--surface-3);--subject-border: var(--border)}.subject-tile[data-subject-color=violet]{--subject: #5b45c4;--subject-soft: #eeeaff;--subject-border: #cfc5f7}.subject-tile[data-subject-color=blue]{--subject: #1d4ed8;--subject-soft: #e7edff;--subject-border: #c3d2fb}.subject-tile[data-subject-color=green]{--subject: #0b6b52;--subject-soft: #e4f3ee;--subject-border: #b4ded1}.subject-tile[data-subject-color=amber]{--subject: #8c5305;--subject-soft: #fcf0dd;--subject-border: #eed5a6}.subject-tile[data-subject-color=rose]{--subject: #a82551;--subject-soft: #fcebf0;--subject-border: #f4c4d4}[data-theme=dark] .subject-tile[data-subject-color=violet]{--subject: #a99bf5;--subject-soft: #241f3d;--subject-border: #3c3266}[data-theme=dark] .subject-tile[data-subject-color=blue]{--subject: #8fb0ff;--subject-soft: #182240;--subject-border: #2b3a63}[data-theme=dark] .subject-tile[data-subject-color=green]{--subject: #4fd0a0;--subject-soft: #0f2a23;--subject-border: #264834}[data-theme=dark] .subject-tile[data-subject-color=amber]{--subject: #e7a844;--subject-soft: #332613;--subject-border: #5a4520}[data-theme=dark] .subject-tile[data-subject-color=rose]{--subject: #f591b0;--subject-soft: #331924;--subject-border: #5c2c3d}.subject-color-picker{display:flex;gap:9px;flex-wrap:wrap}.subject-color-option{position:relative;padding:0;border:0;background:none;border-radius:12px;cursor:pointer}.subject-color-option .subject-tile{border-width:2px;transition:.15s}.subject-color-option:hover .subject-tile{border-color:var(--subject)}.subject-color-option:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.subject-color-option.is-selected .subject-tile{border-color:var(--subject);box-shadow:0 0 0 3px var(--subject-soft),0 0 0 4px var(--subject)}.subject-color-option.is-selected:after{content:"✓";position:absolute;inset-block-end:-6px;inset-inline-end:-6px;display:grid;place-items:center;inline-size:18px;block-size:18px;border:2px solid var(--surface);border-radius:50%;background:var(--subject);color:var(--surface);font-size:10px;line-height:1}.subject-color-none .subject-tile{font-size:12px;font-weight:650}.subject-color-hint{margin:8px 0 0;color:var(--text-3);font-size:12px;line-height:1.6}.settings-group{max-inline-size:600px;display:grid;gap:6px}.settings-group+.settings-group{margin-block-start:14px}.settings-group-title{margin:0;padding-inline:4px;color:var(--text-2);font-size:14px;font-weight:700}.settings-list{padding-block:4px}.settings-row{inline-size:100%;min-block-size:56px;display:flex;align-items:center;gap:12px;padding:8px 14px;border:0;background:transparent;color:var(--text);font-family:inherit;text-align:start}.settings-row.is-choice{cursor:pointer;transition:background .15s}.settings-row.is-choice:hover{background:var(--surface-2)}.settings-row-icon{flex:none;inline-size:34px;block-size:34px;display:grid;place-items:center;border-radius:9px;background:var(--accent-soft);color:var(--accent)}.settings-row-icon svg{inline-size:18px;block-size:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.settings-row-copy{flex:1;min-inline-size:0;display:grid;gap:1px}.settings-row-label{font-size:14px;font-weight:600}.settings-row-hint{color:var(--text-3);font-size:12px;line-height:1.5}.settings-row-control{flex:none}.settings-row-radio{flex:none;inline-size:20px;block-size:20px;border:2px solid var(--border-2);border-radius:50%}.settings-row.is-selected .settings-row-radio{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 4px var(--surface)}.settings-row.is-selected .settings-row-label{color:var(--accent);font-weight:700}.stepper{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:9px;background:var(--surface-2)}.stepper button{inline-size:34px;block-size:34px;border:0;background:transparent;color:var(--text-2);font-family:inherit;font-size:18px;cursor:pointer}.stepper button:hover{color:var(--accent)}.stepper input{inline-size:44px;block-size:34px;padding:0;border:0;background:transparent;color:var(--text);font-family:inherit;font-size:14px;font-weight:700;text-align:center;-moz-appearance:textfield}.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.switch{inline-size:44px;block-size:26px;display:flex;align-items:center;justify-content:flex-start;padding:3px;border:0;border-radius:999px;background:var(--border-2);cursor:pointer;transition:background .15s}.switch.is-on{justify-content:flex-end;background:var(--accent-fill)}.switch-thumb{inline-size:20px;block-size:20px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm)}.setting-error{padding:4px 14px 10px;color:var(--danger);font-size:13px;font-weight:600}.segmented{display:inline-flex;max-inline-size:100%;gap:2px;padding:3px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2)}.segmented-option{flex:1 1 auto;min-block-size:30px;min-inline-size:34px;padding:4px 12px;border:0;border-radius:6px;background:transparent;color:var(--text-2);font-family:inherit;font-size:12.5px;font-weight:600;line-height:1.3;cursor:pointer;transition:.15s}.segmented-option:hover{color:var(--text)}.segmented-option.is-active{background:var(--surface);color:var(--accent);font-weight:700;box-shadow:var(--shadow-sm)}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.dashboard-section-head p{margin:2px 0 0;color:var(--text-3);font-size:13px}.dashboard-page h3{margin:0;color:var(--text);font-size:15px;font-weight:700}.dashboard-subject{min-inline-size:180px}.readiness-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.readiness-card{display:flex;align-items:flex-start;gap:16px;padding:18px;text-align:start}.readiness-card.is-locked{background:var(--surface-2)}.readiness-text{display:grid;flex:1;align-content:start;gap:8px;min-inline-size:0}.readiness-text p{margin:0;color:var(--text-2);font-size:13.5px;line-height:1.65}.readiness-text p strong{color:var(--text);font-weight:700}.readiness-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.readiness-text .readiness-value strong{font-size:30px;font-weight:750;font-variant-numeric:tabular-nums}.readiness-change{font-size:12.5px;font-weight:650}.readiness-change.is-up{color:var(--green)}.readiness-change.is-down{color:var(--red)}.readiness-progress{display:flex;align-items:center;gap:10px;margin-block-start:4px}.readiness-progress-track{flex:1;max-inline-size:220px;block-size:6px;overflow:hidden;border-radius:999px;background:var(--surface-3)}.readiness-progress-track i{display:block;block-size:100%;border-radius:inherit;background:var(--accent-fill)}.readiness-progress small{color:var(--text-3);font-size:12px;font-variant-numeric:tabular-nums}.readiness-preview{position:relative;flex:none;inline-size:132px;block-size:112px}.readiness-preview:before{content:"";position:absolute;top:10px;right:4px;bottom:4px;left:14px;border-radius:18px;background:var(--accent-soft);border:1px solid var(--accent-border);transform:rotate(-6deg)}.readiness-preview-card{position:absolute;top:4px;right:16px;bottom:12px;left:8px;display:grid;align-content:start;gap:6px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow-sm)}.readiness-preview-card p{display:flex;align-items:baseline;justify-content:space-between;gap:6px;margin:0;opacity:.45}.readiness-preview-card strong{color:var(--text);font-size:20px;font-weight:750}.readiness-preview-card span{color:var(--green);font-size:11px;font-weight:650}.readiness-preview-card i{display:block;block-size:5px;border-radius:999px;background:var(--surface-3)}.readiness-preview-card i.is-short{inline-size:45%}.readiness-preview-card i.is-mid{inline-size:70%}.readiness-lock{position:absolute;inset-block-end:0;inset-inline-end:6px;display:grid;place-items:center;inline-size:30px;block-size:30px;border-radius:50%;background:var(--accent-fill);box-shadow:0 0 0 3px var(--surface-2)}.readiness-lock svg{inline-size:15px;block-size:15px;fill:none;stroke:var(--on-ink, #fff);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@media(max-width:400px){.readiness-preview{inline-size:96px;block-size:88px}.readiness-preview-card strong{font-size:16px}}.review-card{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px 24px;padding:16px}.review-card-text{display:grid;flex:1 1 320px;gap:6px}.review-card-text h3{color:var(--accent)}.review-card-text p{margin:0;color:var(--text-2);font-size:13.5px;line-height:1.6}.review-card-text .review-card-due{color:var(--text);font-weight:650}.review-card-actions{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.review-card-size{display:grid;gap:4px;color:var(--text-3);font-size:11.5px;font-weight:650}.review-card-size>div{min-inline-size:96px}.over-time-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:12px}.timeline-card,.analysis-card,.performance-card{display:grid;align-content:start;gap:12px;padding:16px}.timeline-plot{position:relative;block-size:220px;min-inline-size:0}@media(max-width:640px){.timeline-plot{margin-inline-start:-16px}}.timeline-plot svg{direction:ltr}.timeline-locked{display:grid;place-content:center;gap:6px;block-size:100%;padding:16px;border:1px dashed var(--border-2);border-radius:var(--r);color:var(--text-3);font-size:13px;text-align:center}.timeline-locked strong{color:var(--text);font-size:15px}.timeline-card-head{display:grid;gap:0}.timeline-note{margin:0;color:var(--text-3);font-size:12.5px}.outcome-swatch{flex:none;inline-size:8px;block-size:8px;border-radius:50%}.performance-overview{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px}.performance-donut{position:relative;flex:none;inline-size:200px;block-size:200px}.performance-donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;padding:18px;text-align:center;pointer-events:none}.performance-donut-center strong{color:var(--text);font-size:15px;font-weight:750;line-height:1.3;font-variant-numeric:tabular-nums}.performance-legend{display:grid;flex:none;gap:6px;margin:0;padding:0;list-style:none;font-size:13px}.performance-legend li{display:flex;align-items:center;gap:8px;color:var(--text-2)}.performance-legend b{color:var(--text);font-variant-numeric:tabular-nums}.completion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.completion-tile{display:grid;gap:8px;padding:14px 16px}.completion-tile span{color:var(--text-3);font-size:12px;font-weight:650}.completion-tile strong{color:var(--text);font-size:24px;font-weight:750;line-height:1.1;font-variant-numeric:tabular-nums}.completion-tile small{margin-block-start:-4px;color:var(--text-3);font-size:12px}.level-table{--level-cols: 28px minmax(0, 1fr) 88px 88px;display:grid;gap:12px}.level-table.is-topics{--level-cols: 28px minmax(0, 1fr) minmax(0, 200px) 88px 88px}.level-cell.is-unit{justify-items:start}.level-cell b.is-empty{color:var(--text-4);font-weight:500}.level-cell.is-unit b{overflow:hidden;max-inline-size:100%;color:var(--text-2);font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.level-table>.segmented{justify-self:start}.level-box{overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.level-columns{display:grid;grid-template-columns:var(--level-cols) 44px;align-items:center;gap:12px;padding:4px 16px;border-block-end:1px solid var(--border);background:var(--surface-2);color:var(--text-2);font-size:12.5px;font-weight:650}.level-columns .table-sort-button{justify-content:center;padding:10px 4px;border-radius:var(--r)}.level-columns .table-sort-button.is-start{justify-content:flex-start}.level-columns-name{padding-block:10px}.level-columns-action{text-align:center}.level-list{display:grid;margin:0;padding:0;list-style:none}.level-list>li+li{border-block-start:1px solid var(--border)}.level-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:12px;padding:10px 16px}.level-head{display:grid;grid-template-columns:var(--level-cols);align-items:center;gap:12px;min-block-size:var(--touch-target);padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:start}button.level-head{cursor:pointer}button.level-head:hover .level-name{color:var(--accent)}.level-head:focus-visible,.level-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.level-name{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;min-inline-size:0;color:var(--text);font-size:14.5px;font-weight:650}.level-rank{color:var(--text-3);font-variant-numeric:tabular-nums}.level-focus{display:inline-flex;align-items:center;gap:6px;color:var(--tertiary);font-size:11.5px;font-weight:700}.level-cell{display:grid;justify-items:center}.level-cell small{display:none;color:var(--text-3);font-size:11px}.level-cell b{color:var(--text);font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}.level-chevron-cell{display:grid;place-items:center;inline-size:28px;block-size:28px;border-radius:var(--r);transition:background .15s}button.level-head:hover .level-chevron-cell,button.level-head:focus-visible .level-chevron-cell{background:var(--surface-3)}.level-chevron{inline-size:7px;block-size:7px;margin-block-end:3px;border-bottom:2px solid var(--text-3);border-right:2px solid var(--text-3);transform:rotate(45deg);transition:transform .15s}.level-head[aria-expanded=true] .level-chevron{margin-block:3px 0;transform:rotate(-135deg)}.level-action{display:grid;place-items:center;inline-size:32px;block-size:32px;justify-self:center;padding:0;border:0;border-radius:var(--r);background:transparent;color:var(--text-2);cursor:pointer}.level-action svg{inline-size:17px;block-size:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}[dir=rtl] .level-action svg{transform:scaleX(-1)}.level-action:hover{background:var(--surface-2);color:var(--accent)}.level-action.is-resume{color:var(--accent)}.level-action.is-resume svg{fill:currentColor}.level-action:disabled{opacity:.6;cursor:default}.level-open{display:grid;grid-template-columns:minmax(0,540px);padding:16px 16px 24px;border-block-start:1px solid var(--border)}.progress-stats{display:grid;gap:20px}.progress-stat{display:grid;gap:8px}.progress-stat-label{color:var(--text-3);font-size:12px;font-weight:700;letter-spacing:.02em}.progress-stat-value{margin:0;color:var(--text-3);font-size:15px;font-variant-numeric:tabular-nums}.progress-stat-value strong{color:var(--text);font-size:20px;font-weight:700}.progress-stat-bar{display:flex;block-size:4px;overflow:hidden;border-radius:999px;background:var(--surface-3)}.progress-stat-bar i{display:block;block-size:100%}.progress-stat-key{display:flex;flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;list-style:none;color:var(--text-2);font-size:12.5px}.progress-stat-key span,.progress-stat-key button{display:inline-flex;align-items:center;gap:6px}.progress-stat-key button{padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.progress-stat-key button:hover{color:var(--accent);text-decoration:underline}.progress-stat-key button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.progress-stat-dot{flex:none;inline-size:8px;block-size:8px;border-radius:50%}@media(max-width:640px){.level-open{grid-template-columns:minmax(0,1fr);padding-inline:12px}}.level-dot{flex:none;inline-size:8px;block-size:8px;border-radius:50%}@media(max-width:640px){.level-columns{display:none}.level-row{padding:12px}.level-head{grid-template-columns:28px auto auto minmax(0,1fr);row-gap:8px;column-gap:16px}.level-name{grid-column:2 / -1}.level-cell{grid-row:2;justify-items:start}.level-cell.is-accuracy{grid-column:2}.level-cell.is-relevance{grid-column:3}.level-table.is-topics .level-cell.is-unit{grid-column:2}.level-table.is-topics .level-cell.is-accuracy{grid-column:3}.level-table.is-topics .level-cell.is-relevance{grid-column:4}.level-cell small{display:block}}.chart-tooltip{display:grid;gap:4px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);box-shadow:0 4px 14px #0f172a1f;color:var(--text-2);font-size:12px}.chart-tooltip span{display:inline-flex;align-items:center;gap:6px}.chart-tooltip strong,.chart-tooltip b{color:var(--text);font-variant-numeric:tabular-nums}@media(max-width:900px){.over-time-grid{grid-template-columns:minmax(0,1fr)}.completion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:400px){.performance-overview{gap:14px}.performance-donut{inline-size:160px;block-size:160px}.completion-tile strong{font-size:18px}}.curriculum-grid{display:grid;grid-template-columns:1fr;gap:12px;margin:0;padding:0;list-style:none}@media(min-width:600px){.curriculum-grid{grid-template-columns:1fr 1fr}}.curriculum-back{display:inline-block;margin-block-end:12px;font-size:13px;color:var(--accent);text-decoration:none}.curriculum-back:hover{text-decoration:underline}.app-shell.is-busy .history-list{pointer-events:none;opacity:.6}.table-toolbar-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.table-sort{inline-size:200px}.table-filter-trigger{gap:7px;white-space:nowrap}.table-filter-trigger.is-active{background:var(--accent-soft);border-color:var(--accent-border);color:var(--text)}.table-filter-trigger svg,.table-filter-close svg{width:17px;height:17px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}.table-filter-trigger circle{fill:var(--surface)}.table-filter-trigger-count{display:grid;place-items:center;min-width:18px;height:18px;padding-inline:4px;border-radius:5px;background:var(--accent-fill);color:var(--on-accent);font-size:10px;line-height:1}.table-filter-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;justify-content:flex-end;padding:12px;background:#0003;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:filter-backdrop-in .16s ease-out}.table-filter-panel{display:flex;flex-direction:column;width:min(360px,100%);min-width:0;max-height:100%;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:var(--shadow-lg);overflow:hidden;animation:filter-panel-in .2s ease-out}.table-filter-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px;border-bottom:1px solid var(--border)}.table-filter-header h2{margin:0;font-size:18px;font-weight:600}.table-filter-header p{margin:6px 0 0;color:var(--text-2);font-size:12px;line-height:1.7}.table-filter-close{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-2);cursor:pointer}.table-filter-close:hover{background:var(--surface-2);color:var(--text)}.table-filter-close:focus-visible,.table-filter-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.table-filter-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px}.table-filter-fields{display:grid;gap:16px}.table-filter-fields .field{min-width:0}.table-filter-footer{display:grid;gap:12px;padding:14px 20px max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface-2)}.table-filter-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.table-filter-actions .btn-primary{flex:1}@keyframes filter-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes filter-panel-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}[dir=rtl] .table-filter-panel{animation-name:filter-panel-in-rtl}@keyframes filter-panel-in-rtl{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@media(max-width:560px){.data-table-toolbar.has-filter-button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.has-filter-button .table-search{min-width:0}.has-filter-button .table-toolbar-actions{display:contents}.has-filter-button .table-filter-trigger{grid-column:2;grid-row:1}.has-filter-button .table-count{grid-column:1 / -1;grid-row:2}.has-filter-button .table-sort{grid-column:1 / -1;grid-row:3;inline-size:100%}.table-filter-panel{--control-font-size: 16px;--control-height: 42px}.table-filter-overlay{padding:8px}}@media(prefers-reduced-motion:reduce){.table-filter-overlay,.table-filter-panel,[dir] .table-filter-panel{animation:none}}.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(--danger);background:var(--danger-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}}.question-preview-modal .modal-panel{width:min(720px,100%)}.question-preview-modal .modal-body{background:var(--bg);padding:20px;overscroll-behavior:contain}.question-preview-modal .modal-close{width:44px;height:44px}.student-preview{--preview-ink: var(--accent-hover);display:flex;flex-direction:column;gap:20px;width:100%;min-width:0;overflow-wrap:anywhere}.student-preview .preview-icon{display:block;width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.student-preview-topbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:0 2px;font-size:12px;font-weight:500}.student-preview-mode{display:flex;align-items:center;gap:8px;color:var(--text-2)}.student-preview-type{padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-2)}.student-question-card{min-width:0;border:1px solid var(--border);border-radius:20px;background:var(--surface)}.student-question-header{display:flex;align-items:flex-start;gap:12px;padding:20px 18px 0}.student-question-number{display:grid;place-items:center;flex:0 0 42px;height:42px;border:1px solid var(--accent-border);border-radius:13px;background:var(--accent-soft);color:var(--preview-ink);font-size:17px;font-weight:650}.student-question-header>div{display:grid;gap:5px;min-width:0}.student-question-header strong{font-size:13px;font-weight:600;line-height:1.6}.student-question-header div span{color:var(--text-2);font-size:12px;line-height:1.8}.student-preview .student-question-content{display:flex;flex-direction:column;gap:24px;padding:24px 18px 20px}.student-preview .student-question-text{margin:0;color:var(--text);font-size:18px;font-weight:500;line-height:1.95;white-space:pre-wrap;text-align:start}.student-question-images{display:grid;gap:12px;min-width:0}.student-question-images img{display:block;width:100%;max-height:340px;object-fit:contain;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.student-preview .student-answer-label{display:block;margin:0;padding:0;color:var(--text-2);font-size:12px;font-weight:500;line-height:1.8}.student-options{display:grid;gap:0;min-width:0;margin:0;padding:0;border:0}.student-preview .student-options legend{margin-bottom:12px}.student-preview .student-option{display:flex;align-items:stretch;gap:0;min-inline-size:0;min-block-size:0;padding:0;border:none;border-radius:7px;background:none;transition:background .15s ease}.student-preview .student-option+.student-option{border-block-start:1px solid var(--border)}.student-preview .student-option>label{display:flex;align-items:center;gap:10px;flex:1;min-inline-size:0;padding:7px 6px;padding-inline-end:0;cursor:pointer}.student-preview .student-option:not(:has(>.student-option-eliminate))>label{padding-inline-end:6px}.student-preview .student-option:hover{transform:none;background:var(--surface-2)}.student-preview .student-option.is-selected{background:var(--accent-soft);font-weight:600}.student-preview .student-option input{position:absolute;opacity:0;inline-size:1px;block-size:1px}.student-preview .student-option:has(input:focus-visible),.student-preview button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.student-preview .student-option-letter{flex-basis:21px;inline-size:21px;block-size:21px;border:1.5px solid var(--border-2);border-radius:6px;background:none;color:var(--text-3);font-size:10.5px}.student-preview .student-boolean-options .student-option-letter{border-radius:50%}.student-preview .student-option-letter .preview-icon{inline-size:12px;block-size:12px}.student-preview .is-selected .student-option-letter{border-color:var(--accent);background:var(--accent);color:var(--bg)}.student-option-text{min-width:0;font-size:15px;line-height:1.8;white-space:pre-wrap}.student-option-eliminate{display:flex;align-items:center;justify-content:center;padding-block:7px;padding-inline:4px 6px;border:none;background:none;color:var(--text-3);font:inherit;font-size:12px;cursor:pointer}.student-option-eliminate-mark{display:grid;place-items:center;inline-size:26px;block-size:26px;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--text-3);transition:background .15s ease,border-color .15s ease,color .15s ease}.student-option-eliminate .student-option-eliminate-mark .preview-icon{inline-size:13px;block-size:13px;stroke-width:2}.student-option-eliminate:hover .student-option-eliminate-mark,.student-option-eliminate:focus-visible .student-option-eliminate-mark{border-color:var(--danger-border);background:var(--danger-bg);color:var(--danger)}.student-option.is-struck .student-option-eliminate-mark{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}.student-option.is-struck .student-option-eliminate:hover .student-option-eliminate-mark,.student-option.is-struck .student-option-eliminate:focus-visible .student-option-eliminate-mark{border-color:var(--accent)}.student-option-eliminate{position:relative}.student-option-eliminate:after{content:attr(data-tip);position:absolute;inset-block-start:50%;inset-inline-end:calc(100% + 2px);transform:translateY(-50%);z-index:5;padding:4px 8px;border-radius:6px;background:var(--text);color:var(--bg);font-size:12px;font-weight:500;line-height:1.6;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s ease .25s}.student-option-eliminate:focus-visible:after{opacity:1}@media(hover:hover){.student-option-eliminate:hover:after{opacity:1}}@media(prefers-reduced-motion:reduce){.student-option-eliminate:after,.student-option-eliminate-mark{transition:none}}.student-option.is-struck{color:var(--text-2)}.student-option.is-struck .student-option-text{--strike-at: 56%;background-image:linear-gradient(transparent calc(var(--strike-at) - .75px),var(--danger) 0,var(--danger) calc(var(--strike-at) + .75px),transparent 0);background-size:100% 1lh;background-repeat:repeat-y}.student-written-answer,.student-ordering,.student-matching,.student-cloze{display:grid;gap:12px;min-width:0}.student-number-answer{display:flex;align-items:center;min-width:0;border:1px solid var(--border-2);border-radius:13px;background:var(--surface-2)}.student-number-answer input,.student-text-answer,.student-cloze-text input{min-width:0;color:var(--text);font:inherit;font-size:16px;text-align:start}.student-number-answer input{width:100%;min-height:60px;padding:16px;border:0;border-radius:13px;background:transparent}.student-number-answer>span{flex-shrink:0;max-width:40%;padding:8px 14px;border-inline-start:1px solid var(--border-2);color:var(--text-2);font-size:14px}.student-text-answer{width:100%;min-height:132px;padding:14px 16px;border:1px solid var(--border-2);border-radius:13px;background:var(--surface-2);line-height:2;resize:vertical}.student-text-answer.is-essay{min-height:244px}.student-text-answer::placeholder,.student-number-answer input::placeholder{color:var(--text-2);opacity:.8}.student-text-answer:focus,.student-cloze-text input:focus,.student-number-answer:focus-within{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.student-number-answer input:focus{outline:none}.student-order-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.student-order-item{display:flex;align-items:center;gap:10px;min-width:0;padding:7px 10px;border:1px solid var(--border);border-radius:13px;background:var(--surface);cursor:grab}.student-order-number,.student-match-prompt b{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:8px;background:var(--surface-2);color:var(--text-2);font-size:12px;font-weight:600}.student-order-text{flex:1;min-width:0;font-size:15px;line-height:1.8;white-space:pre-wrap}.student-order-list{-webkit-user-select:none;user-select:none}.student-order-handle{display:grid;place-items:center;flex-shrink:0;align-self:stretch;inline-size:36px;min-block-size:36px;margin-block:-7px;margin-inline-end:-6px;padding:0;border:0;background:none;color:var(--text-3);cursor:grab;touch-action:none}.student-order-handle:hover{color:var(--text-2)}.student-order-handle .preview-icon.is-grip{stroke-width:3.4}.student-order-item.is-dragging{position:relative;z-index:1;cursor:grabbing;background:var(--accent-soft);box-shadow:0 4px 14px color-mix(in srgb,var(--text) 12%,transparent)}.student-order-item.is-dragging .student-order-handle{color:var(--accent);cursor:grabbing}.student-preview .student-match-row{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:4px 0;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.student-match-prompt{display:flex;align-items:center;gap:10px;min-width:0;font-size:15px;line-height:1.8}.student-match-prompt b{background:var(--surface);border:1px solid var(--border)}.student-match-prompt>span{min-width:0;white-space:pre-wrap}.student-match-select{position:relative;min-width:0}.student-match-chevron{position:absolute;inset-inline-end:12px;top:17px;pointer-events:none;color:var(--text-2)}.student-preview .student-cloze-text{display:block}.student-cloze-gap{white-space:nowrap}.student-match-option{display:inline-flex;align-items:center;gap:8px;min-width:0}.student-match-letter{display:grid;place-items:center;flex:0 0 21px;block-size:21px;border:1.5px solid var(--border-2);border-radius:6px;color:var(--text-3);font-size:10.5px;font-weight:600}.student-cloze-text input{inline-size:auto;max-inline-size:100%;min-block-size:48px;padding:8px 12px;border:none;border-block-end:1.5px solid var(--border-2);border-radius:0;background:none;text-align:center}.student-cloze-text input.is-filled{border-block-end-color:var(--accent);background:var(--accent-soft);color:var(--accent);border-start-start-radius:4px;border-start-end-radius:4px}.student-cloze-text input::placeholder{color:var(--preview-ink);text-align:center;opacity:1;font-size:12px}.student-preview-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;padding:0 2px}.student-preview-footer>span{color:var(--text-2);font-size:11px;line-height:1.8}.student-preview-reset{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-2);font:inherit;font-size:12px;cursor:pointer}.student-preview-reset:hover{border-color:var(--accent-border);color:var(--preview-ink)}.student-preview .student-preview-reset .preview-icon{width:16px;height:16px}.student-preview-empty{margin:0;padding:18px;border:1px dashed var(--border-2);border-radius:12px;color:var(--text-2);font-size:13px;line-height:1.8}.passage-preview-content{padding:20px 18px;border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:18px;background:var(--surface)}.passage-preview-label{display:flex;align-items:center;gap:8px;margin-bottom:20px;color:var(--preview-ink);font-size:12px;font-weight:500}.passage-preview-content h3{margin:0 0 16px;font-size:21px;font-weight:650;line-height:1.7;text-align:start}.passage-preview-content p{margin:0;color:var(--text);font-size:16px;line-height:2.1;white-space:pre-wrap;text-align:start}.passage-preview-content .student-question-images{margin-top:20px}.passage-preview-divider{display:flex;align-items:center;gap:14px;color:var(--text-2);font-size:12px}.passage-preview-divider:after{content:"";height:1px;flex:1;background:var(--border)}.passage-preview-questions{display:grid;gap:20px}@media(min-width:480px){.student-boolean-options{grid-template-columns:repeat(2,minmax(0,1fr))}.student-preview .student-boolean-options .student-option+.student-option{border-block-start:0;border-inline-start:1px solid var(--border)}}@media(min-width:601px){.question-preview-modal .modal-body{padding:28px}.student-question-header{padding:26px 28px 0}.student-preview .student-question-content{padding:28px;gap:28px}.student-preview .student-question-text{font-size:20px}.student-preview .student-match-row{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center}.passage-preview-content{padding:26px 28px}}@media(max-width:600px){.question-preview-modal .modal-panel{height:100dvh;max-height:100dvh;border:0;border-radius:0}.question-preview-modal .modal-body{padding:16px 12px max(20px,env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){.question-preview-modal,.question-preview-modal .modal-panel{animation:none}.student-preview .student-option{transition:none}}.builder-row-select{max-inline-size:60vw}.builder-number{inline-size:96px;text-align:center;font-variant-numeric:tabular-nums}.builder-number:focus::placeholder{color:transparent}.builder-row-wrap.is-stacked>.builder-row{flex-wrap:wrap;row-gap:10px;padding-block:12px 14px}.builder-row-wrap.is-stacked .builder-row-summary{flex:1 1 100%;display:block}.builder-box>.empty-state{margin:16px}.builder-link{display:inline-flex;align-items:center;gap:6px;flex:none;min-block-size:var(--touch-target);padding:0 10px;border:1px solid transparent;border-radius:var(--r);background:none;color:var(--accent);font:inherit;font-size:12.5px;font-weight:650;cursor:pointer;transition:.15s}.builder-link:hover{background:var(--accent-soft)}.builder-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.builder-reset svg{width:15px;height:15px}.builder-toolbar{display:flex;justify-content:flex-end;margin-block-end:-8px}.builder-grid{display:grid;gap:16px;align-items:start}@media(min-width:1000px){.builder-grid{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}}.builder-box{min-inline-size:0;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.builder-box-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px;border-block-end:1px solid var(--border)}.builder-box-copy{display:grid;gap:4px;min-inline-size:0}.builder-matching{display:grid;flex:none;justify-items:end;gap:2px;text-align:end}.builder-matching b{color:var(--accent);font-size:22px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.builder-matching span{color:var(--text-3);font-size:12px;font-weight:600}.builder-matching.is-none b{color:var(--danger)}.builder-box-head h2{margin:0;color:var(--text);font-size:15.5px;font-weight:750}.builder-box-head p{margin:0;color:var(--text-2);font-size:12.5px;font-weight:500}.builder-box-body{padding:16px}.builder-rows{display:grid}.builder-rows>*+*{border-block-start:1px solid var(--border)}.builder-row{display:flex;align-items:center;gap:10px;min-block-size:52px;padding:8px 16px}.builder-row.is-master{justify-content:space-between;background:var(--surface-2)}.builder-row.is-master .styled-checkbox{margin:0;font-weight:650}.builder-row-lead{flex:1;min-inline-size:0}.builder-row-lead .styled-checkbox{margin:0}.builder-row-lead .checkbox-label{overflow-wrap:anywhere;white-space:normal}.builder-row-wrap.is-open>.builder-row .builder-row-lead .checkbox-label{font-weight:650}.builder-row-summary{display:flex;flex:none;align-items:center;gap:6px}.builder-row-title{display:grid;gap:5px;color:var(--text);font-size:14px;font-weight:600;line-height:1.4}.builder-row-title small{color:var(--text-3);font-size:12.5px;font-weight:500;line-height:1.55}.builder-row-title small.is-warning{color:var(--danger)}.node-unit-toggle,.node-unit-toggle-spacer{flex:0 0 28px;width:28px;height:28px}.node-unit-toggle{display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid transparent;border-radius:8px;background:none;color:var(--text-3);cursor:pointer;transition:.15s}.node-unit-toggle:hover{color:var(--text);background:var(--surface-3)}.node-unit-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.builder-row-icon{width:17px;height:17px}.builder-row-body{padding:0 16px 14px;padding-inline-start:50px}.builder-chip{padding:3px 9px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text-2);font-size:12px;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}.builder-chip.is-accent{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}.count-pill{padding:1px 7px;border-radius:999px;background:var(--surface-2);color:var(--text-3);font-size:11.5px;font-weight:650;font-variant-numeric:tabular-nums}.count-pill.is-empty{color:var(--text-4)}.status-filter-group{display:flex;flex-wrap:wrap;gap:8px}.paper-picker-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:16px;align-items:start}.session-bar{position:sticky;z-index:20;bottom:calc(86px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-block-start:auto;padding:8px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-md, 0 8px 24px rgba(15, 23, 42, .12))}.session-bar-start{flex:1}@media(min-width:769px){.session-bar-start{flex:none;min-inline-size:120px}}@media(min-width:769px){.dashboard-content .practice-page{min-height:100%;gap:16px}.session-bar{bottom:0;margin-inline:-30px;margin-block-end:-28px;padding:12px 30px;border-width:1px 0 0;border-radius:0;background:var(--bg);box-shadow:none}}.topic-picker-modal.modal-overlay{align-items:center;justify-content:center}.topic-picker-modal .modal-panel{width:min(640px,100%);max-height:min(86vh,760px);animation-name:topic-picker-in}@keyframes topic-picker-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.topic-picker-modal .modal-title{font-size:17px}.topic-picker-modal .modal-body{gap:10px;scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.topic-picker-search{width:100%;flex:none}.topic-picker-all{padding-block:4px 0}.topic-picker-all .styled-checkbox{margin:0;font-weight:650}.topic-picker-caption{margin:6px 0 0;color:var(--text-2);font-size:12px;font-weight:700}.topic-picker-list{display:grid;margin:0;padding:0;list-style:none}.topic-picker-list>li+li{border-block-start:1px solid var(--border)}.topic-picker-list .styled-checkbox{display:flex;width:100%;margin:0;min-block-size:48px;padding-inline:4px}.topic-picker-list .checkbox-label{display:inline-flex;flex:1;align-items:center;justify-content:space-between;gap:4px 12px;white-space:normal;overflow-wrap:anywhere}.topic-picker-empty{margin:12px 0;color:var(--text-3);font-size:13px}.topic-picker-modal .modal-footer .btn{block-size:36px;min-block-size:0;min-inline-size:96px;padding-block:0}.topic-picker-modal .modal-subtitle{font-size:12.5px}.topic-picker-tally{margin-inline-end:auto;color:var(--text-2);font-size:12.5px;font-weight:600}@media(max-width:559px){.topic-picker-modal.modal-overlay{align-items:flex-end;padding:0}.topic-picker-modal .modal-panel{max-height:88vh;border-radius:16px 16px 0 0}}.builder-row.is-clickable{cursor:pointer;transition:background .14s}.builder-row.is-clickable:hover{background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface))}.builder-row.is-clickable:hover .builder-row-name{color:var(--accent)}.builder-row.is-disabled{cursor:default;opacity:.6}.builder-row-check{display:inline-flex;flex:none}.builder-row-check .styled-checkbox{margin:0;gap:0}.builder-row-name{color:var(--text);font-size:14px;font-weight:500;overflow-wrap:anywhere}.attempt-runner{--attempt-font-scale: 1;block-size:100dvh;overflow:hidden;background:var(--surface-2)}.attempt-runner[data-text-size=sm]{--attempt-font-scale: .9}.attempt-runner[data-text-size=lg]{--attempt-font-scale: 1.2}.attempt-shell{display:flex;block-size:100%}.attempt-main{flex:1;display:flex;min-inline-size:0}.attempt-column{flex:1;min-inline-size:0;overflow-y:auto;padding:24px;background:var(--surface)}.attempt-column>.attempt-question{max-inline-size:780px;margin-inline:auto}.attempt-pane-placeholder{order:1;inline-size:48px;flex:none;border-inline-start:1px solid var(--border);background:var(--surface)}.attempt-question{display:grid;gap:18px}.attempt-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;margin-block-start:22px}.attempt-stimulus,.attempt-reveal{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);padding:22px 24px}.attempt-question-body{padding:8px 0 0}.attempt-question-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-block-end:18px}.attempt-question-ident{display:grid;gap:5px;justify-items:start;min-inline-size:0}.attempt-tools-actions{display:flex;align-items:center;gap:2px;flex:none}.attempt-tool{display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid transparent;border-radius:8px;background:none;color:var(--text-3);font:inherit;font-size:11px;cursor:pointer}.attempt-tool:hover{background:var(--surface-3);color:var(--text)}.attempt-tool.is-icon{inline-size:30px;block-size:30px;justify-content:center;gap:0;padding:0;font-size:14px}.attempt-textsize-cycle{letter-spacing:-.5px}.attempt-textsize-cycle[data-size=sm]{font-size:11px}.attempt-textsize-cycle[data-size=md]{font-size:13px}.attempt-textsize-cycle[data-size=lg]{font-size:15px}.attempt-tool.is-on{border-color:var(--secondary-border);background:var(--secondary-soft);color:var(--secondary);font-weight:600}.attempt-stimulus-label,.attempt-reveal-label{margin:0 0 8px;color:var(--text-2);font-size:12px;font-weight:650;letter-spacing:.02em;text-transform:uppercase}.attempt-question-label{color:var(--text-2);font-size:12px;font-weight:650;white-space:nowrap}.attempt-stimulus-text,.attempt-reveal-text,.attempt-question-body .student-question-text{max-inline-size:68ch;margin:0;font-size:calc(16px * var(--attempt-font-scale));line-height:1.95;white-space:pre-wrap}.attempt-question-body .student-question-text{line-height:2.05}.attempt-question-body .student-cloze-text{display:block}.attempt-question-body .student-text-answer,.attempt-question-body .student-option-text{font-size:calc(15px * var(--attempt-font-scale))}.attempt-question-body .student-answer-label{display:block;margin:0;padding:0;color:var(--text-2);font-size:calc(12px * var(--attempt-font-scale));font-weight:500;line-height:1.8}.attempt-question-body .student-options>.student-answer-label,.attempt-question-body .student-matching>.student-answer-label{margin-block-end:10px}.attempt-question-body .student-option{display:flex;align-items:stretch;gap:0;min-inline-size:0;min-block-size:0;padding:0;border:none;border-radius:7px;background:none;transition:background .15s ease}.attempt-question-body .student-option+.student-option{border-block-start:1px solid var(--border)}.attempt-question-body .student-option>label{display:flex;align-items:center;gap:10px;flex:1;min-inline-size:0;padding:7px 6px;padding-inline-end:0;cursor:pointer}.attempt-question-body .student-boolean-options{grid-template-columns:minmax(0,1fr)}.attempt-question-body .student-option:not(:has(>.student-option-eliminate))>label{padding-inline-end:6px}.attempt-question-body .student-option:hover{transform:none;background:var(--surface-2)}.attempt-question-body .student-option.is-selected{background:var(--accent-soft);font-weight:600}.attempt-question-body .student-option input{position:absolute;opacity:0;inline-size:1px;block-size:1px}.attempt-question-body .student-option:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:3px}.attempt-question-body .student-option-letter{flex-basis:21px;inline-size:21px;block-size:21px;border:1.5px solid var(--border-2);border-radius:6px;background:none;color:var(--text-3);font-size:10.5px}.attempt-question-body .student-boolean-options .student-option-letter{border-radius:50%}.attempt-question-body .student-boolean-options .is-true .student-option-letter{border-color:var(--green);color:var(--green)}.attempt-question-body .student-boolean-options .is-false .student-option-letter{border-color:var(--red);color:var(--red)}.attempt-question-body .student-boolean-options .student-option.is-true.is-selected{background:var(--green-bg)}.attempt-question-body .student-boolean-options .student-option.is-false.is-selected{background:var(--red-bg)}.attempt-question-body .student-boolean-options .student-option.is-true.is-selected .student-option-letter{border-color:var(--green);background:var(--green);color:var(--bg)}.attempt-question-body .student-boolean-options .student-option.is-false.is-selected .student-option-letter{border-color:var(--red);background:var(--red);color:var(--bg)}.attempt-question-body .preview-icon{display:block;inline-size:20px;block-size:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.attempt-question-body .student-option-letter .preview-icon{inline-size:12px;block-size:12px}.attempt-question-body .student-option.is-selected .student-option-letter{border-color:var(--accent);background:var(--accent);color:var(--bg)}.attempt-question-body .student-matching{gap:0}.attempt-question-body .student-match-row{--match-control-h: 36px;--match-radius: 7px;--match-pad: 2px 10px;--match-font: calc(15px * var(--attempt-font-scale));display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:12px;padding:7px 6px}.attempt-question-body .student-match-row+.student-match-row{border-block-start:1px solid var(--border)}.attempt-question-body .student-match-prompt{font-size:calc(15px * var(--attempt-font-scale))}@media(max-width:640px){.attempt-question-body .student-matching{grid-template-columns:fit-content(45%) minmax(0,1fr);gap:0 12px;container-type:inline-size}.attempt-question-body .student-matching>*{grid-column:1 / -1}.attempt-question-body .student-match-row{grid-template-columns:subgrid;gap:0 12px}@container (max-width: 340px){.attempt-question-body .student-match-row{grid-template-columns:minmax(0,1fr);row-gap:6px}}}.attempt-question-body .student-order-list{gap:0}.attempt-question-body .student-order-item{gap:10px;padding:7px 6px;border:none;border-radius:0;background:none}.attempt-question-body .student-order-item.is-dragging{background:var(--accent-soft)}.attempt-question-body .student-order-item+.student-order-item{border-block-start:1px solid var(--border)}.attempt-question-body .student-order-text{font-size:calc(15px * var(--attempt-font-scale))}.attempt-question-body .student-order-number,.attempt-question-body .student-match-prompt b{flex:0 0 21px;inline-size:21px;block-size:21px;border:1.5px solid var(--border-2);border-radius:6px;background:none;color:var(--text-3);font-size:10.5px}.attempt-question-body .student-cloze-text input{min-block-size:28px;padding:2px 6px;vertical-align:baseline;font-size:calc(15px * var(--attempt-font-scale))}.attempt-question-body .student-cloze-text input::placeholder{font-size:10.5px}.attempt-question-body .student-number-answer{max-inline-size:16rem;border-radius:7px}.attempt-question-body .student-number-answer input{min-block-size:34px;padding:6px 10px;border-radius:7px;font-size:calc(15px * var(--attempt-font-scale))}.attempt-question-body .student-number-answer>span{padding:5px 10px;font-size:calc(12.5px * var(--attempt-font-scale))}.attempt-question-body .preview-icon{inline-size:14px;block-size:14px}.attempt-question-body .student-order-handle .preview-icon{inline-size:18px;block-size:18px}.attempt-question-body .student-match-chevron{top:50%;transform:translateY(-50%)}.attempt-question.is-readonly .student-text-answer{background:var(--surface-2)}.attempt-question.is-readonly .student-option,.attempt-question.is-readonly .student-option>label{cursor:default}.attempt-question.is-readonly .student-option:not(.is-selected):hover{background:none}.attempt-question-images{display:flex;flex-wrap:wrap;gap:10px;margin-block-start:14px}.attempt-image-zoom{padding:0;border:1px solid var(--border);border-radius:var(--r);background:none;cursor:zoom-in;overflow:hidden}.attempt-image-zoom img{display:block;max-block-size:220px}.attempt-image-modal .modal-panel{max-inline-size:90vw}.attempt-image-modal img{inline-size:100%}.attempt-reveal{border-inline-start:3px solid var(--accent)}.attempt-reveal-head{display:flex;align-items:center;gap:10px;margin-block-end:12px}.attempt-reveal-head h2{margin:0;font-size:15px;font-weight:650}.attempt-reveal-note{margin:0 0 14px;color:var(--text-3);font-size:13px}.attempt-verdict{padding:4px 10px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:650}.attempt-verdict.is-correct{border-color:var(--green-border);background:var(--green-bg);color:var(--green)}.attempt-verdict.is-incorrect{border-color:var(--red-border);background:var(--red-bg);color:var(--red)}.attempt-review{display:grid;gap:14px;max-inline-size:640px;margin-inline:auto;padding:56px 28px}.attempt-review h2{margin:0;font-size:18px}.attempt-review-count{margin:0;color:var(--text-2);font-size:14px}.attempt-review-blanks{margin:0;color:var(--red);font-size:14px;font-weight:600}.attempt-review-blanks.is-clear{color:var(--green)}.attempt-review-actions{display:flex;justify-content:flex-end;gap:10px}.attempt-navigator{display:flex;gap:5px;flex:1;min-inline-size:0;overflow-x:auto;padding-block:4px;scrollbar-width:thin}.nav-dot{flex:0 0 auto;inline-size:30px;block-size:30px;border:1px solid var(--border-2);border-radius:7px;background:var(--surface);color:var(--text-3);font:inherit;font-size:12px;font-variant-numeric:tabular-nums;cursor:pointer;transition:.14s}.nav-dot:hover{border-color:var(--accent-border);color:var(--text)}.nav-dot.is-answered{background:var(--surface-3);color:var(--text);font-weight:650}.nav-dot.is-current{border-color:var(--accent);background:var(--accent);color:var(--bg);font-weight:700}.nav-dot.is-correct{border-color:var(--green-border);background:var(--green-bg);color:var(--green)}.nav-dot.is-incorrect{border-color:var(--red-border);background:var(--red-bg);color:var(--red)}.attempt-navigator.is-grid{display:flex;flex-wrap:wrap;gap:5px;overflow-x:visible}.attempt-navigator.is-grid .nav-dot{inline-size:30px;block-size:30px;border-radius:7px;position:relative}.attempt-navigator.is-grid .nav-dot.is-correct:after,.attempt-navigator.is-grid .nav-dot.is-incorrect:after{position:absolute;inset-block-end:-4px;inset-inline-end:-4px;font-size:9px;font-weight:700;line-height:1}.attempt-navigator.is-grid .nav-dot.is-correct:after{content:"✓";color:var(--green)}.attempt-navigator.is-grid .nav-dot.is-incorrect:after{content:"✕";color:var(--red)}.nav-dot-flag{position:absolute;inset-block-start:-4px;inset-inline-start:-4px;line-height:1;color:var(--secondary)}.nav-dot-flag:before{content:"⚑";font-size:10px}.attempt-navigator-empty{inline-size:100%;padding:24px 14px;text-align:center;color:var(--text-3);font-size:12px}.attempt-message{display:grid;place-content:center;justify-items:center;gap:10px;block-size:100%;padding:40px;color:var(--text-2);text-align:center}.attempt-rail{order:-1;inline-size:222px;flex:none;display:flex;flex-direction:column;background:var(--surface);border-inline-end:1px solid var(--border);position:relative}.attempt-rail.is-collapsed{inline-size:52px}.attempt-rail.is-collapsed .attempt-rail-text,.attempt-rail.is-collapsed .attempt-rail-dot{display:none}.attempt-rail.is-collapsed .attempt-rail-list{padding:8px 4px}.attempt-rail.is-collapsed .attempt-rail-row,.attempt-rail.is-collapsed .attempt-rail-row:hover,.attempt-rail.is-collapsed .attempt-rail-row[aria-current=true]{position:relative;justify-content:center;gap:0;padding:3px 0;background:none}.attempt-rail.is-collapsed .attempt-rail-number{position:relative;inline-size:30px;block-size:30px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--border-2);border-radius:7px;color:var(--text-3);font-size:11px}.attempt-rail.is-collapsed .attempt-rail-row.is-answered .attempt-rail-number{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.attempt-rail.is-collapsed .attempt-rail-row[aria-current=true] .attempt-rail-number{border-color:var(--accent);background:var(--accent);color:var(--bg)}.attempt-rail.is-collapsed .attempt-rail-row.is-correct .attempt-rail-number{border-color:var(--green);color:var(--green)}.attempt-rail.is-collapsed .attempt-rail-row.is-incorrect .attempt-rail-number{border-color:var(--red);color:var(--red)}.attempt-rail.is-collapsed .attempt-rail-row.is-correct .attempt-rail-number:after,.attempt-rail.is-collapsed .attempt-rail-row.is-incorrect .attempt-rail-number:after{position:absolute;inset-block-end:-4px;inset-inline-end:-4px;font-size:9px;font-weight:700;line-height:1}.attempt-rail.is-collapsed .attempt-rail-row.is-correct .attempt-rail-number:after{content:"✓"}.attempt-rail.is-collapsed .attempt-rail-row.is-incorrect .attempt-rail-number:after{content:"✕"}.attempt-rail.is-collapsed .attempt-rail-flag{position:absolute;inset-block-start:0;inset-inline-start:7px}.attempt-rail.is-collapsed .attempt-rail-head{padding:10px 2px;justify-items:center}.attempt-rail.is-collapsed .attempt-rail-title,.attempt-rail.is-collapsed .attempt-rail-progress,.attempt-rail.is-collapsed .attempt-rail-answered,.attempt-rail.is-collapsed .attempt-rail-save,.attempt-rail.is-collapsed .attempt-rail-filters{display:none}.attempt-rail.is-collapsed .attempt-rail-timer{justify-self:center;padding:4px 2px;border-radius:7px;font-size:10px}.attempt-rail.is-collapsed .attempt-rail-head:not(:has(.attempt-rail-timer)){display:none}.attempt-rail.is-collapsed .attempt-timer-cell:not(.is-action),.attempt-rail.is-collapsed .attempt-rail-exit{display:none}.attempt-rail.is-collapsed .attempt-timers{padding:6px 4px}.attempt-rail.is-collapsed .attempt-timer-cell.is-action{border-inline-start:0}.attempt-rail.is-collapsed .attempt-rail-foot:not(:has(.attempt-timer-cell.is-action)){display:none}.attempt-rail-head{padding:16px 17px 12px;border-block-end:1px solid var(--border);display:grid;gap:6px}.attempt-rail-title{font-size:12.5px;font-weight:650;unicode-bidi:plaintext}.attempt-rail-progress{font-size:17px;font-weight:700;color:var(--accent)}.attempt-rail-answered,.attempt-rail-save,.attempt-rail-untimed,.attempt-chip-untimed{font-size:10.5px;color:var(--text-3)}.attempt-rail-timer{justify-self:start;padding:4px 11px;border:1px solid var(--border-2);border-radius:999px;font-size:13.5px;font-weight:700;font-variant-numeric:tabular-nums}.attempt-rail-timer.is-warning,.attempt-chip-timer.is-warning{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}.attempt-rail-timer.is-danger,.attempt-chip-timer.is-danger{border-color:var(--danger-border);background:var(--danger-bg);color:var(--danger)}.attempt-rail-filters{display:flex;gap:6px;padding:10px 17px 4px;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin;contain:paint}.attempt-rail-filter{flex:none;min-block-size:var(--touch-target, 44px);padding:0 13px;border:1px solid var(--border-2);border-radius:999px;background:var(--surface);color:var(--text-2);font:inherit;font-size:12px;white-space:nowrap;cursor:pointer;transition:.15s}.attempt-rail-filter:hover{border-color:var(--accent-border);color:var(--text)}.attempt-rail-filter.is-active{border-color:var(--accent-fill);background:var(--accent-fill);color:var(--on-accent);font-weight:650}.attempt-rail-empty{padding:24px 14px;text-align:center;color:var(--text-3);font-size:12px}.attempt-rail-list{flex:1;overflow-y:auto;padding:8px;margin:0;list-style:none}.attempt-rail-row{inline-size:100%;display:flex;align-items:center;gap:9px;padding:7px 10px;border:none;border-radius:8px;background:none;color:var(--text-2);font:inherit;font-size:11.5px;text-align:start;cursor:pointer}.attempt-rail-row:hover{background:var(--surface-3)}.attempt-rail-row[aria-current=true]{background:var(--accent-soft);color:var(--accent);font-weight:650}.attempt-rail-dot{inline-size:12px;block-size:12px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--border-2);font-size:0}.attempt-rail-row.is-answered .attempt-rail-dot,.attempt-rail-row.is-current .attempt-rail-dot{background:var(--accent);border-color:var(--accent)}.attempt-rail-row.is-correct .attempt-rail-dot{border-color:var(--green);color:var(--green)}.attempt-rail-row.is-correct .attempt-rail-dot:before{content:"✓";font-size:9px;font-weight:700}.attempt-rail-row.is-incorrect .attempt-rail-dot{border-color:var(--red);color:var(--red)}.attempt-rail-row.is-incorrect .attempt-rail-dot:before{content:"✕";font-size:9px;font-weight:700}.attempt-rail-number{inline-size:15px;flex:none;text-align:center;font-weight:650}.attempt-rail-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;unicode-bidi:plaintext}.attempt-rail-flag{flex:none;line-height:1;color:var(--secondary)}.attempt-rail-flag:before{content:"⚑";font-size:11px}.attempt-rail-foot{border-block-start:1px solid var(--border)}.attempt-timers{display:flex;padding:12px 6px}.attempt-timer-cell{flex:1;display:grid;gap:3px;justify-items:center;border:none;background:none;color:inherit;font:inherit;cursor:default}.attempt-timer-cell+.attempt-timer-cell{border-inline-start:1px solid var(--border)}.attempt-timer-cell.is-action{cursor:pointer}.attempt-timer-cell strong{font-size:13.5px;font-weight:700;font-variant-numeric:tabular-nums}.attempt-timer-cell span{font-size:8.5px;letter-spacing:.07em;color:var(--text-3)}.attempt-rail-exit{inline-size:100%;padding:12px;border:none;border-block-start:1px solid var(--border);background:none;color:var(--text-2);font:inherit;font-size:10.5px;letter-spacing:.07em;cursor:pointer}.attempt-rail-exit:hover{background:var(--surface-3);color:var(--text)}.attempt-rail-toggle{position:absolute;inset-block-start:18px;inset-inline-end:-13px;inline-size:26px;block-size:26px;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--accent);font-size:0;cursor:pointer;z-index:1}.attempt-rail-toggle:before{content:"‹";font-size:14px}.attempt-rail.is-collapsed .attempt-rail-toggle:before{content:"›"}@media(max-width:640px){.attempt-actions>*{flex:1 1 auto}.attempt-column{padding:18px 14px 28px}.attempt-stimulus,.attempt-question-body,.attempt-reveal{padding:16px}}.attempt-selfgrade{margin-block-start:18px;padding-block-start:16px;border-block-start:1px solid var(--border)}.attempt-selfgrade-question{margin:0 0 10px;font-size:14px;font-weight:650}.attempt-selfgrade-actions{display:flex;gap:8px;flex-wrap:wrap}.attempt-selfgrade-done{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.attempt-selfgrade-change{padding:4px 8px;border:0;border-radius:7px;background:none;color:var(--text-3);font:inherit;font-size:12px;text-decoration:underline;cursor:pointer}.attempt-selfgrade-change:hover:not(:disabled){color:var(--text)}.attempt-selfgrade-change:disabled{cursor:default;opacity:.6}.attempt-ai{margin-block-end:16px;padding:14px 16px;border-radius:var(--r);background:var(--surface-2)}.attempt-ai-loading{margin:0 0 12px;color:var(--text-3);font-size:13px}.attempt-ai-explanation{margin:0 0 12px;font-size:calc(14px * var(--attempt-font-scale));line-height:1.85}.attempt-ai-criteria{display:grid;gap:8px;margin:0 0 12px;padding:0;list-style:none}.attempt-ai-criteria li{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:8px;font-size:13px}.attempt-ai-mark{font-weight:700}.attempt-ai-criteria li.is-full .attempt-ai-mark{color:var(--green)}.attempt-ai-criteria li.is-partial .attempt-ai-mark{color:var(--tertiary)}.attempt-ai-criteria li.is-none .attempt-ai-mark{color:var(--text-3)}.attempt-ai-criteria li.is-contradiction .attempt-ai-mark{color:var(--red)}.attempt-ai-criterion{min-inline-size:0}.attempt-ai-coverage{color:var(--text-3);font-size:12px;white-space:nowrap}.attempt-ai-note{margin:0;color:var(--text-3);font-size:12px;font-style:italic}.attempt-rubric-skeleton{display:grid;gap:10px;margin:0 0 14px}.attempt-selfgrade .attempt-rubric-skeleton .skeleton-line.attempt-rubric-skeleton-line{width:100%;height:18px;border-radius:6px}.attempt-rubric-skeleton-line:last-child{width:60%!important}@media(prefers-reduced-motion:reduce){.attempt-rubric-skeleton-line:after{animation:none!important}.attempt-question-body .student-option{transition:none}}.attempt-rubric-title{margin:0 0 4px;font-size:14px;font-weight:650;color:var(--text)}.attempt-rubric-hint{margin:0 0 12px;color:var(--text-3);font-size:13px}.attempt-rubric-list{display:grid;gap:10px;margin:0 0 14px;padding:0;list-style:none}.attempt-rubric-list label{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.attempt-rubric-list input[type=checkbox]{flex:0 0 auto;margin-block-start:3px;inline-size:18px;block-size:18px;accent-color:var(--accent)}.attempt-rubric-list input[type=checkbox]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.attempt-rubric-list input[type=checkbox]:disabled{cursor:default}.attempt-rubric-list label:has(input:disabled){cursor:default}.attempt-rubric-list span{font-size:calc(14px * var(--attempt-font-scale));line-height:1.7;color:var(--text)}.attempt-rubric-ai{display:flex;align-items:baseline;gap:6px;margin-inline-start:28px;font-size:12px}.attempt-rubric-ai .attempt-ai-mark{font-weight:700}.attempt-rubric-ai.is-full .attempt-ai-mark{color:var(--green)}.attempt-rubric-ai.is-partial .attempt-ai-mark{color:var(--tertiary)}.attempt-rubric-ai.is-none .attempt-ai-mark{color:var(--text-3)}.attempt-rubric-ai.is-contradiction .attempt-ai-mark{color:var(--red)}.attempt-rubric-ai .attempt-ai-coverage{color:var(--text-3)}.attempt-rubric-tally{margin:0 0 14px;padding:10px 12px;border-radius:var(--r);background:var(--surface-2);color:var(--text-2);font-size:13px}.attempt-rubric-outcome{margin:0 0 10px;font-size:14px;font-weight:650;color:var(--text)}.attempt-rubric-actions{display:flex;gap:8px;flex-wrap:wrap}.student-no-answer{margin:0;padding:14px 16px;border:1px dashed var(--border-2);border-radius:var(--r);color:var(--text-3);font-size:calc(14px * var(--attempt-font-scale))}.attempt-rail-save.is-saved{color:var(--green)}.attempt-rail-save.is-error{color:var(--danger);font-weight:650}.attempt-paused{display:grid;justify-items:center;gap:14px;max-inline-size:460px;margin-inline:auto;padding:72px 28px;text-align:center}.attempt-paused strong{font-size:18px}.attempt-paused p{margin:0;color:var(--text-2);font-size:14px}.attempt-appearances{margin-block-start:16px}.attempt-appearances-summary{padding:0;border:none;background:none;color:var(--text-3);font:inherit;font-size:12px;font-weight:650;cursor:pointer}.attempt-appearances-summary:hover{color:var(--text-2);text-decoration:underline}.attempt-appearances-summary[aria-expanded=true],.attempt-appearances-summary[aria-expanded=true]:hover{color:var(--accent);text-decoration:none}.attempt-appearances-list{display:flex;flex-wrap:wrap;gap:6px;margin-block-start:10px}.attempt-peer{display:grid;gap:3px;margin:16px 0 0;padding-block-start:14px;border-block-start:1px solid var(--border)}.attempt-peer strong{font-size:calc(14px * var(--attempt-font-scale));font-weight:650}.attempt-peer span{color:var(--text-3);font-size:12px}.attempt-peer-caveat{font-style:italic}.question-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px 10px;margin:0;font-size:12px}.question-meta-item{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;min-inline-size:0}.question-meta-label{color:var(--text-3);font-weight:650}.question-meta-value{color:var(--text-2);font-weight:600;unicode-bidi:plaintext}.question-meta-chip{display:inline-flex;align-items:baseline;gap:5px;padding:2px 9px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text-2);line-height:1.8;white-space:nowrap}.question-meta-chip b{color:var(--text);font-weight:700;font-variant-numeric:tabular-nums}.question-meta-chip span{font-size:11px}.question-meta-more{color:var(--text-3);font-weight:600}.question-meta-appearances{padding:0;border:none;background:none;color:var(--text-3);font:inherit;font-weight:650;cursor:pointer}.question-meta-appearances:hover{color:var(--text-2);text-decoration:underline}.attempt-pane-handle{order:1;inline-size:48px;flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:none;border-inline-start:1px solid var(--border);background:var(--surface);color:var(--text-3);font:inherit;cursor:pointer}.attempt-pane-handle:hover{background:var(--surface-3);color:var(--text)}.attempt-pane-chevron{color:var(--accent);font-size:26px;line-height:1}.attempt-pane{order:1;inline-size:45%;flex:none;border-inline-start:1px solid var(--border);background:var(--surface);overflow-y:auto}.attempt-pane-head{display:flex;align-items:center;gap:10px;padding:14px 18px;border-block-end:1px solid var(--border)}.attempt-pane-head h2{margin:0;font-size:12px;font-weight:650;margin-inline-end:auto}.attempt-pane-head button{border:none;background:none;color:var(--text-3);font:inherit;cursor:pointer}.attempt-pane-body{padding:20px}.attempt-mobile-head,.attempt-sheet-overlay,.attempt-timer-bar{display:none}@media(max-width:1099px){.attempt-rail{display:none}.attempt-mobile-head{display:flex;position:sticky;inset-block-start:0;z-index:10;align-items:center;gap:10px;padding:11px 13px;background:var(--surface);border-block-end:1px solid var(--border)}.attempt-mobile-exit{flex:none;border:none;background:none;color:var(--text-3);font-size:16px;line-height:1;cursor:pointer}.attempt-progress-pill{margin-inline:auto;display:flex;align-items:center;gap:6px;padding:4px 10px;border:none;border-radius:999px;background:var(--accent-soft);color:var(--accent);font:inherit;font-weight:650;font-size:11px;cursor:pointer}.attempt-chip-timer{flex:none;padding:4px 10px;border:1px solid var(--border-2);border-radius:999px;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.attempt-chip-untimed{flex:none}.attempt-sheet-overlay{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;align-items:flex-end;z-index:20;background:#0003}.attempt-sheet{display:block;inline-size:100%;max-block-size:82dvh;overflow-y:auto;padding:14px 13px 16px;background:var(--surface);border-block-start:1px solid var(--border);border-start-start-radius:16px;border-start-end-radius:16px;box-shadow:var(--shadow-lg)}.attempt-sheet-grab{display:block;inline-size:36px;block-size:4px;border-radius:99px;background:var(--border-2);margin-block:0 13px;margin-inline:auto}.attempt-sheet-head{display:flex;align-items:center;gap:10px;margin-block-end:11px}.attempt-sheet-title{flex:1;min-inline-size:0;font-size:11px;color:var(--text-3);margin:0;unicode-bidi:plaintext}.attempt-sheet-close{flex:none;border:none;background:none;color:var(--text-3);font:inherit;cursor:pointer}.attempt-runner{block-size:auto;min-block-size:100dvh;overflow-x:clip;overflow-y:visible;background:var(--surface)}.attempt-runner,.attempt-shell,.attempt-main,.attempt-column{inline-size:100%;max-inline-size:100%;box-sizing:border-box}.attempt-shell{display:block}.attempt-main{display:flex;flex-direction:column}.attempt-column{overflow:visible;order:-1}.attempt-timer-bar{display:block;position:fixed;z-index:15;inset-inline:12px;inset-block-end:max(10px,env(safe-area-inset-bottom));border:1px solid color-mix(in srgb,var(--border) 74%,transparent);border-radius:22px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:0 16px 38px #141a262e,0 4px 12px #141a2617,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)}.attempt-timer-bar{display:flex;align-items:stretch;padding:9px 4px}.attempt-timer-bar .attempt-timers{display:contents}.attempt-bar-cell{flex:1;min-inline-size:0;display:grid;gap:3px;justify-items:center;align-content:center;min-block-size:var(--touch-target, 44px);padding:0;border:none;border-inline-start:1px solid var(--border);background:none;color:var(--text-3);font:inherit;cursor:pointer}.attempt-bar-cell:hover{color:var(--text-2)}.attempt-bar-cell strong{font-size:15px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.attempt-bar-cell span{font-size:9px;letter-spacing:.07em;white-space:nowrap}.attempt-timer-bar .attempt-timer-cell{padding:0}.attempt-timer-bar .attempt-timer-cell strong{font-size:15px}.attempt-timer-bar .attempt-timer-cell span{font-size:9px}.attempt-timer-bar .attempt-timer-cell.is-action{min-block-size:var(--touch-target, 44px);align-content:center}.attempt-runner:has(>.attempt-timer-bar) .attempt-main{padding-block-end:calc(76px + env(safe-area-inset-bottom))}.attempt-pane-placeholder{display:none}.attempt-pane-handle{inline-size:100%;flex-direction:row;padding:13px 16px;border-inline-start:none;border-block-start:1px solid var(--border)}.attempt-pane-chevron{transform:rotate(90deg)}.attempt-pane{inline-size:100%;border-inline-end:none;border-block-start:1px solid var(--border)}}.result-page{max-inline-size:900px;margin-inline:auto;padding-block:8px 40px}.result-head{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-block-end:28px}.result-head-ident{min-inline-size:0}.result-head h1{margin:0;font-size:21px;font-weight:700;letter-spacing:-.01em;overflow-wrap:break-word}.result-head p{margin:6px 0 0;color:var(--text-3);font-size:12px}.result-summary,.result-table-card{padding:0}.result-actions{display:flex;flex-wrap:wrap;gap:10px;flex:none}.result-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;list-style:none;margin:0;padding:0}.result-counts li{display:grid;gap:4px;justify-items:center;padding:16px 12px;border:1px solid var(--border);border-radius:12px;text-align:center}.result-counts strong{font-size:29px;font-weight:700;line-height:1.15;font-variant-numeric:tabular-nums}.result-counts span{font-size:11px;color:var(--text-3)}.result-counts .is-correct strong{color:var(--green)}.result-counts .is-incorrect strong{color:var(--red)}.result-counts .is-omitted strong{color:var(--text-3)}.result-counts .is-pending strong{color:var(--tertiary)}.result-times{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;list-style:none;margin:10px 0 0;padding:0}.result-times li{display:grid;gap:4px;justify-items:center;padding:12px 10px;border:1px solid var(--border);border-radius:12px;text-align:center}.result-times strong{font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}.result-times span{font-size:10.5px;color:var(--text-3);text-align:center}.result-strip{margin-block:24px 28px;padding:16px 18px;border-radius:12px;background:var(--surface-2)}.result-strip-label,.result-table-label{margin:0 0 14px;font-size:10.5px;letter-spacing:.07em;color:var(--text-3)}.result-table-scroll{overflow-x:auto;max-inline-size:100%;contain:paint}.result-table{inline-size:100%;border-collapse:separate;border-spacing:0}.result-table td{padding:14px 10px;font-size:12.5px}.result-table thead th{padding:0}.result-table thead .table-sort-button{padding-inline:10px}.result-table tbody tr{cursor:pointer}.result-table tbody td{border-start-start-radius:10px;border-end-start-radius:10px;border-start-end-radius:10px;border-end-end-radius:10px;transition:background .14s}.result-table tbody td:not(:first-child){border-start-start-radius:0;border-end-start-radius:0}.result-table tbody td:not(:last-child){border-start-end-radius:0;border-end-end-radius:0}.result-table tbody tr:hover td{background:var(--surface-3)}.result-table .is-number{color:var(--text-3);font-variant-numeric:tabular-nums}.result-table .is-muted{color:var(--text-3)}.result-table tbody tr:hover .is-number,.result-table tbody tr:hover .is-muted{color:var(--text-2)}.result-table .is-go{inline-size:1%;white-space:nowrap}.result-outcome{display:inline-flex;align-items:center;gap:7px;font-size:11.5px}.result-outcome-dot{flex:none;inline-size:7px;block-size:7px;border-radius:50%;background:var(--text-3)}.result-outcome.is-correct .result-outcome-dot{background:var(--green-fill)}.result-outcome.is-incorrect .result-outcome-dot{background:var(--red-fill)}.result-outcome.is-pending .result-outcome-dot{background:var(--tertiary)}.result-flag{display:inline-block;line-height:1;color:var(--secondary)}.result-flag:before{content:"⚑";font-size:12px}.result-go{display:inline-flex;align-items:center;justify-content:center;inline-size:26px;block-size:26px;padding:0;border:none;border-radius:6px;background:none;color:var(--accent);font:inherit;font-size:15px;line-height:1;cursor:pointer}.result-go:hover{background:var(--surface-3)}.result-mobile-title{flex:1;min-inline-size:0;margin:0;font-size:12px;font-weight:600;color:var(--text-2);unicode-bidi:plaintext;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:720px){.result-page{padding-block:4px 32px}.result-head{margin-block-end:20px}.result-head h1{font-size:18px}.result-counts strong{font-size:24px}.result-times strong{font-size:15px}.result-counts,.result-times{grid-template-columns:repeat(2,minmax(0,1fr))}.result-actions{inline-size:100%;flex-direction:column;align-items:stretch}.result-actions .btn{inline-size:100%}.result-strip{margin-block:20px 24px;padding:14px}.result-table{min-inline-size:460px}.result-table td{padding:12px 8px}.result-table thead .table-sort-button{padding-inline:8px}}@media(max-width:400px){.result-times{gap:8px}.result-times li{padding:10px 6px}.result-counts{gap:8px}}
