@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{font-family:Inter,system-ui,sans-serif;color:#172033;background:#f4f6fb;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:#101827;color:#fff;padding:26px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 28px}.brand-mark{width:43px;height:43px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#7655f3,#9a7cff)}.brand strong,.brand span{display:block}.brand strong{font-size:17px}.brand span{color:#91a0b8;font-size:11px;margin-top:3px}nav{display:grid;gap:6px}.nav-item{width:100%;border:0;background:transparent;color:#aeb9ca;border-radius:12px;padding:12px 13px;display:flex;gap:11px;align-items:center;text-align:left}.nav-item:hover,.nav-item.active{background:#202b3e;color:#fff}.nav-item.active{box-shadow:inset 3px 0 #9275ff}.sidebar-footer{margin-top:auto;display:grid;gap:13px}.profile-card{background:#192338;border:1px solid #29354b;padding:12px;border-radius:14px;display:flex;gap:10px;align-items:center}.profile-card strong,.profile-card span{display:block}.profile-card span{font-size:12px;color:#9ca9bc;margin-top:3px}main{padding:34px 42px 50px;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;margin-bottom:0}.eyebrow{color:#8d98aa;letter-spacing:.12em;font-size:10px;font-weight:800;margin-bottom:7px}.primary-button,.secondary-button,.ghost-button,.cancel-button{border:0;border-radius:12px;display:inline-flex;gap:8px;align-items:center;justify-content:center;font-weight:700}.primary-button{background:#7655f3;color:#fff;padding:12px 17px;box-shadow:0 10px 24px #7655f33d}.secondary-button{width:100%;padding:11px;margin-top:13px;color:#684be1;background:#eeeaff}.secondary-button.compact{width:auto;margin:0;padding:9px 12px}.cancel-button{padding:12px 17px;background:#eef1f6;color:#596579}.back-button{border:0;background:transparent;color:#7655f3;font-weight:700;padding:0;margin-bottom:10px;display:flex;align-items:center;gap:6px}.hero-card{background:linear-gradient(120deg,#7655f3,#5b43c8);color:#fff;padding:27px 30px;border-radius:22px;display:flex;justify-content:space-between;align-items:end;box-shadow:0 18px 45px #5b43c82e}.hero-card h2{font-size:27px;margin:12px 0 8px}.hero-card p{margin-bottom:0;color:#e8e2ff}.pill{background:#ffffff29;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:700}.ghost-button{background:#ffffff21;color:#fff;padding:11px 14px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}.stat-card,.panel{background:#fff;border:1px solid #e7eaf0;box-shadow:0 8px 28px #1f2a440a}.stat-card{border-radius:17px;padding:19px}.stat-card span,.stat-card strong,.stat-card small{display:block}.stat-card span{color:#778195;font-size:13px}.stat-card strong{font-size:27px;margin:9px 0 6px}.stat-card small{color:#6e7a8f;font-size:11px}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px}.panel{border-radius:19px;padding:21px}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px}.panel-heading h3{margin-bottom:0;font-size:18px}.search-box{display:flex;align-items:center;gap:7px;background:#f5f7fb;border:1px solid #e6e9f0;border-radius:11px;padding:8px 10px;color:#8b95a7}.search-box input{border:0;outline:none;background:transparent;width:210px}.student-list{display:grid}.student-row{display:grid;grid-template-columns:42px minmax(135px,1.25fr) minmax(130px,.9fr) minmax(120px,.9fr) 32px;gap:12px;align-items:center;padding:16px 2px;border-top:1px solid #eff1f5}.avatar{width:39px;height:39px;border-radius:13px;display:grid;place-items:center;background:#eeeaff;color:#694ae4;font-weight:800;font-size:12px}.avatar.large{width:72px;height:72px;border-radius:22px;font-size:20px}.student-main strong,.student-main span,.next-class strong,.next-class span{display:block}.student-main strong,.next-class strong{font-size:13px}.student-main span,.next-class span{color:#8b95a7;font-size:11px;margin-top:5px}.progress-meta{display:flex;justify-content:space-between;font-size:10px;color:#8b95a7;margin-bottom:6px}.progress-meta strong{color:#4f596b}.progress-track{height:6px;background:#edf0f5;border-radius:99px;overflow:hidden}.progress-track div{height:100%;border-radius:inherit;background:linear-gradient(90deg,#7655f3,#9b86fb)}.icon-button{width:31px;height:31px;border:0;border-radius:10px;background:#f3f5f9;color:#7b8597;display:grid;place-items:center}.schedule-panel{align-self:start}.timeline-item{display:grid;grid-template-columns:46px 10px 1fr;gap:10px;padding:13px 0;align-items:start}.timeline-time{font-size:12px;font-weight:700;color:#626d80}.timeline-dot{width:9px;height:9px;border-radius:50%;background:#7655f3;margin-top:4px;box-shadow:0 0 0 5px #eeeaff}.timeline-item strong,.timeline-item span{display:block}.timeline-item strong{font-size:13px}.timeline-item span{font-size:11px;color:#8b95a7;margin-top:5px}.empty-state{text-align:center;padding:50px 20px;color:#7e899b}.empty-state h2,.empty-state h3{color:#263147;margin:12px 0 8px}.empty-state p{margin:0}.empty-state.small{padding:35px 15px}.placeholder{min-height:420px;display:grid;place-content:center}.profile-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:18px}.student-summary{align-self:start}.profile-identity{display:flex;align-items:center;gap:16px;margin-bottom:24px}.profile-identity h2{margin:8px 0 5px}.profile-identity p{color:#7e899b;margin:0}.status-badge{font-size:10px;font-weight:800;color:#237a4b;background:#e6f7ee;border-radius:999px;padding:5px 8px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail{background:#f7f8fb;border-radius:13px;padding:13px}.detail span,.detail strong{display:block}.detail span{font-size:10px;color:#8b95a7;margin-bottom:5px}.detail strong{font-size:13px}.note-box{margin-top:18px;padding-top:18px;border-top:1px solid #eceff4}.note-box strong{font-size:13px}.note-box p{color:#6f7a8d;font-size:13px;line-height:1.55;margin:7px 0 0}.overall-score{font-size:25px;color:#7655f3}.skill-list{display:grid;gap:15px}.skill-row div{display:flex;justify-content:space-between;margin-bottom:7px}.skill-row strong,.skill-row span{font-size:12px}.skill-row span{color:#7655f3;font-weight:700}.skill-row input{width:100%;accent-color:#7655f3}.lessons-panel{grid-column:1/-1}.lesson-list{display:grid;gap:10px}.lesson-card{display:grid;grid-template-columns:100px 1fr;gap:17px;padding:16px;background:#f8f9fc;border-radius:14px}.lesson-card time{font-size:11px;font-weight:700;color:#7655f3}.lesson-card strong{font-size:14px}.lesson-card p{font-size:12px;color:#6d788b;margin:6px 0}.lesson-card small{font-size:11px;color:#596579}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#090f1b8c;display:grid;place-items:center;padding:20px;z-index:30}.modal{width:min(650px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;padding:24px;box-shadow:0 25px 80px #00000040}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.modal-header h2{font-size:21px;margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{display:grid;gap:7px;color:#536075;font-size:12px;font-weight:700}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #dfe4ec;border-radius:11px;padding:11px 12px;background:#fafbfc;color:#172033;outline:none}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#8d75ed;box-shadow:0 0 0 3px #eeeaff}.full-field,.form-actions{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.schedule-panel{width:100%}.profile-layout{grid-template-columns:1fr}}@media(max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}nav{grid-template-columns:repeat(2,1fr)}.sidebar-footer{margin-top:18px}main{padding:24px 18px}.hero-card,.topbar{align-items:flex-start;gap:18px}.hero-card{flex-direction:column}.student-row{grid-template-columns:42px 1fr 32px}.progress-wrap,.next-class{grid-column:2/3}.icon-button{grid-column:3;grid-row:1}.form-grid{grid-template-columns:1fr}.form-grid>*{grid-column:1!important}.detail-grid,.lesson-card{grid-template-columns:1fr}.search-box input{width:130px}}.agenda-layout{display:grid;gap:18px}.agenda-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px}.week-controls,.agenda-filters{display:flex;align-items:center;gap:9px}.week-controls>div{margin-left:5px}.week-controls .eyebrow{margin-bottom:4px}.week-controls strong{font-size:14px}.today-button{border:1px solid #e1e5ec;background:#fff;color:#596579;border-radius:10px;padding:7px 10px;font-size:12px;font-weight:700}.agenda-filters select{border:1px solid #e1e5ec;background:#f8f9fc;color:#536075;border-radius:10px;padding:9px 11px;outline:none}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr));gap:10px;overflow-x:auto;padding-bottom:4px}.day-column{min-height:410px;background:#fff;border:1px solid #e7eaf0;border-radius:17px;padding:12px;box-shadow:0 8px 28px #1f2a4409}.day-column.today{border-color:#a995f5;box-shadow:0 8px 28px #7655f317}.day-column header{display:flex;justify-content:space-between;align-items:center;padding:2px 3px 12px;border-bottom:1px solid #eef0f4}.day-column header span{text-transform:capitalize;color:#8b95a7;font-size:11px;font-weight:700}.day-column header strong{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;font-size:13px}.day-column.today header strong{background:#7655f3;color:#fff}.day-lessons{display:grid;gap:9px;padding-top:11px}.free-day{color:#b2bac7;text-align:center;font-size:11px;padding:28px 0}.agenda-card{position:relative;border-left:3px solid #7655f3;border-radius:11px;background:#f7f5ff;padding:10px 9px;display:grid;gap:5px;overflow:hidden}.agenda-card.concluida{border-color:#35a36b;background:#eef9f3}.agenda-card.cancelada{border-color:#aab2bf;background:#f4f5f7;opacity:.72}.agenda-time{display:flex;align-items:center;gap:4px;color:#7655f3;font-size:9px;font-weight:800}.agenda-card strong{font-size:11px}.agenda-card span{font-size:9px;color:#6f7a8d;line-height:1.4}.agenda-card em{width:max-content;border-radius:99px;background:#ece8ff;color:#684be1;padding:3px 5px;font-size:8px;font-style:normal;font-weight:800}.agenda-card.concluida em{background:#daf3e5;color:#237a4b}.agenda-card.cancelada em{background:#e5e8ed;color:#667185}.agenda-actions{display:flex;gap:4px;margin-top:3px}.agenda-actions button{width:24px;height:24px;border:0;border-radius:7px;background:#fff;color:#697589;display:grid;place-items:center}.agenda-actions button:hover{color:#684be1;box-shadow:0 2px 8px #1f2a441f}.completion-summary{display:flex;align-items:center;gap:11px;background:#f5f2ff;color:#684be1;border-radius:13px;padding:13px;margin-bottom:18px}.completion-summary strong,.completion-summary span{display:block}.completion-summary strong{font-size:13px}.completion-summary span{font-size:11px;color:#7e72ab;margin-top:4px}@media(max-width:760px){.agenda-toolbar{align-items:stretch;flex-direction:column}.agenda-filters select{min-width:0;width:50%}.week-grid{grid-template-columns:repeat(7,150px)}.day-column{min-height:300px}}.danger-button{border:0;border-radius:12px;background:#dc3545;color:#fff;padding:11px 15px;display:inline-flex;gap:7px;align-items:center;justify-content:center;font-weight:700}.danger-button:hover{background:#c72f3e}.student-delete{width:100%;margin-top:20px;background:#fff0f1;color:#c92f3e;box-shadow:none}.student-delete:hover{background:#ffe4e7}.delete-warning{display:flex;gap:14px;align-items:flex-start;background:#fff5f6;border:1px solid #ffdadd;border-radius:15px;padding:16px;margin-bottom:22px}.delete-warning-icon{width:42px;height:42px;flex:0 0 auto;border-radius:12px;background:#ffe3e6;color:#cf3342;display:grid;place-items:center}.delete-warning strong{font-size:14px}.delete-warning p{color:#7c5960;font-size:12px;line-height:1.55;margin:7px 0 0}.lesson-links{display:grid;gap:4px;margin-top:3px}.lesson-links a{width:max-content;max-width:100%;display:flex;align-items:center;gap:4px;color:#5d46bf;background:#fff;border-radius:7px;padding:5px 6px;font-size:8px;font-weight:800;text-decoration:none}.lesson-links a:hover{color:#432ca6;box-shadow:0 2px 8px #1f2a441f}.materials-layout{display:grid;gap:18px}.materials-hero{background:linear-gradient(120deg,#1d8b79,#176d78);color:#fff;border-radius:20px;padding:24px 27px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 16px 40px #176d7829}.materials-hero .eyebrow{color:#bdebe3}.materials-hero h2{margin-bottom:7px}.materials-hero p{margin-bottom:0;color:#d9f3ef;font-size:13px}.materials-total{min-width:115px;text-align:center;background:#ffffff21;border-radius:16px;padding:14px}.materials-total strong,.materials-total span{display:block}.materials-total strong{font-size:28px}.materials-total span{font-size:10px;margin-top:4px;color:#d9f3ef}.materials-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px}.material-filters{display:flex;gap:9px}.material-filters select{border:1px solid #e1e5ec;background:#f8f9fc;color:#536075;border-radius:10px;padding:9px 11px;outline:none}.materials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.material-card{background:#fff;border:1px solid #e7eaf0;border-radius:18px;padding:18px;box-shadow:0 8px 28px #1f2a440a;display:flex;flex-direction:column;min-height:260px}.material-icon{width:46px;height:46px;border-radius:14px;background:#eeeaff;color:#684be1;display:grid;place-items:center;margin-bottom:13px}.material-icon.type-video{background:#ffecee;color:#cf4656}.material-icon.type-audio{background:#e8f6ff;color:#277ba7}.material-icon.type-atividade{background:#eaf8f1;color:#27835a}.material-icon.type-link{background:#fff5dc;color:#a87513}.material-tags{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:10px}.material-tags span{font-size:8px;font-weight:800;color:#697589;background:#f1f3f7;border-radius:99px;padding:4px 6px}.material-card h3{font-size:15px;margin-bottom:7px}.material-card p{font-size:11px;line-height:1.5;color:#707c8f;margin-bottom:12px}.material-card small{font-size:9px;color:#9aa3b2;margin-top:auto}.material-actions{display:flex;gap:7px;margin-top:14px}.material-actions a{flex:1;border-radius:10px;background:#eeeaff;color:#684be1;padding:9px 10px;display:flex;gap:6px;align-items:center;justify-content:center;font-size:11px;font-weight:800;text-decoration:none}.material-actions button{width:34px;border:0;border-radius:10px;background:#fff0f1;color:#c92f3e;display:grid;place-items:center}.material-actions a:hover{background:#e4defe}.material-actions button:hover{background:#ffe2e5}@media(max-width:1100px){.materials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.materials-hero,.materials-toolbar{align-items:stretch;flex-direction:column}.materials-total{text-align:left}.materials-toolbar .search-box input{width:100%}.material-filters select{width:50%;min-width:0}.materials-grid{grid-template-columns:1fr}}.progress-page{display:grid;gap:18px}.progress-hero{background:linear-gradient(120deg,#6250c9,#3d429f);color:#fff;border-radius:21px;padding:25px 28px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 16px 40px #3d429f2e}.progress-hero .eyebrow{color:#c9c3ff}.progress-hero h2{margin-bottom:7px}.progress-hero p{margin-bottom:0;color:#dedaff;font-size:13px}.progress-score{width:125px;height:100px;border-radius:18px;background:#ffffff21;display:grid;place-content:center;text-align:center}.progress-score strong{font-size:30px}.progress-score span{font-size:10px;color:#dedaff}.progress-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.progress-stats article{background:#fff;border:1px solid #e7eaf0;border-radius:17px;padding:17px;box-shadow:0 8px 28px #1f2a440a;display:grid;grid-template-columns:39px 1fr;column-gap:10px}.progress-stats article>div{grid-row:1/4;width:39px;height:39px;border-radius:12px;background:#eeeaff;color:#684be1;display:grid;place-items:center}.progress-stats span,.progress-stats strong,.progress-stats small{grid-column:2}.progress-stats span{font-size:9px;color:#8b95a7;font-weight:700}.progress-stats strong{font-size:14px;margin:3px 0}.progress-stats small{font-size:9px;color:#707c8f}.progress-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.7fr);gap:18px}.skill-overview select{border:1px solid #e1e5ec;background:#f8f9fc;color:#536075;border-radius:10px;padding:8px 10px}.skill-chart{display:grid;gap:15px}.skill-bar>div:first-child{display:flex;justify-content:space-between;margin-bottom:7px}.skill-bar strong,.skill-bar span{font-size:11px}.skill-bar>div:first-child span{color:#684be1;font-weight:800}.skill-bar-track{height:9px;background:#edf0f5;border-radius:99px;overflow:hidden}.skill-bar-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7655f3,#9d8cff)}.level-list{display:grid;gap:15px}.level-row{display:grid;grid-template-columns:25px 1fr 20px;align-items:center;gap:9px}.level-row strong{font-size:11px}.level-row>div{height:7px;background:#edf0f5;border-radius:99px;overflow:hidden}.level-row>div span{display:block;height:100%;background:#2b9b86;border-radius:inherit}.level-row em{font-size:10px;color:#7b8799;font-style:normal;text-align:right}.results-count{font-size:10px;color:#7b8799;background:#f2f4f8;border-radius:99px;padding:5px 8px}.progress-student-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.progress-student-card{border:1px solid #e9ecf1;border-radius:15px;padding:14px;background:#fafbfc}.progress-student-heading{display:grid;grid-template-columns:39px 1fr auto;align-items:center;gap:9px}.progress-student-heading strong,.progress-student-heading span{display:block}.progress-student-heading strong{font-size:12px}.progress-student-heading span{font-size:9px;color:#8994a6;margin-top:4px}.progress-student-heading b{font-size:16px;color:#684be1}.student-progress-track{height:6px;background:#e9edf3;border-radius:99px;overflow:hidden;margin:12px 0 9px}.student-progress-track span{display:block;height:100%;background:linear-gradient(90deg,#7655f3,#9d8cff);border-radius:inherit}.progress-student-meta{display:flex;justify-content:space-between;color:#7d8899;font-size:9px}.progress-student-meta strong{color:#536075}.progress-student-card button{width:100%;border:0;border-radius:9px;background:#eeeaff;color:#684be1;padding:8px;margin-top:12px;display:flex;align-items:center;justify-content:center;gap:4px;font-size:10px;font-weight:800}@media(max-width:1100px){.progress-grid{grid-template-columns:1fr}.progress-student-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.progress-hero{align-items:stretch;flex-direction:column;gap:18px}.progress-score{width:100%;height:auto;padding:14px}.progress-stats,.progress-student-grid{grid-template-columns:1fr}}.reports-page{display:grid;gap:18px}.reports-controls{display:grid;gap:15px}.report-tabs{display:flex;gap:7px}.report-tabs button{border:0;border-radius:10px;background:#f0f2f6;color:#697589;padding:9px 12px;font-size:11px;font-weight:800}.report-tabs button.active{background:#7655f3;color:#fff}.report-filters{display:flex;align-items:end;gap:9px;flex-wrap:wrap}.report-filters label{display:grid;gap:5px;color:#7d8899;font-size:9px;font-weight:800}.report-filters input,.report-filters select{border:1px solid #e1e5ec;background:#fafbfc;color:#536075;border-radius:10px;padding:9px 10px}.print-button,.copy-button{border:0;border-radius:10px;padding:10px 12px;display:flex;gap:6px;align-items:center;font-size:10px;font-weight:800}.print-button{background:#172033;color:#fff}.copy-button{background:#eeeaff;color:#684be1}.report-sheet{background:#fff;border:1px solid #e3e7ed;border-radius:20px;padding:30px;box-shadow:0 12px 35px #1f2a440f;display:grid;gap:24px}.report-header{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #eeeaff;padding-bottom:18px;color:#684be1}.report-header span{font-size:9px;letter-spacing:.16em;font-weight:800}.report-header h2{color:#172033;margin:6px 0 5px}.report-header p{color:#7b8799;font-size:11px;margin:0}.report-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.report-metrics>div{background:#f6f7fa;border-radius:12px;padding:12px}.report-metrics span,.report-metrics strong{display:block}.report-metrics span{font-size:8px;color:#8994a6;font-weight:700;margin-bottom:6px}.report-metrics strong{font-size:15px}.report-columns{display:grid;grid-template-columns:1fr 1fr;gap:25px}.report-columns article>h3{font-size:14px;margin-bottom:15px}.report-skills{display:grid;gap:12px}.report-table{display:grid;border-top:1px solid #edf0f4}.report-table-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 2px;border-bottom:1px solid #edf0f4}.report-table-row strong,.report-table-row span{display:block}.report-table-row strong{font-size:11px}.report-table-row span{font-size:9px;color:#8994a6;margin-top:4px}.report-table-row b{font-size:10px;color:#684be1}.individual-report-header{display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:15px}.individual-report-header h2{margin:7px 0 4px}.individual-report-header p{color:#7d8899;font-size:11px;margin:0}.individual-report-header>strong{font-size:28px;color:#684be1}.report-note{background:#f7f8fb;border-radius:12px;padding:13px;color:#667185;font-size:11px;line-height:1.6}.report-history{display:grid;gap:9px}.report-history>div{background:#f7f8fb;border-radius:12px;padding:12px}.report-history time,.report-history strong,.report-history small{display:block}.report-history time{color:#684be1;font-size:8px;font-weight:800}.report-history strong{font-size:11px;margin-top:5px}.report-history p,.report-history small{color:#707c8f;font-size:9px;margin:5px 0 0}@media(max-width:1100px){.report-metrics{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.report-filters{align-items:stretch;flex-direction:column}.report-filters>*{width:100%}.report-tabs button{flex:1}.report-sheet{padding:20px}.report-metrics,.report-columns{grid-template-columns:1fr}.individual-report-header{grid-template-columns:72px 1fr}.individual-report-header>strong{grid-column:1/-1}}@media print{body{background:#fff}.sidebar,.topbar,.no-print{display:none!important}.app-shell{display:block}.app-shell main{padding:0}.reports-page{display:block}.report-sheet{border:0;box-shadow:none;border-radius:0;padding:0}.report-columns{break-inside:avoid}.report-sheet *{print-color-adjust:exact;-webkit-print-color-adjust:exact}}.settings-page{display:grid;gap:18px}.settings-hero{background:linear-gradient(120deg,#24334d,#172033);color:#fff;border-radius:21px;padding:24px 27px;display:flex;align-items:center;justify-content:space-between;gap:20px}.settings-hero .eyebrow{color:#aeb9ca}.settings-hero h2{margin-bottom:7px}.settings-hero p{color:#b9c3d2;font-size:12px;margin:0}.settings-save{border:0;border-radius:12px;background:#7655f3;color:#fff;padding:11px 15px;display:flex;align-items:center;gap:7px;font-weight:800;white-space:nowrap}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.settings-card-heading{display:flex;gap:11px;align-items:center;border-bottom:1px solid #edf0f4;padding-bottom:15px;margin-bottom:17px}.settings-card-icon{width:41px;height:41px;flex:0 0 auto;border-radius:13px;background:#eeeaff;color:#684be1;display:grid;place-items:center}.settings-card-heading h3{font-size:15px;margin-bottom:4px}.settings-card-heading p{font-size:10px;color:#8994a6;margin:0}.settings-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.settings-fields>label:not(.toggle-setting){display:grid;gap:6px;color:#647084;font-size:10px;font-weight:800}.settings-fields input,.settings-fields select{width:100%;border:1px solid #dfe4ec;border-radius:10px;background:#fafbfc;color:#172033;padding:10px;outline:none}.settings-fields input:focus,.settings-fields select:focus{border-color:#8d75ed;box-shadow:0 0 0 3px #eeeaff}.wide-setting{grid-column:1/-1}.toggle-setting{position:relative;display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid #e8ebf0;background:#fafbfc;border-radius:12px;padding:12px;cursor:pointer}.toggle-setting strong,.toggle-setting span{display:block}.toggle-setting strong{font-size:11px}.toggle-setting span{font-size:9px;color:#8994a6;margin-top:4px}.toggle-setting input{position:absolute;opacity:0;pointer-events:none}.toggle-setting i{width:38px;height:22px;flex:0 0 auto;border-radius:99px;background:#d8dde5;position:relative;transition:.2s}.toggle-setting i:after{content:"";position:absolute;width:16px;height:16px;top:3px;left:3px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0000002e;transition:.2s}.toggle-setting input:checked+i{background:#7655f3}.toggle-setting input:checked+i:after{transform:translate(16px)}.data-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.data-summary span{background:#f6f7fa;border-radius:11px;padding:11px;color:#7c8799;font-size:9px}.data-summary strong{display:block;color:#172033;font-size:18px;margin-bottom:4px}.data-actions{display:flex;gap:8px;margin-top:15px}.export-button{border:0;border-radius:11px;background:#eaf8f1;color:#237a58;padding:10px 13px;display:flex;align-items:center;gap:6px;font-size:10px;font-weight:800}.data-actions .danger-button{font-size:10px;padding:10px 13px}.compact-mode main{padding-top:22px}.compact-mode .panel{padding:16px}.compact-mode .student-row{padding:10px 2px}.compact-mode .stats-grid{margin:13px 0}.compact-mode .settings-page,.compact-mode .progress-page,.compact-mode .materials-layout,.compact-mode .agenda-layout{gap:12px}@media(max-width:1000px){.settings-grid{grid-template-columns:1fr}}@media(max-width:760px){.settings-hero{align-items:stretch;flex-direction:column}.settings-save{justify-content:center}.settings-fields{grid-template-columns:1fr}.settings-fields>*{grid-column:1!important}.data-actions{flex-direction:column}.data-actions button{justify-content:center}}.theme-setting{border:1px solid #e8ebf0;background:#fafbfc;border-radius:12px;padding:12px}.theme-setting>strong,.theme-setting>span{display:block}.theme-setting>strong{font-size:11px}.theme-setting>span{font-size:9px;color:#8994a6;margin-top:4px}.theme-setting>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:11px}.theme-setting button{border:1px solid #e1e5ec;border-radius:9px;background:#fff;color:#697589;padding:9px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:10px;font-weight:800}.theme-setting button.active{border-color:#7655f3;background:#eeeaff;color:#684be1}.compact-mode main{padding:18px 24px 30px}.compact-mode .topbar{margin-bottom:14px}.compact-mode h1{font-size:24px}.compact-mode .sidebar{padding-top:18px}.compact-mode .brand{padding-bottom:17px}.compact-mode .nav-item{padding:8px 11px}.compact-mode .hero-card,.compact-mode .materials-hero,.compact-mode .progress-hero,.compact-mode .settings-hero{padding:18px 21px}.compact-mode .panel{padding:13px}.compact-mode .panel-heading{margin-bottom:9px}.compact-mode .stat-card{padding:13px}.compact-mode .stat-card strong{font-size:22px;margin:5px 0}.compact-mode .student-row{padding:7px 2px}.compact-mode .stats-grid{gap:9px;margin:10px 0}.compact-mode .content-grid,.compact-mode .profile-layout,.compact-mode .settings-grid,.compact-mode .progress-grid{gap:10px}.compact-mode .settings-page,.compact-mode .progress-page,.compact-mode .materials-layout,.compact-mode .agenda-layout,.compact-mode .reports-page{gap:9px}.compact-mode .materials-grid,.compact-mode .progress-student-grid,.compact-mode .week-grid{gap:8px}.compact-mode .material-card{padding:13px;min-height:225px}.compact-mode .day-column{min-height:330px;padding:9px}.compact-mode .skill-chart,.compact-mode .skill-list{gap:9px}.dark-theme{color:#e5e9f2;background:#0d1421}.dark-theme .app-shell{background:#0d1421}.dark-theme main{background:#0d1421}.dark-theme .panel,.dark-theme .stat-card,.dark-theme .material-card,.dark-theme .day-column,.dark-theme .progress-stats article,.dark-theme .report-sheet{background:#151e2d;border-color:#263247;box-shadow:0 8px 28px #0000002e}.dark-theme h1,.dark-theme h2,.dark-theme h3,.dark-theme .student-main strong,.dark-theme .next-class strong,.dark-theme .detail strong,.dark-theme .lesson-card strong,.dark-theme .agenda-card strong,.dark-theme .material-card h3,.dark-theme .progress-student-heading strong,.dark-theme .settings-card-heading h3,.dark-theme .report-header h2,.dark-theme .report-table-row strong,.dark-theme .report-metrics strong{color:#f1f4fa}.dark-theme .eyebrow,.dark-theme .student-main span,.dark-theme .next-class span,.dark-theme .note-box p,.dark-theme .empty-state,.dark-theme .material-card p,.dark-theme .material-card small,.dark-theme .settings-card-heading p,.dark-theme .progress-student-heading span,.dark-theme .report-header p{color:#93a0b5}.dark-theme .search-box,.dark-theme .detail,.dark-theme .lesson-card,.dark-theme .agenda-card.cancelada,.dark-theme .progress-student-card,.dark-theme .report-metrics>div,.dark-theme .report-note,.dark-theme .report-history>div,.dark-theme .data-summary span,.dark-theme .toggle-setting,.dark-theme .theme-setting{background:#101827;border-color:#29364b}.dark-theme .search-box input,.dark-theme input,.dark-theme select,.dark-theme textarea,.dark-theme .settings-fields input,.dark-theme .settings-fields select,.dark-theme .report-filters input,.dark-theme .report-filters select,.dark-theme .agenda-filters select,.dark-theme .material-filters select,.dark-theme .skill-overview select{background:#101827;color:#e5e9f2;border-color:#334157}.dark-theme .student-row,.dark-theme .panel-heading,.dark-theme .settings-card-heading,.dark-theme .note-box,.dark-theme .report-table,.dark-theme .report-table-row{border-color:#29364b}.dark-theme .icon-button,.dark-theme .cancel-button,.dark-theme .today-button{background:#202b3e;color:#b5c0d0}.dark-theme .progress-track,.dark-theme .skill-bar-track,.dark-theme .student-progress-track,.dark-theme .level-row>div{background:#2a3548}.dark-theme .material-tags span,.dark-theme .results-count{background:#263247;color:#b2bdcd}.dark-theme .agenda-card{background:#211e39}.dark-theme .agenda-card.concluida{background:#162d28}.dark-theme .agenda-card.cancelada{background:#202938}.dark-theme .lesson-links a,.dark-theme .agenda-actions button,.dark-theme .theme-setting button{background:#263247;color:#c8bcff}.dark-theme .theme-setting button.active{background:#3a2f72;border-color:#8f78f1}.dark-theme .modal{background:#151e2d;color:#e5e9f2}.dark-theme .modal-header{border-color:#29364b}.dark-theme .form-grid label,.dark-theme .settings-fields>label:not(.toggle-setting){color:#b8c2d1}.dark-theme .report-sheet{color:#e5e9f2}.dark-theme .report-header{border-color:#3a2f72}.dark-theme .profile-card{background:#151e2d}.dark-theme .settings-hero{background:linear-gradient(120deg,#202b3e,#151e2d)}@media print{.dark-theme .report-sheet,.dark-theme .report-sheet *{background:#fff!important;color:#172033!important}}.auth-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:10px;color:#7655f3;font-weight:700}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{min-height:100vh;padding:0;display:grid;grid-template-columns:1.05fr .95fr;background:#fff}.auth-intro{padding:55px 65px;background:linear-gradient(145deg,#101827,#29345d);color:#fff;display:flex;flex-direction:column;justify-content:space-between}.auth-brand{display:flex;align-items:center;gap:9px;color:#fff}.auth-brand strong{font-size:18px}.auth-intro span,.student-welcome span{font-size:9px;letter-spacing:.16em;font-weight:800;color:#a996ff}.auth-intro h1{font-size:48px;line-height:1.08;color:#fff;margin:16px 0}.auth-intro p{max-width:490px;color:#b8c2d2;line-height:1.65}.auth-intro ul{list-style:none;padding:0;display:grid;gap:12px}.auth-intro li{display:flex;align-items:center;gap:9px;color:#dbe0eb;font-size:12px}.auth-form-wrap{display:grid;place-items:center;padding:35px;background:#f5f7fb}.auth-form-card{width:min(420px,100%);background:#fff;border:1px solid #e5e9f0;border-radius:24px;padding:30px;box-shadow:0 20px 55px #1f2a441a}.auth-form-card>p{font-size:11px;color:#7d8899}.auth-form-card form{display:grid;gap:13px;margin-top:22px}.auth-form-card label{display:grid;gap:6px;font-size:10px;color:#5c687b;font-weight:800}.auth-form-card input{border:1px solid #dfe4ec;border-radius:11px;padding:11px;background:#fafbfc}.auth-form-card form>button{border:0;border-radius:11px;padding:12px;background:#7655f3;color:#fff;display:flex;align-items:center;justify-content:center;gap:7px;font-weight:800}.auth-message{background:#f3f0ff;color:#6047c8;border-radius:10px;padding:10px;font-size:10px;line-height:1.5}.auth-switch,.demo-button{width:100%;border:0;background:transparent;color:#684be1;margin-top:14px;font-size:10px;font-weight:800}.demo-button{color:#7e899b;margin-top:8px}.session-actions{position:fixed;right:20px;bottom:20px;z-index:20;display:flex;gap:7px}.session-actions button,.student-portal header button{border:0;border-radius:10px;background:#202b3e;color:#fff;padding:9px 11px;display:flex;align-items:center;gap:6px;font-size:10px;font-weight:800;box-shadow:0 5px 15px #0000002e}.student-portal{min-height:100vh;padding:35px;background:#f4f6fb}.student-portal header{display:flex;align-items:center;justify-content:space-between}.student-portal .auth-brand{color:#172033}.student-welcome{background:linear-gradient(120deg,#7655f3,#5b43c8);color:#fff;border-radius:22px;padding:30px;margin:35px 0 18px}.student-welcome h1{color:#fff;margin:12px 0 7px}.student-welcome p{color:#e4deff;margin:0}.student-portal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.student-portal-grid article{background:#fff;border:1px solid #e5e9f0;border-radius:18px;padding:20px;color:#684be1}.student-portal-grid h3{color:#172033;margin:13px 0 7px}.student-portal-grid p{color:#7d8899;font-size:11px;margin:0}.invite-modal{width:min(560px,100%)}@media(max-width:760px){.auth-page{grid-template-columns:1fr}.auth-intro{padding:30px;min-height:360px}.auth-intro h1{font-size:35px}.auth-form-wrap,.student-portal{padding:20px}.student-portal-grid{grid-template-columns:1fr}.session-actions{right:10px;bottom:10px}}.profile-card>div{min-width:0;flex:1}.profile-card>div strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-card>button{width:30px;height:30px;flex:0 0 auto;border:0;border-radius:9px;background:#26334a;color:#9eabc0;display:grid;place-items:center}.profile-card>button:hover{background:#3a2943;color:#ffabb4}.dark-theme .profile-card>button{background:#263247}.topbar-actions{display:flex;align-items:center;gap:9px}.invite-button{border:1px solid #dcd6fb;border-radius:12px;background:#f4f1ff;color:#684be1;padding:11px 15px;display:flex;align-items:center;gap:7px;font-weight:800}.invite-button:hover{background:#e9e3ff}.dark-theme .invite-button{background:#292345;border-color:#493b78;color:#c8bcff}@media(max-width:760px){.topbar-actions{width:100%;flex-direction:column;align-items:stretch}.topbar-actions button{width:100%}}.teacher-avatar{width:34px;height:34px;flex:0 0 auto;border-radius:11px;object-fit:cover}.avatar-setting{display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:center;border-bottom:1px solid #edf0f4;padding-bottom:17px;margin-bottom:17px}.avatar-preview{width:72px;height:72px;border-radius:20px;background:#eeeaff;color:#684be1;display:grid;place-items:center;overflow:hidden}.avatar-preview img{width:100%;height:100%;object-fit:cover}.avatar-setting strong,.avatar-setting span,.avatar-setting small{display:block}.avatar-setting strong{font-size:11px}.avatar-setting span{font-size:9px;color:#8994a6;margin-top:4px}.avatar-setting small{font-size:9px;color:#684be1;margin-top:8px}.avatar-actions{display:flex;gap:7px;margin-top:10px}.avatar-actions label,.avatar-actions button{border:0;border-radius:9px;padding:8px 10px;display:flex;align-items:center;gap:5px;font-size:9px;font-weight:800}.avatar-actions label{background:#eeeaff;color:#684be1;cursor:pointer}.avatar-actions label input{display:none}.avatar-actions button{background:#fff0f1;color:#b94c59}.dark-theme .avatar-setting{border-color:#29364b}.dark-theme .avatar-preview,.dark-theme .avatar-actions label{background:#292345;color:#c8bcff}@media(max-width:760px){.avatar-setting{grid-template-columns:1fr}.avatar-actions{flex-wrap:wrap}}.temporary-access{display:grid;gap:11px}.temporary-access>p{color:#687488;font-size:11px;line-height:1.6}.temporary-access>div{background:#f7f8fb;border-radius:12px;padding:12px}.temporary-access span,.temporary-access strong{display:block}.temporary-access span{color:#8994a6;font-size:8px;margin-bottom:5px}.temporary-access strong{font-size:12px;word-break:break-all}.temporary-access .primary-button{justify-self:start;margin-top:4px}.first-access-page{min-height:100vh;padding:30px;display:grid;place-items:center;background:linear-gradient(145deg,#101827,#29345d)}.first-access-card{width:min(430px,100%);background:#fff;border-radius:24px;padding:32px;box-shadow:0 25px 80px #00000040}.first-access-icon{width:52px;height:52px;border-radius:16px;background:#eeeaff;color:#684be1;display:grid;place-items:center;margin-bottom:20px}.first-access-card h1{font-size:25px;margin-bottom:8px}.first-access-card>p:not(.eyebrow){color:#778397;font-size:11px;line-height:1.6}.first-access-card form{display:grid;gap:12px;margin-top:20px}.first-access-card label{display:grid;gap:6px;color:#596579;font-size:10px;font-weight:800}.first-access-card input{border:1px solid #dfe4ec;border-radius:10px;padding:11px;background:#fafbfc}.first-access-card .student-primary{width:100%;margin-top:4px}.student-app{min-height:100vh;display:grid;grid-template-columns:220px 1fr;background:#f4f6fb}.student-sidebar{background:#101827;color:#fff;padding:27px 16px;display:flex;flex-direction:column;gap:30px;position:sticky;top:0;height:100vh}.student-sidebar nav{display:grid;gap:6px}.student-sidebar nav button,.student-logout{border:0;border-radius:11px;background:transparent;color:#aeb9ca;padding:11px 12px;display:flex;align-items:center;gap:9px;font-size:11px;font-weight:700;text-align:left}.student-sidebar nav button.active,.student-sidebar nav button:hover{background:#202b3e;color:#fff}.student-logout{margin-top:auto;color:#ffb7bd}.student-main-content{padding:30px 38px 50px;min-width:0}.student-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.student-topbar h1{font-size:28px}.student-avatar{width:42px;height:42px;border-radius:14px;background:#eeeaff;color:#684be1;display:grid;place-items:center;font-size:12px;font-weight:800}.student-avatar.large{width:78px;height:78px;border-radius:24px;font-size:21px}.student-page{display:grid;gap:18px}.student-welcome{margin:0}.student-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.student-summary-grid article,.student-panel{background:#fff;border:1px solid #e5e9f0;border-radius:18px;padding:20px;box-shadow:0 8px 28px #1f2a440a}.student-summary-grid article{display:grid;gap:7px;color:#684be1}.student-summary-grid span,.student-summary-grid small{color:#8994a6;font-size:10px}.student-summary-grid strong{color:#172033;font-size:16px}.student-summary-grid a,.portal-material-grid a{color:#684be1;text-decoration:none;font-size:10px;font-weight:800;display:flex;align-items:center;gap:5px}.next-lesson-panel{background:linear-gradient(120deg,#24334d,#172033);color:#fff;display:flex;align-items:center;justify-content:space-between}.next-lesson-panel h2{color:#fff;margin-bottom:8px}.next-lesson-panel p:last-child{color:#c3ccda;margin:0;display:flex;align-items:center;gap:6px;font-size:11px}.student-primary{border:0;border-radius:11px;background:#7655f3;color:#fff;padding:11px 14px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:11px;font-weight:800}.student-section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.student-section-heading h2,.student-panel>h2{font-size:17px;margin:0}.student-section-heading>span{font-size:10px;color:#8994a6}.portal-lesson-list,.portal-history,.request-list{display:grid;gap:10px}.portal-lesson-list>article{display:grid;grid-template-columns:52px 1fr auto;gap:14px;align-items:center;background:#f8f9fc;border-radius:14px;padding:13px}.portal-date{height:52px;border-radius:12px;background:#eeeaff;color:#684be1;display:grid;place-content:center;text-align:center}.portal-date strong{font-size:17px}.portal-date span{font-size:8px;text-transform:uppercase}.portal-lesson-list h3{font-size:12px;margin-bottom:5px}.portal-lesson-list p{font-size:9px;color:#8994a6;margin:0 0 6px}.portal-lesson-actions{display:flex;gap:6px}.portal-lesson-actions a,.portal-lesson-actions button{border:0;border-radius:9px;background:#eeeaff;color:#684be1;padding:8px;text-decoration:none;display:flex;align-items:center;gap:4px;font-size:9px;font-weight:800}.portal-lesson-actions button{background:#fff0f1;color:#b94c59}.portal-history article{display:grid;grid-template-columns:130px 1fr;gap:15px;background:#f8f9fc;border-radius:13px;padding:14px}.portal-history time{color:#684be1;font-size:9px;font-weight:800}.portal-history strong{font-size:11px}.portal-history p,.portal-history small{display:block;color:#778397;font-size:9px;margin:5px 0 0}.student-progress-hero{background:linear-gradient(120deg,#7655f3,#5b43c8);border-radius:20px;padding:25px;color:#fff;display:flex;align-items:center;justify-content:space-between}.student-progress-hero h2{color:#fff;margin-bottom:7px}.student-progress-hero p:last-child{color:#ddd7ff;font-size:11px;margin:0}.student-progress-hero>strong{width:70px;height:70px;border-radius:20px;background:#ffffff24;display:grid;place-items:center;font-size:24px}.student-progress-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:18px}.portal-skills{display:grid;gap:14px;margin-top:20px}.portal-skills>div>div{display:flex;justify-content:space-between;margin-bottom:6px}.portal-skills strong,.portal-skills span{font-size:10px}.portal-skills span{color:#684be1;font-weight:800}.portal-skills i{height:8px;background:#edf0f5;border-radius:99px;display:block;overflow:hidden}.portal-skills b{height:100%;display:block;background:linear-gradient(90deg,#7655f3,#9d8cff);border-radius:inherit}.progress-insights{display:grid;gap:11px}.progress-insights>div{background:#f7f8fb;border-radius:12px;padding:12px}.progress-insights span,.progress-insights strong{display:block}.progress-insights span{font-size:8px;color:#8994a6;margin-bottom:5px}.progress-insights strong{font-size:11px}.progress-insights p{font-size:9px;color:#697589;line-height:1.5;margin:0}.portal-material-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.portal-material-grid article{border:1px solid #e8ebf0;border-radius:14px;padding:15px;color:#684be1}.portal-material-grid span{display:block;color:#8994a6;font-size:8px;font-weight:800;margin:10px 0 5px}.portal-material-grid h3{font-size:12px;color:#172033}.portal-material-grid p{color:#778397;font-size:9px;line-height:1.5;min-height:42px}.student-profile-grid{grid-template-columns:.7fr 1.3fr}.profile-details{text-align:center}.profile-details .student-avatar{margin:0 auto}.profile-details h2{margin:13px 0 5px}.profile-details>p{color:#8994a6;font-size:10px}.profile-details dl{display:grid;gap:8px;text-align:left;margin-top:20px}.profile-details dl div{background:#f7f8fb;border-radius:11px;padding:11px}.profile-details dt{font-size:8px;color:#8994a6}.profile-details dd{font-size:11px;font-weight:800;margin:4px 0 0}.password-panel>p{font-size:10px;color:#8994a6}.password-panel form{display:grid;gap:12px;margin-top:18px}.password-panel label{display:grid;gap:6px;color:#596579;font-size:10px;font-weight:800}.password-panel input,.request-card textarea{border:1px solid #dfe4ec;border-radius:10px;padding:10px;background:#fafbfc}.password-panel .student-primary{justify-self:start}.request-modal{width:min(720px,100%)}.request-card{border:1px solid #e7eaf0;border-radius:14px;padding:15px}.request-heading{display:flex;align-items:start;justify-content:space-between;gap:10px}.request-heading strong,.request-heading span{display:block}.request-heading strong{font-size:12px}.request-heading span{color:#8994a6;font-size:9px;margin-top:4px}.request-card>p{background:#f7f8fb;border-radius:10px;color:#667185;font-size:10px;line-height:1.5;padding:10px;margin:11px 0}.request-card textarea{width:100%;min-height:68px;resize:vertical}.request-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:8px}.request-actions button{border:0;border-radius:9px;padding:8px 11px;display:flex;align-items:center;gap:5px;font-size:9px;font-weight:800}.reject-button{background:#fff0f1;color:#b94c59}.approve-button{background:#eaf8f1;color:#237a58}.request-status{display:inline-flex;border-radius:99px;padding:4px 7px;font-size:8px;font-weight:800}.request-status.pending{background:#fff6df;color:#9b6c00}.request-status.approved{background:#eaf8f1;color:#237a58}.request-status.rejected{background:#fff0f1;color:#b94c59}.request-card>small{color:#778397;font-size:9px}.cancel-lesson-summary{background:#f7f8fb;border-radius:12px;padding:12px;color:#667185;font-size:10px;line-height:1.6}@media(max-width:950px){.student-summary-grid,.portal-material-grid{grid-template-columns:1fr 1fr}.student-progress-grid,.student-profile-grid{grid-template-columns:1fr}.portal-lesson-list>article{grid-template-columns:52px 1fr}.portal-lesson-actions{grid-column:1/-1}}@media(max-width:700px){.student-app{grid-template-columns:1fr}.student-sidebar{position:static;height:auto;padding:17px}.student-sidebar nav{display:flex;overflow:auto}.student-sidebar nav button{white-space:nowrap}.student-logout{margin:0}.student-main-content{padding:20px}.student-summary-grid,.portal-material-grid{grid-template-columns:1fr}.next-lesson-panel{align-items:stretch;flex-direction:column;gap:15px}.portal-history article{grid-template-columns:1fr}.portal-lesson-actions{flex-wrap:wrap}}.teacher-onboarding-page{min-height:100vh;display:grid;place-items:center;padding:32px 18px;background:radial-gradient(circle at top left,rgba(8,185,129,.13),transparent 34%),#f5f8f7}.teacher-onboarding-card{width:min(720px,100%);background:#fff;border:1px solid #e5ece9;border-radius:28px;padding:38px;box-shadow:0 24px 70px #1432291f}.onboarding-copy{text-align:center;max-width:570px;margin:0 auto 30px}.onboarding-copy h1{margin:8px 0 10px;font-size:clamp(28px,4vw,40px);color:#17201d}.onboarding-copy>p:last-child{color:#697773;line-height:1.65}.teacher-onboarding-card form{display:grid;gap:22px}.onboarding-avatar{display:flex;align-items:center;justify-content:center;gap:18px;padding:18px;border:1px dashed #bdd7ce;border-radius:20px;background:#f8fbfa}.onboarding-avatar>div{width:86px;height:86px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:#e6f7f1;color:#08775d}.onboarding-avatar img{width:100%;height:100%;object-fit:cover}.onboarding-avatar label{display:inline-flex;gap:8px;align-items:center;cursor:pointer;font-weight:700;color:#08775d}.onboarding-avatar input{display:none}.onboarding-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.onboarding-fields label{display:grid;gap:8px;font-weight:700;color:#34413d}.onboarding-fields label span{font-weight:500;color:#8a9692}.onboarding-fields input{width:100%;border:1px solid #dce6e2;border-radius:13px;padding:13px 14px;font:inherit;outline:none}.onboarding-fields input:focus{border-color:#08b981;box-shadow:0 0 0 3px #08b9811f}.teacher-onboarding-card .student-primary{width:100%;justify-content:center;min-height:48px}.teacher-onboarding-card>.auth-switch{display:block;margin:18px auto 0}@media(max-width:620px){.teacher-onboarding-card{padding:26px 20px;border-radius:22px}.onboarding-fields{grid-template-columns:1fr}.onboarding-avatar{flex-direction:column}}.profile-card{min-width:0;overflow:hidden}.profile-card>div{min-width:0;flex:1;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.profile-card>div strong{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.25}.profile-card>div span{line-height:1.25}.profile-card .teacher-avatar{align-self:center}.completion-skills{display:grid;gap:12px;padding:16px;border:1px solid #e7eaf0;border-radius:14px;background:#f8f9fc}.completion-skills>div:first-child{display:grid;gap:4px}.completion-skills>div:first-child span{font-size:11px;color:#7e899b}.lesson-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}.lesson-meta span{font-size:11px;font-weight:700;color:#7655f3}.dark-theme .completion-skills{background:#101827;border-color:#29364b}.assignment-copy{margin-bottom:16px}.assignment-copy p{margin:6px 0 0;color:var(--muted)}.assignment-student-list{display:grid;gap:8px;max-height:340px;overflow:auto;padding-right:4px}.assignment-student-list>label{display:grid;grid-template-columns:auto 38px 1fr;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:14px;cursor:pointer}.assignment-student-list>label:hover{background:var(--surface-soft)}.assignment-student-list input{width:17px;height:17px}.assignment-student-list .avatar{width:36px;height:36px;font-size:11px}.assignment-student-list strong,.assignment-student-list small{display:block}.assignment-student-list small{margin-top:2px;color:var(--muted)}.material-actions>button{display:inline-flex;align-items:center;gap:5px}.material-source-tabs{display:flex;gap:8px}.material-source-tabs button{flex:1;border:1px solid #dfe4ec;background:#f7f8fb;color:#687488;border-radius:11px;padding:11px;display:flex;align-items:center;justify-content:center;gap:7px;font-weight:800}.material-source-tabs button.active{background:#eeeaff;border-color:#8f78f1;color:#684be1}.pdf-upload-field{border:1px dashed #cfd6e2;border-radius:13px;padding:14px;background:#fafbfc}.pdf-upload-field input{background:#fff}.pdf-upload-field small,.pdf-upload-field em{display:block;margin-top:7px;font-size:9px}.pdf-upload-field small{color:#684be1;font-weight:800}.pdf-upload-field em{color:#8994a6;font-style:normal}.dark-theme .material-source-tabs button,.dark-theme .pdf-upload-field{background:#202b3e;border-color:#334157;color:#c8d0dc}.dark-theme .material-source-tabs button.active{background:#3a2f72;color:#ddd7ff}.dark-theme .pdf-upload-field input{background:#101827;color:#e5e9f2}.assignment-board{display:grid;gap:14px}.assignment-card{padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.assignment-card-heading,.student-assignment-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.assignment-card-heading h3,.student-assignment-heading h3{margin:7px 0 3px}.assignment-card-heading p{margin:0;color:var(--muted)}.assignment-card-heading>strong,.student-assignment-heading>strong{font-size:13px;color:var(--muted);white-space:nowrap}.assignment-status{display:inline-flex;width:fit-content;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;background:var(--surface-soft);color:var(--muted)}.assignment-status.entregue,.assignment-status.submitted{background:#fff4d8;color:#8a5a00}.assignment-status.corrigida,.assignment-status.reviewed{background:#ddf8ec;color:#08775d}.assignment-status.pendente,.assignment-status.pending{background:#edf1f6;color:#53606c}.submission-preview,.feedback-preview{margin-top:12px;padding:13px 14px;border-radius:14px;background:var(--surface-soft)}.submission-preview p,.feedback-preview p{margin:5px 0;white-space:pre-wrap}.feedback-preview{border-left:3px solid var(--primary)}.student-assignment-list{display:grid;gap:16px}.student-assignment-list>article{padding:20px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.student-assignment-list>article>p{line-height:1.55}.student-assignment-list textarea{width:100%;margin:14px 0 10px;resize:vertical}.student-assignment-list a{display:inline-flex;align-items:center;gap:6px;margin:4px 0 8px;font-weight:700}@media(max-width:720px){.assignment-card-heading,.student-assignment-heading{flex-direction:column}}.finance-stats{margin-bottom:20px}.payment-list{display:grid;gap:12px}.payment-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.payment-card h3{margin:6px 0 4px}.payment-card p{margin:0;color:var(--muted)}.payment-card>strong{font-size:1.08rem;white-space:nowrap}.payment-status{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.payment-status.pago{background:#dcfce7;color:#166534}.payment-status.pendente{background:#fef3c7;color:#92400e}.payment-status.atrasado{background:#fee2e2;color:#991b1b}@media(max-width:800px){.payment-card{grid-template-columns:1fr}.payment-card .material-actions{justify-content:flex-start}}.finance-panel{padding:22px}.finance-heading{margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #edf0f4}.finance-heading .secondary-button{white-space:nowrap}.payment-list{gap:10px}.payment-card{grid-template-columns:minmax(240px,1fr) minmax(110px,auto) auto;gap:24px;padding:16px 18px;border-radius:15px;background:#fafbfc;box-shadow:none}.payment-main{min-width:0}.payment-main h3{margin:7px 0 5px;font-size:15px}.payment-main p{display:flex;flex-wrap:wrap;gap:5px 8px;align-items:center}.payment-main p strong{color:#344054;font-size:12px}.payment-main p span{color:#7b8698;font-size:12px}.payment-main p span:before{content:"•";margin-right:8px;color:#b0b8c5}.payment-amount{text-align:right;min-width:105px}.payment-amount span,.payment-amount strong{display:block}.payment-amount span{color:#8b95a7;font-size:10px;margin-bottom:5px}.payment-amount strong{font-size:17px;color:#172033;white-space:nowrap}.payment-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.payment-paid-button,.payment-reopen-button,.payment-delete-button{border:0;border-radius:10px;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:11px;font-weight:800;white-space:nowrap}.payment-paid-button{padding:0 13px;background:#e8f7ef;color:#247451}.payment-paid-button:hover{background:#d9f1e4}.payment-reopen-button{padding:0 13px;background:#eeeaff;color:#684be1}.payment-reopen-button:hover{background:#e3dcff}.payment-delete-button{width:38px;flex:0 0 38px;background:#fff0f1;color:#c83746}.payment-delete-button:hover{background:#ffe1e4}.dark-theme .finance-heading{border-color:#29364b}.dark-theme .payment-card{background:#101827;border-color:#29364b}.dark-theme .payment-main p strong,.dark-theme .payment-amount strong{color:#edf1f7}.dark-theme .payment-main p span,.dark-theme .payment-amount span{color:#93a0b5}.dark-theme .payment-paid-button{background:#173329;color:#70d3a6}.dark-theme .payment-reopen-button{background:#2d2850;color:#c8bcff}.dark-theme .payment-delete-button{background:#3b2028;color:#ff9aa5}@media(max-width:900px){.payment-card{grid-template-columns:minmax(0,1fr) auto;gap:14px 18px}.payment-actions{grid-column:1 / -1;justify-content:flex-start;padding-top:4px}}@media(max-width:560px){.finance-panel{padding:16px}.finance-heading{align-items:flex-start}.finance-heading .secondary-button{width:auto}.payment-card{grid-template-columns:1fr;padding:15px;gap:12px}.payment-amount{text-align:left}.payment-actions{grid-column:auto}.payment-paid-button,.payment-reopen-button{flex:1}.payment-main p{display:grid;gap:3px}.payment-main p span:before{content:none;margin:0}}.mobile-menu-button,.mobile-menu-close,.sidebar-backdrop{display:none}.topbar-title{min-width:0}.finance-panel>.empty-state .primary-button{margin-top:16px}@media(max-width:900px){.app-shell{display:block;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:min(320px,86vw);height:100dvh;z-index:60;transform:translate(-105%);transition:transform .24s ease;box-shadow:18px 0 50px #070d1947;overflow-y:auto;padding:22px 18px}.sidebar.mobile-open{transform:translate(0)}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;border:0;background:#070d1985;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mobile-menu-close{margin-left:auto;width:36px;height:36px;border:0;border-radius:10px;background:#202b3e;color:#c8d0dc;display:grid;place-items:center;flex:0 0 auto}.mobile-menu-button{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #e1e5ed;border-radius:12px;background:#fff;color:#4b5669;box-shadow:0 5px 14px #1f2a440f}.dark-theme .mobile-menu-button{background:#172235;border-color:#2b3950;color:#edf1f7}.brand{padding-bottom:22px}.sidebar nav{display:grid;grid-template-columns:1fr;gap:6px}.sidebar-footer{margin-top:24px}main{padding:24px 22px 42px;min-height:100vh}.topbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:22px}.topbar-title h1{font-size:26px;overflow-wrap:anywhere}.topbar-title .eyebrow{margin-bottom:5px}.topbar-actions{width:auto;min-width:0;display:flex;flex-direction:row;align-items:center;justify-content:flex-end;flex-wrap:wrap}.topbar-actions button{width:auto}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid,.profile-layout{grid-template-columns:1fr}}@media(max-width:620px){main{padding:18px 14px 34px}.topbar{grid-template-columns:auto minmax(0,1fr);align-items:start}.topbar-actions{grid-column:1/-1;width:100%;display:grid;grid-template-columns:1fr;gap:8px}.topbar-actions button{width:100%;min-height:44px}.topbar-title h1{font-size:24px}.hero-card{padding:22px;border-radius:18px}.hero-card h2{font-size:23px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:15px}.stat-card strong{font-size:23px}.panel{padding:16px;border-radius:16px}.panel-heading{align-items:flex-start;flex-direction:column}.panel-heading>.secondary-button.compact,.finance-heading .secondary-button{width:100%;min-height:42px}.search-box,.search-box input{width:100%}.student-row{grid-template-columns:42px minmax(0,1fr) 32px;gap:10px}.progress-wrap,.next-class{grid-column:2/4}.finance-stats{grid-template-columns:1fr}.finance-panel>.empty-state{padding:38px 12px}.finance-panel>.empty-state p{line-height:1.5}.finance-panel>.empty-state .primary-button{width:100%;max-width:280px;margin-top:16px}.modal-backdrop{padding:10px}.modal{padding:18px;border-radius:18px}}.report-presets{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.report-presets>span{font-size:9px;font-weight:800;color:#8994a6;margin-right:3px}.report-presets button{border:1px solid #e4e0fb;background:#f7f5ff;color:#684be1;border-radius:999px;padding:7px 10px;font-size:9px;font-weight:800;cursor:pointer}.report-presets button:hover{background:#eeeaff}.report-metrics-advanced{grid-template-columns:repeat(6,minmax(0,1fr))}.report-dashboard-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:18px}.report-block{border:1px solid #edf0f4;border-radius:16px;padding:18px;background:#fff}.report-block>h3{font-size:13px;margin:0 0 14px}.report-block-description{font-size:9px;color:#8994a6;margin:-8px 0 14px}.status-bars{display:grid;gap:14px}.status-bars>div>div{display:flex;justify-content:space-between;align-items:center;font-size:10px;margin-bottom:7px}.status-bars>div>span{display:block;height:8px;background:#f0eefb;border-radius:999px;overflow:hidden}.status-bars>div>span i{display:block;height:100%;background:#7655f3;border-radius:inherit}.status-bars>div:nth-child(2)>span i{background:#39b58a}.status-bars>div:nth-child(3)>span i{background:#ee8b8b}.report-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.report-section-heading h3{margin:0 0 4px;font-size:13px}.report-section-heading p{margin:0;color:#8994a6;font-size:9px}.report-section-heading>span{font-size:9px;font-weight:800;color:#684be1;background:#f0ecff;padding:6px 9px;border-radius:999px}.report-activity-table{display:grid}.report-activity-head,.report-activity-row{display:grid;grid-template-columns:minmax(180px,1.5fr) .45fr .55fr 1fr;gap:14px;align-items:center}.report-activity-head{padding:0 10px 8px;color:#98a1af;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.report-activity-row{padding:12px 10px;border-top:1px solid #edf0f4}.report-activity-row strong,.report-activity-row small{display:block}.report-activity-row strong{font-size:10px}.report-activity-row small{font-size:8px;color:#8994a6;margin-top:4px}.report-activity-row>b{font-size:11px;color:#536075}.report-mini-progress{display:flex;align-items:center;gap:9px}.report-mini-progress>span{height:7px;flex:1;background:#efedf8;border-radius:999px;overflow:hidden}.report-mini-progress i{display:block;height:100%;background:#7655f3;border-radius:inherit}.report-mini-progress b{font-size:9px;color:#684be1}.evolution-chart{height:190px;display:flex;align-items:stretch;gap:10px;padding-top:10px}.evolution-column{flex:1;min-width:28px;display:grid;grid-template-rows:18px 1fr 18px;gap:6px;text-align:center}.evolution-value{font-size:8px;font-weight:800;color:#684be1}.evolution-track{height:100%;background:#f1eff9;border-radius:8px;display:flex;align-items:flex-end;overflow:hidden}.evolution-track i{display:block;width:100%;background:linear-gradient(180deg,#8d6df8,#684be1);border-radius:8px 8px 0 0;min-height:6px}.evolution-column>span{font-size:7px;color:#8994a6;white-space:nowrap}.report-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding-top:8px}.report-kpi{text-align:center;display:grid;justify-items:center;gap:8px}.report-kpi>div{width:88px;height:88px;border-radius:50%;display:grid;place-items:center;position:relative}.report-kpi>div:before{content:"";position:absolute;top:9px;right:9px;bottom:9px;left:9px;background:#fff;border-radius:50%}.report-kpi span{position:relative;font-size:15px;font-weight:900;color:#172033}.report-kpi strong{font-size:9px;color:#697589}.report-insight-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.report-insight-pills span{display:flex;align-items:center;gap:5px;background:#f5f3ff;color:#6d57bf;border-radius:999px;padding:7px 9px;font-size:8px}.report-task-list{display:grid;gap:8px}.report-task-list>div{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid #edf0f4;border-radius:11px}.report-task-list strong,.report-task-list small{display:block}.report-task-list strong{font-size:9px}.report-task-list small{font-size:8px;color:#8994a6;margin-top:3px}.report-task-list .assignment-status{font-size:7px;min-width:58px;text-align:center}.report-history-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dark-theme .report-block{background:#151e2d;border-color:#29364b}.dark-theme .report-presets button,.dark-theme .report-section-heading>span,.dark-theme .report-insight-pills span{background:#28213f;border-color:#3e3460;color:#c8bcff}.dark-theme .status-bars>div>span,.dark-theme .report-mini-progress>span,.dark-theme .evolution-track{background:#293247}.dark-theme .report-activity-row,.dark-theme .report-task-list>div{border-color:#29364b}.dark-theme .report-kpi>div:before{background:#151e2d}.dark-theme .report-kpi span{color:#f1f4fa}@media(max-width:1000px){.report-dashboard-grid{grid-template-columns:1fr}.report-metrics-advanced{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.report-presets{align-items:stretch}.report-presets>span{width:100%}.report-presets button{flex:1}.report-metrics-advanced{grid-template-columns:repeat(2,1fr)}.report-activity-head{display:none}.report-activity-row{grid-template-columns:1fr auto auto;gap:9px}.report-activity-row>div:first-child{grid-column:1/-1}.report-mini-progress{min-width:120px}.report-kpis,.report-history-grid{grid-template-columns:1fr}.evolution-chart{overflow-x:auto}.evolution-column{min-width:45px}}@media print{.report-block{break-inside:avoid}.report-presets{display:none!important}}:root{--text-xs: .75rem;--text-sm: .8125rem;--text-md: .875rem;--text-lg: 1rem;--text-xl: 1.125rem;--leading-tight: 1.25;--leading-normal: 1.5}body{font-size:var(--text-md);line-height:var(--leading-normal)}button,input,select,textarea{font-size:var(--text-md)}.eyebrow{font-size:var(--text-xs);line-height:var(--leading-tight)}.brand span,.stat-card small,.student-main span,.next-class span,.timeline-item span,.detail span,.lesson-card time,.lesson-card small,.completion-skills>div:first-child span,.lesson-meta span{font-size:var(--text-xs);line-height:var(--leading-normal)}.stat-card span,.student-main strong,.next-class strong,.timeline-time,.timeline-item strong,.detail strong,.note-box strong,.skill-row strong,.skill-row span,.form-grid label,.profile-card>div strong{font-size:var(--text-sm);line-height:var(--leading-normal)}.note-box p,.lesson-card p{font-size:var(--text-sm);line-height:1.6}.lesson-card strong{font-size:var(--text-md)}.progress-meta{font-size:var(--text-xs);line-height:var(--leading-normal);margin-bottom:7px}.progress-track{height:7px}.skill-list{gap:17px}.skill-row div{margin-bottom:8px}.skill-row strong,.skill-row span{font-size:var(--text-sm)}.overall-score{font-size:1.75rem;line-height:1.1}.status-badge,.assignment-status,.payment-status,.request-status,.pdf-upload-field small,.pdf-upload-field em{font-size:var(--text-xs)}.profile-details>p,.password-panel>p,.password-panel label,.request-heading strong,.request-heading span,.request-card>p,.request-card>small,.cancel-lesson-summary{font-size:var(--text-xs);line-height:var(--leading-normal)}.profile-details dt{font-size:var(--text-xs)}.profile-details dd{font-size:var(--text-sm)}.request-actions button{font-size:var(--text-xs)}.report-presets>span,.report-presets button{font-size:var(--text-xs)}.report-block>h3,.report-section-heading h3{font-size:var(--text-lg);line-height:var(--leading-tight)}.report-block-description,.report-section-heading p{font-size:var(--text-sm);line-height:var(--leading-normal)}.report-section-heading>span{font-size:var(--text-xs)}.status-bars>div>div{font-size:var(--text-sm)}.report-activity-head{font-size:var(--text-xs)}.report-activity-row strong{font-size:var(--text-sm)}.report-activity-row small{font-size:var(--text-xs);line-height:var(--leading-normal)}.report-activity-row>b{font-size:var(--text-sm)}.report-mini-progress b,.evolution-value{font-size:var(--text-xs)}.evolution-column>span{font-size:var(--text-xs)}.report-kpi span{font-size:1.0625rem}.report-kpi strong{font-size:var(--text-xs);line-height:var(--leading-normal)}.report-insight-pills span{font-size:var(--text-xs)}.report-task-list strong{font-size:var(--text-sm)}.report-task-list small{font-size:var(--text-xs);line-height:var(--leading-normal)}.report-task-list .assignment-status{font-size:.6875rem;min-width:68px}.payment-main p strong,.payment-main p span{font-size:var(--text-sm)}.payment-amount span{font-size:var(--text-xs)}.payment-amount strong{font-size:1.125rem}.assignment-card-heading>strong,.student-assignment-heading>strong{font-size:var(--text-sm)}@media(max-width:620px){body{font-size:var(--text-sm)}.report-block{padding:16px}.report-block>h3,.report-section-heading h3{font-size:var(--text-lg)}.report-activity-row{padding:13px 8px}.evolution-column{min-width:52px}.report-kpi strong{font-size:var(--text-sm)}}.nav-item{position:relative}.nav-item>span{flex:1;text-align:left}.nav-badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#f05d72;color:#fff;font-size:11px;display:grid;place-items:center;margin-left:auto}.notification-button{position:relative;width:42px;height:42px;border-radius:13px;border:1px solid #e8e5f5;background:#fff;color:#58647a;display:grid;place-items:center;cursor:pointer;flex:0 0 auto}.notification-button:hover{background:#f7f5ff;color:#684be1}.notification-button>span{position:absolute;right:-5px;top:-6px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#f05d72;color:#fff;border:2px solid #fff;font-size:10px;font-weight:900;display:grid;place-items:center}.notifications-panel{max-width:980px}.notifications-heading>div>p:last-child{margin:5px 0 0;color:#8792a4;font-size:var(--text-sm)}.notification-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 20px}.notification-summary>div{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid #eceff4;border-radius:15px;background:#fbfcfe;color:#6d56d9}.notification-summary span{display:grid}.notification-summary strong{font-size:1.15rem;line-height:1}.notification-summary small{font-size:var(--text-xs);color:#8792a4;margin-top:5px}.notification-list{display:grid;gap:9px}.notification-card{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) 20px;gap:13px;align-items:center;text-align:left;padding:14px 15px;border:1px solid #e9edf3;border-radius:15px;background:#fff;color:#293246;cursor:pointer;transition:.18s ease}.notification-card:hover{transform:translateY(-1px);border-color:#dcd5ff;box-shadow:0 8px 20px #2823460f}.notification-card.unread{background:#fbfaff;border-color:#ddd5ff}.notification-card.urgent{border-left:4px solid #ef6578}.notification-card.read{opacity:.78}.notification-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#eeeaff;color:#684be1}.notification-icon.assignment{background:#e8f7f1;color:#249874}.notification-icon.payment{background:#fff3de;color:#c88722}.notification-icon.cancellation{background:#ffe9ed;color:#d54d62}.notification-copy{min-width:0}.notification-copy>span{display:flex;align-items:center;gap:8px}.notification-copy strong{font-size:var(--text-md)}.notification-copy i{font-style:normal;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#684be1;background:#eeeaff;padding:3px 6px;border-radius:999px}.notification-copy p{margin:4px 0;color:#687489;font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-copy small{font-size:var(--text-xs);color:#9aa3b1}.dark-theme .notification-button,.dark-theme .notification-card{background:#151e2d;border-color:#29364b;color:#edf1f8}.dark-theme .notification-button>span{border-color:#101722}.dark-theme .notification-card.unread,.dark-theme .notification-summary>div{background:#1d2435;border-color:#3b3458}.dark-theme .notification-summary small,.dark-theme .notification-copy p,.dark-theme .notification-copy small,.dark-theme .notifications-heading>div>p:last-child{color:#9ba7ba}.dark-theme .notification-icon{background:#30284c;color:#c9bcff}@media(max-width:760px){.notification-summary{grid-template-columns:1fr}.notifications-heading{align-items:stretch}.notifications-heading .secondary-button{width:100%}.notification-card{grid-template-columns:40px minmax(0,1fr) 18px;padding:13px 11px}.notification-copy p{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.topbar-actions .notification-button{order:-1}}.offline-banner{margin:0 28px 18px;display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid #f0c56d;border-radius:13px;background:#fff8e8;color:#805c13;font-size:var(--text-sm);font-weight:650}.offline-banner svg{flex:0 0 auto}.dark-theme .offline-banner{background:#342b19;border-color:#65502a;color:#f3d896}.fatal-error{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f6f7fb}.fatal-error-card{width:min(520px,100%);padding:34px;border:1px solid #e7e8ef;border-radius:24px;background:#fff;box-shadow:0 18px 55px #262a3a1a;text-align:center}.fatal-error-card>span{width:58px;height:58px;margin:0 auto 18px;border-radius:18px;display:grid;place-items:center;background:#fff0e7;color:#d86c32}.fatal-error-card h1{margin:5px 0 10px;font-size:1.55rem}.fatal-error-card>p:not(.eyebrow){margin:0 auto 22px;max-width:420px;color:#6d7789;line-height:1.65}.fatal-error-card .primary-button{margin:auto}@media(max-width:760px){.offline-banner{margin:0 16px 14px;align-items:flex-start}.fatal-error-card{padding:26px 20px;border-radius:19px}}.app-version{display:block;margin-top:14px;color:var(--muted);font-size:12px;text-align:right}.student-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}.student-task-summary{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr);gap:22px;align-items:stretch;padding:24px;border-radius:22px;background:linear-gradient(135deg,#f4f1ff,#eef8ff);border:1px solid var(--border)}.student-task-summary h2{margin:5px 0 8px;font-size:clamp(1.35rem,2vw,1.75rem)}.student-task-summary p{margin:0;color:var(--muted);max-width:620px;line-height:1.6}.student-task-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.student-task-metrics article{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center;padding:14px;border-radius:16px;background:#fffc;border:1px solid rgba(122,100,236,.12)}.student-task-metrics article svg{grid-row:1/3;color:var(--primary)}.student-task-metrics span{font-size:12px;color:var(--muted);font-weight:700}.student-task-metrics strong{font-size:1.25rem}.task-heading{align-items:center;gap:16px;flex-wrap:wrap}.task-heading>div:first-child{display:flex;align-items:baseline;gap:10px}.task-heading>div:first-child span{color:var(--muted);font-size:13px}.student-task-filters{display:flex;gap:7px;flex-wrap:wrap}.student-task-filters button{border:1px solid var(--border);background:var(--surface-soft);color:var(--muted);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800}.student-task-filters button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.student-assignment-list>article{position:relative;overflow:hidden}.student-assignment-list>article.overdue{border-color:#f2b8b5;background:linear-gradient(180deg,#fff,snow)}.task-status-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.task-overdue-badge{display:inline-flex;padding:4px 9px;border-radius:999px;background:#fee2e2;color:#991b1b;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.overdue-text{color:#b42318!important}.task-instructions{margin:14px 0;padding:14px 16px;border-radius:14px;background:var(--surface-soft)}.task-instructions>strong{display:block;margin-bottom:5px;font-size:13px}.task-instructions p{margin:0;line-height:1.6;white-space:pre-wrap}.task-material-link{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:10px!important;padding:11px 13px;margin:12px 0!important;border:1px solid var(--border);border-radius:13px;background:var(--surface);text-decoration:none}.task-material-link>span strong,.task-material-link>span small{display:block}.task-material-link>span small{margin-top:2px;color:var(--muted);font-weight:500}.task-response-box{margin-top:14px}.task-response-box label{display:block;margin-bottom:7px;font-weight:800;font-size:13px}.task-response-box textarea{margin:0!important}.task-submit-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px}.task-submit-row small{color:var(--muted)}.student-submission-review>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.student-submission-review>div:first-child small{color:var(--muted)}.awaiting-review{display:inline-flex;align-items:center;gap:7px;margin-top:9px;padding:8px 10px;border-radius:10px;background:#fff7db;color:#7a5900;font-size:12px;font-weight:800}.teacher-feedback{margin-top:13px;padding-top:13px;border-top:1px solid var(--border)}.teacher-feedback>span{display:inline-flex;margin-top:7px;padding:6px 9px;border-radius:9px;background:#e7f8ef;color:#08775d;font-weight:800}.editable-avatar{overflow:hidden}.student-avatar-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:14px 0 4px}.student-avatar-controls label,.student-avatar-controls>button:not(.student-primary){display:inline-flex;align-items:center;gap:6px;padding:9px 11px;border:1px solid var(--border);border-radius:11px;background:var(--surface-soft);font-weight:800;font-size:12px;cursor:pointer}.student-avatar-controls label input{display:none}.student-avatar-controls .student-primary{width:auto}.avatar-message{margin-top:10px}.dark-theme .student-task-summary{background:linear-gradient(135deg,#201c35,#162433)}.dark-theme .student-task-metrics article{background:#141d2cd1;border-color:#334157}.dark-theme .student-assignment-list>article.overdue{background:linear-gradient(180deg,#1c2534,#2a1d22);border-color:#6c3a3a}@media(max-width:900px){.student-task-summary{grid-template-columns:1fr}.student-task-metrics{max-width:520px}}@media(max-width:640px){.student-task-summary{padding:18px}.student-task-metrics{grid-template-columns:1fr}.task-heading{align-items:flex-start}.student-task-filters{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.student-task-filters button{white-space:nowrap}.task-submit-row{align-items:stretch;flex-direction:column}.task-submit-row .student-primary{width:100%;justify-content:center}.student-avatar-controls{flex-direction:column}.student-avatar-controls label,.student-avatar-controls>button{justify-content:center;width:100%}}.student-assignment-list{gap:18px}.student-assignment-list>article{padding:22px;border-radius:22px;background:linear-gradient(180deg,#fff,#fcfcff);box-shadow:0 12px 36px #1f2a440d}.student-assignment-list>article.overdue{background:linear-gradient(180deg,#fffefe,#fff8f8)}.student-assignment-heading{padding-bottom:14px;border-bottom:1px solid var(--border)}.student-assignment-heading h3{font-size:1.05rem;margin:8px 0 2px}.student-assignment-heading>strong{font-size:.95rem;font-weight:800;color:#4f596b}.task-instructions{margin:16px 0 0;padding:16px 18px;border-radius:18px;background:linear-gradient(180deg,#f8f7ff,#f8fbff);border:1px solid rgba(118,85,243,.1)}.task-instructions>strong{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.task-instructions p{font-size:14px;color:#2d3648}.task-material-link{margin-top:14px!important;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid rgba(118,85,243,.12);box-shadow:0 8px 24px #7655f30d}.task-material-link svg:first-child,.task-material-link svg:last-child{color:var(--primary)}.task-material-link>span strong{font-size:14px;color:#1f2a3d}.task-material-link>span small{font-size:12px}.task-response-box{margin-top:16px;padding:18px;border-radius:20px;background:linear-gradient(180deg,#f8fbff,#f4f2ff);border:1px solid rgba(118,85,243,.12)}.task-response-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.task-response-header label{margin:0;font-size:14px}.task-response-header p{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.55;max-width:560px}.task-response-count{display:inline-flex;align-items:center;justify-content:center;padding:8px 11px;border-radius:999px;background:#7655f314;color:var(--primary);font-size:12px;font-weight:800;white-space:nowrap}.task-response-input,.task-response-box textarea{width:100%;min-height:170px;padding:16px 18px;border:1px solid #dfe4ec;border-radius:18px;background:#ffffffeb;box-shadow:inset 0 1px #ffffffb3;line-height:1.6;color:#1f2a3d;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.task-response-input::placeholder{color:#97a1b2}.task-response-input:focus,.task-response-box textarea:focus{outline:none;border-color:#8d75ed;box-shadow:0 0 0 4px #7655f31f;background:#fff}.task-submit-row{margin-top:12px;padding-top:12px;border-top:1px solid rgba(118,85,243,.1)}.task-submit-row small{font-size:12px}.student-submission-review{margin-top:16px;padding:18px;border-radius:20px;background:linear-gradient(180deg,#f9fafc,#f6f8fc);border:1px solid var(--border)}.student-submission-review p{font-size:14px;line-height:1.65;color:#2d3648}.student-submission-review>div:first-child strong{font-size:14px}.awaiting-review{margin-top:12px;border:1px solid #f3e2a3;box-shadow:inset 0 1px #ffffff73}.teacher-feedback{margin-top:15px;padding:15px 16px;border-top:0;border-radius:16px;background:#eef8f4}.teacher-feedback strong{font-size:13px;display:block;margin-bottom:7px}.teacher-feedback p{margin:0;color:#295646}.teacher-feedback>span{margin-top:10px}.dark-theme .task-instructions{background:linear-gradient(180deg,#20253a,#1b2638);border-color:#334157}.dark-theme .task-instructions p{color:#d7deea}.dark-theme .task-material-link{background:#182233;border-color:#334157;box-shadow:none}.dark-theme .task-material-link>span strong{color:#ecf0f7}.dark-theme .task-response-box{background:linear-gradient(180deg,#1b2537,#242040);border-color:#334157}.dark-theme .task-response-header p,.dark-theme .task-submit-row small,.dark-theme .student-submission-review>div:first-child small{color:#9aa7bc}.dark-theme .task-response-count{background:#9b86fb29;color:#c8bbff}.dark-theme .task-response-input,.dark-theme .task-response-box textarea{background:#121a29;border-color:#334157;color:#edf1f7;box-shadow:none}.dark-theme .task-response-input::placeholder{color:#738198}.dark-theme .student-submission-review{background:linear-gradient(180deg,#172033,#1b2436);border-color:#334157}.dark-theme .student-submission-review p{color:#d7deea}.dark-theme .teacher-feedback{background:#162d26}.dark-theme .teacher-feedback p{color:#cde6dc}@media(max-width:760px){.task-response-header{flex-direction:column}.task-response-count{align-self:flex-start}.student-assignment-list>article{padding:18px}.task-response-box,.student-submission-review{padding:16px}.task-instructions{padding:14px 15px}}.assignment-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.assignment-summary-grid article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:16px 18px;border:1px solid var(--border);border-radius:17px;background:var(--surface);box-shadow:0 8px 28px #1f2a440a}.assignment-summary-grid svg{color:var(--primary)}.assignment-summary-grid span{color:var(--muted);font-size:13px;font-weight:700}.assignment-summary-grid strong{font-size:20px;color:var(--text)}.assignments-panel{padding:22px}.assignments-heading{align-items:flex-start;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--border)}.assignments-heading>div>p:last-child{margin:7px 0 0;color:var(--muted);font-size:13px}.assignment-board{gap:16px}.assignment-card{padding:0;border-radius:20px;overflow:hidden;background:linear-gradient(180deg,var(--surface) 0%,var(--surface-soft) 100%);box-shadow:0 10px 30px #1f2a440b}.assignment-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:19px 20px 16px;border-bottom:1px solid var(--border);background:var(--surface)}.assignment-card-title{min-width:0}.assignment-status-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.assignment-student-name{color:var(--muted);font-size:12px;font-weight:700}.assignment-card-title h3{margin:10px 0 0;font-size:17px;color:var(--text)}.assignment-due{min-width:105px;text-align:right;padding:9px 11px;border-radius:13px;background:var(--surface-soft)}.assignment-due span,.assignment-due strong{display:block}.assignment-due span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800;margin-bottom:4px}.assignment-due strong{font-size:13px;color:var(--text)}.assignment-instructions{margin:16px 20px 0;padding:14px 16px;border-radius:15px;background:var(--surface);border:1px solid var(--border)}.assignment-instructions>span{display:block;margin-bottom:7px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.assignment-instructions p{margin:0;font-size:13px;line-height:1.6;color:var(--text);white-space:pre-wrap}.assignment-card .submission-preview,.assignment-card .feedback-preview{margin:14px 20px 0}.assignment-grade{display:inline-flex;margin-top:8px;padding:6px 9px;border-radius:9px;background:#e7f8ef;color:#08775d;font-size:12px;font-weight:800}.assignment-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:16px 20px 19px}.assignment-review-button,.assignment-delete-button{border:0;border-radius:11px;padding:10px 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:800}.assignment-review-button{background:#eeeaff;color:#684be1}.assignment-review-button:hover{background:#e4defe}.assignment-delete-button{background:#fff0f1;color:#b94c59}.assignment-delete-button:hover{background:#ffe3e6}.dark-theme .assignment-summary-grid article,.dark-theme .assignment-card-top,.dark-theme .assignment-instructions{background:#172033}.dark-theme .assignment-card{background:linear-gradient(180deg,#172033,#141d2c)}.dark-theme .assignment-due{background:#202b3e}.dark-theme .assignment-review-button{background:#29234a;color:#c9bcff}.dark-theme .assignment-delete-button{background:#3a2228;color:#ffb8bf}.dark-theme .assignment-grade{background:#163229;color:#8be0bd}@media(max-width:760px){.assignment-summary-grid{grid-template-columns:1fr}.assignments-heading{flex-direction:column}.assignments-heading .secondary-button.compact{width:100%}.assignment-card-top{flex-direction:column}.assignment-due{width:100%;text-align:left}.assignment-card-actions{flex-direction:column;align-items:stretch}.assignment-review-button,.assignment-delete-button{width:100%}}
