:root{--brand-gold: #f86800;--brand-gold-strong: #b34700;--brand-gold-soft: #fff0e5;--brand-ink: #041533;--fg-navy: #041533;--fg-primary: #f86800;--fg-primary-dark: #b34700;--fg-violet: #b34700;--fg-teal: #e85d00;--fg-teal-bright: #f86800;--fg-green: #0a2a4f;--fg-aqua: #ffb27a;--sidebar-bg: #f1f5f9;--sidebar-hover: #e2e8f0;--sidebar-text: #334155;--sidebar-muted: #64748b;--page-bg: #f0f2f5;--card-bg: #ffffff;--card-border: #d9d9d9;--row-border: #f0f0f0;--text: #222222;--text-body: #334155;--text-muted: #64748b;--text-soft: #5b6574;--radius: 7px;--shadow-pop: 0 6px 16px rgba(0, 0, 0, .12)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Inter,sans-serif;font-size:14px;line-height:22px;color:var(--text);background:#fff;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}a{color:inherit;text-decoration:none}ul,ol{margin:0;padding:0;list-style:none}img,svg{display:block}h1,h2,h3,h4,p{margin:0}.app{display:flex;height:100vh;overflow:hidden;background:#fff}.app-main{display:flex;flex:1;flex-direction:column;min-width:0;background:var(--page-bg)}.page-scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:24px 31px 10px 25px}.sidebar{display:flex;flex:0 0 240px;flex-direction:column;width:240px;overflow:hidden;background:var(--sidebar-bg);box-shadow:inset -1px 0 #dadada;-webkit-user-select:none;user-select:none;transition:flex-basis .18s ease,width .18s ease}.sidebar.collapsed{flex-basis:64px;width:64px}.sidebar-head{display:flex;flex:0 0 56px;align-items:center;gap:4px;padding:0 12px;overflow:hidden}.sidebar-logo{flex:1;min-width:0;overflow:hidden}.sidebar-logo img{width:118px;height:auto}.sidebar.collapsed .sidebar-logo{display:none}.sidebar-collapse{display:flex;flex:0 0 36px;align-items:center;justify-content:center;width:36px;height:36px;margin-left:auto;color:var(--sidebar-text);border-radius:6px;transition:background .15s ease}.sidebar-collapse:hover{background:var(--sidebar-hover)}.sidebar-nav{flex:1;min-height:0;padding:8px;overflow-x:hidden;overflow-y:auto}.sidebar-nav ul{display:flex;flex-direction:column;gap:4px}.sidebar-section{margin-bottom:8px}.sidebar-section-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:30px;padding:0 12px;font-size:12px;font-weight:500;line-height:16px;color:var(--sidebar-muted);border-radius:6px;transition:background .15s ease}.sidebar-section-toggle:hover{background:var(--sidebar-hover)}.sidebar-section-toggle .chevron{transition:transform .2s ease}.sidebar-section-toggle.closed .chevron{transform:rotate(-90deg)}.sidebar-section-items{display:grid;grid-template-rows:1fr;transition:grid-template-rows .2s ease}.sidebar-section-items.closed{grid-template-rows:0fr}.sidebar-section-items>div{overflow:hidden}.sidebar-section-items ul{gap:4px;padding-top:4px}.sidebar-link{position:relative;display:flex;align-items:center;gap:8px;width:100%;height:32px;padding:0 12px;color:var(--sidebar-text);border-radius:6px;transition:background .15s ease,color .15s ease}.sidebar-link:hover{background:var(--sidebar-hover)}.sidebar-link .label{flex:1;min-width:0;overflow:hidden;font-size:14px;line-height:21px;text-align:left;text-overflow:ellipsis;white-space:nowrap;padding-bottom:2px}.sidebar-link.active{color:var(--brand-ink);background:var(--brand-gold)}.sidebar-link.active .label{font-weight:700}.sidebar-link.disabled{color:var(--sidebar-text);cursor:default;opacity:.4;pointer-events:none}.sidebar-badge{flex:0 0 auto;padding:2px 8px;font-size:11px;line-height:16px;border-radius:12px}.sidebar-badge.new{color:#041533;background:#fff0e5}.sidebar-badge.soon{color:#475569;background:#cbd5e1}.sidebar.collapsed .sidebar-link{justify-content:center;padding:0}.sidebar.collapsed .sidebar-link .label,.sidebar.collapsed .sidebar-badge,.sidebar.collapsed .sidebar-section-toggle span:first-child,.sidebar.collapsed .sidebar-section-toggle .chevron{display:none}.sidebar.collapsed .sidebar-section-toggle{justify-content:center;padding:0}.sidebar.collapsed .sidebar-section-toggle:after{content:"";width:18px;height:1px;background:#cbd5e1}.sidebar-footer{display:flex;align-items:center;padding:12px 16px 16px}.sidebar-avatar{width:40px;height:40px;overflow:hidden;border-radius:50%;background:#fff;box-shadow:0 0 0 2px #fff}.sidebar-avatar img{width:100%;height:100%;object-fit:cover}.topbar{display:flex;flex:0 0 56px;align-items:center;justify-content:space-between;height:56px;padding:0 16px 0 25px;background:#fff}.topbar-title{display:flex;align-items:center;gap:12px;min-width:0}.topbar-title svg{flex:0 0 auto;color:var(--fg-navy)}.topbar-title h1{font-size:18px;font-weight:700;line-height:24px;color:var(--fg-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-right{display:flex;align-items:center;gap:12px}.topbar-divider{width:1px;height:24px;background:#dadada}.whats-new{display:flex;align-items:center;gap:8px;height:36px;padding:0 6px;font-size:14px;color:var(--text);border-radius:6px}.whats-new:hover{background:#f5f5f5}.whats-new .badge{display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;font-size:11px;font-weight:600;color:#fff;background:#e2273a;border-radius:9px}.user-menu{position:relative}.user-trigger{display:flex;align-items:center;gap:6px;padding:4px;border-radius:6px}.user-trigger:hover{background:#f5f5f5}.user-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:#5b6574;background:#f0f0f0;border-radius:50%}.user-chevron{color:#5b6574;transition:transform .15s ease}.user-menu.open .user-chevron{transform:rotate(180deg)}.dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:60;min-width:210px;padding:6px;background:#fff;border:1px solid #f0f0f0;border-radius:8px;box-shadow:var(--shadow-pop)}.dropdown.left{right:auto;left:0}.dropdown-item{display:flex;align-items:center;gap:10px;width:100%;height:36px;padding:0 10px;font-size:14px;color:var(--text);text-align:left;border-radius:6px}.dropdown-item:hover{background:#f5f5f5}.dropdown-item.selected{color:var(--fg-primary);font-weight:600}.dropdown-sep{height:1px;margin:6px 0;background:#f0f0f0}.page{max-width:100%}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:35px 0 5px}.section-head:first-child{margin-top:0}.section-title{font-size:16px;font-weight:700;line-height:20px}.section-title.small{font-size:14px}.banner{position:relative;height:200px;overflow:hidden;background:var(--brand-gold);border-radius:var(--radius)}.banner-track{display:flex;height:100%;transition:transform .45s cubic-bezier(.4,0,.2,1)}.banner-slide{flex:0 0 100%;filter:brightness(1.16) saturate(1.05);width:100%;height:100%;background-repeat:no-repeat;background-position:center;background-size:cover}.banner-arrow{position:absolute;top:50%;z-index:3;display:flex;align-items:center;justify-content:center;width:36px;height:36px;color:#1f2937;background:#ffffffeb;border-radius:50%;box-shadow:0 1px 4px #0000001f;transform:translateY(-50%);transition:background .15s ease}.banner-arrow:hover{background:#fff}.banner-arrow.prev{left:16px}.banner-arrow.next{right:16px}.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.kpi-card{display:flex;flex-direction:column;min-height:128px;padding:17px 20px 12px;background:#fff;border:1px solid var(--card-border);border-radius:var(--radius)}.kpi-title{font-size:14px;font-weight:700;line-height:18px}.kpi-value-row{display:flex;align-items:center;gap:8px;margin-top:10px}.kpi-icon{display:flex;flex:0 0 30px;align-items:center;justify-content:center;width:30px;height:30px;color:#475569;background:#f1f5f9;border-radius:4px}.kpi-value{font-size:28px;font-weight:700;line-height:28px;color:#222}.kpi-suffix{margin-left:6px;font-size:22px;font-weight:700;line-height:22px}.kpi-link{margin-top:21px;padding-top:0;font-size:14px;line-height:20px;color:var(--fg-navy);text-decoration:underline;width:fit-content}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius)}.card-body{padding:16px}.card-title{font-size:14px;font-weight:700;line-height:22px}.charts-grid{display:grid;grid-template-columns:655fr 921fr;gap:8px;margin-top:17px}.chart-card{min-height:326px}.chart-card .card-body{display:flex;flex-direction:column;gap:10px;height:100%}.donut-wrap{display:flex;align-items:center;gap:0;padding:8px 4px 0}.donut{position:relative;flex:0 0 232px;margin-left:74px;margin-top:-2px;width:244px;height:244px}.donut svg{width:100%;height:100%}.donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.donut-center strong{font-size:24px;font-weight:700;line-height:30px}.donut-center span{font-size:14px;color:#555}.donut-legend{display:flex;flex-direction:column;gap:6px;max-width:220px;margin-left:auto;margin-right:27px;font-size:13px;color:#444}.legend-item{display:flex;align-items:flex-start;gap:8px;max-width:300px}.legend-dot{flex:0 0 10px;width:10px;height:10px;margin-top:4px;border-radius:50%}.bars{display:flex;flex:0 0 auto;flex-direction:column;min-height:220px;height:220px;margin-top:26px;padding-top:0}.bars-plot{position:relative;flex:1;margin-left:117px;margin-right:79px;border-left:0}.bars-grid{position:absolute;top:0;right:0;bottom:0;left:0}.bars-gridline{position:absolute;left:0;right:0;border-top:1px dashed #e6e6e6}.bars-gridline span{position:absolute;top:-8px;left:-34px;width:30px;font-size:11px;color:#5b6574;text-align:right}.bars-axis-title{position:absolute;top:50%;left:-105px;font-size:11px;color:#5b6574;transform:rotate(-90deg) translate(-50%);transform-origin:left center}.bars-columns{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:space-around;gap:8px}.bar-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;width:100%}.bar{width:74px;max-width:74px;background:var(--fg-teal);border-radius:2px 2px 0 0;transition:height .4s ease}.bar-labels{display:flex;justify-content:space-around;gap:8px;margin-left:117px;margin-right:79px;padding-top:10px}.bar-labels span{flex:1;font-size:11px;color:#5b6574;text-align:center}.dashboard-bottom{display:grid;grid-template-columns:348fr 1228fr;gap:8px;margin-top:8px;align-items:start}.action-cards{display:flex;flex-direction:column;gap:8px}.action-card{padding:16px}.action-card img{width:100%;height:148px;object-fit:contain}.action-card .btn{margin-top:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:38px;padding:0 14px;font-size:14px;font-weight:500;border:1px solid transparent;border-radius:var(--radius);transition:filter .15s ease,background .15s ease}.btn:hover{filter:brightness(1.08)}.btn-block{width:100%}.btn-primary{color:var(--brand-ink);background:var(--brand-gold);border-color:var(--brand-gold);font-weight:600}.btn-outline{color:#222;background:#fff;border-color:var(--card-border)}.btn-sm{height:32px;padding:0 10px;font-size:14px}.notif-card{min-height:100%}.notif-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--row-border)}.notif-row:last-child{border-bottom:0}.notif-avatar{display:flex;flex:0 0 36px;align-items:center;justify-content:center;width:36px;height:36px;margin-right:12px;color:#b34700;background:#fff0e5;border-radius:50%}.notif-main{display:flex;flex:1;min-width:0;gap:8px}.notif-content{min-width:0}.notif-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.notif-name{font-size:14px;font-weight:500;color:var(--fg-navy);text-decoration:underline}.notif-date{font-size:12px;color:#636363}.notif-msg{display:flex;align-items:flex-start;gap:8px;margin-top:2px;font-size:14px;line-height:20px;color:var(--text-soft)}.notif-msg svg{flex:0 0 auto;margin-top:3px}.notif-actions{display:flex;flex:0 0 auto;align-items:center}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding-top:12px;font-size:13px;color:#555}.pagination .total{margin-right:6px}.page-btn{display:flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 6px;font-size:13px;border:1px solid #d9d9d9;border-radius:6px;background:#fff}.page-btn:hover{border-color:#b34700;color:#041533}.page-btn.active{color:#041533;border-color:#b34700;font-weight:600}.page-btn:disabled{color:silver;cursor:default}.table-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:16px;border-bottom:1px solid var(--row-border)}.search-input{flex:1 1 320px;min-width:220px;height:36px;padding:0 12px;font:inherit;color:var(--text);background:#fff;border:1px solid #d9d9d9;border-radius:6px;outline:none}.search-input:focus{border-color:var(--fg-primary);box-shadow:0 0 0 2px #f8680047}.toolbar-spacer{flex:1}.table-scroll{overflow-x:auto}table.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th{padding:12px 16px;font-size:13px;font-weight:600;color:#555;text-align:left;white-space:nowrap;background:#fafafa;border-bottom:1px solid var(--row-border)}.data-table td{padding:12px 16px;vertical-align:middle;border-bottom:1px solid var(--row-border)}.data-table tr:last-child td{border-bottom:0}.student-cell{display:flex;align-items:center;gap:10px;min-width:280px}.student-avatar{display:flex;flex:0 0 32px;align-items:center;justify-content:center;width:32px;height:32px;color:#5b6574;background:#f5f5f5;border-radius:50%}.student-name{display:flex;align-items:center;gap:8px;font-weight:500;line-height:18px}.student-email{font-size:12px;color:#5b6574;line-height:16px}.tag{display:inline-flex;align-items:center;padding:0 7px;font-size:11px;line-height:18px;border-radius:4px}.tag.enabled{color:#1f6b06;background:#f6ffed;border:1px solid #b7eb8f}.tag.disabled,.tag.quality-bad{color:#cf1322;background:#fff1f0;border:1px solid #ffa39e}.course-pill{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:26px;padding:0 8px;font-size:12px;font-weight:600;color:#fff;background:#11a97a;border-radius:4px}.course-pill.pre{background:#16a3a3}.course-pill.blue{background:#2d6cdf}.progress-ring{position:relative;width:34px;height:34px}.progress-ring span{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:600;color:#444}.progress-meta{font-size:12px;color:#5b6574;line-height:16px}.weekly-dots{display:flex;gap:4px}.weekly-dots i{display:block;width:9px;height:9px;background:#e2273a;border-radius:50%}.row-actions{position:relative}.empty-page{display:flex;min-height:420px;align-items:center;justify-content:center}.empty-box{max-width:520px;padding:40px;text-align:center}.empty-box h2{font-size:18px;font-weight:700;margin-bottom:8px}.empty-box p{color:var(--text-muted)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#00000073;animation:fadeIn .15s ease}.drawer{position:fixed;top:0;right:0;bottom:0;z-index:100;display:flex;flex-direction:column;width:440px;max-width:100%;background:#fff;box-shadow:-8px 0 24px #00000029;animation:slideIn .2s ease}.drawer-head{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 16px;color:#fff;background:#334155}.drawer-head h2{font-size:16px;font-weight:600}.drawer-body{flex:1;overflow-y:auto;padding:16px}.news-card{padding:12px;border:1px solid #eee;border-radius:8px}.news-tag{display:inline-flex;padding:1px 7px;font-size:11px;font-weight:600;color:#fff;background:#e2273a;border-radius:9px}.news-date{margin-left:8px;font-size:12px;color:#5b6574}.news-title{margin-top:8px;font-size:16px;font-weight:700;line-height:22px;color:var(--fg-primary)}.news-image{margin:10px 0;border-radius:6px;overflow:hidden}.news-image img{width:100%}.news-card p{font-size:13px;line-height:20px;color:#444;margin-bottom:8px}.news-card ul{padding-left:18px;list-style:disc;font-size:13px;line-height:20px;color:#444}.modal{position:fixed;top:50%;left:50%;z-index:110;width:660px;max-width:calc(100vw - 32px);padding:24px;background:#fff;border-radius:8px;box-shadow:0 12px 40px #0003;transform:translate(-50%,-50%);animation:popIn .16s ease}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.modal-head h2{font-size:18px;font-weight:700}.modal-close{display:flex;align-items:center;justify-content:center;width:30px;height:30px;color:#555;border-radius:6px}.modal-close:hover{background:#f5f5f5}.modal p{font-size:15px;line-height:24px;color:#333}.modal-actions{display:flex;justify-content:center;margin-top:24px}@media(max-width:1500px){.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1200px){.charts-grid,.dashboard-bottom{grid-template-columns:minmax(0,1fr)}.donut-wrap{justify-content:center}}@media(max-width:900px){.sidebar{position:fixed;z-index:80;height:100%;transform:translate(-100%);transition:transform .18s ease}.sidebar.mobile-open{transform:translate(0)}.page-scroll{padding:16px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.whats-new span.label{display:none}}@media(max-width:640px){.kpi-grid{grid-template-columns:minmax(0,1fr)}.topbar-title h1{font-size:16px}.banner{height:150px}.notif-row{flex-direction:column}.notif-actions{padding-left:56px}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes popIn{0%{opacity:0;transform:translate(-50%,-48%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.mobile-menu-btn{display:none;align-items:center;justify-content:center;width:36px;height:36px;margin-right:4px;border-radius:6px}.mobile-menu-btn:hover{background:#f5f5f5}.dropdown-user{display:flex;flex-direction:column;gap:2px;padding:8px 10px 6px}.dropdown-user strong{font-size:14px;font-weight:600}.dropdown-user span{font-size:12px;color:#5b6574}.dropdown-item.danger{color:#cf1322}.drawer-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:#fff;border-radius:6px}.drawer-close:hover{background:#ffffff1f}.range-picker{position:relative}.range-picker .dropdown{min-width:190px}.toolbar-popover{position:relative}.toolbar-popover .dropdown{top:calc(100% + 6px)}.search-input{flex:0 1 44%}.course-cell{display:flex;align-items:center;gap:10px}.course-meta{display:flex;flex-direction:column;line-height:15px}.course-label{font-size:12px;font-weight:500;color:#444}.course-value{font-size:12px;color:#5b6574}.course-cell .progress-ring span{font-size:9px;color:#444}.weekly{display:flex;flex-direction:column;gap:3px;font-size:12px;line-height:15px;color:#444;white-space:nowrap}.weekly small{font-size:12px;color:#5b6574}.weekly-dots{display:flex;gap:4px;margin-top:2px}.weekly-dots i{width:9px;height:9px;background:#e2273a;border-radius:50%}.weekly-dots i.off{background:#f0f0f0}.last-seen{color:#555;white-space:nowrap}.btn-green{color:var(--brand-ink);background:var(--brand-gold);border-color:var(--brand-gold)}.btn-green:hover{background:var(--brand-gold-strong)}.check-col{width:44px;padding-right:0!important}.student-phone{color:#5b6574}.table-footer{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding:12px 16px;font-size:13px;color:#555}.table-footer .total{margin-right:6px}.row-actions{position:relative;white-space:nowrap}.row-actions .dropdown{top:calc(100% + 6px)}.students-table th,.students-table td{padding-top:10px;padding-bottom:10px}.dashboard-head{margin-top:32px;margin-bottom:15px}@media(max-width:900px){.mobile-menu-btn{display:flex}.topbar{padding-left:12px}}.table-card{margin-top:16px}.table-toolbar .btn{height:36px}.students-table th,.students-table td{padding:8px 16px}.students-table th:nth-child(1),.students-table td:nth-child(1){width:44px}.students-table th:nth-child(2),.students-table td:nth-child(2){width:23.4%}.students-table th:nth-child(3),.students-table td:nth-child(3){width:12%}.students-table th:nth-child(4),.students-table td:nth-child(4){width:12.4%}.students-table th:nth-child(5),.students-table td:nth-child(5){width:15.1%}.students-table th:nth-child(6),.students-table td:nth-child(6){width:11.9%}.students-table th:nth-child(7),.students-table td:nth-child(7){width:22.2%}.students-table .progress-ring,.students-table .progress-ring svg{width:40px;height:40px}.students-table .progress-ring span{font-size:10px}.topbar-heading{display:flex;flex-direction:column;justify-content:center;gap:1px;min-width:0}.topbar-heading span{font-size:12px;line-height:15px;color:#5b6574;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tabs{display:flex;align-items:stretch;gap:28px}.tabs-underline{height:46px;border-bottom:1px solid #e8e8e8}.tabs-underline .tab{position:relative;padding:0 2px;font-size:14px;color:#555}.tabs-underline .tab.active{font-weight:600;color:#222}.tabs-underline .tab.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--brand-gold-strong)}.tabs-pills{gap:6px;padding:4px;background:#f1f5f9;border-radius:8px;width:fit-content}.tabs-pills .tab{display:flex;align-items:center;gap:8px;height:30px;padding:0 14px;font-size:13px;font-weight:500;color:#475569;border-radius:6px}.tabs-pills .tab.active{color:var(--brand-ink);background:var(--brand-gold);font-weight:600}.tab-badge{padding:1px 6px;font-size:9px;font-weight:700;letter-spacing:.03em;color:#041533;background:#fff0e5;border-radius:4px}.tabs-pills .tab.active .tab-badge{color:var(--brand-ink);background:#2b22001f}.tabs-bar{margin-bottom:16px}.select-box{position:relative;min-width:120px}.select-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;height:32px;padding:0 10px;font-size:13px;color:#222;background:#fff;border:1px solid #d9d9d9;border-radius:6px}.select-trigger:hover{border-color:#9ca3af}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px}.empty-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:12px;color:#64748b;background:#f1f5f9;border-radius:50%}.empty-state h3{font-size:14px;font-weight:600;line-height:20px}.empty-state p{margin-top:4px;font-size:13px;color:#5b6574}.empty-action{margin-top:14px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;color:#555;border-radius:6px}.icon-btn:hover{background:#f5f5f5}.btn-violet{color:var(--brand-ink);background:var(--brand-gold);border-color:var(--brand-gold);font-weight:600}.groups-card{display:grid;grid-template-columns:420px 1fr;align-items:center;gap:32px;min-height:330px;padding:32px 48px}.groups-illustration img{width:100%;max-width:360px}.groups-copy h2{font-size:18px;font-weight:700;line-height:26px}.groups-copy p{margin-top:14px;font-size:14px;line-height:22px;color:#333}.groups-copy .btn{margin-top:20px}.certificates-card{display:grid;grid-template-columns:520px 1fr;align-items:center;gap:40px;min-height:405px;padding:32px 48px}.certificates-media{position:relative;display:flex;align-items:center;justify-content:center}.certificates-circle{position:absolute;width:340px;height:340px;background:#e7f7f1;border-radius:50%}.certificates-media img{position:relative;width:100%;max-width:440px}.certificates-copy h2{font-size:18px;font-weight:700;line-height:26px}.certificates-copy p{margin-top:12px;font-size:14px;line-height:22px;color:#333}.certificates-copy a{color:var(--fg-navy);text-decoration:underline}.certificates-copy .btn{margin-top:16px}.library-empty{display:flex;min-height:420px;align-items:flex-start;justify-content:center;padding-top:100px}.courses-section{margin-top:8px;margin-bottom:26px}.courses-label{display:block;margin-bottom:10px;font-size:13px;color:#4b5563}.level-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px;max-width:1200px}.level-grid.kids{max-width:350px}.level-card{display:flex;align-items:center;justify-content:space-between;height:94px;padding:0 20px;background:#fff;border:1px solid #ececec;border-radius:4px;transition:box-shadow .15s ease,transform .15s ease}.level-card:hover{box-shadow:0 4px 14px #00000014;transform:translateY(-1px)}.level-circle{display:flex;align-items:center;justify-content:center;width:58px;height:58px;font-size:17px;font-weight:700;color:var(--brand-ink);border-radius:50%}.level-card svg{color:#9ca3af}.messages-page .btn-primary{align-self:flex-start;margin-bottom:16px}.messages-card{display:grid;grid-template-columns:33% 67%;min-height:450px}.messages-sidebar{border-right:1px solid #ececec}.messages-search{position:relative;padding:16px}.messages-search input{width:100%;height:34px;padding:0 34px 0 10px;font:inherit;font-size:13px;border:1px solid #d9d9d9;border-radius:4px;outline:none}.messages-search svg{position:absolute;top:25px;right:26px;color:#555}.messages-empty-side{padding-top:80px}.messages-content{display:flex;align-items:center;justify-content:center;color:#334155}.messages-empty-main .empty-icon{width:auto;height:auto;color:#cbd5e1;background:transparent}.ranking-filter label{display:block;margin-bottom:6px;font-size:13px;color:#444}.ranking-card{margin-top:16px;padding:16px}.ranking-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}.ranking-head-actions{display:flex;align-items:center;gap:10px}.achievement-list{display:flex;flex-direction:column;gap:12px}.achievement-row{display:flex;align-items:center;gap:14px;padding:8px 0}.achievement-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.achievement-name{font-size:13px;color:#333}.achievement-copy strong{font-size:14px;font-weight:600}.achievement-tags{display:flex;gap:6px;margin-top:4px}.mini-tag{padding:1px 8px;font-size:10px;border-radius:9px}.mini-tag.purple{color:#041533;background:#fff0e5}.go-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:9px;font-weight:700;color:#fff;background:#15803d;border-radius:50%}.ranking-table th:nth-child(2),.ranking-table td:nth-child(2){text-align:center}.ranking-table th:nth-child(3),.ranking-table td:nth-child(3),.ranking-table th:nth-child(4),.ranking-table td:nth-child(4),.ranking-table th:nth-child(5),.ranking-table td:nth-child(5){text-align:center}.placement-link-card{padding:16px}.placement-link-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.placement-link-head .card-title{margin-right:8px}.placement-link-actions{display:flex;gap:8px}.placement-url{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:13px;color:var(--fg-navy);text-decoration:underline}.placement-link-card p{margin-top:6px;font-size:13px;color:#555}.placement-filters{display:flex;align-items:center;gap:10px;margin:16px 0}.placement-filters .search-input{flex:0 1 300px;height:32px;font-size:13px}.date-range{position:relative;display:flex;align-items:center;gap:8px;height:32px;padding:0 30px 0 10px;background:#fff;border:1px solid #d9d9d9;border-radius:4px}.date-range input{width:92px;font:inherit;font-size:13px;border:0;outline:none;color:#666}.date-range svg{position:absolute;right:8px;color:#888}.placement-filters .btn{height:32px}.placement-table-card{border-radius:6px}.placement-table th,.placement-table td{padding:10px 16px;font-size:13px}.tag.prospect{color:#8f4200;background:#fff7e6;border:1px solid #ffd591}.exam-level{display:grid;grid-template-columns:auto auto;gap:0 8px;font-size:11px;line-height:16px;color:#666}.exam-level strong{font-size:12px;font-weight:600;color:#222}.skills-search{position:relative;margin-bottom:14px}.skills-search svg{position:absolute;top:11px;left:12px;color:#888}.skills-search input{width:100%;height:36px;padding:0 12px 0 36px;font:inherit;font-size:13px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;outline:none}.skills-list{display:flex;flex-direction:column;gap:10px}.skills-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px}.skills-item h3{font-size:14px;font-weight:600;line-height:20px}.skills-item p{margin-top:4px;font-size:12px;line-height:18px;color:#5b6574}.skills-menu-wrap{position:relative}.sa-hero{display:grid;grid-template-columns:minmax(0,1fr) 46%;align-items:center;gap:24px;min-height:360px;margin:-24px -31px 0 -25px;padding:24px 0 0 32px;overflow:hidden}.sa-hero-copy h1{font-size:24px;font-weight:700;line-height:32px;color:#111827}.sa-hero-copy>p{max-width:560px;margin-top:12px;font-size:14px;line-height:21px;color:#333}.sa-hero-copy h3{margin-top:26px;font-size:15px;font-weight:600}.store-list{max-width:540px;margin-top:10px}.store-row{display:flex;align-items:center;gap:12px;padding:10px 0}.store-icon{display:flex;flex:0 0 40px;align-items:center;justify-content:center;width:40px;height:40px;color:#1f2937;background:#fff;border:1px solid #eee;border-radius:50%}.store-copy{display:flex;flex:1;min-width:0;flex-direction:column}.store-copy strong{font-size:14px;font-weight:600}.store-copy span{font-size:12px;color:#5b6574}.sa-hero-media img{width:100%;max-height:380px;object-fit:contain;object-position:left center}.sa-tabs-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:18px;border-bottom:1px solid #e8e8e8}.sa-tabs-row .tabs{border-bottom:0}.sa-tabs-row .btn{margin-bottom:8px}.sa-levels{margin-top:20px}.sa-levels-label{display:block;margin-bottom:10px;font-size:13px;color:#4b5563}.level-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.level-pill{height:32px;padding:0 16px;font-size:12px;font-weight:600;background:#fff;border:1px solid;border-radius:16px}.sa-course-card{padding:0;overflow:hidden}.sa-course-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:18px 20px}.sa-duration{font-size:13px;color:#333}.sa-course-head p{max-width:860px;margin-top:10px;font-size:12px;line-height:19px;color:#555}.sa-course-actions{display:flex;flex-direction:column;gap:8px}.sa-modules{border-top:1px solid #eee}.sa-module{display:flex;align-items:stretch;justify-content:space-between;border-bottom:1px solid #eee;min-height:70px}.sa-module:last-child{border-bottom:0}.sa-module-head{display:flex;flex:1;align-items:center;gap:14px;padding:12px 20px;text-align:left}.sa-module-arrow{transition:transform .15s ease}.sa-module.open .sa-module-arrow{transform:rotate(90deg)}.sa-module-head span{display:block;font-size:12px;color:#5b6574}.sa-module-head strong{font-size:15px;font-weight:500}.sa-module-image{flex:0 0 100px;overflow:hidden}.sa-module-image img{width:100%;height:100%;object-fit:cover}.get-started-title{margin:24px 0 16px}.task-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.task-card{padding:16px}.task-card h3{font-size:14px;font-weight:700;margin-bottom:10px}.task-list{display:flex;flex-direction:column;gap:4px}.task-item{display:flex;align-items:flex-start;gap:10px;width:100%;padding:10px 6px;text-align:left;border-radius:6px}.task-item:hover{background:#f8fafc}.task-item.disabled{cursor:default;opacity:.85}.task-icon{flex:0 0 auto;color:#334155}.task-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}.task-copy strong{font-size:13px;font-weight:500;line-height:18px;color:#111827}.task-badge{width:fit-content;padding:1px 6px;font-size:10px;color:#475569;background:#e2e8f0;border-radius:3px}.task-badge.recommended{color:#041533;background:#fff0e5}.task-time{display:flex;align-items:center;gap:4px;font-size:11px;color:#5b6574}.task-end{flex:0 0 auto;color:#94a3b8}.task-arrow{font-size:18px;line-height:1}.task-check{color:#b34700}.journey-card{margin-top:8px;padding:18px 24px 24px}.journey-card h3{font-size:14px;font-weight:700;margin-bottom:18px}.journey-track{position:relative;display:flex;justify-content:space-between;gap:12px;padding:0 8px}.journey-track:before{content:"";position:absolute;top:14px;left:34px;right:34px;height:2px;background:#b34700}.journey-step{position:relative;z-index:1;display:flex;flex:1;flex-direction:column;align-items:center;gap:10px;text-align:center}.journey-dot{display:flex;align-items:center;justify-content:center;width:30px;height:30px;color:#b34700;background:#fff;border:2px solid #b34700;border-radius:50%}.journey-step.last .journey-dot{color:var(--brand-ink);background:var(--brand-gold);border-color:var(--brand-gold)}.journey-step span{font-size:12px;font-weight:500;color:#222}.planner-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:12px}.planner-nav{display:flex}.planner-range{margin:0 6px;font-size:14px;font-weight:500}.planner-toolbar-spacer{flex:1}.planner-card{overflow:hidden}.planner-scroll{height:720px;overflow-y:auto}.planner-grid{position:relative;display:grid;grid-template-columns:60px repeat(7,minmax(0,1fr));grid-template-rows:56px 1fr}.planner-time-head{grid-column:1;position:sticky;top:0;z-index:3;background:#fff;border-bottom:1px solid #eee}.planner-day-head{position:sticky;top:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#fff;border-bottom:1px solid #eee;border-left:1px solid #f1f1f1}.planner-day-head span{font-size:11px;color:#5b6574}.planner-day-head strong{font-size:15px;font-weight:600}.planner-day-head.today strong{color:var(--fg-navy)}.planner-times{grid-column:1;border-right:1px solid #f1f1f1}.planner-time{height:60px;padding-top:4px;padding-right:8px;font-size:11px;color:#5b6574;text-align:right}.planner-day-col{border-left:1px solid #f1f1f1}.planner-day-col.today{background:#fffbe6}.planner-cell{height:60px;border-bottom:1px solid #f1f1f1}.analytics-block-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.analytics-block-head h2{font-size:14px;font-weight:700;line-height:20px}.analytics-block-head p{font-size:12px;color:#5b6574}.goals-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.goal-card{display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 12px 10px;text-align:center}.goal-title{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600}.goal-sub{font-size:11px;color:#5b6574}.gauge{position:relative;margin:6px 0 2px}.gauge-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}.gauge-center strong{font-size:20px;font-weight:700;line-height:24px}.gauge-label{font-size:12px;color:#666}.goal-card .kpi-link{margin-top:2px;font-size:12px}.analytics-section-title{margin:24px 0 10px;font-size:14px;font-weight:700}.engagement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.analytics-card{padding:16px}.analytics-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.analytics-card-head .card-title{font-size:13px;line-height:18px}.analytics-card-head .card-title strong{font-weight:700}.mini-donut-wrap{display:flex;align-items:center;gap:18px;padding:18px 6px 10px}.mini-donut{position:relative;flex:0 0 auto}.mini-donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.mini-donut-center strong{font-size:18px;font-weight:700}.mini-donut-center span{font-size:11px;color:#666}.mini-legend{display:flex;flex-direction:column;gap:4px;font-size:11px;line-height:15px;color:#333}.mini-legend-item{display:flex;align-items:center;gap:6px}.mini-legend-item span{width:8px;height:8px;border-radius:50%}.improved-head{margin-top:24px}.improved-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.improved-card{min-height:200px;padding:16px}.segmented{display:flex;gap:6px}.segmented button{height:30px;padding:0 12px;font-size:12px;color:#555;background:#fff;border:1px solid #d9d9d9;border-radius:4px}.segmented button.active{color:#222;background:#f1f5f9;border-color:#cbd5e1;font-weight:500}.improved-empty{min-height:150px;opacity:.75}.improved-empty .empty-icon{background:transparent;color:#cbd5e1;width:auto;height:auto}.history-title{margin-top:24px}.history-card{margin-bottom:8px;padding:14px 16px 8px}.history-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.history-legend{display:flex;gap:16px;font-size:11px;color:#555}.history-legend span{display:flex;align-items:center;gap:6px}.history-legend i{width:8px;height:8px;border-radius:50%}.chart-frame{position:relative;padding:8px 0 0}.chart-area{position:relative;height:170px;margin-left:30px}.chart-svg{width:100%;height:100%;overflow:visible}.chart-labels{display:flex;justify-content:space-between;margin:4px 8px 0 34px;font-size:9px;color:#5b6574}.chart-labels span{width:30px;text-align:center;transform:rotate(-25deg);transform-origin:center}.chart-axis-title{position:absolute;font-size:10px;color:#5b6574}.chart-axis-title.left{left:-4px;top:45%;transform:rotate(-90deg)}.chart-axis-title.right{right:-10px;top:45%;transform:rotate(90deg)}@media(max-width:1400px){.goals-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.engagement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.level-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1100px){.groups-card,.certificates-card{grid-template-columns:1fr;padding:24px}.certificates-media{display:none}.task-columns,.improved-grid,.sa-hero{grid-template-columns:1fr}.sa-hero-media{display:none}.planner-toolbar{flex-wrap:wrap}}.task-item{padding:6px}.task-copy{gap:2px}.task-card{padding:14px 16px}.task-card h3{margin-bottom:6px}.goal-card{align-items:flex-start;text-align:left}.goal-card .gauge{align-self:center}.goal-card .kpi-link{align-self:flex-start;margin-left:2px}.planner-scroll{height:calc(100vh - 200px);min-height:560px}.student-app-page .sa-hero{background:#fff;padding-right:0}.student-app-page .sa-hero-media img{width:112%;max-height:430px;max-width:none}.student-app-page .sa-tabs-row{background:#fff;margin:0 -31px 0 -25px;padding:0 31px 0 25px}.student-app-page .sa-levels{margin-top:18px}.certificates-circle{display:none}.certificates-media img{max-width:460px}.certificates-copy{padding-left:8px}.level-grid{max-width:none}.level-grid.kids{max-width:470px}.level-circle{flex:0 0 58px}.groups-card{grid-template-columns:460px 1fr;gap:48px;margin-top:16px;min-height:420px}.groups-copy .btn{padding:0 22px}.achievement-list{gap:4px}.achievement-row{padding:2px 0}.ranking-card{padding:14px 16px}.library-empty{padding-top:60px}.chart-labels{position:relative;height:22px;margin:2px 8px 0 30px}.chart-labels span{position:absolute;top:2px;width:34px;font-size:9px;color:#5b6574;text-align:center;transform:translate(-50%);white-space:nowrap}.level-grid.kids{grid-template-columns:repeat(2,minmax(0,1fr));max-width:266px}.certificates-card{grid-template-columns:440px 1fr;gap:62px;padding:32px 40px}.certificates-media img{max-width:440px}.groups-card{min-height:500px}.groups-illustration img{max-width:400px}.modal{width:540px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid.single{grid-template-columns:1fr}.form-row{display:flex;flex-direction:column;gap:6px}.form-label{font-size:12px;color:#555}.form-input{width:100%;height:36px;padding:0 10px;font:inherit;font-size:13px;color:#222;background:#fff;border:1px solid #d9d9d9;border-radius:6px;outline:none}textarea.form-input{height:auto;padding:8px 10px;resize:vertical}.form-input:focus{border-color:var(--fg-primary);box-shadow:0 0 0 2px #f8680047}.form-error{margin-top:10px;font-size:12px;color:#cf1322}.modal-actions{justify-content:flex-end;gap:8px}.toast-stack{position:fixed;right:24px;bottom:24px;z-index:220;display:flex;flex-direction:column;gap:8px}.toast{padding:11px 16px;font-size:13px;color:#fff;background:var(--fg-navy);border-radius:8px;box-shadow:0 8px 24px #0000002e;animation:toastIn .18s ease}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.notif-name-btn{padding:0;font:inherit;font-size:14px;font-weight:500;color:var(--fg-navy);text-decoration:underline;background:none}.thread-list{display:flex;flex-direction:column}.thread-item{display:flex;flex-direction:column;gap:1px;padding:10px 16px;text-align:left;border-top:1px solid #f0f0f0}.thread-item:hover{background:#fafafa}.thread-item.active{background:#fff0e5}.thread-item strong{font-size:13px;font-weight:600}.thread-item span{font-size:11px;color:#5f6b7a}.thread-item small{font-size:10px;color:#5b6574}.thread-content{align-self:flex-start;width:100%;padding:24px}.thread-head{display:flex;align-items:center;gap:12px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #eee}.thread-head strong{display:block;font-size:14px}.thread-head span{font-size:12px;color:#5b6574}.thread-content p{font-size:14px;line-height:22px;color:#333;white-space:pre-wrap}.group-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.group-card{padding:16px}.group-card-head{display:flex;align-items:center;gap:12px}.group-card-head strong{display:block;font-size:14px}.group-card-head span{display:flex;align-items:center;gap:4px;font-size:12px;color:#5f6b7a}.group-card p{margin-top:10px;font-size:12px;line-height:18px;color:#666}.planner-cell{position:relative}.planner-event{position:absolute;top:2px;right:4px;bottom:2px;left:4px;display:flex;flex-direction:column;gap:1px;padding:4px 6px;overflow:hidden;font-size:10px;color:var(--brand-ink);text-align:left;background:var(--brand-gold);border-radius:4px}.planner-event.half{bottom:auto;height:28px}.planner-event strong{font-size:11px;font-weight:600}.planner-event span{opacity:.8}@media(max-width:1200px){.group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.form-grid,.group-grid{grid-template-columns:1fr}}.banner:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:#f86800;mix-blend-mode:color}.banner-arrow{z-index:4}:root{--brand-orange: #f86800;--brand-orange-strong: #b34700;--brand-orange-soft: #fff0e5}.sidebar{background:#041533;box-shadow:inset -1px 0 #0a2447}.sidebar-head{height:140px;align-items:center}.sidebar-logo img{width:160px}.sidebar.collapsed .sidebar-head{height:56px}.sidebar-collapse{color:#ffffffbf}.sidebar-collapse:hover{background:#ffffff14}.sidebar-section-toggle{color:#ffffff8c}.sidebar-section-toggle:hover{background:#ffffff14}.sidebar-link{color:#ffffffdb}.sidebar-link:hover{background:#ffffff14}.sidebar-link.active{color:#fff;background:var(--brand-orange-strong)}.sidebar-badge.new{color:#fff;background:#8f3800}.sidebar-badge.soon{color:#fff9;background:#ffffff1f}.sidebar-footer .sidebar-avatar{box-shadow:0 0 0 2px #041533}.btn-primary,.btn-violet,.btn-green{color:#fff;background:var(--brand-orange-strong);border-color:var(--brand-orange-strong)}.btn-primary:hover,.btn-violet:hover,.btn-green:hover{background:#bd4a00}.tabs-pills .tab.active{color:#fff;background:var(--brand-orange-strong)}.tabs-pills .tab.active .tab-badge{color:#fff;background:#ffffff2e}.planner-event{color:#fff;background:var(--brand-orange-strong)}.level-circle{color:#fff}.notif-name-btn{color:#041533}.sidebar-head{flex:0 0 140px;height:140px}.sidebar.collapsed .sidebar-head{flex:0 0 56px;height:56px}.sidebar-footer{display:flex;align-items:center;gap:10px}.api-dot{width:9px;height:9px;border-radius:50%;background:#ffffff47}.api-dot.online{background:#38d39f;box-shadow:0 0 0 3px #38d39f29}.api-dot.offline{background:#e2273a;box-shadow:0 0 0 3px #e2273a29}.banner:after{display:none}.banner-slide{filter:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 96px;color:#fff;background-size:auto}.banner-slide.tone-navy{background:linear-gradient(120deg,#041533,#0a2a4f 70%,#123a6b)}.banner-slide.tone-orange{background:linear-gradient(120deg,#7a2f00,#8f3800 60%,#b34700)}.banner-copy{max-width:760px}.banner-eyebrow{display:inline-block;margin-bottom:8px;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#ffb27a}.banner-slide.tone-orange .banner-eyebrow{color:#ffe0c7}.banner-copy h2{font-size:28px;line-height:34px;font-weight:700}.banner-copy p{margin-top:8px;font-size:14px;line-height:20px;max-width:620px;color:#ffffffdb}.banner-cta{display:inline-flex;margin-top:16px;padding:9px 18px;font-size:13px;font-weight:600;color:#041533;background:#fff;border-radius:6px}.banner-mark{display:flex;align-items:center;justify-content:center;width:150px;height:150px;flex:0 0 150px;font-size:40px;font-weight:800;letter-spacing:-.04em;color:#ffffff2e;border:2px solid rgba(255,255,255,.22);border-radius:50%}.action-art{position:relative;display:flex;align-items:center;justify-content:center;height:148px;margin-bottom:8px;color:#b34700;background:#fff5ed;border-radius:8px}.action-dot{position:absolute;top:28px;right:48px;width:12px;height:12px;background:#f86800;border-radius:50%}.certificate-art{display:flex;align-items:center;justify-content:center;padding:28px;background:#eaf7f3;border-radius:12px}.certificate-paper{position:relative;width:320px;padding:28px 24px;text-align:center;color:#041533;background:#fff;border:1px solid #d9e8e3;border-radius:6px;box-shadow:0 10px 24px #04153314}.certificate-eyebrow{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#b34700}.certificate-paper strong{display:block;margin-top:8px;font-size:24px}.certificate-name{display:block;margin-top:18px;font-size:14px;color:#555}.certificate-line{display:block;width:140px;height:1px;margin:10px auto;background:#ccc}.certificate-meta{font-size:10px;color:#5f6b7a}.certificate-seal{margin:12px auto 0;color:#f86800}.groups-art{position:relative;display:flex;align-items:center;justify-content:center;width:300px;height:260px;color:#b34700;background:#fff5ed;border-radius:16px}.groups-orbit{position:absolute;border:2px solid rgba(248,104,0,.25);border-radius:50%}.groups-orbit.one{width:180px;height:180px}.groups-orbit.two{width:240px;height:240px}.sa-hero-media{position:relative;height:400px}.sf-device{position:absolute;top:40px;left:20px;width:520px;height:330px;padding:14px;background:#0b1220;border-radius:14px}.sf-device-screen{height:290px;padding:18px;background:#fff;border-radius:6px}.sf-device-base{position:absolute;left:-40px;bottom:-18px;width:600px;height:18px;background:#0b1220;border-radius:0 0 14px 14px}.sf-device-top{display:flex;gap:8px}.sf-pill{width:140px;height:12px;background:#ffe0c7;border-radius:6px}.sf-pill.small{width:70px;background:#eef2f7}.sf-device-row{display:flex;gap:14px;margin-top:22px}.sf-avatar{width:54px;height:54px;flex:0 0 54px;background:#f86800;border-radius:50%}.sf-line{display:block;width:150px;height:10px;margin-top:8px;background:#e9edf3;border-radius:5px}.sf-line.long{width:260px}.sf-line.short{width:100px}.sf-device-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.sf-device-grid span{height:86px;background:#f5f7fa;border-radius:8px}.sf-phone{position:absolute;left:-80px;bottom:0;width:150px;height:270px;padding:24px 14px 14px;background:#0b1220;border-radius:22px}.sf-phone .sf-line{background:#2a3550}.sf-phone-notch{width:52px;height:6px;margin:0 auto 16px;background:#2a3550;border-radius:3px}.sf-phone-card{height:70px;margin-top:18px;background:#1a2540;border-radius:8px}.sa-module-image{background:linear-gradient(135deg,#041533,#123a6b)}.sa-module-image span{display:flex;width:100%;height:100%;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#ffb27a}.sidebar-avatar{display:flex;align-items:center;justify-content:center}.avatar-initials{display:flex;width:40px;height:40px;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#041533;background:#ffb27a;border-radius:50%}.skip-link{position:absolute;left:12px;top:-60px;z-index:500;padding:10px 16px;color:#fff;background:#041533;border-radius:6px}.skip-link:focus{top:12px}:focus-visible{outline:3px solid #f86800;outline-offset:2px}.form-consent{display:flex;align-items:flex-start;gap:10px;margin-top:14px;font-size:12px;line-height:18px;color:#4b5563}.form-consent input{margin-top:3px}.form-consent a{color:#b34700;text-decoration:underline}.legal-shell{min-height:100vh;color:#162033;background:#f6f7f9}.legal-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 32px;background:#fff;border-bottom:1px solid #e7eaf0}.legal-brand img{width:170px;height:auto}.legal-nav{display:flex;flex-wrap:wrap;gap:18px;font-size:13px}.legal-nav a{color:#334155}.legal-nav a:hover{color:#b34700}.legal-main{max-width:920px;margin:0 auto;padding:32px 24px 72px}.legal-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:18px;font-size:13px;color:#5f6b7a}.legal-main h1{font-size:34px;line-height:40px;color:#041533}.legal-updated{margin-top:6px;font-size:12px;color:#5f6b7a}.legal-content{margin-top:28px;font-size:15px;line-height:25px;color:#263244}.legal-content p{margin:0 0 14px}.legal-content ul{margin:0 0 16px 20px;padding:0;list-style:disc}.legal-content li{margin-bottom:7px}.legal-content a{color:#a84200;text-decoration:underline}.legal-content code{padding:1px 5px;font-size:12px;background:#eef1f5;border-radius:4px}.legal-section{margin:30px 0}.legal-section h2{margin-bottom:10px;font-size:20px;line-height:26px;color:#041533}.legal-note{padding:12px 14px;font-size:13px;color:#4b5563;background:#fff7ed;border-left:3px solid #f86800;border-radius:4px}.legal-success{padding:10px 12px;color:#065f46;background:#ecfdf5;border-radius:6px}.legal-form{display:flex;flex-direction:column;gap:14px;margin:22px 0}.legal-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500}.legal-form input,.legal-form select,.legal-form textarea{padding:9px 11px;font:inherit;font-size:14px;color:#111827;background:#fff;border:1px solid #cbd5e1;border-radius:6px}.legal-form .legal-check{flex-direction:row;align-items:flex-start;font-weight:400}.legal-form .legal-check input{margin-top:4px}.legal-table-wrap{overflow-x:auto;margin:18px 0}.legal-table{width:100%;border-collapse:collapse;font-size:13px;background:#fff}.legal-table th,.legal-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #e7eaf0}.legal-table th{background:#f1f5f9}.legal-footer{display:grid;gap:22px;padding:32px;color:#ffffffc7;background:#041533;font-size:12px}.legal-footer strong{display:block;font-size:15px;color:#fff}.legal-footer-links{display:flex;flex-wrap:wrap;gap:10px 18px}.legal-footer-links a{color:#ffffffd1}.legal-footer-links a:hover{color:#ffb27a}.legal-footer-meta{display:flex;flex-wrap:wrap;gap:6px 18px;color:#ffffff8c}.legal-footer-meta a{color:#ffb27a}.legal-link-btn{padding:0;font:inherit;color:#ffb27a;text-decoration:underline;background:none}.app .legal-footer{margin:36px -31px -10px -25px}.cookie-banner{position:fixed;left:24px;right:24px;bottom:24px;z-index:400;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;max-width:1120px;margin:0 auto;padding:18px 20px;color:#1f2937;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 18px 50px #0415332e}.cookie-copy strong{display:block;font-size:14px;color:#041533}.cookie-copy p{margin-top:4px;font-size:12px;line-height:18px;color:#4b5563}.cookie-copy a{color:#a84200;text-decoration:underline}.cookie-options{display:flex;flex-direction:column;gap:7px;margin-top:10px;font-size:12px}.cookie-options label{display:flex;align-items:center;gap:8px}.cookie-actions{display:flex;flex-wrap:wrap;gap:8px}@media(max-width:760px){.legal-header{flex-direction:column;align-items:flex-start;padding:14px 18px}.legal-main{padding:24px 18px 60px}.legal-main h1{font-size:27px;line-height:33px}.legal-footer{padding:26px 18px}.app .legal-footer{margin:28px -16px -10px}.cookie-banner{left:12px;right:12px;bottom:12px;flex-direction:column;align-items:stretch;padding:14px}.cookie-actions{justify-content:stretch}.cookie-actions .btn{flex:1}}@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2")}.skeleton-page{pointer-events:none}.skeleton{background:linear-gradient(90deg,#e9edf2 25%,#f4f6f9 37%,#e9edf2 63%);background-size:400% 100%;animation:skeletonShimmer 1.4s ease infinite;border-radius:7px}.skeleton-banner{height:200px;margin-bottom:28px}.skeleton-title{width:180px;height:22px}.skeleton-button{width:110px;height:34px}.skeleton-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0}.skeleton-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.skeleton-card{height:128px}.skeleton-chart{flex:1;height:326px}@keyframes skeletonShimmer{0%{background-position:100% 0}to{background-position:0 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}@media(max-width:1200px){.skeleton-grid{grid-template-columns:repeat(2,1fr)}}.sidebar-link.disabled{color:#ffffff8c;opacity:1}.sidebar-badge.soon{color:#e2e8f0;background:#334155}.login-shell{display:grid;min-height:100vh;padding:24px;place-items:center;background:radial-gradient(circle at 20% 20%,rgba(248,104,0,.18),transparent 34%),radial-gradient(circle at 80% 80%,rgba(255,178,122,.12),transparent 30%),#041533}.login-card{width:min(420px,100%);max-width:100%;box-sizing:border-box;padding:30px;background:#fff;border-radius:12px;box-shadow:0 24px 70px #00000047}.login-card img{width:190px;margin-bottom:18px}.login-card h1{font-size:24px;line-height:30px;color:#041533}.login-card>p{margin:4px 0 18px;font-size:13px;color:#5f6b7a}.login-card label{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;font-size:13px;font-weight:500;color:#334155}.login-card input{height:40px;padding:0 12px;font:inherit;color:#111827;border:1px solid #cbd5e1;border-radius:6px}.login-card .btn{margin-top:8px}.login-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 16px;margin-top:18px;font-size:12px}.login-legal a{color:#a84200;text-decoration:underline}.terms-overlay{z-index:500;display:grid;place-items:center}.terms-modal{position:relative;top:auto;left:auto;z-index:501;width:520px;transform:none;animation:none;margin:16px}.terms-intro{margin-bottom:12px;font-size:14px;line-height:22px;color:#374151}.terms-list{margin:0 0 8px 18px;padding:0;list-style:disc;font-size:13px;line-height:22px}.terms-list a{color:#a84200;text-decoration:underline}.notfound-page{display:grid;min-height:70vh;place-items:center}.notfound-card{max-width:520px;padding:36px;text-align:center}.notfound-card svg{color:#b34700}.notfound-card h1{margin-top:14px;font-size:26px;line-height:32px;color:#041533}.notfound-card p{margin-top:8px;font-size:14px;line-height:22px;color:#4b5563}.notfound-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.student-shell{min-height:100vh;background:radial-gradient(circle at 12% -10%,rgba(248,104,0,.08),transparent 30%),#f4f6f9;color:#162033}.student-header{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:28px;padding:12px 28px;background:#041533;box-shadow:0 2px 18px #04153338}.student-brand img{display:block;width:132px;height:auto;border-radius:6px}.student-nav{display:flex;flex:1;gap:4px;overflow-x:auto;scrollbar-width:none}.student-nav::-webkit-scrollbar{display:none}.student-nav a{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;font-size:13px;font-weight:500;color:#ffffffb8;white-space:nowrap;border-radius:7px}.student-nav a:hover{color:#fff;background:#ffffff14}.student-nav a.active{color:#fff;background:#b34700}.student-account{display:flex;align-items:center;gap:14px}.student-account-name{max-width:180px;overflow:hidden;font-size:13px;font-weight:600;color:#fff;text-overflow:ellipsis;white-space:nowrap}.student-logout{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;font:inherit;font-size:12px;color:#ffd8bd;background:transparent;border:1px solid rgba(255,178,122,.45);border-radius:6px;cursor:pointer}.student-logout:hover{background:#f868002e}.student-main{max-width:1120px;margin:0 auto;padding:30px 24px 64px}.student-page{display:flex;flex-direction:column;gap:22px}.student-eyebrow{display:inline-block;margin-bottom:6px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#b34700}.student-page h1{font-size:30px;line-height:36px;letter-spacing:-.02em;color:#041533}.student-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.student-page-head p{max-width:640px;margin-top:6px;font-size:14px;line-height:22px;color:#4b5563}.student-hero{display:grid;grid-template-columns:1fr 260px;gap:24px;align-items:center;padding:34px;color:#fff;background:radial-gradient(circle at 88% 12%,rgba(248,104,0,.35),transparent 42%),linear-gradient(135deg,#041533,#0a2a4f);border-radius:16px;box-shadow:0 18px 40px #0415332e}.student-hero h1{color:#fff;font-size:32px}.student-hero p{max-width:560px;margin-top:8px;font-size:14px;line-height:22px;color:#ffffffd1}.student-hero .student-eyebrow{color:#ffb27a}.student-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.student-hero-actions .btn-outline{color:#fff;border-color:#ffffff73}.student-hero-actions .btn-outline:hover{background:#ffffff1a}.student-progress-card{padding:20px;text-align:center;background:#ffffff14;border:1px solid rgba(255,255,255,.16);border-radius:12px}.student-progress-label{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6}.student-progress-card strong{display:block;margin:6px 0 10px;font-size:34px;line-height:1;color:#ffb27a}.student-progress-card small{display:block;margin-top:8px;font-size:11px;color:#fff9}.student-progress-bar{height:8px;overflow:hidden;background:#ffffff2e;border-radius:999px}.student-progress-bar span{display:block;height:100%;background:#f86800;border-radius:999px;transition:width .4s ease}.student-progress-bar.small{height:6px;background:#e8ecf2}.student-progress-bar.small span{background:#b34700}.student-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.student-stat{display:flex;flex-direction:column;gap:4px;padding:18px;background:#fff;border:1px solid #e5e9f0;border-radius:12px}.student-stat svg{color:#b34700}.student-stat span{font-size:12px;color:#5b6574}.student-stat strong{font-size:20px;color:#041533}.student-stat-percent{font-size:20px!important;font-weight:700;color:#041533}.student-columns{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.student-card{padding:22px;background:#fff;border:1px solid #e5e9f0;border-radius:12px}.student-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.student-card-head h2{font-size:17px;color:#041533}.student-card-head a{font-size:12px;font-weight:600;color:#a84200}.student-next-lesson{display:block;padding:18px;background:#fff8f2;border:1px solid #ffd9bd;border-radius:10px}.student-next-lesson strong{display:block;margin-top:8px;font-size:16px;color:#041533}.student-next-lesson p{margin-top:4px;font-size:13px;line-height:20px;color:#5b6574}.student-next-meta{display:block;margin-top:10px;font-size:12px;color:#a84200}.student-level-pill{display:inline-flex;padding:3px 9px;font-size:10px;font-weight:700;letter-spacing:.06em;color:#fff;background:#b34700;border-radius:999px}.student-muted{font-size:13px;line-height:20px;color:#5b6574}.student-attempt-list{display:flex;flex-direction:column;gap:12px}.student-attempt-list li{display:flex;align-items:flex-start;gap:10px}.student-attempt-list div{flex:1;min-width:0}.student-attempt-list strong{display:block;font-size:12px;color:#041533}.student-attempt-list span{display:block;overflow:hidden;font-size:12px;color:#5b6574;text-overflow:ellipsis;white-space:nowrap}.student-attempt-list time{font-size:10px;color:#7b8494;white-space:nowrap}.student-ok{color:#15803d}.student-bad{color:#b91c1c}.student-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.student-lesson-card{display:flex;flex-direction:column;gap:8px;padding:20px;background:#fff;border:1px solid #e5e9f0;border-radius:12px;transition:border-color .15s ease,transform .15s ease}.student-lesson-card:hover{border-color:#f0a36b;transform:translateY(-2px)}.student-lesson-card.done{border-color:#b7e4c7}.student-lesson-top{display:flex;align-items:center;justify-content:space-between}.student-done-pill{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;color:#15803d}.student-lesson-card h2{font-size:16px;line-height:22px;color:#041533}.student-lesson-card p{font-size:12px;line-height:19px;color:#5b6574}.student-lesson-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:2px}.student-lesson-meta span{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:#5b6574}.student-open-link{display:inline-flex;align-items:center;gap:5px;margin-top:4px;font-size:12px;font-weight:600;color:#a84200}.student-skeleton{height:150px;border-radius:12px}.student-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px;text-align:center}.student-empty svg{color:#b34700}.student-empty h2{font-size:18px;color:#041533}.student-empty p{font-size:13px;color:#5b6574}.student-back{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#5b6574}.student-back:hover{color:#a84200}.student-lesson-progress{text-align:right}.student-lesson-progress strong{display:block;font-size:24px;color:#041533}.student-lesson-progress span{font-size:11px;color:#5b6574}.student-notice{padding:10px 14px;font-size:13px;color:#8f3800;background:#fff4e8;border-left:3px solid #f86800;border-radius:5px}.student-material-list{display:flex;flex-direction:column;gap:12px}.student-material{padding:16px;background:#f8fafc;border:1px solid #e5e9f0;border-radius:9px}.student-material-head{display:flex;align-items:center;gap:8px;color:#041533}.student-material-head svg{color:#b34700}.student-material-text{margin-top:10px;font-size:14px;line-height:24px;color:#263244}.student-material a,.student-material button{margin-top:10px}.student-exercise-list{display:flex;flex-direction:column;gap:8px}.student-exercise-row{display:flex;align-items:center;gap:12px;width:100%;padding:13px 14px;font:inherit;text-align:left;background:#fff;border:1px solid #e5e9f0;border-radius:9px;cursor:pointer}.student-exercise-row:hover{border-color:#f0a36b;background:#fffaf6}.student-exercise-row.ok{border-color:#b7e4c7;background:#f6fdf8}.student-exercise-row.bad{border-color:#fecaca;background:#fff8f8}.student-exercise-number{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;flex:0 0 26px;font-size:11px;font-weight:700;color:#041533;background:#fff0e5;border-radius:50%}.student-exercise-row div{flex:1;min-width:0}.student-exercise-row strong{display:block;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:#a84200}.student-exercise-row span{display:block;overflow:hidden;font-size:13px;color:#263244;text-overflow:ellipsis;white-space:nowrap}.student-player{padding:26px;background:#fff;border:2px solid #f0a36b;border-radius:14px;box-shadow:0 18px 44px #0415331a}.student-player-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.student-player-close{padding:0;font:inherit;font-size:12px;color:#5b6574;background:none;border:0;cursor:pointer}.student-player-close:hover{color:#a84200}.student-player h2{font-size:19px;line-height:27px;color:#041533}.student-options{display:flex;flex-direction:column;gap:9px;margin-top:18px}.student-option{display:flex;align-items:center;gap:10px;padding:12px 14px;font-size:14px;color:#263244;background:#fff;border:1px solid #d8dee8;border-radius:8px;cursor:pointer}.student-option:hover{border-color:#f0a36b}.student-option.selected{border-color:#b34700;background:#fff6ef}.student-option input{accent-color:#b34700}.student-answer-field{display:flex;flex-direction:column;gap:7px;margin-top:18px;font-size:13px;font-weight:500;color:#334155}.student-answer-field input{height:44px;padding:0 13px;font:inherit;font-size:15px;color:#111827;background:#fff;border:1px solid #cbd5e1;border-radius:8px}.student-result{margin-top:16px;padding:14px 16px;border-radius:9px}.student-result.ok{color:#14532d;background:#f0fdf4;border:1px solid #b7e4c7}.student-result.bad{color:#7f1d1d;background:#fff6f6;border:1px solid #fecaca}.student-result strong{display:inline-flex;align-items:center;gap:6px;font-size:14px}.student-result p{margin-top:6px;font-size:13px;line-height:21px}.student-explanation{color:#374151}.student-player-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.student-history-list{display:flex;flex-direction:column;gap:18px}.student-history-list li{display:flex;gap:12px;padding-bottom:16px;border-bottom:1px solid #eef1f5}.student-history-list li:last-child{padding-bottom:0;border-bottom:0}.student-history-body{flex:1;min-width:0}.student-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.student-history-head strong{font-size:14px;color:#041533}.student-history-head time{font-size:11px;color:#7b8494}.student-history-prompt{margin-top:4px;font-size:13px;line-height:20px;color:#374151}.student-history-answer{margin-top:4px;font-size:12px;color:#5b6574}.student-history-explanation{margin-top:4px;font-size:12px;font-style:italic;color:#6b7280}.student-tutor-tools{display:flex;align-items:center;gap:14px}.student-lang-toggle{display:inline-flex;padding:3px;background:#e9edf3;border-radius:8px}.student-lang-toggle button{padding:6px 10px;font:inherit;font-size:12px;font-weight:500;color:#4b5563;background:transparent;border:0;border-radius:6px;cursor:pointer}.student-lang-toggle button.active{color:#041533;background:#fff;box-shadow:0 1px 3px #04153324}.student-autospeak{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#4b5563}.student-autospeak input{accent-color:#b34700}.student-tutor-layout{display:grid;grid-template-columns:330px 1fr;gap:16px;align-items:start}.student-tutor-aside{display:flex;flex-direction:column;gap:12px;position:sticky;top:86px}.tutor-avatar-card{padding:18px;background:#fff;border:1px solid #e5e9f0;border-radius:14px}.tutor-avatar{width:148px;height:148px;margin:0 auto 12px}.cunha-portrait{display:block;width:100%;height:100%}.cunha-portrait .cunha-mouth{transform-box:fill-box;transform-origin:center}.tutor-avatar.speaking .cunha-mouth,.cunha-portrait.speaking .cunha-mouth{animation:tutorTalk .32s ease-in-out infinite alternate}.tutor-avatar svg{width:100%;height:100%}.tutor-mouth{transform-box:fill-box;transform-origin:center}.tutor-avatar.speaking .tutor-mouth{animation:tutorTalk .32s ease-in-out infinite alternate}@keyframes tutorTalk{0%{transform:scaleY(.45)}to{transform:scaleY(1.35)}}.tutor-avatar-copy{text-align:center}.tutor-avatar-copy strong{font-size:14px;color:#041533}.tutor-ai-badge{display:inline-flex;margin-left:6px;padding:1px 6px;font-size:9px;font-weight:700;letter-spacing:.08em;color:#fff;background:#b34700;border-radius:999px;vertical-align:middle}.tutor-avatar-copy p{margin-top:6px;font-size:11px;line-height:17px;color:#5b6574}.tutor-avatar-actions{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px}.tutor-rate{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:#5b6574}.tutor-rate select{padding:4px 6px;font:inherit;font-size:11px;color:#374151;background:#fff;border:1px solid #cbd5e1;border-radius:5px}.tutor-spoken-text{margin-top:12px;padding:10px 12px;max-height:150px;overflow-y:auto;font-size:12px;line-height:20px;color:#4b5563;background:#f8fafc;border-radius:8px}.tutor-spoken-text span.active{color:#041533;background:#ffe0c7;border-radius:3px}.student-tutor-note{display:flex;gap:8px;padding:12px;font-size:11px;line-height:17px;color:#6b4a2f;background:#fff7ed;border:1px solid #ffd9bd;border-radius:9px}.student-tutor-note svg{flex:0 0 16px;margin-top:2px;color:#b34700}.student-chat{display:flex;flex-direction:column;min-height:520px;background:#fff;border:1px solid #e5e9f0;border-radius:14px;overflow:hidden}.student-chat-messages{flex:1;display:flex;flex-direction:column;gap:14px;padding:20px;max-height:520px;overflow-y:auto}.student-chat-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:60px 20px;text-align:center}.student-chat-empty svg{color:#b34700}.student-chat-empty h2{font-size:18px;color:#041533}.student-chat-empty p{font-size:13px;color:#5b6574}.student-message{display:flex;gap:9px;max-width:88%}.student-message.assistant{align-self:flex-start}.student-message.user{align-self:flex-end;flex-direction:row-reverse}.student-message-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;color:#fff;background:#041533;border-radius:50%}.student-message.user .student-message-icon{background:#b34700}.student-message>div{padding:10px 13px;background:#f8fafc;border:1px solid #e5e9f0;border-radius:10px}.student-message.user>div{background:#fff6ef;border-color:#ffd9bd}.student-message strong{display:block;margin-bottom:3px;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:#5b6574}.student-message p{font-size:13px;line-height:21px;color:#263244;white-space:pre-wrap}.student-typing{color:#7b8494;font-style:italic}.student-chat-suggestions{display:flex;flex-wrap:wrap;gap:7px;padding:0 18px 10px}.student-chat-suggestions button{padding:6px 10px;font:inherit;font-size:11px;color:#8f3800;background:#fff7ed;border:1px solid #ffd9bd;border-radius:999px;cursor:pointer}.student-chat-suggestions button:hover{background:#ffedd5}.student-chat-form{display:flex;gap:8px;padding:14px 18px;border-top:1px solid #eef1f5}.student-chat-form textarea{flex:1;min-height:46px;max-height:130px;padding:10px 12px;font:inherit;font-size:13px;line-height:20px;color:#111827;resize:vertical;background:#fff;border:1px solid #cbd5e1;border-radius:8px}.student-chat-form .btn{align-self:flex-end;height:44px}@media(max-width:980px){.student-hero{grid-template-columns:1fr}.student-stats{grid-template-columns:repeat(2,1fr)}.student-columns{grid-template-columns:1fr}.student-grid{grid-template-columns:repeat(2,1fr)}.student-tutor-layout{grid-template-columns:1fr}.student-tutor-aside{position:static}}@media(max-width:720px){.student-header{flex-wrap:wrap;gap:10px;padding:10px 14px}.student-brand img{width:104px}.student-nav{order:3;width:100%;flex:1 0 100%}.student-nav a{padding:8px 7px;gap:4px;font-size:11.5px}.student-nav a svg{width:14px;height:14px}.student-nav{gap:2px}.student-account{margin-left:auto}.student-account-name{display:none}.student-main{padding:20px 14px 48px}.student-page-head{flex-direction:column;align-items:flex-start}.student-page h1{font-size:25px;line-height:31px}.student-hero{padding:22px}.student-hero h1{font-size:26px}.student-stats{grid-template-columns:repeat(2,1fr)}.student-grid{grid-template-columns:1fr}.student-tutor-tools{flex-wrap:wrap}.student-player{padding:18px}.student-message{max-width:100%}.student-history-head{flex-direction:column;align-items:flex-start;gap:2px}}@media(prefers-reduced-motion:reduce){.tutor-avatar.speaking .tutor-mouth{animation:none}.student-progress-bar span,.student-lesson-card{transition:none}}.student-attempt-list time,.student-history-head time{color:#64707f}.content-tabs{display:flex;gap:6px;margin-bottom:18px;border-bottom:1px solid #e5e9f0}.content-tabs button{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;font:inherit;font-size:13px;font-weight:500;color:#5b6574;background:none;border:0;border-bottom:2px solid transparent;cursor:pointer}.content-tabs button:hover{color:#a84200}.content-tabs button.active{color:#041533;border-bottom-color:#b34700}.content-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.content-form{display:flex;flex-direction:column;gap:13px;padding:22px}.content-form h3,.content-list h3{display:flex;align-items:center;gap:7px;font-size:16px;color:#041533}.content-form>label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:500;color:#334155}.content-form textarea.form-input{resize:vertical}.content-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.content-form-row label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:500;color:#334155}.content-list{padding:22px}.content-list>ul{display:flex;flex-direction:column;gap:10px;margin-top:12px}.content-list li{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px;background:#f8fafc;border:1px solid #e5e9f0;border-radius:8px}.content-list li>div:first-child{display:flex;flex-direction:column;gap:3px;min-width:0}.content-list strong{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:#041533}.content-list span{overflow:hidden;font-size:11px;line-height:17px;color:#5b6574;text-overflow:ellipsis}.content-list .student-ok,.content-list .student-bad{font-weight:600}.content-list-actions{display:flex;flex:0 0 auto;gap:6px}.content-list-actions .btn{white-space:nowrap}@media(max-width:980px){.content-columns{grid-template-columns:1fr}}@media(max-width:720px){.content-form-row{grid-template-columns:1fr}.content-list li{flex-direction:column}.content-list-actions{width:100%}}:root{--sf-ink: #041533;--sf-ink-soft: #0a2a4f;--sf-orange: #b34700;--sf-orange-bright: #f86800;--sf-paper: #f5f6f8;--sf-surface: #ffffff;--sf-line: #e6e9ef;--sf-line-soft: #eef1f5;--sf-muted: #5b6574;--sf-radius: 12px;--sf-shadow: 0 1px 2px rgba(4, 21, 51, .05), 0 8px 24px rgba(4, 21, 51, .04)}body{color:#1f2937;background:var(--sf-paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.app-main,.page-scroll{background:radial-gradient(circle at 80% -18%,rgba(248,104,0,.06),transparent 34%),var(--sf-paper)}.sidebar{background:linear-gradient(180deg,#041533,#061a36 58%,#041533);box-shadow:inset -1px 0 #ffffff0f}.sidebar-section-toggle{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#ffffff75}.sidebar-link{border-radius:8px;transition:background .15s ease,color .15s ease}.sidebar-link.active{color:#fff;background:#f8680029;box-shadow:inset 3px 0 0 var(--sf-orange-bright)}.sidebar-link.active .icon{color:#ffb27a}.sidebar-collapse{border-radius:7px}.sidebar-badge.new{background:#8f3800;letter-spacing:.04em}.topbar{background:#fffffff0;border-bottom:1px solid var(--sf-line);box-shadow:none;-webkit-backdrop-filter:saturate(1.2) blur(10px);backdrop-filter:saturate(1.2) blur(10px)}.topbar h1,.topbar-title{font-size:18px;font-weight:650;letter-spacing:-.015em;color:var(--sf-ink)}.whats-new{border-radius:8px}.user-avatar{border:1px solid var(--sf-line)}.page{max-width:1500px}.section-title{font-size:18px;font-weight:650;letter-spacing:-.015em;color:var(--sf-ink)}.page h1{font-size:26px;line-height:32px;letter-spacing:-.025em}.card,.kpi-card{background:var(--sf-surface);border:1px solid var(--sf-line);border-radius:var(--sf-radius);box-shadow:var(--sf-shadow)}.kpi-card{position:relative;overflow:hidden}.kpi-card:after{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--sf-orange-bright);opacity:0;transition:opacity .15s ease}.kpi-card:hover:after{opacity:1}.kpi-title{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--sf-muted)}.kpi-value{letter-spacing:-.03em;color:var(--sf-ink)}.btn{border-radius:8px;font-weight:600;letter-spacing:-.005em;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .12s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--sf-orange);border-color:var(--sf-orange);box-shadow:0 1px 2px #04153314}.btn-primary:hover{background:#9a3d00;border-color:#9a3d00}.btn-outline{background:#fff;border-color:#d6dbe4;color:var(--sf-ink)}.btn-outline:hover{background:#fff8f2;border-color:#f0a36b;color:var(--sf-orange)}.form-input,.search-input,.legal-form input,.legal-form select,.legal-form textarea{border-color:#d6dbe4;border-radius:8px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.form-input:focus,.search-input:focus,.legal-form input:focus,.legal-form select:focus,.legal-form textarea:focus{outline:none;border-color:var(--sf-orange-bright);box-shadow:0 0 0 3px #f8680029}.data-table thead th{padding-top:13px;padding-bottom:13px;font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--sf-muted);background:#f8fafc;border-bottom:1px solid var(--sf-line)}.data-table td{border-bottom:1px solid var(--sf-line-soft)}.data-table tbody tr{transition:background .12s ease}.data-table tbody tr:hover{background:#fffaf6}.table-card{overflow:hidden}.tag{border-radius:999px;font-weight:600;letter-spacing:.01em}.tabs-bar,.content-tabs{border-bottom-color:var(--sf-line)}.content-tabs button.active,.tabs button.active{border-bottom-color:var(--sf-orange-bright)}.banner{border-radius:14px;overflow:hidden;box-shadow:0 18px 44px #04153324}.banner-slide.tone-navy{background:radial-gradient(circle at 86% 12%,rgba(248,104,0,.32),transparent 40%),linear-gradient(120deg,#041533,#082448 64%,#0b2d58)}.banner-copy h2{letter-spacing:-.025em}.banner-cta{border-radius:8px;transition:transform .15s ease,background .15s ease}.banner-cta:hover{transform:translateY(-1px);background:#fff5ed}.login-shell{background:radial-gradient(circle at 16% 12%,rgba(248,104,0,.22),transparent 32%),radial-gradient(circle at 84% 86%,rgba(255,178,122,.12),transparent 30%),linear-gradient(150deg,#041533,#061b38 60%,#041533)}.login-card{border:1px solid rgba(255,255,255,.14);border-radius:16px;box-shadow:0 30px 80px #00000057}.login-card h1{letter-spacing:-.025em}.login-card input{border-radius:8px;transition:border-color .15s ease,box-shadow .15s ease}.login-card input:focus{outline:none;border-color:var(--sf-orange-bright);box-shadow:0 0 0 3px #f8680029}*{scrollbar-width:thin;scrollbar-color:#c4cbd6 transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:#c4cbd6;border:3px solid transparent;background-clip:content-box;border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:#aab3c2;border:3px solid transparent;background-clip:content-box}.student-header{background:linear-gradient(90deg,#041533,#061b38)}.student-main{padding-top:34px}.student-card,.student-lesson-card,.student-stat{box-shadow:var(--sf-shadow)}@media(prefers-reduced-motion:reduce){.btn,.data-table tbody tr,.kpi-card:after,.banner-cta,.sidebar-link,.form-input,.search-input,.login-card input{transition:none}}.topbar{position:relative;z-index:120}.user-menu{z-index:130}.user-menu .dropdown{z-index:140}.student-hero-actions .btn-outline{color:#fff;background:transparent;border-color:#ffffff80}.student-hero-actions .btn-outline:hover{color:#fff;background:#ffffff1f;border-color:#ffffffb8}.student-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 20px;max-width:1120px;margin:0 auto;padding:18px 24px 34px;font-size:11px;color:#5b6574}.student-footer nav{display:flex;flex-wrap:wrap;gap:8px 14px}.student-footer a{color:#5b6574}.student-footer a:hover{color:#a84200}.student-footer button{padding:0;font:inherit;font-size:11px;color:#5b6574;text-decoration:underline;background:none;border:0;cursor:pointer}.student-footer button:hover{color:#a84200}@media(max-width:720px){.student-footer{padding:16px 14px 28px}}.student-ai-tag{display:inline-flex;margin-left:6px;padding:1px 5px;font-size:8px;font-weight:700;letter-spacing:.06em;color:#fff;background:#b34700;border-radius:999px;vertical-align:middle}.app{background:var(--sf-paper)}.page-scroll{padding-bottom:28px}.topbar+.page-scroll{min-height:0}.ai-page{display:flex;flex-direction:column;gap:18px;max-width:1320px}.ai-hero{position:relative;display:grid;grid-template-columns:1.25fr .75fr;gap:24px;align-items:center;padding:36px;overflow:hidden;color:#fff;background:radial-gradient(circle at 86% 14%,rgba(248,104,0,.42),transparent 42%),linear-gradient(135deg,#041533,#082448 68%,#0b2d58);border-radius:16px;box-shadow:0 22px 50px #0415332e}.ai-hero-copy h1{max-width:620px;margin-top:6px;font-size:34px;line-height:41px;letter-spacing:-.03em;color:#fff}.ai-hero-copy p{max-width:610px;margin-top:10px;font-size:14px;line-height:23px;color:#ffffffd1}.ai-hero .student-eyebrow{color:#ffb27a}.ai-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.ai-hero-actions .btn-outline{color:#fff;background:transparent;border-color:#ffffff80}.ai-hero-actions .btn-outline:hover{color:#fff;background:#ffffff1f;border-color:#ffffffb8}.ai-hero-art{position:relative;display:grid;width:260px;height:220px;margin:0 auto;place-items:center}.ai-orbit{position:absolute;border:1px solid rgba(255,178,122,.36);border-radius:50%}.ai-orbit.one{width:170px;height:170px}.ai-orbit.two{width:230px;height:230px}.ai-core{display:grid;width:156px;height:156px;place-items:center;overflow:hidden;background:#fff7ed;border:4px solid #fff;border-radius:50%;box-shadow:0 16px 42px #0415332e}.ai-chip{position:absolute;top:18px;left:12px;padding:4px 9px;font-size:10px;font-weight:700;letter-spacing:.08em;color:#041533;background:#ffb27a;border-radius:999px}.ai-chip.en{top:auto;left:auto;right:10px;bottom:14px;color:#fff;background:#8f3800}.ai-capabilities{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.ai-capability{padding:22px;background:#fff;border:1px solid var(--sf-line);border-radius:12px;box-shadow:var(--sf-shadow)}.ai-capability-icon{display:inline-grid;width:36px;height:36px;margin-bottom:12px;place-items:center;color:#a84200;background:#fff2e6;border-radius:10px}.ai-capability h2{font-size:16px;color:#041533}.ai-capability p{margin-top:6px;font-size:12px;line-height:20px;color:#5b6574}.ai-demo{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.ai-demo-form{padding:26px;background:#fff;border:1px solid var(--sf-line);border-radius:14px;box-shadow:var(--sf-shadow)}.ai-demo-form h2{margin-top:2px;font-size:22px;letter-spacing:-.02em;color:#041533}.ai-demo-form>p{margin-top:6px;font-size:12px;line-height:20px;color:#5b6574}.ai-examples{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.ai-examples button{padding:7px 10px;font:inherit;font-size:11px;color:#8f3800;background:#fff7ed;border:1px solid #ffd9bd;border-radius:999px;cursor:pointer}.ai-examples button:hover{background:#ffedd5}.ai-demo-input{display:flex;flex-direction:column;gap:9px;margin-top:16px}.ai-demo-input textarea{width:100%;min-height:84px;padding:11px 12px;font:inherit;font-size:13px;line-height:20px;color:#111827;resize:vertical;background:#fff;border:1px solid #d6dbe4;border-radius:9px}.ai-demo-input textarea:focus{outline:none;border-color:#f86800;box-shadow:0 0 0 3px #f8680029}.ai-demo-output{display:flex;flex-direction:column;gap:12px}.ai-demo-output .tutor-avatar-card{border-radius:14px;box-shadow:var(--sf-shadow)}.ai-answer{padding:18px;background:#fff;border:1px solid var(--sf-line);border-radius:12px;box-shadow:var(--sf-shadow)}.ai-answer>strong{display:block;margin-bottom:7px;font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:#5b6574}.ai-answer p{font-size:13px;line-height:22px;color:#263244;white-space:pre-wrap}.ai-answer.empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px;text-align:center;color:#5b6574}.ai-answer.empty svg{color:#b34700}.ai-note{display:flex;gap:9px;padding:13px 15px;font-size:11px;line-height:18px;color:#6b4a2f;background:#fff7ed;border:1px solid #ffd9bd;border-radius:10px}.ai-note svg{flex:0 0 16px;margin-top:2px;color:#b34700}@media(max-width:980px){.ai-hero{grid-template-columns:1fr}.ai-hero-art{display:none}.ai-capabilities,.ai-demo{grid-template-columns:1fr}}@media(max-width:720px){.ai-hero{padding:24px}.ai-hero-copy h1{font-size:26px;line-height:33px}}.lang-switch{display:inline-flex;flex:0 0 auto;padding:2px;background:#e9edf3;border-radius:7px}.lang-switch button{padding:5px 8px;font:inherit;font-size:10px;font-weight:700;letter-spacing:.04em;color:#5b6574;background:transparent;border:0;border-radius:5px;cursor:pointer}.lang-switch button.active{color:#041533;background:#fff;box-shadow:0 1px 3px #0415332e}.lang-switch.compact button{padding:4px 7px}.student-header .lang-switch{background:#ffffff1f}.student-header .lang-switch button{color:#ffffffb8}.student-header .lang-switch button.active{color:#041533;background:#fff}.login-lang{position:absolute;top:20px;right:24px;z-index:2}.login-lang .lang-switch{background:#ffffff24}.login-lang .lang-switch button{color:#ffffffbf}.login-lang .lang-switch button.active{color:#041533;background:#fff}@media(max-width:720px){.login-lang{top:12px;right:14px}}.legal-translation-note{margin-top:10px;padding:10px 12px;font-size:12px;line-height:18px;color:#6b4a2f;background:#fff7ed;border-left:3px solid #f86800;border-radius:4px}@media(max-width:720px){.banner{height:270px}.banner-slide{padding:22px 52px;align-items:flex-start}.banner-copy{max-width:100%}.banner-copy h2{font-size:20px;line-height:26px}.banner-copy p{font-size:12px;line-height:18px}.banner-cta{margin-top:12px;padding:8px 14px;font-size:12px}.banner-mark{display:none}.banner-arrow{width:30px;height:30px}}.coach-avatar{position:relative;display:grid;flex:0 0 auto;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 35%,#fff7ed,#ffe8d2 58%,#ffd9bd);border:1px solid #ffd9bd;border-radius:50%;box-shadow:0 16px 36px #0415331f}.coach-avatar svg{width:100%;height:100%;display:block}.coach-avatar.speaking .coach-mouth{animation:coachTalk .28s ease-in-out infinite alternate}@keyframes coachTalk{0%{transform:scaleY(.55)}to{transform:scaleY(1.25)}}.coach-mouth{transform-box:fill-box;transform-origin:center}.coach-bubble{position:relative;max-width:320px;padding:16px 18px;font-size:14px;line-height:22px;color:#263244;background:#fff;border:1px solid #e5e9f0;border-radius:16px;box-shadow:0 10px 28px #04153314}.coach-bubble.success{background:#f0fdf4;border-color:#b7e4c7;color:#14532d}.coach-bubble.error{background:#fff7ed;border-color:#ffd9bd;color:#7c2d12}.coach-bubble-tail{position:absolute;top:-8px;left:34px;width:16px;height:16px;background:inherit;border-left:1px solid #e5e9f0;border-top:1px solid #e5e9f0;transform:rotate(45deg)}.coach-bubble.success .coach-bubble-tail{border-color:#b7e4c7}.coach-bubble.error .coach-bubble-tail{border-color:#ffd9bd}.ai-lesson-page{max-width:1100px;margin:0 auto}.ai-lesson-top{display:flex;align-items:center;gap:14px;margin-bottom:16px}.ai-lesson-progress{flex:1;height:10px;overflow:hidden;background:#e8ecf2;border-radius:999px}.ai-lesson-progress span{display:block;height:100%;background:linear-gradient(90deg,#f86800,#b34700);border-radius:999px;transition:width .35s ease}.ai-lesson-count{font-size:12px;font-weight:700;color:#5b6574;white-space:nowrap}.ai-lesson-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px;align-items:start}.ai-lesson-coach{position:sticky;top:78px;display:flex;flex-direction:column;align-items:center;gap:14px;padding:22px;background:#fff;border:1px solid #e5e9f0;border-radius:18px;box-shadow:0 18px 40px #04153312}.ai-lesson-coach .coach-avatar{width:190px;height:200px}.ai-lesson-coach .coach-bubble{width:100%;max-width:none}.ai-lesson-panel{min-height:480px;padding:28px;background:#fff;border:1px solid #e5e9f0;border-radius:18px;box-shadow:0 18px 44px #04153312}.ai-lesson-pick h1,.ai-lesson-intro h1,.ai-lesson-summary h1{margin-top:4px;font-size:30px;line-height:37px;letter-spacing:-.03em;color:#041533}.ai-lesson-pick>p,.ai-lesson-intro>p{max-width:560px;margin-top:8px;font-size:14px;line-height:22px;color:#5b6574}.ai-lesson-list{display:flex;flex-direction:column;gap:10px;margin-top:22px}.ai-lesson-choice{display:grid;grid-template-columns:auto 1fr auto;gap:6px 12px;align-items:center;width:100%;padding:16px;font:inherit;text-align:left;color:#263244;background:#fff;border:1px solid #e5e9f0;border-radius:12px;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .12s ease}.ai-lesson-choice:hover{background:#fffaf6;border-color:#f0a36b;transform:translateY(-1px)}.ai-lesson-choice strong{grid-column:2;font-size:15px;color:#041533}.ai-lesson-choice span:not(.student-level-pill){grid-column:2;font-size:12px;line-height:18px;color:#5b6574}.ai-lesson-choice svg{grid-column:3;grid-row:1 / span 2;color:#b34700}.ai-lesson-meta{display:flex;flex-wrap:wrap;gap:14px;margin:18px 0 22px}.ai-lesson-meta span{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#5b6574}.ai-lesson-meta svg{color:#b34700}.ai-lesson-type{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#b34700;background:#fff2e6;border-radius:999px}.ai-lesson-exercise h2{margin-top:12px;font-size:22px;line-height:30px;letter-spacing:-.02em;color:#041533}.ai-lesson-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}.ai-lesson-option{padding:14px 16px;font:inherit;font-size:14px;line-height:20px;color:#263244;text-align:left;background:#fff;border:2px solid #e5e9f0;border-radius:12px;cursor:pointer;transition:border-color .15s ease,background .15s ease}.ai-lesson-option:hover{border-color:#f0a36b}.ai-lesson-option.selected{color:#041533;background:#fff7ed;border-color:#f86800;box-shadow:0 0 0 3px #f868001f}.ai-lesson-answer{display:flex;flex-direction:column;gap:7px;margin-top:20px;font-size:13px;font-weight:500;color:#334155}.ai-lesson-answer input{height:48px;padding:0 14px;font:inherit;font-size:15px;color:#111827;border:2px solid #e5e9f0;border-radius:10px}.ai-lesson-answer input:focus{outline:none;border-color:#f86800;box-shadow:0 0 0 3px #f8680024}.ai-lesson-feedback{margin-top:20px;padding:16px 18px;border-radius:12px}.ai-lesson-feedback.ok{color:#14532d;background:#f0fdf4;border:1px solid #b7e4c7}.ai-lesson-feedback.bad{color:#7c2d12;background:#fff7ed;border:1px solid #ffd9bd}.ai-lesson-feedback strong{display:inline-flex;align-items:center;gap:7px;font-size:15px}.ai-lesson-feedback p{margin-top:7px;font-size:13px;line-height:21px}.ai-lesson-expected strong{color:#041533}.ai-lesson-explanation{color:#4b5563}.ai-lesson-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.ai-lesson-summary{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px;text-align:center}.ai-lesson-summary h1{font-size:30px}.ai-lesson-score{display:flex;flex-direction:column;align-items:center;gap:2px;margin:8px 0 4px;padding:16px 30px;background:#fff7ed;border:1px solid #ffd9bd;border-radius:14px}.ai-lesson-score strong{font-size:34px;color:#b34700}.ai-lesson-score span{font-size:12px;color:#5b6574}.ai-lesson-chat{position:fixed;right:24px;bottom:24px;z-index:500;display:flex;flex-direction:column;width:min(420px,calc(100vw - 32px));max-height:min(620px,calc(100vh - 100px));overflow:hidden;background:#fff;border:1px solid #e5e9f0;border-radius:16px;box-shadow:0 28px 70px #0415333d}.ai-lesson-chat-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;background:#041533;color:#fff}.ai-lesson-chat-head strong{display:block;font-size:14px}.ai-lesson-chat-head span{display:block;margin-top:2px;font-size:11px;color:#ffffffb3}.ai-lesson-chat-head .icon-btn{color:#fff}.ai-lesson-chat-body{flex:1;display:flex;flex-direction:column;gap:10px;padding:16px;overflow-y:auto}.ai-lesson-chat-message{max-width:92%;padding:10px 12px;font-size:12px;line-height:19px;border-radius:10px}.ai-lesson-chat-message strong{display:block;margin-bottom:3px;font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:#5b6574}.ai-lesson-chat-message p{white-space:pre-wrap;color:#263244}.ai-lesson-chat-message.assistant{align-self:flex-start;background:#f8fafc;border:1px solid #e5e9f0}.ai-lesson-chat-message.user{align-self:flex-end;background:#fff7ed;border:1px solid #ffd9bd}.ai-lesson-chat-form{display:flex;gap:8px;padding:12px;border-top:1px solid #eef1f5}.ai-lesson-chat-form input{flex:1;min-width:0;height:40px;padding:0 10px;font:inherit;font-size:12px;border:1px solid #d6dbe4;border-radius:8px}.ai-lesson-chat-form input:focus{outline:none;border-color:#f86800;box-shadow:0 0 0 3px #f868001f}@media(max-width:900px){.ai-lesson-layout{grid-template-columns:1fr}.ai-lesson-coach{position:static;display:grid;grid-template-columns:130px 1fr;gap:14px;align-items:center;padding:16px}.ai-lesson-coach .coach-avatar{width:120px;height:128px}.ai-lesson-coach .coach-bubble{max-width:none}.ai-lesson-coach>.btn{grid-column:1 / -1;justify-self:start}}@media(max-width:720px){.ai-lesson-panel{padding:20px;min-height:0}.ai-lesson-pick h1,.ai-lesson-intro h1,.ai-lesson-summary h1{font-size:24px;line-height:30px}.ai-lesson-options{grid-template-columns:1fr}.ai-lesson-exercise h2{font-size:19px;line-height:26px}.ai-lesson-chat{right:8px;bottom:8px;max-height:calc(100vh - 90px)}}@media(prefers-reduced-motion:reduce){.coach-avatar.speaking .coach-mouth{animation:none}.ai-lesson-progress span,.ai-lesson-choice{transition:none}}.ai-lesson-top-spacer{flex:1}.level-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;height:94px;padding:0 16px;text-align:left;cursor:pointer}.level-card.open{border-color:#f0a36b;box-shadow:0 8px 22px #b347001f}.level-card-meta{font-size:13px;font-weight:600;color:#94a0b0}.level-card svg.rotated{transform:rotate(90deg)}.level-card svg{transition:transform .16s ease}.level-circle.compact{font-size:12.5px;letter-spacing:-.02em}.level-lessons{margin-top:6px;padding:22px;background:#fff;border:1px solid #e5e9f0;border-radius:16px;box-shadow:0 14px 34px #0415330f}.level-lessons-head{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:16px}.level-lessons-head strong{font-size:16px;color:#041533}.level-lessons-head p{margin-top:3px;font-size:12px;color:#5b6574}.level-lessons-list{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.level-lesson-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:14px 16px;color:inherit;text-decoration:none;background:#fff;border:1px solid #e5e9f0;border-radius:12px;transition:border-color .15s ease,background .15s ease,transform .12s ease}.level-lesson-row:hover{background:#fffaf6;border-color:#f0a36b;transform:translateY(-1px)}.level-lesson-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.level-lesson-copy strong{font-size:14px;color:#041533}.level-lesson-copy>span{overflow:hidden;font-size:12px;line-height:18px;color:#5b6574;text-overflow:ellipsis;white-space:nowrap}.level-lesson-counts{display:flex;flex-direction:column;gap:2px;font-size:11px;color:#7a8698;text-align:right;white-space:nowrap}.level-lesson-row>svg{color:#b34700}.level-lessons-empty{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:22px;background:#fffaf6;border:1px dashed #ffd9bd;border-radius:12px}.level-lessons-empty svg{color:#b34700}.level-lessons-empty strong{font-size:14px;color:#041533}.level-lessons-empty p{font-size:12px;line-height:19px;color:#5b6574}.level-lessons-groups{display:flex;flex-direction:column;gap:20px}.level-lessons-group{display:flex;flex-direction:column;gap:8px}.level-lessons-tag{align-self:flex-start;padding:3px 9px;font-size:10px;font-weight:700;letter-spacing:.06em;color:#b34700;background:#fff2e6;border-radius:999px}@media(max-width:720px){.level-lesson-row{grid-template-columns:minmax(0,1fr) auto}.level-lesson-counts{display:none}.level-lessons{padding:16px}}@media(prefers-reduced-motion:reduce){.level-card svg,.level-lesson-row{transition:none}}.group-remove{margin-top:10px}.temp-password{padding:14px;font-family:JetBrains Mono,Consolas,monospace;font-size:20px;letter-spacing:.08em;text-align:center;color:#041533;background:#f8fafc;border:1px dashed #94a3b8;border-radius:10px;-webkit-user-select:all;user-select:all}.empty-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:16px}@media(max-width:720px){.temp-password{font-size:17px}}.overlay{z-index:200}.drawer{z-index:210}.modal{z-index:220}.toast-stack{z-index:300}@media(max-width:900px){.sidebar{z-index:205}}.student-password-btn{padding:7px 9px}
