:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff;--bg-soft:#f7f6f2;--bg-warm:#efede6;--surface:#fff;--surface-raised:#fffefa;--ink:#0a0a0a;--ink-2:#1c1c1e;--muted:#6e6e73;--muted-2:#9a968e;--line:#e6e2d8;--line-2:#edeae2;--accent:#6b5aed;--accent-soft:#eeebff;--danger:#c8372d;--danger-soft:#fff0ee;--ok:#2ba84a;--ok-soft:#eaf8ee;--radius:14px;--radius-sm:10px;--pill:999px;--maxw:1160px;--shadow-soft:0 16px 42px #1c1c1e12;--shadow-button:0 5px 12px #6750f624;--font:"Helvetica Neue", Helvetica, "Inter Tight", "SF Pro Text", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif}*{box-sizing:border-box}html{background:var(--bg);min-height:100%}body{background:var(--bg);min-height:100vh;color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.55}a{color:inherit}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #6b5aed33}.button{border-radius:var(--pill);letter-spacing:0;white-space:nowrap;isolation:isolate;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;font-weight:600;line-height:1;transition:transform .12s,box-shadow .15s,background .15s;display:inline-flex;position:relative;overflow:hidden}.button-content{z-index:2;align-items:center;gap:inherit;display:inline-flex;position:relative}.button-sm{min-height:38px;padding:0 16px;font-size:14px}.button-md{min-height:44px;padding:0 20px;font-size:15px}.button-lg{min-height:52px;padding:0 24px;font-size:16px}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(1px)}.button:disabled{opacity:.66;filter:saturate(.82);transform:none}.button-primary{color:#fff;box-shadow:var(--shadow-button);background:#725cff;border-color:#6852ff6b}.button-secondary{color:var(--ink);background:linear-gradient(#fff 0%,#fbfaf7 100%);border-color:#e6e2d8eb;box-shadow:0 6px 14px #1c1c1e0b}.button-ghost{color:var(--ink-2);box-shadow:none;background:0 0}.button-inverse{color:var(--ink);background:linear-gradient(#fff 0%,#f6f5f2 100%);border-color:#ffffffc2;box-shadow:0 9px 20px #00000024}.button-danger{background:linear-gradient(135deg, #e25a51 0%, var(--danger) 100%);color:#fff;border-color:#c8372d80;box-shadow:0 10px 22px #c8372d33}.button-ai{color:#fff;text-shadow:0 1px #2a247029;background:radial-gradient(at 18% 3%,#ffffff9e,#0000 16%),linear-gradient(145deg,#f07a3f 0%,#e7378d 48%,#3548f5 100%);border-color:#ffffffc7;animation:18s ease-in-out infinite ai-tide;box-shadow:inset 0 0 0 1px #ffffff47,0 8px 20px #3b44e829}.button-ai:after{content:"";z-index:0;pointer-events:none;filter:blur(4px)saturate(1.22);opacity:.86;background:radial-gradient(at 14% 22%,#ffc44dfa 0 11%,#0000 30%),radial-gradient(at 54% 15%,#ff4957f5 0 13%,#0000 33%),radial-gradient(at 84% 40%,#f52a9af0 0 12%,#0000 34%),radial-gradient(at 24% 82%,#414afffa 0 16%,#0000 38%),radial-gradient(at 72% 90%,#2f37e1fa 0 14%,#0000 40%);animation:13s cubic-bezier(.45,0,.24,1) infinite ai-sea;position:absolute;inset:-90% -70%}.button-ai:hover{box-shadow:inset 0 0 0 1px #ffffff52,0 9px 22px #424ee633}@keyframes ai-tide{0%,to{background-position:0 0,0 0}40%{background-position:1% 12%,0 0}70%{background-position:14% 2%,0 0}}@keyframes ai-sea{0%,to{opacity:.74;transform:translate(-22%,-10%)rotate(-14deg)scale(1.04)}25%{opacity:.92;transform:translate(-5%,5%)rotate(3deg)scale(1.12)}50%{opacity:.84;transform:translate(15%,-4%)rotate(-6deg)scale(1.07)}75%{opacity:.94;transform:translate(4%,14%)rotate(11deg)scale(1.14)}}.shell,.center-page{min-height:100vh;padding:24px;display:grid}.shell{place-items:center}.center-page{background:var(--bg-soft);place-items:center}.hero{gap:20px;width:min(100%,720px);display:grid}.eyebrow{color:var(--muted);letter-spacing:0;text-transform:uppercase;margin:0;font-size:13px;font-weight:700}h1{color:var(--ink);margin:0;font-size:56px;line-height:1}.lead{color:var(--muted);margin:0;font-size:18px;line-height:1.6}.muted{color:var(--muted);margin:0}.actions,.session-box{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.session-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);justify-content:space-between;padding:16px}.session-box__email{color:var(--ink);margin:6px 0 0}.primary-button,.secondary-button,.primary-link,.secondary-link,.text-link{border-radius:var(--pill);min-height:42px}.primary-button,.secondary-button,.primary-link,.secondary-link{justify-content:center;align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.primary-button,.primary-link{color:#fff;box-shadow:var(--shadow-button);background:#725cff;border:1px solid #6852ff6b;padding:0 18px}.primary-button:disabled{opacity:.62}.secondary-button,.secondary-link{border:1px solid var(--line);color:var(--ink);background:linear-gradient(#fff 0%,#fbfaf7 100%);padding:0 16px}.text-link{color:var(--accent);justify-content:center;align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.auth-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);gap:18px;width:min(100%,420px);padding:28px;display:grid}.auth-panel__header{gap:8px;display:grid}.auth-panel h1{font-size:32px;line-height:1.1}.field{color:var(--ink-2);gap:8px;font-size:14px;font-weight:700;display:grid}.field input{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);background:#fff;min-height:44px;padding:10px 12px}.field input:focus{border-color:#6b5aed7a;outline:3px solid #6b5aed26}.auth-message{color:#9a3412;margin:0;font-size:14px}.desktop-connect-panel{border:1px solid var(--line-2);border-radius:var(--radius);text-align:center;background:#fff;justify-items:center;gap:18px;width:min(100%,560px);padding:42px;display:grid;box-shadow:0 18px 48px #1c1c1e14}.desktop-connect-panel h1{max-width:440px;margin:0;font-size:44px;line-height:1.04}.desktop-connect-panel p{max-width:420px;color:var(--muted);margin:0;font-size:16px;line-height:1.6}.desktop-connect-panel strong{color:var(--ink)}.desktop-code{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);letter-spacing:.08em;background:#fbfaf7;padding:14px 20px;font-size:34px;font-weight:800}.desktop-connect-message{font-weight:700}.desktop-connect-message.is-approved{color:var(--ok)}.desktop-connect-message.is-error{color:var(--danger)}.dashboard-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);gap:16px;width:min(100%,520px);padding:28px;display:grid}.dashboard-panel h1{font-size:48px}.app-shell{background:var(--bg-soft);grid-template-columns:248px minmax(0,1fr);min-height:100vh;transition:grid-template-columns .18s;display:grid}.app-shell.is-sidebar-collapsed{grid-template-columns:84px minmax(0,1fr)}.sidebar{border-right:1px solid var(--line-2);background:#ffffffdb;flex-direction:column;gap:28px;height:100vh;padding:22px 14px;transition:gap .18s,padding .18s;display:flex;position:sticky;top:0}.sidebar-head{justify-content:space-between;align-items:center;gap:8px;min-height:44px;display:flex}.brand{align-items:center;min-height:44px;padding:4px 10px;display:flex}.sidebar-collapse{border-radius:var(--pill);width:36px;height:36px;color:var(--muted);background:0 0;border-color:#0000;flex:none}.sidebar-collapse:hover{color:var(--ink);background:0 0}.logo{letter-spacing:-.012em;flex-shrink:0;align-items:baseline;gap:1px;display:inline-flex}.logo-main{color:var(--ink);font-size:17px;font-weight:600}.logo-sub{color:var(--muted);font-size:12px;font-weight:400}.logo-large .logo-main{font-size:40px}.logo-large .logo-sub{font-size:22px}.sidebar-nav{gap:6px;display:grid}.sidebar-link{border-radius:var(--radius-sm);width:100%;min-height:44px;color:var(--muted);letter-spacing:0;text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:12px;padding:0 12px;font-size:15px;font-weight:600;transition:gap .18s,padding .18s,box-shadow .15s,background .15s,color .15s;display:flex}.sidebar-link:hover,.sidebar-link.is-active{color:var(--ink);border-color:var(--line-2);background:#fff;box-shadow:0 8px 18px #1c1c1e0a}.sidebar-link.is-active svg{color:var(--accent)}.sidebar-link svg{flex:none}.sidebar-footer{gap:10px;margin-top:auto;display:grid}.sidebar-ai-button{width:100%}.sidebar-desktop-status{color:var(--muted);margin:-2px 0 0;font-size:12px;font-weight:600;line-height:1.35}.sidebar-profile{gap:8px;display:grid;position:relative}.sidebar-profile-trigger{border:1px solid var(--line);border-radius:var(--pill);width:100%;min-height:54px;color:var(--ink);text-align:left;background:#fff;align-items:center;gap:10px;padding:6px 10px 6px 6px;display:flex;box-shadow:0 8px 18px #1c1c1e0a}.sidebar-profile-trigger:hover{border-color:var(--line);box-shadow:0 10px 22px #1c1c1e11}.profile-chevron{color:var(--ink);flex:none;margin-left:auto;transition:transform .15s}.sidebar-profile.is-open .profile-chevron{transform:rotate(180deg)}.sidebar-profile-menu{border:1px solid var(--line-2);border-radius:var(--radius);background:#fff;gap:6px;padding:8px;display:grid;box-shadow:0 16px 34px #1c1c1e1a}.sidebar-profile-action{border-radius:var(--radius-sm);min-height:38px;color:var(--ink-2);letter-spacing:0;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0 10px;font-size:14px;font-weight:700;display:flex}.sidebar-profile-action:hover{background:var(--bg-soft);color:var(--ink)}.workspace{min-width:0}.app-shell.is-sidebar-collapsed .sidebar{gap:20px;padding-inline:12px}.app-shell.is-sidebar-collapsed .sidebar-head{justify-content:center}.app-shell.is-sidebar-collapsed .brand{display:none}.app-shell.is-sidebar-collapsed .sidebar-link{justify-content:center;gap:0;padding:0}.app-shell.is-sidebar-collapsed .sidebar-link span,.app-shell.is-sidebar-collapsed .sidebar-ai-button .button-content span,.app-shell.is-sidebar-collapsed .sidebar-ai-button .button-content{font-size:0}.app-shell.is-sidebar-collapsed .sidebar-ai-button{justify-self:center;width:44px;min-width:44px;padding:0}.app-shell.is-sidebar-collapsed .sidebar-ai-button .button-content{gap:0}.app-shell.is-sidebar-collapsed .sidebar-profile{justify-items:center}.app-shell.is-sidebar-collapsed .sidebar-profile-trigger{width:44px;min-height:44px;box-shadow:none;background:0 0;border-color:#0000;justify-content:center;padding:2px}.app-shell.is-sidebar-collapsed .sidebar-profile-trigger:hover{background:0 0}.app-shell.is-sidebar-collapsed .sidebar-profile .profile-copy,.app-shell.is-sidebar-collapsed .sidebar-profile .profile-chevron{display:none}.app-shell.is-sidebar-collapsed .sidebar-profile-menu{z-index:20;width:180px;position:absolute;bottom:0;left:calc(100% + 10px)}.topbar{z-index:5;border-bottom:1px solid var(--line-2);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffd1;justify-content:flex-end;align-items:center;min-height:78px;padding:14px 28px;display:flex;position:sticky;top:0}.global-search,.table-search{border:1px solid var(--line);border-radius:var(--radius-sm);min-height:44px;color:var(--muted-2);background:#fff;align-items:center;gap:10px;padding:0 14px;display:flex}.global-search input,.table-search input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;min-width:0}.global-search input::placeholder,.table-search input::placeholder{color:var(--muted-2)}.topbar-actions{justify-content:flex-end;align-items:center;gap:10px;margin-left:auto;display:flex}.icon-button,.row-action,.page-button{border:1px solid var(--line);color:var(--ink-2);border-radius:var(--radius-sm);background:#fff;place-items:center;display:inline-grid}.icon-button{width:44px;height:44px;position:relative}.notification-dot{background:#ef3f56;border:2px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute;top:9px;right:10px}.profile-chip{border:1px solid var(--line);border-radius:var(--pill);background:#fff;align-items:center;gap:10px;min-height:50px;padding:5px 10px 5px 5px;display:flex}.profile-avatar{aspect-ratio:1;background:var(--ink);color:#fff;border-radius:50%;flex:0 0 40px;place-items:center;width:40px;min-width:40px;height:40px;min-height:40px;font-size:16px;font-weight:800;display:inline-grid}.sidebar-profile .profile-avatar{flex-basis:40px}.profile-copy{line-height:1.2;display:grid}.profile-copy strong{max-width:180px;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.profile-copy span{max-width:180px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.content{gap:22px;width:min(100%,1320px);margin:0 auto;padding:28px;display:grid}.page-header{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.page-header h1{margin-top:8px;font-size:42px;line-height:1.05}.page-header-actions,.filters{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.stats-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.stat-block{border:1px solid var(--line-2);border-radius:var(--radius);background:#fff;justify-content:space-between;align-items:center;min-height:78px;padding:18px;display:flex;box-shadow:0 8px 22px #1c1c1e09}.stat-block span{color:var(--muted);font-size:14px;font-weight:600}.stat-block strong{color:var(--ink);font-size:28px;line-height:1}.stat-skeleton{flex-direction:column;justify-content:center;align-items:flex-start;gap:12px}.students-section{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft);overflow:hidden}.tabs-row{border-bottom:1px solid var(--line-2);gap:6px;padding:16px 18px 0;display:flex}.tab-button{min-height:44px;color:var(--muted);letter-spacing:0;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:0 8px 13px;font-size:14px;font-weight:700;display:inline-flex}.tab-button span{border-radius:var(--pill);background:var(--bg-soft);min-width:26px;height:24px;color:var(--muted);place-items:center;padding:0 8px;font-size:12px;display:inline-grid}.tab-button.is-active{border-bottom-color:var(--accent);color:var(--ink)}.tab-button.is-active span{background:var(--accent-soft);color:var(--accent)}.toolbar{justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.table-search{width:min(100%,360px)}.select-field{border:1px solid var(--line);border-radius:var(--radius-sm);min-height:44px;color:var(--muted);background:#fff;align-items:center;gap:8px;padding:0 12px;font-size:14px;font-weight:600;display:flex}.select-field select{color:var(--ink);background:0 0;border:0;outline:0;font-weight:600}.students-table-wrap{border-top:1px solid var(--line-2);overflow-x:auto}.students-table{border-collapse:collapse;width:100%;min-width:980px}.students-table th,.students-table td{border-bottom:1px solid var(--line-2);color:var(--ink-2);text-align:left;vertical-align:middle;white-space:nowrap;padding:14px 18px;font-size:14px}.students-table th{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.students-table tbody tr:hover{background:#fffdf7}.student-cell{align-items:center;gap:12px;min-width:240px;display:flex}.student-cell-link{color:inherit;text-decoration:none}.student-cell-link:hover strong{color:var(--accent)}.row-actions{align-items:center;gap:8px;display:inline-flex}.table-text-action{border:1px solid var(--line-2);border-radius:var(--pill);min-height:32px;color:var(--ink);background:#fff;align-items:center;gap:5px;padding:0 10px;font-size:12px;font-weight:800;line-height:1;text-decoration:none;display:inline-flex}.table-text-action:hover{color:var(--accent);border-color:#6b5aed52}.table-text-action-lg{min-height:38px;padding:0 14px;font-size:13px}.student-cell strong,.student-cell small{display:block}.student-cell strong{color:var(--ink);font-size:15px;line-height:1.25}.student-cell small{color:var(--muted);margin-top:2px;font-size:13px;line-height:1.35}.skeleton-row:hover{background:0 0}.skeleton-line,.skeleton-pill,.skeleton-circle{border-radius:var(--pill);background:linear-gradient(90deg,#edeae2b8 0%,#fffffff2 48%,#edeae2b8 100%) 0 0/220% 100%;animation:1.25s ease-in-out infinite skeleton-shimmer;display:block;overflow:hidden}.skeleton-circle{border-radius:50%;width:40px;height:40px}.skeleton-pill{width:82px;height:26px}.skeleton-line{height:12px}.skeleton-line-short{width:74px}.skeleton-line-number{width:42px;height:28px}.skeleton-line-name{width:138px;height:14px}.skeleton-line-email{width:186px;height:11px;margin-top:8px}.skeleton-line-small{width:52px}.skeleton-line-medium{width:118px}.skeleton-line-actions{width:96px}.student-avatar{color:#fff;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;font-size:13px;font-weight:800;display:inline-grid}@keyframes skeleton-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.avatar-warm{background:linear-gradient(145deg,#f08a45,#8d5cff)}.avatar-rose{background:linear-gradient(145deg,#ec6a8d,#6b5aed)}.avatar-violet{background:linear-gradient(145deg,#8d72ff,#3538c8)}.avatar-blue{background:linear-gradient(145deg,#4c8dff,#3548f5)}.avatar-green{background:linear-gradient(145deg,#2ba84a,#54b7a5)}.avatar-slate{background:linear-gradient(145deg,#62646d,#1c1c1e)}.status-badge{border-radius:var(--pill);justify-content:center;align-items:center;min-height:26px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.status-active{background:var(--ok-soft);color:#16823b}.status-inactive{background:var(--danger-soft);color:var(--danger)}.row-action{width:36px;height:36px;color:var(--muted);border-color:#0000;text-decoration:none}.row-action:hover{border-color:var(--line);color:var(--ink)}.row-action-danger:hover{color:var(--danger);background:var(--danger-soft);border-color:#c8372d3d}.row-action:disabled,.table-text-action:disabled{opacity:.52;cursor:not-allowed}.inline-status{border:1px solid var(--line-2);border-radius:var(--pill);width:fit-content;max-width:100%;color:var(--muted);background:linear-gradient(#fff 0%,#fbfaf7 100%);margin:0 18px 16px;padding:10px 14px;font-size:14px;font-weight:700;line-height:1.45}.table-footer{min-height:64px;color:var(--muted);justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;font-size:14px;display:flex}.pagination{gap:8px;display:flex}.page-button{width:38px;height:38px;color:var(--muted);font-weight:700}.page-button.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.student-page-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.back-link{width:fit-content;min-height:40px;color:var(--muted);align-items:center;gap:8px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--ink)}.student-profile-panel,.ai-overview-card,.student-lessons-panel{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft)}.student-overview-grid{grid-template-columns:minmax(360px,.78fr) minmax(420px,1.22fr);align-items:start;gap:16px;display:grid}.student-profile-panel{gap:18px;padding:22px;display:grid}.student-profile-main{align-items:flex-start;gap:16px;min-width:0;display:flex}.student-profile-avatar{color:#fff;border-radius:50%;flex:none;place-items:center;width:78px;height:78px;font-size:22px;font-weight:800;display:inline-grid;box-shadow:0 12px 26px #1c1c1e1c}.student-profile-copy{gap:10px;min-width:0;display:grid}.student-profile-title{align-items:center;gap:10px;display:flex}.student-profile-title h1{overflow-wrap:anywhere;font-size:26px;line-height:1.08}.student-profile-copy p{color:var(--ink-2);margin:0;font-size:15px;font-weight:700}.ghost-icon-button{border-radius:var(--pill);width:34px;height:34px;color:var(--muted);background:0 0;border:0;flex:none;place-items:center;display:inline-grid}.ghost-icon-button:hover{color:var(--ink);background:var(--bg-soft)}.student-contact-list{color:var(--muted);gap:8px;font-size:13px;display:grid}.student-contact-list span{align-items:center;gap:10px;min-width:0;display:flex}.student-contact-list svg{flex:none}.student-meta-grid{border-top:1px solid var(--line-2);grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:12px 14px;margin:0;padding-top:16px;display:grid}.student-meta-grid div{gap:4px;min-width:0;display:grid}.student-meta-grid dt{color:var(--muted);font-size:12px;font-weight:600}.student-meta-grid dd{color:var(--ink-2);margin:0;font-size:14px;font-weight:700}.student-notes-panel{border-radius:var(--radius);background:linear-gradient(#fff 0%,#fbfaf7 100%);gap:10px;padding:16px;display:grid}.panel-title-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.panel-title-row h2{color:var(--ink);margin:0;font-size:22px;line-height:1.1}.student-notes-panel p,.ai-markdown p{color:var(--muted);margin:0;font-size:15px;line-height:1.7}.student-tabs{border-bottom:1px solid var(--line-2);gap:6px;padding:0 4px;display:flex;overflow-x:auto}.student-tab{min-height:46px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:0 12px;font-size:14px;font-weight:800}.student-tab.is-active{border-bottom-color:var(--accent);color:var(--accent)}.ai-overview-card,.student-lessons-panel{padding:24px}.ai-overview-card{gap:18px;display:grid;position:relative;overflow:hidden}.ai-overview-card:before{content:"";pointer-events:none;background:radial-gradient(circle at 8% 0,#f07a3f1f,#0000 28%),radial-gradient(circle at 92% 0,#3548f51f,#0000 30%);position:absolute;inset:0}.ai-overview-card>*{position:relative}.ai-card-kicker{color:var(--ink);align-items:center;gap:8px;font-size:17px;font-weight:800;display:inline-flex}.ai-card-kicker svg{color:var(--accent)}.ai-markdown{gap:12px;display:grid}.ai-markdown h3{color:var(--ink);margin:0;font-size:15px;font-weight:800;line-height:1.25}.ai-markdown ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.ai-markdown li{color:var(--ink-2);padding-left:18px;font-size:14px;line-height:1.55;position:relative}.ai-markdown li:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:9px;left:0}.ai-markdown strong{color:var(--ink)}.student-lessons-panel{gap:18px;display:grid}.student-lessons-table{min-width:900px}.lesson-status{color:var(--muted);align-items:center;gap:8px;font-size:14px;font-weight:800;display:inline-flex}.lesson-status-done{color:var(--ok)}.lesson-status-planned{color:var(--accent)}.lesson-status-progress{color:#c97900}.lesson-status-cancelled{color:var(--danger)}.lesson-topic-link{color:var(--ink);font-weight:800;text-decoration:none}.lesson-topic-link:hover{color:var(--accent)}.empty-table-state{border-top:1px solid var(--line-2);color:var(--muted);align-items:center;gap:12px;padding:18px;display:flex}.empty-table-state strong{color:var(--ink);font-size:15px;display:block}.empty-table-state p{margin:3px 0 0;font-size:14px}.compact-empty-state{border:1px solid var(--line-2);border-radius:var(--radius-sm);background:#fff}.soon-panel{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft);color:var(--muted);align-items:flex-start;gap:12px;padding:22px;display:flex}.soon-panel svg{color:var(--accent);flex:none}.soon-panel strong{color:var(--ink);font-size:16px;display:block}.soon-panel p{margin:4px 0 0;font-size:14px;line-height:1.55}.soon-modal{max-width:560px}.soon-modal-body{border:1px solid var(--line);background:linear-gradient(135deg,#fffffff5,#efede680);border-radius:22px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:16px;margin-top:22px;padding:20px;display:grid}.soon-modal-icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent);border-radius:16px;justify-content:center;align-items:center;display:inline-flex}.soon-modal-body p{color:var(--muted);margin:0;font-size:16px;line-height:1.5}.lesson-planner-overlay{z-index:80;background:#0a0a0a38;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.lesson-planner-modal{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);gap:20px;width:min(560px,100%);padding:24px;display:grid;box-shadow:0 22px 60px #1c1c1e2e}.lesson-planner-form{gap:16px;display:grid}.lesson-planner-form label{color:var(--ink);gap:8px;font-size:14px;font-weight:800;display:grid}.lesson-planner-form input,.lesson-planner-form select,.lesson-planner-form textarea{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;color:var(--ink);font:inherit;background:#fff;padding:0 13px;font-size:15px}.lesson-planner-form input,.lesson-planner-form select{min-height:44px}.lesson-planner-form textarea{resize:vertical;min-height:86px;padding-top:12px}.lesson-planner-form input:focus,.lesson-planner-form select:focus,.lesson-planner-form textarea:focus{border-color:#6b5aed7a;outline:3px solid #6b5aed24}.lesson-planner-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.lesson-planner-actions{justify-content:flex-end;gap:10px;display:flex}.split-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center}.form-actions-spacer{flex:auto}.form-error{border-radius:var(--radius-sm);color:var(--danger);background:#fff5f4;border:1px solid #c8372d38;margin:0;padding:10px 12px;font-size:14px;font-weight:700}.lesson-settings-help{color:var(--muted);margin:-4px 0 0;font-size:13px;font-weight:700}.lesson-page-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.lesson-head-copy{gap:12px;min-width:0;display:grid}.lesson-title-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.lesson-title-row h1{overflow-wrap:anywhere;max-width:100%;font-size:clamp(30px,3vw,40px);line-height:1.04}.lesson-status-chip{border-radius:var(--pill);align-items:center;gap:7px;min-height:30px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.lesson-status-chip.is-done{background:var(--ok-soft);color:#16823b}.lesson-status-chip.is-planned{background:var(--accent-soft);color:var(--accent)}.lesson-status-chip.is-progress{color:#b45309;background:#fff4e6}.lesson-status-chip.is-cancelled{background:var(--danger-soft);color:var(--danger)}.lesson-meta-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:16px;font-size:14px;font-weight:700;display:flex}.lesson-meta-row>span,.lesson-meta-row>a{min-height:32px;color:inherit;align-items:center;gap:8px;text-decoration:none;display:inline-flex}.lesson-meta-row a:hover{color:var(--ink)}.lesson-meta-row .student-avatar{border-radius:50%;flex:0 0 32px;place-items:center;width:32px;min-width:32px;height:32px;min-height:32px;font-size:11px;line-height:1;display:inline-grid}.lesson-head-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;display:flex}.lesson-subtle-action{border:1px solid var(--line-2);border-radius:var(--pill);min-height:38px;color:var(--muted);background:#ffffffb8;align-items:center;gap:7px;padding:0 14px;font-size:13px;font-weight:800;display:inline-flex;box-shadow:0 6px 16px #1c1c1e0a}.lesson-subtle-action.is-primary{color:var(--accent);border-color:#6b5aed33}.lesson-subtle-action:hover{color:var(--ink);border-color:#6b5aed57;transform:translateY(-1px)}.lesson-icon-danger{width:38px;height:38px;color:var(--muted-2);background:0 0;border:0;border-radius:50%;place-items:center;display:inline-grid}.lesson-icon-danger:hover{background:var(--danger-soft);color:var(--danger)}.lesson-icon-danger:disabled{opacity:.48;cursor:not-allowed}.lesson-player-panel{border:1px solid var(--line-2);border-radius:var(--radius);min-height:86px;box-shadow:var(--shadow-soft);background:radial-gradient(circle at 10% 0,#6b5aed14,#0000 24%),linear-gradient(#fff 0%,#fbfaf7 100%);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 22px;display:grid}.lesson-player-body{gap:0;min-width:0;display:grid}.lesson-player-topline,.lesson-player-meta{justify-content:space-between;align-items:center;gap:14px;display:flex}.lesson-player-topline div{min-width:0;display:grid}.lesson-player-topline strong{color:var(--ink);font-size:16px;line-height:1.2}.lesson-player-topline time{color:var(--ink);white-space:nowrap;font-size:14px;font-weight:800}.lesson-custom-player{grid-template-columns:48px minmax(0,1fr);align-items:start;gap:16px;display:grid}.lesson-custom-play{background:var(--ink);color:#fff;border:0;border-radius:50%;align-self:start;place-items:center;width:48px;height:48px;display:inline-grid;box-shadow:0 10px 22px #1c1c1e21}.lesson-custom-play:hover{transform:translateY(-1px)}.lesson-custom-timeline{gap:8px;min-width:0;padding-top:10px;display:grid}.lesson-player-range{appearance:none;background:0 0;width:100%;height:14px;margin:0}.lesson-player-range::-webkit-slider-runnable-track{border-radius:var(--pill);background:linear-gradient(90deg, #f07a3f 0%, #e7378d 52%, #3548f5 100%) 0 / var(--player-progress,0%) 100% no-repeat, var(--line-2);height:7px}.lesson-player-range::-webkit-slider-thumb{background:var(--accent);appearance:none;border:3px solid #fff;border-radius:50%;width:17px;height:17px;margin-top:-5px;box-shadow:0 4px 10px #1c1c1e29}.lesson-player-times{color:var(--muted);justify-content:space-between;align-items:center;font-size:12px;font-weight:800;display:flex}.lesson-native-audio{display:none}.lesson-audio-empty{border:1px dashed var(--line);border-radius:var(--radius-sm);min-height:38px;color:var(--muted);align-items:center;padding:0 12px;font-size:13px;font-weight:700;display:flex}.lesson-transcript-list{gap:10px;display:grid}.lesson-transcript-list p{border:1px solid var(--line-2);border-radius:var(--radius-sm);color:var(--ink-2);background:#fff;margin:0;padding:12px 14px;font-size:14px;line-height:1.5}.lesson-detail-grid{grid-template-columns:minmax(520px,1.15fr) minmax(380px,.85fr);align-items:start;gap:16px;display:grid}.lesson-detail-main,.lesson-detail-side{gap:16px;display:grid}.lesson-panel{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft);gap:18px;padding:24px;display:grid}.lesson-panel h2{color:var(--ink);margin:0;font-size:21px;line-height:1.15}.lesson-panel-meta{color:var(--muted);font-size:13px;font-weight:800}.lesson-info-list{gap:16px;margin:0;display:grid}.lesson-info-list div{grid-template-columns:170px minmax(0,1fr);gap:18px;display:grid}.lesson-info-list dt{color:var(--muted);font-size:13px;font-weight:700}.lesson-info-list dd{color:var(--ink-2);margin:0;font-size:14px;font-weight:700;line-height:1.55}.lesson-text{color:var(--muted);margin:0;font-size:15px;line-height:1.75}.lesson-chapter-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.lesson-chapter-list li{border:1px solid var(--line-2);border-radius:var(--radius-sm);background:linear-gradient(#fff 0%,#fbfaf7 100%);grid-template-columns:72px minmax(0,1fr);gap:14px;padding:12px;display:grid}.lesson-chapter-time{border-radius:var(--pill);background:var(--ink);color:#fff;letter-spacing:0;border:0;justify-content:center;align-items:center;width:72px;min-height:34px;font-size:13px;font-weight:800;display:inline-flex}.lesson-chapter-list strong{color:var(--ink-2);font-size:14px;font-weight:700;line-height:1.35;display:block}.lesson-chapter-list p{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.45}.lesson-ai-panel{min-height:0}.lesson-material-list{gap:10px;display:grid}.lesson-material-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.lesson-material-icon{border-radius:var(--radius-sm);background:var(--danger-soft);width:36px;height:36px;color:var(--danger);place-items:center;display:inline-grid}.lesson-material-icon.is-audio{background:var(--accent-soft);color:var(--accent)}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.settings-card{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft);gap:18px;padding:24px;display:grid}.settings-title{color:var(--ink);align-items:center;gap:8px;font-size:18px;font-weight:800;display:inline-flex}.settings-title svg{color:var(--accent)}.settings-list{gap:12px;display:grid}.settings-list div{border-bottom:1px solid var(--line-2);min-height:42px;color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:14px;font-weight:700;display:flex}.settings-list div:last-child{border-bottom:0}.settings-list strong{min-width:0;color:var(--ink);text-align:right;align-items:center;gap:6px;font-weight:800;display:inline-flex}.quota-meter{border-radius:var(--pill);background:var(--line-2);height:10px;overflow:hidden}.quota-meter span{border-radius:inherit;background:linear-gradient(90deg,#f07a3f 0%,#e7378d 48%,#3548f5 100%);height:100%;display:block}.settings-field{color:var(--ink);gap:8px;font-size:14px;font-weight:800;display:grid}.settings-field select{border:1px solid var(--line);border-radius:var(--radius-sm);min-height:44px;color:var(--ink);font:inherit;background:#fff;padding:0 12px}.settings-hint{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.lesson-material-row strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.3;display:block;overflow:hidden}.lesson-material-row p{color:var(--muted);margin:2px 0 0;font-size:13px;line-height:1.3}.desktop-open-status{border-radius:var(--pill);width:fit-content;max-width:100%;color:var(--muted);background:#fbfaf7;border:1px solid #e6e2d8eb;margin:-10px 0 0;padding:10px 16px;font-size:14px;font-weight:600}@media (max-width:1080px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.student-overview-grid,.lesson-detail-grid,.student-profile-panel{grid-template-columns:1fr}.student-notes-panel{min-height:auto}}@media (max-width:900px){.app-shell,.app-shell.is-sidebar-collapsed{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line-2);gap:14px;height:auto;padding:14px;position:static}.app-shell.is-sidebar-collapsed .sidebar{gap:14px;padding:14px}.app-shell.is-sidebar-collapsed .sidebar-head{justify-content:space-between}.app-shell.is-sidebar-collapsed .brand{display:flex}.sidebar-nav{padding-bottom:4px;display:flex;overflow-x:auto}.sidebar-link{flex:none;width:auto}.app-shell.is-sidebar-collapsed .sidebar-link{justify-content:flex-start;gap:12px;padding:0 12px}.app-shell.is-sidebar-collapsed .sidebar-link span{font-size:inherit}.sidebar-footer{margin-top:0}.app-shell.is-sidebar-collapsed .sidebar-profile{justify-items:stretch}.app-shell.is-sidebar-collapsed .sidebar-profile-trigger{border-color:var(--line);background:#fff;justify-content:flex-start;width:100%;min-height:54px;padding:6px 10px 6px 6px;box-shadow:0 8px 18px #1c1c1e0a}.app-shell.is-sidebar-collapsed .sidebar-profile .profile-copy{display:grid}.app-shell.is-sidebar-collapsed .sidebar-profile .profile-chevron{display:block}.app-shell.is-sidebar-collapsed .sidebar-profile-menu{width:100%;position:static}}@media (max-width:720px){h1{font-size:40px}.dashboard-panel h1{font-size:36px}.session-box{flex-direction:column;align-items:flex-start}.content{padding:20px 14px}.topbar{gap:10px}.profile-copy,.profile-chip svg{display:none}.profile-chip{min-height:46px;padding:4px}.page-header{flex-direction:column;align-items:stretch}.page-header h1{font-size:34px}.page-header-actions,.page-header-actions .button{width:100%}.stats-row{grid-template-columns:1fr}.toolbar{flex-direction:column;align-items:stretch}.table-search,.filters,.filters .button,.select-field{width:100%}.select-field{justify-content:space-between}.tabs-row{overflow-x:auto}.table-footer,.student-page-head,.lesson-page-head,.panel-title-row{flex-direction:column;align-items:flex-start}.student-page-head .button,.panel-title-row .button{width:100%}.lesson-head-actions{justify-content:flex-start;width:100%}.lesson-title-row h1{font-size:34px}.lesson-meta-row{flex-direction:column;align-items:flex-start;gap:8px}.lesson-panel{padding:20px}.lesson-info-list div,.lesson-player-panel{grid-template-columns:1fr}.lesson-player-panel .row-action{justify-self:start}.lesson-player-topline,.lesson-player-meta{flex-direction:column;align-items:flex-start;gap:6px}.lesson-player-topline span{white-space:normal}.lesson-chapter-list li,.lesson-planner-grid{grid-template-columns:1fr}.lesson-planner-actions{flex-direction:column-reverse}.lesson-planner-actions .button{width:100%}.lesson-chapter-time{width:fit-content;padding:0 12px}.student-profile-panel{padding:20px}.student-profile-main{flex-direction:column}.student-profile-title h1{font-size:28px}.student-meta-grid div{grid-template-columns:1fr;gap:4px}.ai-overview-card,.student-lessons-panel{padding:20px}}.download-page{background:var(--bg);min-height:100vh;color:var(--ink);padding:28px clamp(20px,4vw,56px) 56px}.download-nav{max-width:var(--maxw);justify-content:space-between;align-items:center;gap:20px;margin:0 auto;display:flex}.download-back-link{color:var(--muted);align-items:center;gap:8px;font-size:14px;font-weight:650;text-decoration:none;display:inline-flex}.download-hero{text-align:center;max-width:760px;margin:92px auto 42px}.download-hero h1{letter-spacing:0;margin:10px 0 16px;font-size:clamp(44px,7vw,86px);line-height:.98}.download-hero p{max-width:680px;color:var(--muted);margin:0 auto;font-size:19px;line-height:1.5}.download-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:900px;margin:0 auto;display:grid}.download-card,.download-note{border:1px solid var(--line);background:linear-gradient(#fff 0%,#fbfaf7 100%);border-radius:28px;box-shadow:0 18px 44px #1c1c1e0f}.download-card{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:18px;padding:26px;display:grid}.download-card .button{grid-column:1/-1;width:100%}.download-card-icon{background:var(--bg-soft);width:52px;height:52px;color:var(--ink);border-radius:18px;justify-content:center;align-items:center;display:inline-flex}.download-card h2{margin:0 0 8px;font-size:24px;line-height:1.1}.download-card p,.download-note p{color:var(--muted);margin:0;font-size:15px;line-height:1.5}.download-note{justify-content:space-between;align-items:center;gap:20px;max-width:900px;margin:18px auto 0;padding:22px 24px;display:flex}.download-note strong{margin-bottom:4px;font-size:17px;display:block}@media (max-width:760px){.download-nav,.download-note{flex-direction:column;align-items:flex-start}.download-hero{text-align:left;margin-top:54px}.download-grid{grid-template-columns:1fr}}
