@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/vazirmatn-arabic-400-normal-DMZFCm7K.woff2) format("woff2"),url(/assets/vazirmatn-arabic-400-normal-C4W5XURk.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/vazirmatn-latin-ext-400-normal-BdGhO0lm.woff2) format("woff2"),url(/assets/vazirmatn-latin-ext-400-normal-DPxMaNjI.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/vazirmatn-latin-400-normal-BT_DHTc7.woff2) format("woff2"),url(/assets/vazirmatn-latin-400-normal-GKyMcI03.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/vazirmatn-arabic-500-normal-C_lbnnKa.woff2) format("woff2"),url(/assets/vazirmatn-arabic-500-normal-Dqq3-xo3.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/vazirmatn-latin-ext-500-normal-CgxvvVrG.woff2) format("woff2"),url(/assets/vazirmatn-latin-ext-500-normal-4XgegWYb.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/vazirmatn-latin-500-normal-6zZzgpg4.woff2) format("woff2"),url(/assets/vazirmatn-latin-500-normal-Bg_BALlD.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/vazirmatn-arabic-600-normal-CPKvAnd1.woff2) format("woff2"),url(/assets/vazirmatn-arabic-600-normal-CWYTfCgi.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/vazirmatn-latin-ext-600-normal-CyxCUfFz.woff2) format("woff2"),url(/assets/vazirmatn-latin-ext-600-normal-Di8rk35l.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/vazirmatn-latin-600-normal-D-zF-Oec.woff2) format("woff2"),url(/assets/vazirmatn-latin-600-normal-BxJiDPKT.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/vazirmatn-arabic-700-normal-Dge_DOjm.woff2) format("woff2"),url(/assets/vazirmatn-arabic-700-normal-B5nPuCFv.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/vazirmatn-latin-ext-700-normal-BfoXmNMx.woff2) format("woff2"),url(/assets/vazirmatn-latin-ext-700-normal-DMYLqBto.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/vazirmatn-latin-700-normal-9BlbvDRV.woff2) format("woff2"),url(/assets/vazirmatn-latin-700-normal-DrB0PBU6.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/vazirmatn-arabic-800-normal-Bwnt96zj.woff2) format("woff2"),url(/assets/vazirmatn-arabic-800-normal-BH12s3-y.woff) format("woff");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:Vazirmatn;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/vazirmatn-latin-ext-800-normal-BzH3Tiwu.woff2) format("woff2"),url(/assets/vazirmatn-latin-ext-800-normal-HbVXW2Kv.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/vazirmatn-latin-800-normal-e0EQwLmk.woff2) format("woff2"),url(/assets/vazirmatn-latin-800-normal-fM8Xz9cI.woff) format("woff");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{font-family:Vazirmatn,Tahoma,sans-serif;color-scheme:light;--bg: #f5f6f8;--surface: #fff;--surface-alt: #f9fafb;--text: #21242d;--muted: #65707e;--faint: #6b7380;--line: #e9ebef;--primary: #a62f50;--primary-hover: #8e2342;--primary-soft: #faedf1;--primary-text: #a62f50;--teal: #217a70;--teal-soft: #eaf6f2;--amber: #865f12;--amber-soft: #faf4e4;--blue: #3c669d;--blue-soft: #eef3fb;--danger: #c23b47;--danger-soft: #fceef0;--shadow: 0 8px 30px #101a2f0a;--modal-shadow: 0 30px 100px #10152530;--radius-sm: 8px;--radius: 14px;--radius-lg: 20px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--sidebar: 228px;--focus: #a62f5080;--chart: #a62f50}:root[data-theme=dark]{color-scheme:dark;--bg: #12151c;--surface: #1a1e27;--surface-alt: #20252f;--text: #e8ebf2;--muted: #a0a7b7;--faint: #939daf;--line: #2a303d;--primary: #db7d96;--primary-hover: #e896ac;--primary-soft: #3b2532;--primary-text: #efa5b9;--teal: #81c9bb;--teal-soft: #223d38;--amber: #dec087;--amber-soft: #3b3426;--blue: #9abceb;--blue-soft: #253349;--danger: #f78c9d;--danger-soft: #402830;--shadow: 0 8px 30px #00000010;--modal-shadow: 0 30px 100px #00000070;--focus: #ef9db680;--chart: #db7d96}*{box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);line-height:1.7}body,button,input,select,textarea{font-family:Vazirmatn,Tahoma,sans-serif}button,input,select,textarea{font-size:.875rem}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button{color:inherit}button,input,select,textarea{transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}h1,h2,h3,h4,p{margin:0}h1{font-size:1.9rem;line-height:1.5;font-weight:800;letter-spacing:-.035em}h2{font-size:1.03rem;font-weight:700}h3{font-size:.95rem}small{font-size:.75rem}svg{flex-shrink:0}::selection{background:var(--primary-soft);color:var(--primary-text)}input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);padding:11px 13px;min-height:46px;outline-offset:1px}input::placeholder,textarea::placeholder{color:var(--faint)}textarea{resize:vertical}input[type=checkbox]{accent-color:var(--primary);width:16px;height:16px}progress{height:5px;appearance:none;border:none;background:var(--line);border-radius:5px;overflow:hidden;width:100%}progress::-webkit-progress-bar{background:var(--line)}progress::-webkit-progress-value{background:var(--primary);border-radius:5px}progress::-moz-progress-bar{background:var(--primary)}kbd{font-family:inherit;font-size:.7rem;border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;white-space:nowrap;color:var(--muted);padding:1px 5px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.text-muted{color:var(--muted)}.text-danger{color:var(--danger)!important}.spin{animation:spin .9s linear infinite}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:10px 17px;min-height:43px;border:1px solid transparent;border-radius:var(--radius-sm);font-weight:500;font-size:.875rem;white-space:nowrap;transition:background .18s,transform .18s,box-shadow .18s}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn-primary{background:var(--primary);color:var(--surface)}:root[data-theme=dark] .btn-primary{color:#221721}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:var(--surface);border-color:var(--line)}.btn-secondary:hover,.btn-ghost:hover{background:var(--surface-alt)}.btn-ghost{background:transparent;color:var(--muted)}.btn-danger{background:var(--danger);color:var(--surface)}.btn-danger-soft{background:var(--danger-soft);color:var(--danger)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:7px;background:transparent;border:none;border-radius:8px;color:var(--muted)}.icon-btn:hover{background:var(--surface-alt);color:var(--text)}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-weight:600;flex-shrink:0;font-size:.82rem;width:38px;height:38px}.avatar-sm{width:30px;height:30px;font-size:.7rem}.avatar-lg{width:62px;height:62px;font-size:1.3rem}.avatar-xl{width:90px;height:90px;font-size:1.8rem}.tone-rose{background:var(--primary-soft);color:var(--primary-text)}.tone-teal{background:var(--teal-soft);color:var(--teal)}.tone-amber{background:var(--amber-soft);color:var(--amber)}.tone-blue{background:var(--blue-soft);color:var(--blue)}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:5px;font-size:.72rem;padding:3px 8px;white-space:nowrap;background:var(--surface-alt);color:var(--muted);font-weight:500}.badge-rose{background:var(--primary-soft);color:var(--primary-text)}.badge-teal{background:var(--teal-soft);color:var(--teal)}.badge-amber{background:var(--amber-soft);color:var(--amber)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge i{width:5px;height:5px;background:currentColor;border-radius:50%}.empty{padding:48px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--muted)}.empty h3{font-weight:500}.empty-icon{display:grid;place-items:center;width:68px;height:68px;background:var(--surface-alt);border-radius:50%}.surface{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.section-heading{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 18px;gap:12px}.section-heading a{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:.78rem}.section-heading a:hover{color:var(--primary-text)}.surface-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:14px 24px;font-size:.8rem;color:var(--muted)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:27px}.eyebrow{color:var(--muted);font-size:.8rem;margin-bottom:6px}.page-actions{display:flex;align-items:center;gap:10px}.field{display:flex;flex-direction:column;gap:7px}.field-label{font-size:.84rem;font-weight:500}.field-error{color:var(--danger);font-size:.78rem}.field-hint{color:var(--muted);font-size:.75rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid .full{grid-column:1/-1}.form-section{margin-bottom:24px}.form-section h2{margin-bottom:20px}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:24px;border-top:1px solid var(--line)}.form-surface{padding:28px;max-width:850px;margin:auto}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:.875rem;position:relative;cursor:pointer}.switch-row input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.switch{position:relative;width:34px;height:20px;border-radius:20px;background:var(--line);flex-shrink:0;pointer-events:none;transition:background .2s}.switch:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #0002}.switch-row input:checked+.switch{background:var(--primary)}.switch-row input:checked+.switch:after{transform:translate(14px)}.switch-row input:focus-visible+.switch{outline:3px solid var(--focus);outline-offset:3px}.switch-row.disabled{opacity:.5}.switch-list{display:flex;flex-direction:column;gap:22px;padding:10px 0}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);overflow-x:auto;margin-bottom:24px}.tabs button{border:0;border-bottom:2px solid transparent;background:transparent;padding:13px 0;color:var(--muted);white-space:nowrap}.tabs button.active{border-color:var(--primary);color:var(--primary-text);font-weight:600}.tabs button span{background:var(--surface-alt);padding:2px 6px;border-radius:5px;margin-inline-start:8px;font-size:.72rem}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.search-field{display:flex;align-items:center;gap:10px;position:relative;min-width:210px}.search-field svg{position:absolute;right:12px;color:var(--muted);pointer-events:none}.search-field input{padding-right:40px!important;background:var(--surface)!important}.toolbar-left{display:flex;gap:10px;align-items:center}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:right;font-size:.84rem;white-space:nowrap}th{font-weight:500;color:var(--muted);font-size:.76rem;background:var(--surface-alt);padding:14px 20px;border-bottom:1px solid var(--line)}td{padding:17px 20px;border-bottom:1px solid var(--line)}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--surface-alt)}.table-person{display:flex;gap:11px;align-items:center}.table-person div{display:flex;flex-direction:column}.table-person small{color:var(--muted);direction:ltr;text-align:right}.pagination{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)}.pagination>div{display:flex;gap:6px}.pagination button.selected{background:var(--primary-soft);color:var(--primary-text)}.modal-backdrop{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;background:#11182760;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1000;padding:24px;animation:fade-in .15s}.modal{width:100%;max-width:510px;border-radius:18px;background:var(--surface);box-shadow:var(--modal-shadow);max-height:calc(100dvh - 48px);overflow:auto;animation:modal-in .2s}.modal-wide{max-width:760px}.modal>header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--line)}.modal-content{padding:24px}.modal>footer{padding:18px 24px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line)}.dropdown-wrap{position:relative}.dropdown{position:absolute;top:calc(100% + 9px);min-width:230px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:6px;box-shadow:0 12px 36px #11182716;z-index:300;animation:modal-in .15s}.dropdown-end{left:0}.dropdown-start{right:0}.dropdown>a,.dropdown>button{display:flex;width:100%;text-align:right;align-items:center;gap:10px;padding:10px 12px;background:transparent;border:0;border-radius:7px;font-size:.83rem}.dropdown>a:hover,.dropdown>button:hover{background:var(--surface-alt)}.menu-profile{display:flex;align-items:center;gap:12px;padding:11px 12px}.menu-profile>div{display:flex;flex-direction:column;font-size:.85rem}.menu-profile small{color:var(--muted)}.menu-separator{height:1px;margin:5px;background:var(--line)}.menu-caption{display:block;padding:6px 12px;color:var(--muted)}.dropdown-title{display:flex;justify-content:space-between;gap:20px;padding:12px;font-size:.8rem;white-space:nowrap}.dropdown-title span{font-size:.75rem;color:var(--muted)}.dropdown .notification-item{min-width:305px;gap:11px;align-items:flex-start;padding-block:13px}.notification-item div{display:flex;flex-direction:column;gap:3px}.notification-item small{color:var(--muted)}.notification-dot{width:7px;height:7px;border-radius:50%;margin-top:7px;background:var(--line);flex-shrink:0}.notification-dot.unread{background:var(--primary)}.dropdown .menu-footer{justify-content:space-between;border-top:1px solid var(--line);border-radius:0;margin-top:6px}.toast-stack{position:fixed;bottom:28px;left:28px;display:flex;flex-direction:column;gap:10px;z-index:1500;max-width:calc(100vw - 40px)}.toast{display:flex;align-items:center;gap:12px;padding:15px 18px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;font-size:.875rem;animation:modal-in .2s}.toast>svg{color:var(--teal)}.toast.error>svg{color:var(--danger)}.toast>button{display:grid;place-items:center;background:none;border:none;color:var(--muted);padding:3px}.skeleton{background:linear-gradient(90deg,var(--line) 25%,var(--surface-alt) 50%,var(--line) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}.skeleton-heading{width:30%;height:30px;margin-bottom:32px}.skeleton-row{height:80px;margin-bottom:16px}.skeleton-block{padding:30px}.skip-link{position:fixed;top:-80px;right:260px;background:var(--primary);color:var(--surface);padding:10px 20px;z-index:1500}.skip-link:focus{top:10px}.page-enter{animation:page-in .23s ease-out}.app-shell{--sidebar: 228px}.app-shell.is-collapsed{--sidebar: 80px}.sidebar{position:fixed;top:0;right:0;bottom:0;width:var(--sidebar);background:var(--surface);border-left:1px solid var(--line);display:flex;flex-direction:column;padding:25px 16px 14px;z-index:400;transition:width .24s ease}.brand{display:flex;align-items:center;gap:11px;min-height:48px;padding-inline:10px;margin-bottom:29px;white-space:nowrap}.brand-mark{height:39px;width:39px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--primary);color:var(--surface);flex-shrink:0}:root[data-theme=dark] .brand-mark{color:#251922}.brand-text{display:flex;align-items:baseline;gap:8px}.brand-text strong{font-size:1.14rem;font-weight:800}.brand-text small{font-size:.75rem;color:var(--muted)}.workspace-label{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:0 13px 24px;white-space:nowrap}.workspace-label>span:first-child{font-size:.72rem;color:var(--muted)}.side-navigation{flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;display:flex;flex-direction:column;gap:4px;margin:0 -2px}.side-navigation a{display:flex;align-items:center;gap:13px;min-height:44px;padding:10px 14px;margin:0 2px;border-radius:9px;font-size:.84rem;color:var(--muted);white-space:nowrap;transition:background .18s,color .18s}.side-navigation a:hover{background:var(--surface-alt);color:var(--text)}.side-navigation a.active{color:var(--primary-text);background:var(--primary-soft);font-weight:600}.nav-count{font-size:.7rem;font-weight:500;margin-inline-start:auto}.nav-section{font-size:.7rem;color:var(--faint);padding:20px 15px 10px}.sidebar-bottom{margin-top:15px;border-top:1px solid var(--line);padding-top:12px}.sidebar-collapse{border:none;background:transparent;display:flex;gap:14px;align-items:center;color:var(--faint);padding:8px 14px;font-size:.76rem;width:100%;margin-bottom:12px}.sidebar-profile{display:flex;align-items:center;gap:10px;border:none;background:transparent;width:100%;padding:6px 4px;text-align:right}.sidebar-profile>div{display:flex;flex-direction:column;flex:1;white-space:nowrap;overflow:hidden}.sidebar-profile strong{font-size:.8rem;font-weight:600}.sidebar-profile small{font-size:.7rem;color:var(--muted)}.sidebar-bottom .dropdown{top:auto;bottom:calc(100% + 10px);right:0}.is-collapsed .brand{padding:0;margin-inline:auto}.is-collapsed .brand-text,.is-collapsed .workspace-label,.is-collapsed .side-navigation a span,.is-collapsed .nav-count,.is-collapsed .sidebar-profile>div,.is-collapsed .sidebar-profile>svg,.is-collapsed .sidebar-collapse span,.is-collapsed .nav-section{display:none}.is-collapsed .side-navigation a{justify-content:center;padding-inline:8px}.is-collapsed .sidebar-profile{justify-content:center}.is-collapsed .sidebar-collapse{padding:8px;justify-content:center}.app-main{margin-right:var(--sidebar);transition:margin .24s ease;min-width:0}.topbar{height:80px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:var(--surface);padding:0 32px;gap:20px;position:sticky;top:0;z-index:250}.breadcrumb{display:flex;align-items:center;gap:11px;font-size:.75rem;color:var(--muted);white-space:nowrap}.breadcrumb>strong{font-weight:500;color:var(--text)}.topbar-actions{display:flex;align-items:center;gap:12px}.global-search{display:flex;align-items:center;gap:10px;background:var(--surface-alt);border:1px solid var(--line);border-radius:8px;padding:8px 12px;color:var(--muted);width:265px;font-size:.78rem}.global-search span{flex:1;text-align:right}.notification-trigger{position:relative}.notification-trigger>i{width:5px;height:5px;background:var(--primary);border-radius:50%;position:absolute;top:8px;right:10px;border:1px solid var(--surface)}.top-profile{border:0;background:transparent;padding:0;display:flex;align-items:center}.page-content{padding:30px 32px 42px;max-width:1650px;margin:auto}.mobile-menu,.bottom-navigation,.sidebar-scrim{display:none}.command-input{display:flex;align-items:center;gap:14px}.command-input input{border:0!important;background:transparent!important;padding:4px!important;font-size:.95rem}.command-results{max-height:360px;overflow:auto;margin:18px -12px 0}.command-results button{display:flex;align-items:center;gap:12px;width:100%;text-align:right;padding:11px 12px;border:0;background:transparent;border-radius:8px}.command-results button.selected{background:var(--primary-soft);color:var(--primary-text)}.command-results button>div{display:flex;flex-direction:column;flex:1}.command-results strong{font-weight:500;font-size:.85rem}.command-results small,.command-results button>span{font-size:.7rem;color:var(--muted)}.command-footer{display:flex;gap:25px;font-size:.72rem;color:var(--muted);padding-top:16px;border-top:1px solid var(--line);margin-top:20px}.command-empty{text-align:center;padding:30px;color:var(--muted)}.shortcut-list p{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:.85rem}.shortcut-list{margin-bottom:25px}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:24px}.dashboard-primary,.dashboard-secondary{display:flex;flex-direction:column;gap:24px;min-width:0}.next-class{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:26px;display:grid;grid-template-columns:1fr 1.05fr;gap:28px;position:relative;overflow:hidden}.next-class:before{content:"";position:absolute;right:0;top:32px;bottom:32px;width:3px;background:var(--primary);border-radius:4px}.section-kicker{display:flex;align-items:center;gap:7px;color:var(--primary-text);font-size:.75rem;margin-bottom:14px}.live-signal{width:6px;height:6px;background:var(--primary);border-radius:50%;box-shadow:0 0 0 4px var(--primary-soft)}.next-class h2{font-size:1.7rem;font-weight:800;margin-bottom:5px;line-height:1.5}.next-class-info>p{font-size:.86rem;color:var(--muted)}.class-meta{display:flex;flex-wrap:wrap;gap:13px;margin:17px 0;font-size:.7rem;color:var(--muted)}.class-meta>span{display:flex;align-items:center;gap:5px}.class-teacher{display:flex;align-items:center;gap:9px;margin-bottom:23px;font-size:.8rem}.class-teacher>span{display:flex;gap:8px;align-items:center}.class-teacher small{font-size:.7rem;color:var(--muted);padding-inline-start:8px;border-right:1px solid var(--line)}.next-class-info>.btn{min-width:150px}.next-class-preview{display:flex;flex-direction:column;justify-content:center;min-width:0}.lesson{display:flex;flex-direction:column;color:#ecedf0;background:#292f3a;border-radius:12px;min-height:420px;overflow:hidden;font-family:Vazirmatn,sans-serif}.lesson-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:20px 26px;border-bottom:1px solid #ffffff0f;font-size:.8rem;color:#c2c6cf}.lesson-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px}.lesson-eyebrow{font-size:.8rem;color:#db98ac;margin-bottom:6px}.lesson-body h2{font-size:1.9rem;font-weight:600}.fraction-exercise{display:flex;align-items:center;justify-content:center;gap:30px;margin:33px 0 20px;direction:rtl}.fraction-group{display:flex;align-items:center;gap:13px}.fraction-shape{display:grid;grid-template-columns:repeat(2,1fr);gap:3px;width:102px;height:102px}.fraction-shape.eight{grid-template-columns:repeat(4,1fr)}.fraction-shape i{background:#e2a0b3;border-radius:2px}.fraction-shape i.unfilled{background:#ffffff10;border:1px dashed #ffffff30}.fraction{display:flex;flex-direction:column;text-align:center;line-height:1.4;font-size:1.7rem}.fraction b{font-weight:500}.fraction b:first-child{border-bottom:2px solid #e3e7ef}.equals{font-size:2rem;font-weight:400;color:#c2c6cf}.lesson-note{font-size:.9rem;color:#b1b7c4}.lesson footer{display:flex;justify-content:space-between;padding:17px 26px;border-top:1px solid #ffffff0f;font-size:.7rem;color:#9da6b8}.lesson footer>span:last-child{display:flex;align-items:center;gap:4px}.lesson-compact{min-height:205px;border-radius:9px;max-width:360px}.lesson-compact .lesson-top{font-size:.5rem;padding:10px 14px}.lesson-compact .lesson-body{padding:18px 12px}.lesson-compact .lesson-eyebrow{font-size:.53rem}.lesson-compact .lesson-body h2{font-size:1rem;margin:0}.lesson-compact .fraction-exercise{margin:16px 0 10px;gap:18px}.lesson-compact .fraction-group{gap:7px}.lesson-compact .fraction-shape{width:54px;height:54px;gap:2px}.lesson-compact .fraction{font-size:1rem}.lesson-compact .equals{font-size:1.3rem}.lesson-compact .lesson-note{font-size:.54rem}.lesson-compact footer{padding:8px 14px;font-size:.5rem}.preview-caption{display:flex;align-items:center;gap:8px;font-size:.7rem;color:var(--muted);padding-top:10px}.preview-caption .badge{margin-inline-start:auto;font-size:.65rem}.metric-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:2px 0 5px}.metric-strip>div{display:flex;align-items:center;justify-content:center;gap:12px;border-left:1px solid var(--line)}.metric-strip>div:last-child{border:0}.metric-strip svg{color:var(--faint)}.metric-strip span{font-size:.72rem;color:var(--muted);display:flex;flex-direction:column}.metric-strip strong{font-size:1.3rem;color:var(--text);font-weight:700;line-height:1.5}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;padding:0 24px 21px;border-bottom:1px solid var(--line)}.week-strip button{display:flex;flex-direction:column;align-items:center;gap:5px;border:0;background:transparent;border-radius:9px;padding:8px 2px;color:var(--muted);font-size:.72rem}.week-strip b{font-size:1rem;color:var(--text);font-weight:600}.week-strip i{height:4px;width:4px;border-radius:50%;background:transparent}.week-strip i.has-class{background:var(--faint)}.week-strip button.selected{background:var(--primary-soft);color:var(--primary-text)}.week-strip button.selected b{color:var(--primary-text)}.week-strip button.selected i{background:var(--primary)}.schedule-row{display:flex;align-items:center;gap:14px;padding:18px 24px;border-bottom:1px solid var(--line)}.schedule-row:last-child{border:0}.schedule-time{display:flex;flex-direction:column;min-width:57px;border-left:1px solid var(--line);padding-left:14px}.schedule-time strong{font-size:.83rem;font-weight:500}.schedule-time span{color:var(--muted);font-size:.65rem}.subject-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.schedule-title{flex:1;display:flex;flex-direction:column;min-width:0}.schedule-title>a{font-size:.86rem;font-weight:600}.schedule-title>small{font-size:.73rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-room{font-size:.72rem;color:var(--muted)}.assignment-row{display:flex;align-items:center;gap:12px;padding:18px 24px;border-bottom:1px solid var(--line)}.assignment-row:last-child{border:0}.assignment-row>div:not(.assignment-progress){display:flex;flex:1;flex-direction:column}.assignment-row strong{font-size:.84rem;font-weight:500}.assignment-row small{font-size:.7rem;color:var(--muted)}.assignment-row>svg{color:var(--muted)}.assignment-progress{display:flex;flex-direction:column;gap:6px;width:90px;font-size:.67rem;color:var(--muted)}.today-note{background:var(--primary-soft);border:1px solid #a62f5010;border-radius:var(--radius);padding:24px;min-height:199px}.note-date{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--primary-text);margin-bottom:19px}.today-note h3{font-size:1.17rem;line-height:1.85;font-weight:600;color:var(--text)}.note-footer{margin-top:22px;display:flex;align-items:center;justify-content:space-between}.note-footer>span{font-size:.72rem;color:var(--primary-text)}.avatar-stack{display:flex;padding-right:5px}.avatar-stack .avatar{border:2px solid var(--surface);margin-right:-5px}.activity-feed{display:flex;flex-direction:column;padding:0 24px 20px}.activity-feed>a{position:relative;display:flex;align-items:flex-start;gap:11px;padding:13px 0}.activity-feed>a:after{content:"";position:absolute;right:16px;width:1px;background:var(--line);top:50px;bottom:-10px}.activity-feed>a:last-child:after{display:none}.activity-icon{width:33px;height:33px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.activity-feed strong{font-size:.8rem;font-weight:600}.activity-feed p{color:var(--muted);font-size:.74rem;margin-top:4px}.activity-feed small{font-size:.64rem;color:var(--faint);display:block;margin-top:8px}.recording-mini{display:block;padding:0 24px 22px}.recording-mini-cover{background:var(--surface-alt);border:1px solid var(--line);height:93px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--primary-text);position:relative;margin-bottom:12px}.recording-mini-cover svg{background:var(--surface);padding:9px;width:40px;height:40px;border-radius:50%;box-shadow:var(--shadow)}.recording-mini-cover span{position:absolute;bottom:9px;left:10px;color:var(--muted);font-size:.64rem}.recording-mini>strong{display:block;font-weight:500;font-size:.79rem}.recording-mini>small{color:var(--muted);font-size:.65rem}.dashboard-footnote{display:flex;align-items:center;justify-content:center;gap:9px;color:var(--faint);font-size:.72rem;padding-top:4px}.admin-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:24px}.admin-stat{padding:22px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}.admin-stat>span:not(.subject-icon){font-size:.8rem;color:var(--muted)}.admin-stat>strong{font-size:1.7rem;line-height:1.2;font-weight:700}.admin-overview-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:24px}.storage-overview{display:flex;align-items:center;flex-direction:column;gap:12px;padding:20px 20px 30px}.storage-ring{border:12px solid var(--primary-soft);border-bottom-color:var(--primary);border-radius:50%;height:140px;width:140px;display:grid;place-items:center;color:var(--primary-text);margin-bottom:10px}.storage-overview p{font-size:.8rem;color:var(--muted)}.user-list>div{display:flex;align-items:center;gap:12px;padding:14px 24px;border-bottom:1px solid var(--line)}.user-list>div:last-child{border:0}.user-list>div>span:not(.avatar):not(.badge){flex:1;display:flex;flex-direction:column}.user-list strong{font-size:.84rem;font-weight:500}.user-list small{font-size:.7rem;color:var(--muted)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes page-in{0%{opacity:.2;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1600px){.page-content{padding:36px 48px 48px}.dashboard-layout{grid-template-columns:minmax(0,1fr) 325px;gap:30px}.next-class{padding:32px;gap:36px}.lesson-compact{min-height:230px;max-width:none}.next-class h2{font-size:2rem}.lesson-compact .lesson-body h2{font-size:1.2rem}.lesson-compact .fraction-shape{width:68px;height:68px}.lesson-compact .fraction-exercise{margin-block:20px}.schedule-row{padding-block:23px}}@media(max-width:1240px){.global-search{width:210px}.topbar-actions{gap:7px}.topbar{padding-inline:24px}.page-content{padding:26px 24px}.dashboard-layout{grid-template-columns:minmax(0,1fr) 245px;gap:18px}.next-class{padding:22px;gap:20px}.next-class h2{font-size:1.45rem}.schedule-room{display:none}.class-meta{gap:7px}.class-teacher>span{flex-direction:column;align-items:flex-start;gap:0}.class-teacher small{padding:0;border:0}.section-heading,.schedule-row,.assignment-row{padding-inline:20px}.today-note{padding:20px}.today-note h3{font-size:1.08rem}}@media(max-width:1060px)and (min-width:769px){.app-shell{--sidebar: 80px}.brand{padding:0;margin-inline:auto}.brand-text,.workspace-label,.side-navigation a span,.nav-count,.sidebar-profile>div,.sidebar-profile>svg,.sidebar-collapse span,.nav-section{display:none}.side-navigation a{justify-content:center;padding-inline:8px}.sidebar-profile,.sidebar-collapse{justify-content:center}.sidebar-collapse{padding:8px}.breadcrumb>span:first-child{display:none}.dashboard-layout{grid-template-columns:minmax(0,1fr) 260px}.global-search{width:210px}.next-class{grid-template-columns:1fr 1fr}.admin-stat-grid{gap:14px}.admin-stat>strong{font-size:1.3rem}}@media(max-width:880px){.dashboard-layout{grid-template-columns:1fr}.dashboard-secondary{display:grid;grid-template-columns:1fr 1fr;gap:18px}.today-note{display:none}.dashboard-footnote{grid-column:1/-1}.lesson-compact{max-width:none}.breadcrumb .badge{display:none}.admin-stat-grid{grid-template-columns:1fr 1fr}.admin-overview-grid{grid-template-columns:1fr}.desktop-help{display:none}}@media(max-width:768px){h1{font-size:1.55rem}.app-main{margin:0!important}.sidebar{transform:translate(110%);width:260px!important;transition:transform .22s}.sidebar.mobile-open{transform:translate(0)}.sidebar .brand-text,.sidebar .workspace-label,.sidebar .side-navigation a span,.sidebar .sidebar-profile>div,.sidebar .sidebar-profile>svg,.sidebar .nav-section{display:initial}.sidebar .workspace-label{display:flex}.sidebar .side-navigation a{justify-content:flex-start}.sidebar .brand{margin-inline:0;padding-inline:10px}.sidebar .sidebar-collapse{display:none}.sidebar-profile>div{display:flex!important}.sidebar-scrim{display:block;position:fixed;inset:0;z-index:350;background:#11182770;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border:0}.topbar{height:64px;padding:0 18px;gap:8px}.mobile-menu{display:inline-flex}.breadcrumb{gap:6px}.breadcrumb>span:first-of-type,.breadcrumb>svg{display:none}.breadcrumb>strong{font-size:.85rem}.topbar-actions{gap:8px}.global-search{width:36px;height:36px;padding:8px;border:0;background:transparent;justify-content:center}.global-search span,.global-search kbd,.top-profile{display:none}.page-content{padding:24px 18px 105px}.page-heading{align-items:flex-start;gap:12px;margin-bottom:22px}.page-actions{gap:8px}.page-actions .btn{padding:8px 11px;font-size:.75rem;min-height:39px}.page-actions .btn-secondary{display:none}.bottom-navigation{position:fixed;bottom:12px;left:14px;right:14px;z-index:320;display:flex;align-items:center;justify-content:space-around;background:color-mix(in srgb,var(--surface) 90%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:18px;box-shadow:0 5px 25px #00000010;padding:6px 4px;padding-bottom:calc(6px + env(safe-area-inset-bottom))}.bottom-navigation a,.bottom-navigation button{display:flex;align-items:center;flex-direction:column;gap:4px;min-width:53px;background:transparent;border:0;padding:7px 3px;color:var(--muted);font-size:.65rem;border-radius:10px}.bottom-navigation .active{color:var(--primary-text);background:var(--primary-soft)}.bottom-navigation svg{width:20px;height:20px}.next-class{grid-template-columns:1fr 1.05fr;gap:18px;padding:20px}.next-class h2{font-size:1.3rem}.next-class-info>p{font-size:.76rem}.class-meta{font-size:.65rem;flex-direction:column;gap:5px;margin-block:12px}.class-teacher{margin-bottom:15px}.class-teacher>span{font-size:.7rem}.next-class-info>.btn{min-width:0;padding:8px 12px;font-size:.78rem}.section-kicker{font-size:.68rem;margin-bottom:9px}.lesson-compact{min-height:195px}.lesson-compact .lesson-top{padding:10px;font-size:.4rem}.lesson-compact .lesson-body{padding:14px 7px}.lesson-compact .lesson-body h2{font-size:.87rem}.lesson-compact .fraction-shape{width:43px;height:43px}.lesson-compact .fraction-exercise{gap:10px}.lesson-compact .fraction-group{gap:5px}.lesson-compact .fraction{font-size:.85rem}.preview-caption{font-size:.57rem;gap:4px}.preview-caption .badge{display:none}.metric-strip{padding:5px 0}.metric-strip>div{gap:7px}.metric-strip svg{width:17px;height:17px}.metric-strip span{font-size:.62rem}.metric-strip strong{font-size:1.2rem}.dashboard-primary{gap:20px}.section-heading{padding:18px}.section-heading h2{font-size:.94rem}.week-strip{padding:0 16px 16px;gap:3px}.schedule-row{padding:16px 14px;gap:9px}.schedule-time{min-width:49px;padding-left:8px}.schedule-time strong{font-size:.76rem}.schedule-row .subject-icon{width:34px;height:34px}.schedule-title>a{font-size:.8rem}.schedule-title>small{font-size:.65rem}.schedule-row>.badge{font-size:.62rem;padding:3px 5px}.schedule-row>.icon-btn{min-width:26px;padding:3px}.assignment-row{padding:16px 18px}.assignment-row strong{font-size:.8rem}.assignment-progress{width:65px}.dashboard-secondary{gap:18px}.activity-feed,.recording-mini,.surface-footer{padding-inline:18px}.form-grid{gap:16px}.form-surface{padding:22px 18px}.toolbar{flex-wrap:wrap;gap:12px}.search-field{min-width:0;flex:1}.toolbar-left{gap:6px}.toolbar-left .btn{padding:9px 12px}.modal-backdrop{padding:16px}.modal{max-height:calc(100dvh - 32px)}.modal-content{padding:20px}.toast-stack{bottom:97px;left:18px}.admin-stat-grid{gap:12px}.admin-stat{padding:18px;gap:10px}.admin-stat>strong{font-size:1.25rem}.admin-stat>.subject-icon{width:34px;height:34px}}@media(max-width:410px){.page-content{padding-inline:14px}.next-class{gap:12px;padding:18px 15px}.next-class h2{font-size:1.17rem}.lesson-compact .fraction-exercise{gap:7px}.lesson-compact .fraction-shape{width:36px;height:40px}.lesson-compact .lesson-body h2{font-size:.75rem}.metric-strip svg{display:none}.dashboard-secondary,.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.breadcrumb>strong{font-size:.78rem}.topbar-actions{gap:5px}.week-strip span{font-size:.63rem}.schedule-title>small{max-width:130px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.class-tile{padding:22px}.class-tile>header{display:flex;align-items:center;gap:10px;margin-bottom:22px}.class-tile>header>.badge{margin-inline-start:auto}.class-tile h2{font-size:1.14rem;margin-bottom:6px}.class-tile>a>p{font-size:.82rem;color:var(--muted)}.class-tile-teacher{display:flex;align-items:center;gap:8px;font-size:.76rem;margin:22px 0}.class-tile-teacher small{margin-inline-start:auto;color:var(--muted);font-size:.68rem}.class-tile-meta{display:flex;gap:14px;font-size:.7rem;color:var(--muted);flex-wrap:wrap}.class-tile-meta>span{display:flex;align-items:center;gap:5px}.class-tile>footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.class-tile>footer>span{font-size:.74rem;color:var(--muted)}.class-tile>footer .btn{font-size:.76rem;min-height:37px;padding:7px 12px}.result-count{font-size:.78rem}.class-detail-banner{display:flex;align-items:center;gap:22px;padding:27px 30px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:24px}.class-detail-banner>.subject-icon{width:58px;height:58px;border-radius:15px}.class-detail-banner>div{flex:1}.class-detail-banner p{font-size:.8rem;color:var(--muted);margin-top:9px}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.detail-section{padding:26px}.detail-section h2{margin-bottom:15px}.detail-section dl{margin:0}.detail-section dl>div{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:.85rem}.detail-section dl>div:last-child{border:0}.detail-section dt{color:var(--muted)}.detail-section dd{margin:0}.code-copy{display:flex;align-items:center;gap:10px;border:0;background:var(--surface-alt);border-radius:6px;padding:4px 8px;direction:ltr}.recent-session{display:flex;align-items:center;gap:12px;padding:16px 0}.recent-session>div{display:flex;flex-direction:column;flex:1}.recent-session strong{font-size:.84rem}.recent-session small{color:var(--muted);font-size:.74rem}.select-members{display:flex;flex-direction:column;gap:12px}.select-members>label{display:flex;align-items:center;gap:12px;font-size:.84rem;padding:10px;background:var(--surface-alt);border-radius:8px;cursor:pointer}.join-class{max-width:480px;margin:60px auto;padding:36px;display:flex;flex-direction:column;align-items:center;gap:18px}.join-class>svg{color:var(--primary-text)}.join-class h1{font-size:1.4rem}.join-class form{width:100%;display:flex;flex-direction:column;gap:18px}.file-row{display:flex;align-items:center;gap:14px;padding:20px 24px;border-bottom:1px solid var(--line);font-size:.85rem}.file-row>strong{flex:1}.auth-page{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr;background:var(--surface)}.auth-main{display:flex;flex-direction:column;min-width:0;padding:32px 48px}.auth-main>header{display:flex;justify-content:space-between;align-items:center}.auth-main>header .brand{margin:0;padding:0}.auth-form{max-width:380px;width:100%;margin:auto;padding:50px 0}.auth-form h1{margin-top:20px;font-size:1.9rem}.auth-form>p{font-size:.82rem;color:var(--muted);margin:12px 0 30px}.auth-form form{display:flex;flex-direction:column;gap:20px}.password-input{position:relative}.password-input input{padding-left:45px!important}.password-input .icon-btn{position:absolute;top:5px;left:5px}.forgot-link{color:var(--primary-text);font-size:.79rem;margin-top:-5px}.auth-submit{width:100%;margin-top:2px}.auth-bottom{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:27px;font-size:.82rem;color:var(--muted)}.auth-bottom a{color:var(--primary-text);font-weight:600}.auth-main>footer{font-size:.72rem;color:var(--faint);text-align:center}.inline-error{display:flex;gap:8px;font-size:.8rem;color:var(--danger);padding:11px 13px;background:var(--danger-soft);border-radius:8px}.auth-success{display:flex;flex-direction:column;align-items:center;gap:20px;padding:30px 0;color:var(--teal)}.auth-success>p{color:var(--text);font-size:.85rem}.auth-aside{display:flex;flex-direction:column;justify-content:center;background:#272d37;color:#f0f2f7;padding:50px 12%;gap:40px}.auth-aside-heading>h2{font-size:2.2rem;font-weight:600;line-height:1.7;margin:15px 0}.auth-aside-heading>p{font-size:.8rem;color:#bcc2cf}.tiny-caps{font-size:.64rem;letter-spacing:.22em;font-weight:500;color:#cf9cac}.auth-aside .lesson{border:1px solid #ffffff15;min-height:310px;box-shadow:0 15px 30px #0000000a}.auth-aside .lesson-body h2{font-size:1.4rem}.auth-aside .fraction-shape{width:75px;height:75px}.auth-aside-footer{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#c1c7d3}.auth-aside-footer svg{color:#e2a0b3}.landing{background:var(--surface);min-height:100dvh}.landing-header{display:flex;justify-content:space-between;align-items:center;padding:30px 7%;border-bottom:1px solid var(--line)}.landing-header .brand{margin:0;padding:0}.landing-header nav{display:flex;align-items:center;gap:25px;font-size:.85rem}.landing-main{display:grid;grid-template-columns:1fr 1.1fr;gap:7%;max-width:1440px;margin:auto;padding:8% 7%}.landing-intro{align-self:center}.landing-intro h1{font-size:3.6rem;line-height:1.7;margin:24px 0 12px;font-weight:800}.landing-intro h1 span{color:var(--primary-text)}.landing-intro>p{color:var(--muted);font-size:1rem}.landing-actions{display:flex;gap:12px;margin-top:36px}.landing-school-note{display:flex;align-items:center;gap:16px;margin-top:48px;color:var(--muted)}.landing-school-note>div{display:flex;flex-direction:column;gap:2px;font-size:.8rem}.landing-school-note strong{font-weight:500}.landing-school-note span{font-size:.75rem}.landing-class{background:var(--bg);border:1px solid var(--line);border-radius:20px;padding:14px;box-shadow:0 22px 55px #1d263515;transform:rotate(-1deg)}.landing-class-bar{display:flex;align-items:center;gap:10px;padding:6px 4px 16px;font-size:.87rem}.landing-class-bar .brand-mark{width:28px;height:28px;border-radius:8px}.landing-class-bar .badge{margin-inline-start:auto}.landing-class .lesson{min-height:385px}.landing-controls{display:flex;justify-content:center;gap:10px;padding-top:14px}.landing-controls span{width:39px;height:36px;background:var(--surface);border:1px solid var(--line);display:grid;place-items:center;border-radius:8px;color:var(--muted)}.landing-footer{display:flex;justify-content:space-between;padding:22px 7%;border-top:1px solid var(--line);font-size:.76rem;color:var(--muted)}.error-page{min-height:85dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;text-align:center;padding:40px}.error-number{font-size:6rem;color:var(--primary-text);font-weight:800;line-height:1.2}.error-page>p{color:var(--muted);max-width:400px;font-size:.9rem}.error-actions{display:flex;gap:12px}@media(max-width:1240px){.class-grid{grid-template-columns:1fr 1fr}.auth-main{padding:28px 32px}.auth-aside{padding:40px 9%}.landing-intro h1{font-size:2.8rem}.landing-class .fraction-shape{width:76px;height:76px}}@media(max-width:880px){.auth-page{grid-template-columns:1fr}.auth-aside{display:none}.auth-main{min-height:100dvh}.landing-main{gap:5%;padding-block:10%}.landing-intro h1{font-size:2.3rem}.landing-class .lesson{min-height:310px}.landing-class .lesson-body h2{font-size:1.4rem}.landing-class .fraction-shape{width:60px;height:60px}.landing-class .fraction-exercise{gap:20px}.landing-class .fraction{font-size:1.3rem}.landing-actions{flex-wrap:wrap}.landing-actions>.btn{font-size:.76rem}.detail-columns{grid-template-columns:1fr}}@media(max-width:768px){.class-grid{gap:16px}.class-tile{padding:18px}.class-tile h2{font-size:1.02rem}.class-tile>a>p{font-size:.75rem}.class-tile-teacher small{display:none}.class-tile-meta{gap:8px;font-size:.64rem}.class-detail-banner{padding:22px 18px;gap:16px}.class-detail-banner .badge{display:none}.class-detail-banner>.subject-icon{width:43px;height:43px;border-radius:10px}.class-detail-banner p{font-size:.74rem}.detail-section{padding:22px}.landing-main{grid-template-columns:1fr;padding:40px 24px;gap:40px}.landing-intro h1{font-size:2.65rem;margin:20px 0 12px;line-height:1.5}.landing-intro>p{font-size:.9rem}.landing-actions,.landing-school-note{margin-top:25px}.landing-header{padding:22px 24px}.landing-header nav{gap:10px;font-size:.77rem}.landing-class{max-width:500px;width:100%;transform:none}.landing-class .lesson{min-height:290px}.landing-footer{padding-inline:24px}.auth-main{padding:25px}.auth-form{padding-block:42px}.auth-form h1{font-size:1.65rem}.join-class{margin:25px auto;padding:24px}.error-number{font-size:4.5rem}}@media(max-width:540px){.class-grid{grid-template-columns:1fr}.class-tile-meta{font-size:.75rem;gap:18px}.class-tile-teacher small{display:initial}.class-tile h2{font-size:1.2rem}.class-tile>a>p{font-size:.85rem}.class-tile-meta{justify-content:space-between}.class-tile>footer{margin-top:18px}.class-tile>footer .btn{font-size:.8rem}.class-tile>header{margin-bottom:16px}.class-tile-teacher{margin-block:16px}.auth-form{max-width:360px}.landing-header .brand-text{gap:5px}.landing-header .brand-text strong{font-size:1rem}.landing-header .brand-text small{display:none}}.auth-eyebrow{display:block;color:var(--primary);font-size:12px;font-weight:600;margin-bottom:12px}.auth-help{border:0;background:none;font:inherit;font-size:12px;padding:0;cursor:pointer;text-align:start}.school-identity{position:relative;overflow:hidden;justify-content:space-between}.school-emblem{align-self:center;display:grid;place-items:center;width:280px;height:280px;border:1px solid currentColor;border-radius:50%;opacity:.7;margin:auto}.school-wordmark h2{font-size:44px;font-weight:500;line-height:1.6;letter-spacing:-1.5px;margin:0 0 18px}.school-wordmark>span{font-size:13px;opacity:.75}.credentials-panel>strong{font-size:18px}.credentials-panel dl{margin:24px 0;padding:18px;background:var(--bg);border-radius:12px}.credentials-panel dl>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0}.credentials-panel dt{color:var(--muted);font-size:12px}.credentials-panel dd{margin:0;font-family:monospace;font-size:16px;overflow-wrap:anywhere}.credentials-panel p,.field-hint{font-size:12px;color:var(--muted)}.credentials-actions{display:flex;flex-wrap:wrap;gap:8px}.stack-form{display:flex;flex-direction:column;gap:21px}.table-title{display:flex;align-items:center;gap:10px;background:none;border:0;padding:0;font-size:.85rem;text-align:right}.table-title svg{color:var(--primary-text)}.file-folder-strip{display:flex;gap:14px;margin-bottom:28px;overflow:auto;padding-bottom:4px}.file-folder-strip>button{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;min-width:180px;color:var(--muted);font-size:.84rem}.file-folder-strip>button.active{background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 18%,var(--line));color:var(--primary-text)}.file-folder-strip b{font-weight:500;font-size:.75rem;margin-inline-start:auto}.recording-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.recording-cover{height:190px;position:relative;display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:center;background:#29313e;color:#cf97a9}.recording-course{font-size:1.1rem;font-weight:600}.recording-cover>.badge{position:absolute;bottom:15px;right:18px}.recording-info{padding:22px}.recording-info h2{font-size:.98rem;margin-bottom:8px}.recording-info>p{font-size:.76rem;color:var(--muted)}.recording-info>div{display:flex;justify-content:space-between;align-items:center;margin-top:22px}.recording-info .btn{font-size:.77rem}.recording-player{width:100%;max-height:65dvh;border-radius:9px;display:block}.file-viewer{display:flex;flex-direction:column;width:100%;height:100%;min-width:0;min-height:0;background:var(--surface);overflow:hidden}.modal .file-viewer{height:min(68dvh,640px);border-radius:12px}.file-viewer-content{position:relative;flex:1;min-height:0;display:grid;place-items:center;overflow:hidden}.file-viewer-video .file-viewer-content{background:#12171f}.file-viewer-content>video,.file-viewer-content>img,.file-viewer-content>iframe{width:100%;height:100%;min-height:0;object-fit:contain;border:0}.file-viewer-content>audio{width:min(90%,640px)}.file-viewer-actions{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid var(--line);color:var(--text);background:var(--surface)}.file-viewer-actions>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.file-viewer-actions>div{display:flex;align-items:center;flex-shrink:0}.file-viewer-actions .btn{font-size:.75rem;padding:8px}.file-viewer-fallback{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;padding:24px;color:var(--text)}.file-viewer-fallback>span{font-size:.8rem;color:var(--muted)}.file-viewer-fallback>strong{overflow-wrap:anywhere}.file-preview-loading{height:min(60dvh,480px);border-radius:12px}.media-enable{position:absolute;z-index:2;inset-inline-start:50%;top:50%;transform:translate(-50%,-50%)}[dir=rtl] .media-enable{transform:translate(50%,-50%)}.upload-progress{display:flex;align-items:center;gap:12px;padding:10px 12px;color:var(--text);font-size:.78rem}.upload-progress>progress{flex:1;min-width:0;height:6px;accent-color:var(--primary)}.upload-progress>span{flex-shrink:0}.notification-list>div{display:flex;gap:18px;align-items:flex-start;padding:24px 28px;border-bottom:1px solid var(--line)}.notification-list>div:last-child{border:0}.notification-list>div.unread{background:color-mix(in srgb,var(--primary-soft) 35%,var(--surface))}.notification-list>div>a{flex:1}.notification-list strong{font-size:.94rem}.notification-list p{font-size:.84rem;color:var(--muted);margin-top:5px}.notification-list small{display:block;color:var(--faint);font-size:.73rem;margin-top:11px}.assignment-description{font-size:.92rem;line-height:2;white-space:pre-wrap}.assignment-due{font-size:.78rem;color:var(--muted);padding:14px 0;margin-bottom:17px;border-bottom:1px solid var(--line)}.submissions-list{display:flex;flex-direction:column;gap:20px}.submissions-list>section{padding:20px;border:1px solid var(--line);border-radius:10px}.submissions-list header{display:flex;gap:10px;align-items:center;font-size:.86rem;margin-bottom:15px}.submissions-list header>.badge{margin-inline-start:auto}.submissions-list>section>p{font-size:.86rem;margin:10px 0;white-space:pre-wrap}.submissions-list form{display:grid;grid-template-columns:80px 1fr auto;gap:12px;align-items:flex-end;margin-top:20px}.grade-result{padding:14px;background:var(--teal-soft);border-radius:9px}.grade-result p{font-size:.8rem;margin-top:8px}.report-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:24px 0 34px;margin-bottom:10px}.report-stats>section{display:flex;align-items:center;gap:14px;padding-inline:25px;border-left:1px solid var(--line);position:relative;flex-wrap:wrap}.report-stats>section:last-child{border:0}.report-stats svg{color:var(--muted)}.report-stats span{font-size:.86rem;color:var(--muted)}.report-stats strong{font-size:2rem;line-height:1.5;font-weight:700;width:100%;padding-right:34px}.report-bars{padding:8px 26px 25px}.report-bars>div:not(.empty){display:flex;gap:16px;align-items:center;margin:22px 0}.report-bars>div>span{font-size:.82rem;display:flex;flex-direction:column;min-width:120px}.report-bars small{font-size:.69rem;color:var(--muted)}.report-bars progress{height:7px}.report-bars b{font-size:.76rem;font-weight:500;min-width:37px;text-align:left}.calendar-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:.82rem;color:var(--muted)}.calendar-controls>div{display:flex;align-items:center;gap:18px}.calendar-controls strong{font-weight:500;color:var(--text)}.calendar-controls>span{font-size:.74rem}.calendar-grid-header{display:grid;grid-template-columns:65px repeat(7,minmax(0,1fr));border-bottom:1px solid var(--line)}.calendar-grid-header>div{display:flex;flex-direction:column;align-items:center;gap:4px;padding:20px 4px;border-left:1px solid var(--line);font-size:.71rem;color:var(--muted)}.calendar-grid-header>div.today{background:var(--primary-soft);color:var(--primary-text)}.calendar-grid-header strong{font-size:1.2rem;font-weight:600}.calendar-grid-header>.calendar-hour-label{font-size:.65rem;justify-content:center}.calendar-grid-body{display:grid;grid-template-columns:65px repeat(7,minmax(0,1fr))}.calendar-hour-column>div{height:108px;padding-top:15px;text-align:center;border-bottom:1px solid var(--line);font-size:.68rem;color:var(--muted)}.calendar-day-column{border-left:1px solid var(--line)}.calendar-day-column:last-child{border:0}.calendar-slot{height:108px;border-bottom:1px solid var(--line);padding:6px;position:relative}.calendar-event{display:flex;flex-direction:column;gap:5px;border-radius:7px;padding:9px 9px 7px;font-size:.66rem;position:relative;min-height:89px;border-right:2px solid currentColor}.calendar-event>span{font-size:.58rem}.calendar-event strong{font-size:.75rem;font-weight:600;line-height:1.6}.calendar-event small{font-size:.61rem;opacity:.8}.calendar-event>i{width:5px;height:5px;background:var(--primary);border-radius:50%;position:absolute;left:6px;top:9px}.mobile-calendar-strip,.mobile-hour{display:none}.messages-workspace{display:grid;grid-template-columns:285px 1fr;height:calc(100dvh - 222px);min-height:490px}.conversation-list{border-left:1px solid var(--line);display:flex;flex-direction:column;padding:10px 15px;min-height:0}.conversation-list .tabs{margin-bottom:17px;padding-inline:10px}.conversation-list .search-field{flex:0}.conversation-list .search-field input{min-height:41px;font-size:.8rem}.conversation-items{overflow:auto;margin:16px -5px 0;min-height:0}.conversation-items>button{display:flex;align-items:center;gap:12px;text-align:right;width:100%;padding:16px 10px;border:0;background:transparent;border-radius:9px;margin-bottom:4px}.conversation-items>button.active{background:var(--primary-soft)}.conversation-items>button>div{display:flex;flex-direction:column;flex:1;min-width:0}.conversation-items strong{font-size:.84rem;font-weight:500}.conversation-items small{font-size:.7rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-items>button>svg{color:var(--muted)}.conversation-content{display:flex;flex-direction:column;min-width:0;min-height:0}.conversation-content>header{display:flex;align-items:center;gap:12px;padding:18px 24px;border-bottom:1px solid var(--line)}.conversation-content h2{font-size:.93rem}.conversation-content>header>div{flex:1}.conversation-content>header>div>span{font-size:.7rem;color:var(--muted)}.conversation-content>header>svg{color:var(--muted)}.messages-workspace .chat-scroll{padding:25px}.messages-workspace .message-bubble{max-width:80%;font-size:.87rem}.messages-workspace .message-meta{max-width:80%}.messages-workspace .message-meta>strong{font-size:.8rem;max-width:200px}.messages-workspace .message-meta>span{font-size:.69rem}.messages-workspace .chat-message{gap:13px;margin-bottom:25px}.messages-workspace .chat-compose{margin:0 22px 22px}.messages-workspace .chat-compose textarea{font-size:.85rem}.profile-layout{display:grid;grid-template-columns:270px 1fr;gap:24px;max-width:1050px;margin:auto}.profile-summary{display:flex;flex-direction:column;align-items:center;padding:38px 20px;gap:18px;align-self:start}.profile-summary h2{font-size:1.05rem;margin-top:4px}.profile-summary>p{font-size:.78rem;color:var(--muted)}.profile-summary>span:last-child{font-size:.84rem;color:var(--muted)}.profile-layout .form-surface{width:100%;margin:0}.profile-layout .form-surface>h2{margin-bottom:25px}.settings-surface{padding:30px;max-width:790px;margin:auto}.settings-section{border-bottom:1px solid var(--line);padding:0 0 28px;margin-bottom:26px}.settings-section h2{margin-bottom:20px}.theme-options{display:flex;gap:18px}.theme-options>button{background:transparent;border:1px solid var(--line);border-radius:11px;padding:8px;width:170px}.theme-options>button.active{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.theme-options>button>span:last-child{display:flex;align-items:center;justify-content:center;gap:7px;font-size:.8rem;padding:12px 0 5px}.theme-preview{display:block;height:94px;position:relative;border-radius:6px;overflow:hidden;background:#f4f5f8}.theme-preview-dark{background:#141920}.theme-preview>i{position:absolute;right:0;top:0;bottom:0;width:26%;background:#fff}.theme-preview-dark>i{background:#252d3a}.theme-preview>b{position:absolute;left:12px;top:18px;right:calc(26% + 12px);height:26px;border-radius:4px;background:#e9ced5}.theme-preview-dark>b{background:#503448}.theme-preview>b:last-child{top:55px;height:22px;background:#fff}.theme-preview-dark>b:last-child{background:#252d3a}.settings-info{margin:0}.settings-info>div{display:flex;justify-content:space-between;padding:10px 0;font-size:.84rem}.settings-info dt{color:var(--muted)}.settings-info dd{margin:0}.settings-surface .form-actions{border:0;padding:0}.security-password{padding:26px}.security-password h2{margin-bottom:24px}.security-session{display:flex;align-items:center;gap:14px;padding:20px 24px;border-bottom:1px solid var(--line)}.security-session:last-child{border:0}.security-session>svg{color:var(--primary-text)}.security-session>div{display:flex;flex:1;flex-direction:column;min-width:0}.security-session strong{font-size:.83rem;font-weight:500;overflow-wrap:anywhere}.security-session small{color:var(--muted);font-size:.72rem;margin-top:4px}.bulk-bar{display:flex;align-items:center;gap:20px;padding:12px 18px;background:var(--primary-soft);border-radius:10px;margin-bottom:18px;font-size:.85rem}.student-profile{display:flex;align-items:center;gap:20px;margin-bottom:25px}.student-courses{display:flex;flex-direction:column;padding-top:15px}.student-courses>a{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line);font-size:.86rem}.student-courses>a>span{font-size:.74rem;color:var(--muted)}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.plan-tile{padding:26px}.plan-tile h2{font-size:1.1rem;margin:25px 0 13px}.plan-tile>strong{font-size:1.55rem;color:var(--primary-text);font-weight:600}.plan-tile dl{margin:24px 0}.plan-tile dl>div{display:flex;justify-content:space-between;padding:10px 0;font-size:.8rem}.plan-tile dt{color:var(--muted)}.plan-tile dd{margin:0}.plan-tile>div{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px}.storage-summary{display:flex;align-items:center;gap:16px;padding:0 0 24px;border-bottom:1px solid var(--line);margin-bottom:28px}.storage-summary>svg{color:var(--primary-text)}.storage-summary strong{font-size:1.1rem}.storage-summary p{font-size:.8rem;color:var(--muted)}.ticket-row{display:flex;align-items:center;gap:17px;padding:23px 24px;background:transparent;border:0;border-bottom:1px solid var(--line);text-align:right;width:100%}.ticket-row>svg{color:var(--muted)}.ticket-row>div{flex:1;display:flex;flex-direction:column;gap:6px}.ticket-row strong{font-size:.89rem;font-weight:500}.ticket-row span{font-size:.75rem;color:var(--muted)}.ticket-body{font-size:.9rem;white-space:pre-wrap;margin-bottom:25px;line-height:2}.ticket-response{padding:18px;background:var(--teal-soft);border-radius:10px;margin-bottom:25px;font-size:.84rem}.ticket-response strong{color:var(--teal);font-size:.8rem}.ticket-response p{margin-top:12px;white-space:pre-wrap}@media(max-width:1240px){.recording-grid,.plan-grid{grid-template-columns:1fr 1fr}.messages-workspace{grid-template-columns:250px 1fr}.calendar-slot{padding:4px}.calendar-event{padding:9px 5px}.calendar-event small{display:none}.calendar-event>span{font-size:.55rem}}@media(max-width:880px){.profile-layout{grid-template-columns:220px 1fr}.report-stats>section{padding-inline:16px}.report-stats span{font-size:.8rem}.calendar-grid-header,.calendar-grid-body{grid-template-columns:45px repeat(7,minmax(0,1fr))}.calendar-grid-header>div{font-size:.62rem}.calendar-event strong{font-size:.68rem}.messages-workspace{grid-template-columns:215px 1fr}.conversation-list{padding-inline:10px}.conversation-items>button{gap:8px}.conversation-items strong{font-size:.77rem}.conversation-items small{font-size:.63rem}}@media(max-width:768px){.recording-grid,.plan-grid{gap:16px}.recording-cover{height:150px}.recording-info{padding:18px}.recording-info h2{font-size:.88rem}.recording-info .btn{font-size:.7rem;padding:9px 11px}.file-folder-strip{gap:10px;margin-bottom:21px}.file-folder-strip>button{min-width:155px;padding:16px;font-size:.78rem}.file-folder-strip svg{width:19px}.report-stats{gap:10px;padding-top:5px;padding-bottom:22px}.report-stats>section{padding-inline:10px;gap:8px}.report-stats svg{width:18px}.report-stats span{font-size:.71rem}.report-stats strong{font-size:1.6rem;padding-right:0}.report-bars{padding-inline:19px}.report-bars>div>span{min-width:100px;font-size:.75rem}.report-bars>div:not(.empty){gap:12px}.notification-list>div{padding:20px 18px;gap:12px}.notification-list strong{font-size:.84rem}.notification-list p{font-size:.78rem}.notification-list small{font-size:.68rem}.messages-workspace{display:flex;flex-direction:column;height:calc(100dvh - 235px);min-height:500px}.conversation-list{padding:0 15px 12px;border-left:0;border-bottom:1px solid var(--line);max-height:155px;flex-shrink:0}.conversation-list .tabs{margin-bottom:8px;padding-inline:0;gap:20px}.conversation-list .tabs button{padding:10px 0;font-size:.75rem}.conversation-list>.search-field{display:none}.conversation-items{display:flex;flex-shrink:0;overflow:auto;gap:10px;margin-top:0}.conversation-items>button{padding:8px 10px;background:var(--surface-alt);margin:0;gap:8px;flex-shrink:0;width:auto;min-width:130px}.conversation-items .avatar{height:28px;width:28px;font-size:.6rem}.conversation-items small{display:none}.conversation-items>button>svg{display:none}.conversation-content{flex:1;min-height:0}.conversation-content>header{padding:13px 18px}.conversation-content h2{font-size:.84rem}.conversation-content>header>.avatar{width:31px;height:31px}.messages-workspace .chat-scroll{padding:18px}.messages-workspace .message-bubble,.messages-workspace .message-meta{max-width:100%}.messages-workspace .chat-compose{margin:0 15px 15px}.messages-workspace .message-bubble{font-size:.82rem}.calendar-grid-header{display:none}.calendar-grid-body{display:block}.calendar-hour-column{display:none}.calendar-day-column{display:none;border:0}.calendar-day-column.selected{display:block}.calendar-slot{height:100px;padding:9px 15px;display:flex;gap:18px;align-items:flex-start}.mobile-hour{display:block;min-width:47px;color:var(--muted);font-size:.72rem;padding-top:6px}.calendar-event{flex:1;min-height:80px;padding:8px 13px}.calendar-event strong{font-size:.83rem}.calendar-event small{display:block;font-size:.67rem}.calendar-event>span{font-size:.67rem}.mobile-calendar-strip{display:flex;gap:7px;justify-content:space-between;margin-bottom:18px}.mobile-calendar-strip>button{flex:1;display:flex;flex-direction:column;gap:6px;align-items:center;border:0;padding:12px 0;background:var(--surface);border-radius:8px;color:var(--muted);font-size:.64rem}.mobile-calendar-strip>button.active{background:var(--primary);color:var(--surface)}.mobile-calendar-strip b{font-size:1rem;font-weight:600}.calendar-controls>div{gap:8px}.profile-layout{grid-template-columns:1fr;gap:20px}.profile-summary{padding:24px;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:12px}.profile-summary>.avatar{width:60px;height:60px;font-size:1.1rem}.profile-summary>p{width:100%;text-align:center}.profile-summary>span:last-child{display:none}.settings-surface{padding:24px 20px}.security-password{padding:22px 19px}.security-session{padding-inline:18px}.bulk-bar{gap:8px;flex-wrap:wrap;font-size:.77rem;padding:12px}.bulk-bar .btn{padding:7px 10px;font-size:.74rem}.submissions-list>section{padding:16px}.submissions-list form{grid-template-columns:60px 1fr;gap:10px}.submissions-list form>.btn{grid-column:1/-1}.plan-tile{padding:20px}.plan-tile>strong{font-size:1.3rem}.plan-tile h2{font-size:1rem;margin-top:20px}.ticket-row{padding:20px 17px;gap:11px}.ticket-row strong{font-size:.83rem}.ticket-row span{font-size:.68rem}.toolbar-left select{font-size:.75rem;padding-inline:10px!important}.theme-options>button{width:150px}}@media(max-width:540px){.recording-grid,.plan-grid{grid-template-columns:1fr}.recording-cover{height:185px}.recording-info h2{font-size:.98rem}.plan-tile>strong{font-size:1.65rem}.report-stats span{font-size:.64rem}.report-stats svg{display:none}.report-stats>section{padding-inline:6px}.report-stats strong{font-size:1.45rem}.theme-options{gap:12px}.theme-options>button{width:50%}.toolbar .toolbar-left{width:100%}.toolbar .toolbar-left>select{flex:1}.ticket-row>svg:first-child{display:none}}.room-shell{height:100dvh;overflow:hidden;background:var(--bg);display:flex;flex-direction:column}.room-header{height:76px;flex-shrink:0;border-bottom:1px solid var(--line);background:var(--surface);padding:0 27px;display:flex;justify-content:space-between;align-items:center;gap:20px}.room-header>div{display:flex;align-items:center;gap:16px;min-width:0}.room-header .brand-mark{width:36px;height:36px;border-radius:11px}.room-title h1{font-size:1rem;font-weight:700}.room-title>span{display:block;color:var(--muted);font-size:.72rem}.room-people-count{display:flex;align-items:center;gap:7px;font-size:.75rem;color:var(--muted)}.prejoin{display:grid;grid-template-columns:1.4fr 1fr;gap:80px;width:100%;max-width:1250px;margin:auto;padding:55px 50px;overflow:auto}.prejoin-stage{display:flex;flex-direction:column;justify-content:center;min-width:0}.prejoin-stage .lesson{min-height:375px;box-shadow:0 15px 40px #151c2c10}.prejoin-stage-caption{display:flex;align-items:center;justify-content:center;gap:10px;font-size:.8rem;color:var(--muted);padding-top:20px}.prejoin-controls{display:flex;flex-direction:column;align-items:center;gap:16px;padding:10px 0}.prejoin-controls h2{font-size:1.6rem;margin-top:8px}.prejoin-controls>p{font-size:.84rem;color:var(--muted)}.prejoin-camera{height:150px;width:100%;max-width:295px;position:relative;border-radius:12px;overflow:hidden;background:var(--surface-alt);margin-top:10px;border:1px solid var(--line)}.prejoin-camera>.participant-video{height:100%}.prejoin-camera>span{position:absolute;bottom:10px;left:12px;font-size:.64rem;color:#c4cbd6;background:#202735cc;border-radius:5px;padding:2px 7px}.prejoin-camera .avatar{width:50px;height:50px;font-size:1rem}.prejoin-camera .video-avatar>span{display:none}.prejoin-toggles{display:flex;gap:12px}.prejoin-toggles>.icon-btn{height:42px;width:47px;border:1px solid var(--line);background:var(--surface);border-radius:9px}.prejoin-toggles .active{color:var(--primary-text);background:var(--primary-soft)}.prejoin-submit{width:100%;max-width:295px;margin-top:9px}.prejoin-controls>.field{width:100%;max-width:295px}.room-workspace{display:flex;flex:1;min-height:0;gap:22px;padding:20px 24px 4px}.room-stage{display:flex;flex-direction:column;gap:15px;flex:1;min-width:0;min-height:0}.stage-toolbar{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.stage-toolbar>div:last-child{display:flex;align-items:center;gap:9px}.stage-toolbar .btn{font-size:.73rem;min-height:35px;padding:7px 10px}.stage-tabs{display:flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.stage-tabs button{display:flex;align-items:center;gap:6px;border:none;background:transparent;color:var(--muted);padding:6px 13px;border-radius:6px;font-size:.75rem}.stage-tabs button.active{background:var(--primary-soft);color:var(--primary-text)}.stage-content{flex:1;min-height:0;display:flex;position:relative;align-items:stretch;background:#272d38;border-radius:13px;overflow:hidden}.stage-content>.lesson{width:100%;min-height:0;border-radius:0;justify-content:center}.stage-content .lesson-top{padding:14px 24px}.stage-content .lesson-body{padding:24px}.stage-content .lesson-body h2{font-size:clamp(1.5rem,2.5vw,2.6rem)}.stage-content .fraction-exercise{margin:25px 0 16px;gap:45px}.stage-content .fraction-shape{width:clamp(65px,9vw,128px);height:clamp(65px,9vw,128px)}.stage-content .fraction-group{gap:20px}.stage-content .fraction{font-size:clamp(1.3rem,2.2vw,2rem)}.stage-content .lesson footer{padding:11px 24px}.participant-filmstrip{display:flex;justify-content:center;gap:12px;height:107px;flex-shrink:0;overflow-x:auto;scrollbar-width:none}.filmstrip-tile{position:relative;flex:1;max-width:160px;min-width:100px;border:1px solid var(--line);border-radius:9px;overflow:hidden;padding:0;background:#252d39;display:flex;flex-direction:column;text-align:right;color:#d8dce5}.filmstrip-tile.speaking{border-color:var(--teal);box-shadow:0 0 0 1px var(--teal)}.filmstrip-tile>.participant-video{flex:1;min-height:0}.filmstrip-tile>div:last-of-type{display:flex;align-items:center;justify-content:space-between;font-size:.61rem;padding:5px 9px;height:28px;background:#202733}.filmstrip-tile>div>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.filmstrip-tile .video-avatar .avatar{height:39px;width:39px;font-size:.8rem;background:#3d3345;color:#e6b9c8}.filmstrip-tile .video-avatar>span:not(.avatar){display:none}.filmstrip-hand{position:absolute;left:5px;top:5px;width:24px;height:24px;border-radius:6px;display:grid;place-items:center;background:#9f7421;color:#fff}.participant-video{display:flex;align-items:center;justify-content:center;position:relative;background:#252d39;width:100%;height:100%;overflow:hidden}.participant-video video{width:100%;height:100%;object-fit:cover}.participant-video.local-video video{transform:scaleX(-1)}.screen-video video{object-fit:contain}.video-avatar{height:100%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#d6dce7}.video-avatar>.avatar{background:#3d3345;color:#e6b9c8}.video-avatar>span{font-size:.83rem}.video-stage,.screen-stage{position:relative;width:100%;height:100%}.video-stage>span{position:absolute;bottom:20px;right:20px;padding:3px 10px;background:#101725bb;border-radius:6px;color:#fff;font-size:.8rem}.screen-stage>.badge{position:absolute;top:12px;right:12px;font-size:.7rem}.room-panel{width:320px;flex-shrink:0;background:var(--surface);border:1px solid var(--line);border-radius:13px;display:flex;flex-direction:column;min-height:0;overflow:hidden}.room-panel>header{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-bottom:1px solid var(--line);flex-shrink:0}.room-panel h2{font-size:.87rem}.room-panel-tabs{display:flex;justify-content:space-around;padding:8px 6px 0;border-bottom:1px solid var(--line);flex-shrink:0}.room-panel-tabs button{display:flex;flex-direction:column;align-items:center;gap:6px;padding:7px 6px 11px;min-width:48px;background:transparent;border:0;border-bottom:2px solid transparent;color:var(--muted);font-size:.61rem}.room-panel-tabs button.active{border-color:var(--primary);color:var(--primary-text)}.chat-context{display:flex;align-items:center;justify-content:space-between;padding:14px 17px 0;font-size:.72rem;color:var(--muted)}.chat-context button{display:flex;gap:6px;align-items:center;border:0;background:transparent;color:var(--primary-text);font-size:.75rem;padding:0}.chat-view{display:flex;flex-direction:column;min-height:0;flex:1}.chat-scroll{padding:18px 17px;overflow-y:auto;flex:1;min-height:0;scrollbar-width:thin}.chat-message{display:flex;align-items:flex-start;gap:8px;margin-bottom:20px}.message-content{flex:1;min-width:0}.message-meta{display:flex;gap:8px;align-items:center;padding:2px 0 6px}.message-meta>strong{font-size:.72rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:145px}.message-meta>span{font-size:.58rem;color:var(--faint);margin-inline-start:auto}.message-meta .icon-btn{padding:0;min-width:17px;min-height:17px}.message-meta .icon-btn svg{width:14px;height:14px}.message-bubble{padding:9px 12px;border-radius:0 10px 10px;background:var(--surface-alt);font-size:.8rem;line-height:1.9;overflow-wrap:anywhere}.chat-message.own .message-bubble{background:var(--primary-soft)}.message-quote{font-size:.72rem;color:var(--muted);border-right:2px solid var(--primary);padding:3px 8px;margin-bottom:8px;max-height:60px;overflow:hidden}.chat-file{display:flex;align-items:center;gap:6px;border:none;background:var(--surface);border-radius:6px;padding:8px;margin-top:10px;font-size:.7rem;width:100%;text-align:right}.chat-file>svg:last-child{margin-inline-start:auto}.chat-compose{padding:11px;margin:0 12px 12px;border:1px solid var(--line);background:var(--surface);border-radius:11px;position:relative;flex-shrink:0}.chat-compose>textarea{border:0!important;background:transparent!important;border-radius:0!important;min-height:46px!important;padding:0 2px!important;resize:none;font-size:.77rem;line-height:1.8;display:block}.chat-compose-actions{display:flex;justify-content:space-between;align-items:center;margin-top:7px}.chat-compose-actions>div{display:flex;gap:4px}.chat-compose-actions .icon-btn{padding:4px;min-height:28px;min-width:28px}.chat-compose-actions .icon-btn svg{width:17px;height:17px}.send-button{display:grid;place-items:center;width:31px;height:29px;border:none;border-radius:7px;background:var(--primary);color:var(--surface)}.emoji-picker{position:absolute;bottom:100%;right:0;background:var(--surface);border:1px solid var(--line);border-radius:8px;display:flex;padding:7px;gap:3px}.emoji-picker button{border:0;background:transparent;padding:5px;font-size:1rem}.chat-reply{display:flex;align-items:center;gap:6px;margin:0 14px 8px;color:var(--muted);font-size:.7rem}.chat-reply>span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-reply .icon-btn{min-height:24px;min-width:24px}.typing-indicator{padding:0 22px 12px;font-size:.65rem;color:var(--muted);display:flex;align-items:center;gap:8px}.typing-indicator>span{display:flex;gap:3px}.typing-indicator i{width:3px;height:3px;background:var(--muted);border-radius:50%;animation:fade-in .6s infinite alternate}.typing-indicator i:nth-child(2){animation-delay:.2s}.typing-indicator i:nth-child(3){animation-delay:.4s}.chat-error{padding:12px;background:var(--danger-soft);color:var(--danger);font-size:.75rem;border-radius:8px}.participants-panel{padding:17px 16px;overflow:auto;flex:1}.participant-list-heading{display:flex;align-items:center;justify-content:space-between;font-size:.69rem;color:var(--muted);margin-bottom:14px}.participant-list-heading button{padding:0;border:0;background:transparent;color:var(--primary-text);font-size:.65rem}.participant-row{display:flex;align-items:center;gap:9px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--muted)}.participant-row>div:not(.dropdown-wrap){flex:1;display:flex;flex-direction:column;min-width:0}.participant-row strong{font-size:.74rem;color:var(--text);font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.participant-row small{font-size:.59rem}.participant-row .icon-btn{padding:0;min-width:18px;min-height:22px}.participant-hand{color:var(--amber)}.waiting-list{background:var(--amber-soft);padding:13px;border-radius:9px;margin-bottom:18px}.waiting-list h3{font-size:.75rem;color:var(--amber);margin-bottom:9px}.waiting-list>div{display:flex;align-items:center;gap:6px;font-size:.7rem}.waiting-list>div>span:not(.avatar){flex:1}.room-files{padding:15px 16px;overflow:auto}.room-files>div{display:flex;align-items:center;gap:10px;padding:15px 0;border-bottom:1px solid var(--line)}.room-files>div>svg{color:var(--primary-text)}.room-files>div>div{display:flex;flex:1;flex-direction:column;min-width:0}.room-files strong{font-size:.73rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-files small{font-size:.64rem;color:var(--muted)}.room-files .icon-btn{min-width:26px;padding:3px}.room-notes{padding:20px 16px;overflow:auto}.room-notes textarea{font-size:.8rem}.room-notes>.btn{margin-top:15px;font-size:.75rem}.polls-panel{padding:18px 16px;overflow:auto;flex:1}.polls-panel>.btn{width:100%;font-size:.78rem}.poll-block{margin-top:20px;border-top:1px solid var(--line);padding-top:18px}.poll-block>header{display:flex;align-items:center;justify-content:space-between;font-size:.66rem;color:var(--muted)}.poll-block h3{margin:14px 0;font-size:.84rem;line-height:1.9}.poll-option{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--line);border-radius:8px;margin-top:9px;font-size:.75rem;cursor:pointer}.poll-option>span{flex:1}.poll-option>b{font-weight:500;font-size:.69rem;color:var(--muted)}.poll-option>progress{height:4px}.poll-block>.btn{font-size:.74rem;margin-top:15px}.poll-voted{font-size:.65rem;color:var(--teal);display:flex;align-items:center;gap:6px;margin-top:14px}.room-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;height:94px;flex-shrink:0;padding:13px 24px;transition:opacity .2s}.room-controls.is-idle{opacity:.75}.room-controls:focus-within,.room-controls:hover{opacity:1}.room-control-context{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.72rem;min-width:110px}.room-school-caption{font-size:.75rem;color:var(--faint);min-width:90px;text-align:left}.floating-controls{display:flex;align-items:center;gap:5px;background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:7px 10px;box-shadow:0 7px 25px #141d3210;flex-shrink:0}.room-control{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:7px 10px;min-width:50px;border-radius:8px;min-height:51px;border:0;background:transparent;color:var(--muted);font-size:.6rem;white-space:nowrap}.room-control:hover{background:var(--surface-alt);color:var(--text)}.room-control.active{color:var(--primary-text);background:var(--primary-soft)}.room-control.control-leave{background:var(--danger-soft);color:var(--danger);padding-inline:18px}.control-divider{height:26px;width:1px;background:var(--line);margin:0 3px}.floating-controls .dropdown{top:auto;bottom:calc(100% + 15px)}.whiteboard{background:#fff;position:relative;width:100%;display:flex;flex-direction:column;justify-content:center;min-height:0}.whiteboard-toolbar{position:absolute;top:12px;right:50%;transform:translate(50%);z-index:10;display:flex;align-items:center;gap:3px;box-shadow:0 4px 20px #101a2f15;background:#fff;border:1px solid #e4e7ee;border-radius:10px;padding:6px;max-width:calc(100% - 24px);overflow-x:auto}.whiteboard-toolbar .icon-btn{min-width:30px;min-height:30px;color:#737984;padding:5px}.whiteboard-toolbar .active{background:#faedf1;color:#a62f50}.toolbar-divider{height:20px;width:1px;background:#e4e7ee;margin:0 4px;flex-shrink:0}.whiteboard-canvas{display:block;width:100%;max-height:100%;touch-action:none;aspect-ratio:16/9}.tool-pen,.tool-marker,.tool-arrow,.tool-square,.tool-circle{cursor:crosshair}.tool-text{cursor:text}.tool-eraser{cursor:cell}.color-swatch{width:17px;height:17px;min-width:17px;min-height:17px;border-radius:50%;border:3px solid white;margin:0 1px;box-shadow:0 0 0 1px transparent}.color-swatch.active{box-shadow:0 0 0 1px #7d8594}.swatch-rose{background:#a62f50}.swatch-ink{background:#253047}.swatch-teal{background:#267c72}.swatch-blue{background:#3972b5}.swatch-amber{background:#d19825}.presentation-file{width:100%;height:100%;background:#f4f4f6;display:flex;align-items:center;justify-content:center}.presentation-file>img{width:100%;height:100%;object-fit:contain}.presentation-file>object{width:100%;height:100%;border:none}.room-missing{min-height:100dvh;display:grid;place-items:center}@media(min-width:1600px){.room-workspace{gap:28px;padding:25px 35px 4px}.room-panel{width:360px}.participant-filmstrip{height:125px;gap:15px}.filmstrip-tile{max-width:185px}.room-controls{padding-inline:35px;height:104px}.floating-controls{padding:9px 14px;gap:8px}.room-control{padding:8px 16px}.stage-content .lesson-body h2{font-size:2.8rem}}@media(max-width:1240px){.room-panel{width:290px}.room-workspace{gap:18px;padding:18px 20px 4px}.room-control{padding-inline:8px;font-size:.57rem;min-width:44px}.room-school-caption{display:none}.room-control-context{min-width:90px;font-size:.65rem}.stage-content .fraction-exercise{gap:25px}.stage-content .fraction-group{gap:12px}.prejoin{gap:45px;padding:45px}.room-controls{justify-content:center}.room-control-context{position:absolute;right:24px}.floating-controls{gap:2px}.room-control-context>span{display:none}}@media(max-width:960px){.room-panel{width:280px}.room-workspace{gap:13px;padding:15px 16px 4px}.room-control-context{display:none}.room-header{padding-inline:20px}.room-header>div{gap:12px}.room-people-count{display:none}.room-control span{font-size:.55rem}.stage-toolbar .btn{padding-inline:5px}.stage-tabs button{padding-inline:9px}.stage-content .lesson-body{padding:25px 15px}.participant-filmstrip{height:91px}.filmstrip-tile{min-width:85px}.stage-content .fraction-shape{width:65px;height:65px}.stage-content .fraction-group{gap:10px}.prejoin{padding:30px;gap:35px}.prejoin-stage .lesson{min-height:330px}.prejoin-stage .lesson-body h2{font-size:1.6rem}.prejoin-stage .fraction-shape{width:75px;height:75px}.prejoin-stage .fraction-exercise{gap:24px}}@media(max-width:768px){.room-header{height:67px;padding:0 15px;gap:12px}.room-header>div{gap:9px}.room-header .brand-mark{width:31px;height:31px;border-radius:9px}.room-title h1{font-size:.87rem}.room-title>span{font-size:.61rem;max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-header>div>.badge{display:none}.room-header>div:last-child{gap:3px}.room-header>div:last-child .icon-btn{min-width:30px;padding:4px}.room-header>div:last-child .icon-btn:first-of-type{display:none}.prejoin{grid-template-columns:1fr;padding:24px 22px;gap:24px;overflow:auto;margin:0}.prejoin-stage .lesson{min-height:240px;max-height:260px}.prejoin-stage .lesson-body{padding:20px}.prejoin-stage .lesson-top{padding:12px 18px;font-size:.63rem}.prejoin-stage .lesson-body h2{font-size:1.3rem}.prejoin-stage .lesson-eyebrow{font-size:.7rem}.prejoin-stage .fraction-exercise{margin:18px 0 14px}.prejoin-stage .fraction-shape{width:65px;height:65px}.prejoin-stage .lesson-note{font-size:.72rem}.prejoin-stage .lesson footer{padding:9px 18px}.prejoin-stage-caption{display:none}.prejoin-controls{gap:12px;padding:0 0 24px}.prejoin-controls>.badge{display:none}.prejoin-controls h2{font-size:1.4rem}.prejoin-camera{max-width:340px;height:125px;margin-top:3px}.prejoin-submit{max-width:340px}.prejoin-controls>p{font-size:.76rem}.room-workspace{padding:14px 12px 0;gap:0;position:relative}.room-stage{gap:13px}.stage-toolbar .btn{font-size:0;min-width:32px;padding:4px}.stage-toolbar .btn>span{display:none}.stage-toolbar .btn svg{width:17px}.stage-tabs button{font-size:.68rem;padding:6px 10px}.stage-content{min-height:200px;border-radius:10px;flex:1}.stage-content .lesson-top{padding:12px 18px;font-size:.64rem}.stage-content .lesson-eyebrow{font-size:.75rem}.stage-content .lesson-body h2{font-size:1.45rem}.stage-content .fraction-exercise{gap:25px;margin:22px 0 17px}.stage-content .fraction-shape{width:76px;height:76px}.stage-content .fraction-group{gap:12px}.stage-content .lesson-note{font-size:.75rem}.stage-content .lesson footer{padding:11px 18px;font-size:.58rem}.participant-filmstrip{height:93px;justify-content:flex-start;gap:8px;padding-bottom:4px}.filmstrip-tile{min-width:99px;max-width:125px}.filmstrip-tile>div:last-of-type{padding:4px 7px;font-size:.55rem;height:26px}.room-panel{position:fixed;left:10px;right:10px;bottom:100px;z-index:450;width:auto;max-height:65dvh;height:510px;border-radius:16px;box-shadow:0 0 0 100vmax #10182760,0 10px 50px #0002;animation:modal-in .2s}.room-panel>header{padding:11px 17px}.room-panel h2{font-size:.9rem}.room-panel-tabs button{font-size:.69rem;gap:7px;min-width:56px;padding-bottom:10px}.room-panel .message-meta>strong{font-size:.8rem}.room-panel .message-bubble{font-size:.85rem}.room-panel .chat-scroll{padding:18px}.room-panel .participant-row strong{font-size:.83rem}.room-panel .participant-row small{font-size:.68rem}.room-controls{height:92px;padding:12px 10px;padding-bottom:calc(12px + env(safe-area-inset-bottom));position:relative;z-index:500}.floating-controls{justify-content:center;gap:8px;padding:7px 8px;border-radius:13px;width:auto;max-width:100%}.room-control{min-width:46px;min-height:48px;padding:7px 10px;gap:5px}.room-control span{display:none}.room-control.control-leave{padding-inline:17px}.mobile-control-hide{display:none}.room-controls.is-idle{opacity:.88}.room-panel .chat-view{flex:1}.whiteboard-toolbar{right:12px;left:12px;transform:none;max-width:none;top:10px;gap:2px;padding:4px}.whiteboard-toolbar .icon-btn{min-width:29px;min-height:29px}.whiteboard-toolbar .icon-btn svg{width:17px;height:17px}.color-swatch{min-width:16px;width:16px;height:16px}.whiteboard-canvas{min-height:260px;aspect-ratio:auto}.video-avatar>.avatar{width:67px;height:67px;font-size:1.3rem}.video-avatar>span{font-size:.78rem}.screen-stage>.badge{font-size:.63rem}.floating-controls .dropdown{bottom:calc(100% + 15px);left:0;right:auto}.participants-panel .dropdown{left:0;right:auto}.stage-content .whiteboard-canvas{aspect-ratio:16/9;min-height:0;max-height:100%;object-fit:contain}}@media(max-width:370px){.room-title>span{max-width:145px}.floating-controls{gap:4px}.room-control{padding-inline:8px;min-width:42px}.stage-content .fraction-shape{width:61px;height:61px}.stage-content .fraction-exercise{gap:20px}.room-header>div:last-child{gap:0}.room-panel{bottom:97px}.stage-tabs button{padding-inline:8px}}
