@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap";:root{color:#29273a;font-synthesis:none;background:#f7f6f2;font-family:DM Sans,Noto Sans SC,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}.shell{grid-template-columns:245px minmax(0,1fr);min-height:100vh;display:grid}.shell>main{min-width:0}aside{color:#fff;background:#292743;flex-direction:column;height:100vh;min-height:0;padding:34px 22px;display:flex;position:sticky;top:0;overflow:hidden}.brand{flex:none;align-items:center;gap:12px;padding:0 10px;font-size:18px;font-weight:700;display:flex}.brand>span{color:#292743;background:#f5c76b;border-radius:13px;place-items:center;width:38px;height:38px;font-size:24px;display:grid}.brand small{letter-spacing:1.7px;text-transform:uppercase;color:#a9a7bb;margin-top:3px;font-size:10px;font-weight:400;display:block}nav{scrollbar-width:thin;scrollbar-color:#565273 transparent;flex:1;gap:6px;min-height:0;margin-top:36px;padding-right:4px;display:grid;overflow-y:auto}nav button{color:#aaa8bb;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;padding:11px 16px;font-size:14px}nav button span{margin-left:12px}nav button.active{color:#fff;background:#3a3758}.term{border-top:1px solid #45425f;flex:none;gap:6px;min-width:0;margin-top:14px;padding:16px 18px;display:grid}.term small,.term span{color:#aaa8bb;font-size:11px}.term strong{font-size:14px}.term strong,.term span{overflow-wrap:anywhere}.term span{line-height:1.45}main{width:100%;max-width:1500px;margin:auto;padding:42px clamp(30px,5vw,80px)}header{justify-content:space-between;align-items:center;display:flex}header p{color:#898594;margin:0 0 8px;font-size:13px}header h1.dailyQuote{letter-spacing:-.6px;max-width:720px;font-size:clamp(23px,2.4vw,28px);line-height:1.3}h1{letter-spacing:-1px;margin:0;font-size:30px}.avatars{display:flex}.avatars span{color:#fff;border:3px solid #f7f6f2;border-radius:50%;place-items:center;width:38px;height:38px;margin-left:-8px;font-weight:600;display:grid}.filters{gap:8px;margin:30px 0;display:flex}.filters button{color:#716d79;cursor:pointer;background:#fff;border:1px solid #e3e0da;border-radius:20px;padding:8px 16px}.filters button.selected{color:#fff;background:#292743;border-color:#292743}.filters i,.childBlock i,.task i{border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block}.hero{background:linear-gradient(125deg,#e9e6fb,#f5f2ff);border-radius:24px;justify-content:space-between;align-items:center;margin-bottom:22px;padding:27px 34px;display:flex;position:relative;overflow:hidden}.hero:after{color:#ffffff94;content:"★";pointer-events:none;font-size:115px;position:absolute;top:-38px;right:105px;rotate:12deg}.hero.allDone{background:linear-gradient(125deg,#fff1c9,#f7e8ff);box-shadow:inset 0 0 0 1px #e6c568}.hero>div{z-index:1;position:relative}.hero span{color:#6e67a0;font-size:13px}.hero strong{margin:4px 0;font-size:42px;display:block}.hero em{color:#8984aa;font-size:20px;font-style:normal}.hero p{color:#726d8b;margin:0;font-size:13px}.heroReward{align-items:center;gap:8px;margin-top:13px;display:flex}.heroReward b{color:#ffd86d;background:#292743;border-radius:999px;padding:6px 10px;font-size:13px}.heroReward span{color:#554f79;font-size:11px;font-weight:700}.heroReward em{color:#71661d;background:#ffffffb8;border-radius:8px;padding:6px 9px;font-size:10px;font-style:normal;font-weight:700}.hero.allDone .ring{background:conic-gradient(#e3ad32 360deg, #eadba9 0)}.hero.allDone .ring:before{background:#fff7de}.ring{background:conic-gradient(#7069db var(--p), #d6d1ed 0);border-radius:50%;place-items:center;width:84px;height:84px;display:grid;position:relative}.ring:before{content:"";background:#e9e6fb;border-radius:50%;position:absolute;inset:8px}.ring span{color:#4b4775;font-weight:700;position:relative}.grid{grid-template-columns:1.2fr 1fr;gap:22px;display:grid}.card{background:#fff;border:1px solid #e7e4df;border-radius:20px;padding:25px}.cardTitle{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.cardTitle h2{margin:0;font-size:18px}.cardTitle button{color:#756ed5;cursor:pointer;background:0 0;border:0;font-size:12px}.childBlock{margin-top:20px}.childBlock h3{margin:0 0 7px;font-size:13px}.event{border-bottom:1px solid #efede9;grid-template-columns:145px 1fr;padding:11px 0;font-size:14px;display:grid}.event time{color:#85818c}.courseTitleMarker{overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;display:flex}.courseTitleMarker:before{background:var(--course-dot,#7770d8);width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in srgb, var(--course-dot,#7770d8) 14%, white);content:"";border-radius:50%;flex:0 0 7px}.scheduleTime{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.scheduleTime>i{color:#8a6815;letter-spacing:.3px;background:#fff0bc;border-radius:6px;flex:none;place-items:center;min-width:25px;height:19px;padding:0 5px;font-size:8px;font-style:normal;font-weight:800;line-height:1;display:inline-grid;box-shadow:inset 0 0 0 1px #ecd887}.scheduleTime.pm>i{color:#625bb5;background:#ece9ff;box-shadow:inset 0 0 0 1px #d5cff5}.scheduleTime>i.placeholder{color:#b9b3bc;background:#f3f1ed;box-shadow:inset 0 0 0 1px #e5e1da}.scheduleTime>span{line-height:1.25}.empty{text-align:center;color:#d6ae60;padding:45px 0}.empty p{color:#464252;margin:8px 0 3px}.empty small{color:#aaa6ad}.task{border-bottom:1px solid #efede9;grid-template-columns:28px 1fr 25px;align-items:center;gap:10px;padding:13px 0;display:grid}.check{color:#6e67d9;background:#fff;border:1.5px solid #b8b4c3;border-radius:7px;width:23px;height:23px}.task.done strong{color:#aaa;text-decoration:line-through}.task small{color:#9d99a3;margin-top:4px;display:block}.delete{color:#bbb;cursor:pointer;background:0 0;border:0;font-size:19px}.homeworkPage form{grid-template-columns:130px 1fr 160px auto;gap:10px;margin-bottom:20px;display:grid}.homeworkPage input,.homeworkPage select{background:#fff;border:1px solid #ddd8d0;border-radius:10px;padding:12px}.homeworkPage form button{color:#fff;background:#6e67d9;border:0;border-radius:10px;padding:0 20px}.weekGrid{grid-template-columns:repeat(7,minmax(205px,1fr));gap:12px;padding-bottom:15px;display:grid;overflow-x:auto}.day{background:#fff;border:1px solid #e6e2dc;border-radius:16px;min-height:370px;padding:18px}.day.current{background:linear-gradient(#f4f2ff 0,#fff 110px);border:2px solid #7770d8;box-shadow:0 14px 34px #7770d820}.day h3{justify-content:space-between;margin:0 0 22px;font-size:15px;display:flex}.day h3 span{color:#6861c2;background:#ece9fd;border-radius:8px;padding:4px 7px;font-size:10px}.day.current h3{color:#514ab1}.day h4{margin:18px 0 7px;font-size:12px}.day p{border-bottom:1px solid #eeeae5;margin:0;padding:8px 0;font-size:12px;line-height:1.45}.loading{color:#7770d8;place-items:center;height:100vh;display:grid}@media (width<=800px){.shell{display:block}aside{height:auto;padding:18px;position:static;overflow:visible}.brand{justify-content:center}nav{flex:initial;justify-content:flex-start;margin:18px 0 0;padding-right:0;display:flex;overflow:auto hidden}nav button{padding:10px 14px}.term{display:none}main{padding:25px 16px}.grid,.homeworkPage form{grid-template-columns:1fr}.homeworkPage form button{padding:12px}.event{grid-template-columns:125px 1fr}}.day h4{justify-content:space-between;display:flex}.tinyAdd{color:#6861c2;cursor:pointer;background:#f0eefb;border:0;border-radius:6px}.weekEvent{border-bottom:1px solid #eeeae5;grid-template-columns:1fr auto;align-items:center;display:grid}.weekEvent>p{border-bottom:0}.weekEvent p b{color:#98939e;font-weight:500;display:block}.weekEvent .courseTitleMarker{margin-top:9px}.overlay{z-index:10;background:#29274388;place-items:center;display:grid;position:fixed;inset:0}.picker{background:#fff;border-radius:20px;width:min(430px,90vw);max-height:90vh;padding:28px;overflow-y:auto}.picker label,.courseForm label{color:#77727e;gap:7px;margin-bottom:14px;font-size:12px;display:grid}.picker input,.picker select,.courseForm input,.courseForm select,.courseSearch{background:#fff;border:1px solid #ddd8d0;border-radius:10px;padding:11px}.scheduleTimeField{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:7px;min-width:0;display:grid}.scheduleTimeField label{gap:5px;min-width:0;margin:0;display:grid}.scheduleTimeField label>span{color:#9993a1;font-size:9px;font-weight:700}.scheduleTimeField input{box-sizing:border-box;width:100%;min-width:0}.scheduleTimeField>i{color:#5f58ad;padding-bottom:12px;font-size:12px;font-style:normal;font-weight:800}.results{gap:7px;max-height:250px;display:grid;overflow:auto}.results button{text-align:left;background:#faf9f6;border:1px solid #e6e2dc;border-radius:10px;padding:11px}.results button.selected{background:#f0edff;border-color:#8179d6;box-shadow:inset 0 0 0 1px #8179d633}.scheduleScopeDialog>p{color:#9993a1;margin:-10px 0 18px;font-size:10px}.scheduleScopeDialog>span{color:#7770d8;letter-spacing:1px;font-size:9px;font-weight:800}.scheduleScopeDialog>span+h2{margin:5px 0 15px}.scheduleToast{top:max(18px, env(safe-area-inset-top));z-index:60;color:#287044;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#effaf3f2;border:1px solid #bfe3ce;border-radius:12px;align-items:center;gap:8px;padding:11px 16px;font-size:11px;font-weight:700;display:flex;position:fixed;left:50%;translate:-50%;box-shadow:0 12px 30px #315c4230}.scheduleToast b{color:#fff;background:#42a46a;border-radius:50%;place-items:center;width:19px;height:19px;font-size:10px;display:grid}.scheduleDialogError{background:#fff0ec;border-radius:9px;padding:9px 10px;color:#a44739!important;margin:-7px 0 12px!important;font-size:9px!important}.fixedScheduleScope{background:#f7f5fd;border:1px solid #ddd7ef;border-radius:12px;gap:5px;margin:17px 0;padding:14px;display:grid}.fixedScheduleScope b{color:#514a82;font-size:12px}.fixedScheduleScope span{color:#7169bd;font-size:10px;font-weight:700}.fixedScheduleScope small{color:#8e8997;font-size:9px;line-height:1.5}.scheduleScopeFields{border:0;margin:17px 0;padding:0}.scheduleScopeFields legend{color:#77727e;margin-bottom:8px;font-size:12px}.scheduleScopeOptions{gap:7px;display:grid}.scheduleScopeOptions label{cursor:pointer;background:#fbfafc;border:1px solid #e5e0eb;border-radius:11px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;margin:0;padding:10px;display:grid}.scheduleScopeOptions label.selected{background:#f1effd;border-color:#8a82d9}.scheduleScopeOptions input{accent-color:#746dd1;margin:0}.scheduleScopeOptions b,.scheduleScopeOptions small{display:block}.scheduleScopeOptions b{color:#4d4857;font-size:11px}.scheduleScopeOptions small{color:#9993a1;margin-top:2px;font-size:8px}.scheduleDateRange{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.scheduleDateRange label{margin:0}.timeEditorActions .dangerConfirm{color:#fff;cursor:pointer;background:#bd5a4b;border:0;border-radius:9px;padding:9px 15px}.results small{color:#999;margin-top:3px;display:block}.cancel{color:#7770d8;background:0 0;border:0;margin-top:15px}.courseTop{align-items:center;gap:15px;margin-bottom:20px;display:flex}.courseSearch{width:min(500px,80%)}.courseTop span{color:#999;font-size:13px}.courseLayout{grid-template-columns:minmax(0,1fr) 390px;gap:22px;display:grid}.courseList{background:#fff;border:1px solid #e6e2dc;border-radius:18px;padding:5px 22px}.courseList article{border-bottom:1px solid #eee;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:15px 0;display:grid}.courseList small{color:#999;margin-top:4px;display:block}.courseList button,.courseForm>button{color:#7770d8;background:0 0;border:0}.courseForm{background:#fff;border:1px solid #e6e2dc;border-radius:18px;height:max-content;padding:22px}.courseForm h2{margin:0 0 20px;font-size:18px}.courseForm .primary{color:#fff;background:#6e67d9;border-radius:10px;width:100%;padding:11px}.courseScheduleEditor{background:#faf9fd;border:1px solid #e7e2f1;border-radius:13px;gap:8px;margin:19px 0;padding:15px;display:grid}.courseScheduleEditor>div{margin-bottom:3px}.courseScheduleEditor>div strong,.courseScheduleEditor>div small{display:block}.courseScheduleEditor>div strong{font-size:12px}.courseScheduleEditor>div small,.courseScheduleEditor>p{color:#9993a1;margin:3px 0 0;font-size:9px}.courseScheduleEditor>label{grid-template-columns:92px minmax(0,1fr);align-items:center;gap:9px;margin:0;display:grid}.courseScheduleEditor>label>span b,.courseScheduleEditor>label>span small{display:block}.courseScheduleEditor>label>span b{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.courseScheduleEditor>label>span small{color:#9993a1;margin-top:2px;font-size:8px}.courseScheduleEditor>label .scheduleTimeField input{background:#fff;min-width:0;padding:9px 10px;font-size:10px}.error{color:#a84736;background:#fff0ec;border-radius:10px;padding:11px}.weekEventActions{align-items:center;gap:2px;display:flex}.weekEventActions button{color:#aaa4b0;cursor:pointer;background:0 0;border:0;border-radius:7px;width:25px;height:25px;padding:0}.weekEventActions button:first-child{color:#6e67c7}.weekEventActions button:hover{background:#f0eef8}.timeEditor>span{color:#7770d8;letter-spacing:1px;font-size:9px;font-weight:800}.timeEditor h2{margin:5px 0 2px}.timeEditor>p{color:#999;margin:0 0 18px;font-size:11px}.timeEditorHint{color:#999;margin:-5px 0 17px;font-size:10px;line-height:1.5;display:block}.timeEditorActions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.timeEditorActions .cancel{margin:0;padding:9px 13px}.timeEditorActions .primary{color:#fff;cursor:pointer;background:#6e67d9;border:0;border-radius:9px;padding:9px 15px}@media (width<=800px){.courseLayout{grid-template-columns:1fr}.shell nav{overflow:auto}.shell nav button{white-space:nowrap}}@media (width<=600px){.scheduleDateRange{grid-template-columns:1fr}.weekEventActions button{width:29px;height:29px}.timeEditorActions{grid-template-columns:1fr 1fr;display:grid}.timeEditorActions button{width:100%}.courseScheduleEditor>label{grid-template-columns:76px minmax(0,1fr)}}.termIntro{margin-bottom:24px}.termIntro h2{margin:0 0 7px;font-size:20px}.termIntro p{color:#88838e;margin:0}.termLayout{grid-template-columns:1fr 340px;gap:22px;display:grid}.termCards{gap:12px;display:grid}.termCards article{background:#fff;border:1px solid #e6e2dc;border-radius:17px;justify-content:space-between;align-items:center;padding:22px;display:flex}.termCards article.activeTerm{background:#faf9ff;border:2px solid #7770d8}.termCards small{color:#7770d8;font-size:11px}.termCards h3{margin:6px 0;font-size:18px}.termCards p{color:#999;margin:0;font-size:13px}.termCards button{color:#6e67d9;cursor:pointer;background:0 0;border:0;margin:6px 0 6px auto;display:block}.termCards button.danger{color:#bd7b70;font-size:12px}@media (width<=800px){.termLayout{grid-template-columns:1fr}.termCards article{align-items:flex-start}}.scheduleExcel{background:#fff;border:1px solid #e6e2dc;border-radius:16px;margin:20px 0;padding:20px}.scheduleExcel h3{margin:0 0 8px;font-size:17px}.scheduleExcel p{color:#77717f;font-size:13px;line-height:1.7}.scheduleExcelActions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.scheduleExcel button,.scheduleExcelActions label{color:#625bbc;cursor:pointer;font:inherit;background:#f7f5ff;border:1px solid #d9d4e4;border-radius:9px;padding:10px 14px;font-size:13px}.scheduleExcelActions label input{opacity:0;width:1px;height:1px;position:absolute}.scheduleExcel button:disabled,.scheduleExcelActions .disabled{opacity:.5;cursor:default}.scheduleExcelPreview{border-top:1px solid #e6e2dc;margin-top:18px;padding-top:12px}.scheduleExcelPreview button{margin-right:10px}.scheduleExcelTable{overflow:auto}.scheduleExcel table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:13px}.scheduleExcel th,.scheduleExcel td{text-align:left;border-bottom:1px solid #e6e2dc;padding:9px}.scheduleExcel .error{margin-top:16px}.scheduleExcel .error li{margin:6px 0}.errorScreen{text-align:center;align-content:center;gap:8px}.errorScreen strong{color:#4b4755;font-size:22px}.errorScreen p{color:#8a8590;margin:0}.errorScreen button{color:#fff;cursor:pointer;background:#6e67d9;border:0;border-radius:10px;margin:auto;padding:10px 18px}.notificationGrid{grid-template-columns:minmax(300px,430px) 1fr;gap:22px;display:grid}.notificationGrid h2{margin:0 0 20px;font-size:18px}.channel{border-bottom:1px solid #eeeae5;justify-content:space-between;padding:14px 0;display:flex}.channel b{color:#aaa;background:#f1efec;border-radius:12px;padding:4px 9px;font-size:12px}.channel b.ready{color:#318361;background:#e5f5ec}.hint{color:#8e8994;margin:22px 0;font-size:12px;line-height:1.7}.notificationTestControls{align-items:flex-end;gap:9px;display:flex}.notificationTestControls label{color:#77717e;gap:5px;font-size:10px;display:grid}.notificationTestControls input{color:#4e4858;background:#fff;border:1px solid #ddd7e7;border-radius:9px;min-height:38px;padding:7px 9px}.sendTest{color:#fff;cursor:pointer;background:#6e67d9;border:0;border-radius:10px;min-height:38px;padding:11px 16px}.sendTest:disabled{opacity:.6}.testOk,.testFail{margin:9px 0;font-size:12px}.testOk{color:#318361}.testFail{color:#b64f3d}.preview>strong{color:#5d566c;margin:-9px 0 12px;font-size:12px;display:block}.previewDescription{color:#8e8994;margin:0 0 12px;font-size:11px;line-height:1.6}.preview pre{white-space:pre-wrap;color:#4e4a57;background:#faf9f6;border-radius:12px;padding:20px;font:14px/1.75 DM Sans,Noto Sans SC,sans-serif}@media (width<=800px){.notificationGrid{grid-template-columns:1fr}.notificationTestControls{flex-direction:column;align-items:stretch}.notificationTestControls .sendTest{width:100%}}.conflictNotice{color:#8e4a2d;background:#fff1e8;border:1px solid #f0c5ab;border-radius:14px;margin-bottom:18px;padding:15px 18px}.conflictNotice strong{font-size:13px}.conflictNotice p{margin:8px 0 0;font-size:12px;line-height:1.5}.conflictNotice p b{color:#fff;background:#e99a6d;border-radius:7px;margin-right:3px;padding:2px 6px}.conflictNotice.compact{border-radius:9px;margin:0 0 10px;padding:8px 9px}.conflictNotice.compact strong{font-size:10px}.weekEvent.hasConflict{background:#fff0e8;border-left:3px solid #e8895d;border-radius:4px;margin-left:-8px;padding-left:7px}.conflictRow{grid-template-columns:1fr auto;align-items:center;gap:12px;display:grid}.conflictRow small{color:#786e68;margin-top:5px;display:block}.conflictRow>button{color:#fff;cursor:pointer;background:#d8794e;border:0;border-radius:8px;padding:7px 10px;font-size:11px}.historyFilters{gap:8px;margin-bottom:18px;display:flex}.historyFilters button{color:#777;background:#fff;border:1px solid #dedad4;border-radius:15px;padding:7px 14px}.historyFilters button.selected{color:#fff;background:#292743}.historyList{gap:12px;display:grid}.historyList article{background:#fff;border:1px solid #e6e2dc;border-radius:16px;grid-template-columns:75px 1fr auto;align-items:start;gap:18px;padding:20px;display:grid}.historyStatus{text-align:center;border-radius:12px;padding:6px;font-size:11px}.historyStatus.open{color:#a25535;background:#fff0e8}.historyStatus.resolved{color:#347456;background:#e7f5ed}.historyList h3{margin:5px 0;font-size:14px}.historyList p{color:#777;margin:0;font-size:13px}.historyList blockquote{background:#f6f5f1;border-left:3px solid #79b28f;margin:12px 0 0;padding:10px 13px;font-size:12px}.historyList>article>button{color:#7770d8;cursor:pointer;background:0 0;border:0}@media (width<=700px){.historyList article,.conflictRow{grid-template-columns:1fr}}.conflictRows{gap:10px;margin-top:13px;display:grid}.conflictRow{border:1px solid #0000;border-radius:12px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;display:grid}.conflictRow.pending{background:#fff8f3;border-color:#efc6ad}.conflictRow.resolved{background:#f0f9f4;border-color:#b9dfc9}.conflictIcon{border-radius:50%;place-items:center;width:27px;height:27px;font-size:13px;font-weight:700;display:grid}.pending .conflictIcon{color:#fff;background:#e58a5f}.resolved .conflictIcon{color:#fff;background:#53a875}.conflictCopy>div{align-items:center;gap:7px;display:flex}.conflictCopy b{font-size:12px}.statePill{border-radius:10px;padding:2px 7px;font-size:10px}.pending .statePill{color:#944c2d;background:#f4d5c2}.resolved .statePill{color:#347456;background:#cfead9}.conflictCopy p{color:#655f68;margin:4px 0 0!important}.conflictCopy small{display:block;color:#347456!important;margin-top:8px!important}.conflictRow>button{white-space:nowrap;cursor:pointer;color:#fff!important;background:#dc7b50!important;border:0!important;border-radius:8px!important;padding:8px 11px!important}.conflictNotice.allResolved{color:#347456;background:#eaf7ef;border-color:#b8dec8}@media (width<=620px){.conflictRow{grid-template-columns:28px 1fr}.conflictRow>button{grid-column:2;width:max-content}}.todayJourney{background:radial-gradient(circle at 82% 14%,#fff0a766 0 3%,#0000 3.3%),linear-gradient(135deg,#f0edff 0%,#faf8ff 52%,#fff6db 100%);border:1px solid #ddd7f3;border-radius:24px;margin-bottom:22px;padding:24px 28px 20px;position:relative;overflow:hidden}.journeyHeading{z-index:2;justify-content:space-between;align-items:flex-start;gap:18px;display:flex;position:relative}.journeyHeading span{color:#746db0;letter-spacing:1.3px;font-size:9px;font-weight:800}.journeyHeading h2{color:#343047;margin:5px 0 4px;font-size:21px}.journeyHeading p{color:#7d768d;margin:0;font-size:11px}.journeyHeading p b{color:#6159bd}.journeyHeading button{color:#655eba;cursor:pointer;background:#ffffffb8;border:1px solid #d5cfee;border-radius:9px;padding:7px 10px;font-size:10px;font-weight:700}.journeyActions{justify-items:end;gap:9px;display:grid}.journeyProgress{z-index:1;grid-template-columns:42px minmax(0,1fr) 62px;align-items:center;gap:10px;height:72px;padding:13px 0 5px;display:grid;position:relative}.journeyProgress>span{color:#77718c;text-align:center;font-size:9px;font-weight:800}.journeyProgress>i:not(.floatingStar){background:#dcd8ea;border:2px solid #fff;border-radius:999px;height:8px;overflow:hidden;box-shadow:0 2px 7px #3a34551c}.journeyProgress>i>em{border-radius:inherit;background:linear-gradient(90deg,#756dde,#a376df,#efbd48);height:100%;transition:width .7s cubic-bezier(.22,1,.36,1);display:block}.journeyPlayer{width:46px;transition:left .7s cubic-bezier(.22,1,.36,1);position:absolute;bottom:3px;translate:-50%}.journeyPlayer span{filter:drop-shadow(0 4px 4px #5148762a);background-image:url(/illustrations/homework-mascot-states.png);background-position:100% 100%;background-size:200% 200%;width:46px;height:46px;margin:auto;animation:2.4s ease-in-out infinite journey-bounce;display:block}.journeyPlayer b{color:#fff;background:#4f496f;border-radius:999px;width:max-content;margin:-3px auto 0;padding:2px 6px;font-size:7px;display:block}.floatingStar{color:#e8b83e;font-size:13px;font-style:normal;animation:2.8s ease-in-out infinite journey-sparkle;position:absolute}.floatingStar.one{top:5px;left:36%}.floatingStar.two{font-size:9px;animation-delay:.8s;top:18px;right:18%}.journeyBalances{flex-wrap:wrap;gap:7px;margin-top:11px;display:flex}.journeyHeading .journeyBalances>span{color:#676174;letter-spacing:0;background:#ffffffa8;border:1px solid #ded9ef;border-radius:999px;align-items:center;gap:5px;padding:5px 8px;font-size:9px;font-weight:700;display:inline-flex}.journeyBalances i{border-radius:50%;width:6px;height:6px}.journeyBalances b{color:#aa7813;font-size:11px}.journeyBalances small{color:#9a94a0;font-size:8px}.journeyBarsViewport{scrollbar-width:thin;border-top:1px dashed #d8d2e8;margin-top:4px;padding-top:13px;overflow:auto hidden}.journeyBars{background:radial-gradient(circle at 88% 15%,#ffffff12 0 5%,#0000 5.5%),linear-gradient(145deg,#302d43,#252333);border-radius:22px;grid-template-columns:minmax(400px,1fr) 145px;align-items:end;gap:24px;min-width:530px;min-height:205px;padding:25px 28px 18px;display:grid;position:relative;overflow:visible;box-shadow:inset 0 0 0 1px #ffffff0f}.journeyChartSummary{grid-area:1/2;align-self:start;padding-top:18px}.journeyChartSummary>span,.journeyChartSummary>small{color:#b8b3c4;font-size:9px;font-weight:700;display:block}.journeyChartSummary>strong{color:#fff;font-variant-numeric:tabular-nums;align-items:center;gap:7px;margin:6px 0 3px;font-size:32px;line-height:1;display:flex}.journeyChartSummary>strong i{color:#ffd665;font-size:20px;font-style:normal}.journeyTermEarned{border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:8px;margin-top:14px;padding-top:11px;display:flex}.journeyTermEarned span{color:#aaa5b7;font-size:8px}.journeyTermEarned b{color:#ffd665;white-space:nowrap;font-size:13px}.journeyChartBars{grid-area:1/1;grid-template-columns:repeat(var(--bar-count), minmax(42px, 1fr));align-items:end;gap:10px;min-width:0;display:grid;position:relative}.journeyChartStar{z-index:0;color:#ffd65b17;pointer-events:none;font-size:148px;line-height:1;animation:4.8s ease-in-out infinite journey-star-float;position:absolute;top:-28px;right:7%}.journeyBarNode{z-index:1;grid-template-rows:1fr auto;place-items:end stretch;height:150px;display:grid;position:relative}.journeyBarNode>button{width:100%;height:var(--bar-height);cursor:pointer;background:linear-gradient(#dcb13e,#75602a);border:1px solid #ffffff0d;border-radius:15px 15px 10px 10px;min-height:44px;padding:0;transition:all .2s;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff12}.journeyBarNode.latest>button{color:#fff;background:repeating-linear-gradient(-48deg,#ffd75f 0 5px,#806620 5px 10px);border-color:#ffe188;box-shadow:0 0 0 3px #ffd75f2b}.journeyDailyValue{bottom:calc(var(--bar-height) + 29px);z-index:4;color:#4f3c0e;background:#ffd75f;border-radius:10px;width:max-content;padding:6px 9px;font-size:9px;font-weight:900;position:absolute;left:50%;translate:-50%}.journeyDailyValue:after{content:"";background:#ffd75f;width:8px;height:8px;position:absolute;bottom:-4px;left:50%;translate:-50%;rotate:45deg}.journeyBarNode>button:hover,.journeyBarNode>button:focus-visible{filter:brightness(1.15);border-color:#fff5;outline:none;transform:translateY(-3px)}.journeyBarNode>time{color:#b8b3c4;text-align:center;margin-top:7px;font-size:8px;font-weight:700}.journeyBarNode>time small{color:#817b8e;margin-top:2px;font-size:7px;display:block}.journeyChartEmpty{z-index:1;color:#aaa5b7;text-align:center;font-size:11px;position:absolute;bottom:50%;left:0;right:0}.journeyBarNode .journeyBrief{color:#4a4551;top:3px;bottom:auto;transform:translate(-50%,5px)}.journeyBarNode:first-of-type .journeyBrief{left:0;transform:translateY(5px)}.journeyBarNode:last-of-type .journeyBrief{left:auto;right:0;transform:translateY(5px)}.journeyBarNode:hover .journeyBrief{visibility:visible;opacity:1;transform:translate(-50%)}.journeyBarNode:has(>button:focus-visible) .journeyBrief{visibility:visible;opacity:1;transform:translate(-50%)}.journeyBarNode:first-of-type:hover .journeyBrief,.journeyBarNode:last-of-type:hover .journeyBrief{transform:translate(0)}.journeyBarNode:first-of-type:has(>button:focus-visible) .journeyBrief{transform:translate(0)}.journeyBarNode:last-of-type:has(>button:focus-visible) .journeyBrief{transform:translate(0)}.journeyMobileBrief{display:none}.journeyBrief{z-index:10;visibility:hidden;opacity:0;pointer-events:none;text-align:left;background:#fffffff5;border:1px solid #dfdae9;border-radius:12px;width:210px;padding:12px 13px;transition:all .16s;position:absolute;bottom:57px;left:50%;transform:translate(-50%,6px);box-shadow:0 12px 30px #332d4929}.journeyBrief small,.journeyBrief strong{display:block}.journeyBrief small{color:#928c98;font-size:8px}.journeyBrief small i{border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.journeyBrief strong{color:#45404d;margin-top:5px;font-size:12px}.journeyBrief p{color:#77717d;margin:5px 0 8px;font-size:9px;line-height:1.45}.journeyBrief>b{color:#b27d13;font-size:10px}.journeyBrief>b.minus{color:#a9584b}.journeyEmpty{color:#827b91;border-top:1px dashed #d8d2e8;justify-content:center;align-items:center;gap:8px;padding-top:12px;font-size:11px;display:flex}.journeyEmpty span{color:#d6a832}.journeyEmpty p{margin:0}@keyframes journey-bounce{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-5px)rotate(2deg)}}@keyframes journey-sparkle{0%,to{opacity:.35;transform:scale(.75)rotate(0)}50%{opacity:1;transform:scale(1.2)rotate(18deg)}}@keyframes journey-star-float{0%,to{opacity:.55;transform:translateY(0)rotate(-7deg)}50%{opacity:1;transform:translateY(-9px)rotate(4deg)}}@media (width<=700px){.todayJourney{border-radius:18px;padding:20px 17px 16px}.journeyHeading{flex-direction:column;align-items:stretch;gap:10px}.journeyHeading h2{font-size:19px}.journeyHeading button{text-align:center;width:100%;min-height:38px}.journeyActions{justify-items:stretch;width:100%}.journeyProgress{grid-template-columns:35px minmax(0,1fr) 51px;gap:6px}.journeyBarsViewport{overscroll-behavior-x:contain;width:100%;max-width:100%;margin:0;padding:13px 0 0;overflow:hidden}.journeyBars{box-sizing:border-box;grid-template-columns:1fr;gap:8px;width:100%;min-width:100%;max-width:100%;padding:18px 14px 14px}.journeyChartSummary{grid-area:1/1;align-items:baseline;gap:8px;padding:0;display:flex}.journeyChartSummary>strong{margin:0;font-size:25px}.journeyTermEarned{border-top:0;border-left:1px solid #ffffff1a;margin:0 0 0 auto;padding:0 0 0 10px}.journeyChartBars{grid-area:2/1;grid-template-columns:repeat(var(--bar-count), minmax(0, 1fr));box-sizing:border-box;gap:clamp(2px,1vw,6px);width:100%;min-width:100%;padding-top:26px}.journeyBarNode{min-width:0;height:142px}.journeyBarNode>button{border-radius:9px 9px 6px 6px;min-width:0}.journeyDailyValue{bottom:calc(var(--bar-height) + 10px);padding:5px 7px}.journeyBarNode>time{text-overflow:clip;white-space:nowrap;width:100%;font-size:clamp(5px,1.8vw,8px);overflow:hidden}.journeyBarNode .journeyBrief,.journeyBarNode:hover .journeyBrief{display:none}.journeyBarNode:has(>button:focus-visible) .journeyBrief{display:none}.journeyBarNode>button:hover,.journeyBarNode>button:focus-visible,.journeyBarNode.active>button{filter:none;transform:none}.journeyMobileBrief{z-index:20;color:#fff;width:100%;min-height:142px;box-shadow:none;text-align:center;cursor:pointer;background:radial-gradient(circle at 80% 20%,#ffd76120,#0000 34%),#292638f5;border:1px solid #ffe08a45;border-radius:15px;align-content:center;justify-items:center;padding:20px;display:grid;position:absolute;inset:0}.journeyMobileBrief small{color:#bdb7c9;font-size:9px}.journeyMobileBrief strong{margin-top:6px;font-size:15px}.journeyMobileBrief p{color:#d7d2de;max-width:280px;margin:7px 0;font-size:10px;line-height:1.5}.journeyMobileBrief b{color:#ffd665;font-size:17px}.journeyMobileBrief em{color:#8f899a;margin-top:7px;font-size:8px;font-style:normal}.journeyBrief{width:min(180px,100vw - 76px)}}@media (prefers-reduced-motion:reduce){.journeyPlayer span,.floatingStar,.journeyChartStar{animation:none}}.resolveOverlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;color:#29273a;background:#23203994;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.resolveDialog{background:#fff;border-radius:22px;width:min(510px,100%);padding:25px;box-shadow:0 24px 80px #1c19314d}.resolveHead{grid-template-columns:42px 1fr 28px;align-items:center;gap:12px;display:grid}.resolveHead h2{margin:0;font-size:20px}.resolveHead p{color:#918c96;margin:4px 0 0;font-size:12px}.resolveHead>button{color:#777;cursor:pointer;background:#f1efec;border:0;border-radius:50%;width:28px;height:28px}.resolveMark{color:#3b9360;background:#e4f4ea;border-radius:13px;place-items:center;width:40px;height:40px;font-weight:700;display:grid}.resolveConflict{background:#f8f6f2;border:1px solid #ece8e1;border-radius:14px;margin:21px 0;padding:14px}.resolveConflict>span{color:#a25535;background:#fff0e8;border-radius:8px;padding:3px 8px;font-size:10px;display:inline-block}.resolveConflict p{justify-content:space-between;gap:15px;margin:10px 0;font-size:13px;display:flex}.resolveConflict p b{color:#7770d8;white-space:nowrap}.resolveConflict i{text-align:center;color:#b1acb4;font-size:10px;font-style:normal;display:block}.resolveDialog>label{color:#716d77;gap:7px;margin-top:14px;font-size:12px;display:grid}.resolveDialog select,.resolveDialog textarea{resize:vertical;background:#fff;border:1px solid #dcd7d0;border-radius:10px;padding:11px}.resolveDialog select:focus,.resolveDialog textarea:focus{border-color:#7770d8;outline:2px solid #d7d3fa}.resolveDialog label.saveReason{color:#5f5a66;align-items:center;gap:8px;display:flex}.saveReason input{accent-color:#6e67d9}.resolveActions{justify-content:flex-end;gap:9px;margin-top:23px;display:flex}.resolveActions button{cursor:pointer;background:#fff;border:1px solid #ddd8d0;border-radius:10px;padding:10px 15px}.resolveActions button.confirm{color:#fff;background:#6e67d9;border-color:#6e67d9}.resolveActions button:disabled{opacity:.45;cursor:not-allowed}@media (width<=550px){.resolveDialog{padding:20px}.resolveConflict p{gap:3px;display:grid}}.guide{max-width:1050px}.guideHero{color:#fff;background:linear-gradient(135deg,#302d50,#49446f);border-radius:24px;grid-template-columns:1.15fr 1fr;gap:40px;margin-bottom:20px;padding:34px 38px;display:grid}.guideHero>div+div{border-left:1px solid #ffffff26;align-self:end;padding-left:40px}.guideHero span{letter-spacing:2px;color:#d7d2ff;font-size:10px}.guideHero h2{margin:10px 0 8px;font-size:27px}.guideHero h3{margin:0 0 8px;font-size:18px}.guideHero p{color:#cbc8dc;margin:0;font-size:13px;line-height:1.65}.guideRules{gap:10px;display:grid}.guideRules article{background:#fff;border:1px solid #e7e3dc;border-radius:16px;grid-template-columns:62px 1fr 1fr;gap:26px;padding:22px 25px;display:grid}.guideNumber{flex-direction:column;align-items:center;gap:6px;display:flex}.guideNumber i{color:#6e67d9;background:#eeebff;border-radius:12px;place-items:center;width:38px;height:38px;font-size:19px;font-style:normal;display:grid}.guideNumber span{letter-spacing:1px;color:#aaa5ae;font-size:9px}.guideRules h3{margin:0 0 7px;font-size:15px}.guideRules p{color:#6e6974;margin:0;font-size:12px;line-height:1.7}.guideEn{border-left:1px solid #eeeae4;padding-left:26px}.guideEn h3{color:#6e67a7}.guideEn p{color:#88838d}.guideFooter{text-align:center;color:#514c79;background:#ece9fc;border-radius:15px;gap:5px;margin-top:18px;padding:18px;font-size:13px;display:grid}.guideFooter span{color:#77719b;font-size:11px}@media (width<=750px){.guideHero{grid-template-columns:1fr;gap:20px;padding:26px}.guideHero>div+div{border-top:1px solid #ffffff26;border-left:0;padding:18px 0 0}.guideRules article{grid-template-columns:48px 1fr;gap:14px}.guideEn{border-top:1px solid #eeeae4;border-left:0;grid-column:2;padding:14px 0 0}}.growthStarRules{color:#484252;background:#fff;border:1px solid #ded9ed;border-radius:16px;margin:18px 0;padding:18px}.growthStarRules summary{cursor:pointer;font-size:16px;font-weight:800}.growthStarRules p{overflow-wrap:anywhere;margin:12px 0;font-size:13px;line-height:1.8}.growthStarRuleColumns{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.growthStarRuleColumns h3{color:#625bc3;margin:8px 0;font-size:15px}.growthStarRules table{border-collapse:collapse;width:100%;font-size:13px}.growthStarRules th,.growthStarRules td{text-align:left;border-bottom:1px solid #eeeaf3;padding:9px 12px}.growthStarRules thead{background:#f5f3fb}.growthStarRuleExample{background:#f5f3fb;border-radius:12px;padding:14px;font-size:14px;line-height:1.8}@media (width<=700px){.growthStarRuleColumns{grid-template-columns:minmax(0,1fr);gap:12px}}.quality{color:#675f70;background:#faf9f6;border:1px solid #ded9d1;border-radius:7px;margin-top:7px;padding:5px 8px;font-size:11px;display:block}.timelineViewSwitch{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.timelineViewSwitch>div strong,.timelineViewSwitch>div small{display:block}.timelineViewSwitch>div small{color:#999;margin-top:4px;font-size:10px}.timelineViewSwitch>span{background:#e9e6e0;border-radius:11px;gap:4px;padding:4px;display:flex}.timelineViewSwitch button{color:#77717f;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:34px;padding:0 12px;font-size:11px;font-weight:700}.timelineViewSwitch button.active{color:#625bc3;background:#fff;box-shadow:0 2px 9px #29274314}.horizontalTimelineViewport{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-color:#c8c2df transparent;margin:0 -4px;padding:4px 4px 12px;overflow-x:auto}.horizontalTimeline{--card-width:176px;grid-template-columns:100px repeat(var(--milestones), var(--card-width)) 100px;align-items:stretch;min-width:max-content;height:430px;padding:0 12px;display:grid;position:relative}.timelineRail{background:linear-gradient(90deg,#f0c55c,#7770d8,#48a6a3);border-radius:999px;height:3px;position:absolute;top:50%;left:45px;right:45px;translate:0 -50%}.termEdge{z-index:2;color:#fff;text-align:center;background:#292743;border:4px solid #fff;border-radius:50%;flex-direction:column;justify-content:center;align-self:center;align-items:center;width:82px;height:82px;display:flex;box-shadow:0 7px 20px #2927432b}.termEdge.end{background:#5b56b7}.termEdge b{font-size:10px}.termEdge small{color:#ffffffa8;margin-top:4px;font-size:8px}.milestone{scroll-snap-align:center;height:100%;position:relative}.milestone article{background:#fff;border:1px solid #e4dfd8;border-radius:15px;width:160px;min-height:150px;padding:13px;position:absolute;left:8px;box-shadow:0 9px 25px #29274314}.milestone.above article{top:16px}.milestone.below article{bottom:16px}.milestone:after{content:"";background:#c8c2df;width:1px;height:55px;position:absolute;left:50%;translate:-50%}.milestone.above:after{top:calc(50% - 55px)}.milestone.below:after{top:50%}.milestone>i{z-index:3;background:#63a77f;border:4px solid #fff;border-radius:50%;width:16px;height:16px;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 0 0 2px #63a77f}.milestone>i.exam{background:#7068d0;box-shadow:0 0 0 2px #7068d0}.milestone>i.certificate{background:#e1ac39;box-shadow:0 0 0 2px #e1ac39}.milestone>i.waterpolo{background:#35a5c6;box-shadow:0 0 0 2px #35a5c6}.milestone>i.reward{background:#d97b63;box-shadow:0 0 0 2px #d97b63}.milestone .timelineIcon{float:left;border-radius:9px;width:30px;height:30px;margin:0 9px 5px 0}.milestone time{color:#999;font-size:9px}.milestone h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:3px 0;font-size:12px;display:-webkit-box;overflow:hidden}.milestone p{color:#8c8790;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:9px;line-height:1.4;display:-webkit-box;overflow:hidden}.milestone article>strong{clear:both;color:#d3a12f;padding-top:7px;font-size:11px;display:block}.milestone article>strong.spent{color:#a48fa1}.milestoneActions{gap:4px;margin-top:7px;display:flex}.milestoneActions button{color:#6e67a0;background:#fff;border:1px solid #e2ddd5;border-radius:6px;padding:4px 6px;font-size:8px}.milestoneActions button+button{color:#ae5c50}.milestone.cancelled{opacity:.55}@media (width<=750px){.timelineViewSwitch{flex-direction:column;align-items:stretch}.timelineViewSwitch>span button{flex:1}.horizontalTimelineViewport{scroll-snap-type:none;margin:0;padding:4px 0 10px;overflow:visible}.horizontalTimeline{grid-template-columns:minmax(0,1fr);gap:0;width:100%;min-width:0;height:auto;padding:4px 0;display:grid;position:relative}.timelineRail{background:linear-gradient(#f0c55c,#7770d8,#48a6a3);width:3px;height:auto;top:35px;bottom:35px;left:34px;translate:-50%}.termEdge{border-width:3px;align-self:auto;width:64px;height:64px;margin-left:2px}.termEdge.end{margin-top:6px}.termEdge b{font-size:9px}.termEdge small{font-size:7px}.milestone{scroll-snap-align:none;grid-template-columns:70px minmax(0,1fr);align-items:center;width:100%;height:auto;min-height:116px;padding:7px 0;display:grid}.milestone article{grid-column:2;width:auto;min-width:0;min-height:0;padding:14px;position:static}.milestone.above article,.milestone.below article{top:auto;bottom:auto}.milestone:after{display:none}.milestone>i{top:50%;left:34px}.milestone h3,.milestone p{-webkit-line-clamp:unset;display:block;overflow:visible}}.profileTabs{gap:10px;margin-bottom:18px;display:flex}.profileTabs button{text-align:left;color:#777;background:#fff;border:1px solid #e3dfd8;border-radius:14px;align-items:center;gap:10px;padding:9px 15px;display:flex}.profileTabs button.active{border-color:#7770d8;box-shadow:0 0 0 2px #e3dffd}.profileTabs button>span{color:#fff;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.profileTabs strong,.profileTabs small{display:block}.profileTabs small{margin-top:2px;font-size:9px}.profileHero{background:linear-gradient(125deg, var(--child), #312e50);color:#fff;border-radius:22px;grid-template-columns:65px 1fr auto;align-items:center;gap:18px;padding:28px 32px;display:grid}.bigAvatar{background:#ffffff25;border-radius:19px;place-items:center;width:60px;height:60px;font-size:28px;display:grid}.profileHero small{letter-spacing:1.5px;color:#ffffffb5;font-size:9px}.profileHero h2{margin:6px 0;font-size:23px}.profileHero p{color:#ffffffb8;margin:0;font-size:12px}.starBalance{text-align:right;grid-template-columns:auto auto;align-items:center;column-gap:8px;display:grid}.starBalance>span{color:#ffd86d;font-size:25px}.starBalance strong{font-size:35px}.starBalance small{grid-column:1/3}.growthStats{grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0;display:grid}.growthStats div{text-align:center;background:#fff;border:1px solid #e7e3dc;border-radius:13px;padding:15px}.growthStats strong,.growthStats span{display:block}.growthStats strong{font-size:20px}.growthStats span{color:#999;margin-top:4px;font-size:10px}.growthNav{border-bottom:1px solid #dedad3;margin:23px 0 18px;display:flex}.growthNav button{color:#888;background:0 0;border:0;padding:10px 17px;position:relative}.growthNav button.active{color:#625bc3;font-weight:600}.growthNav button.active:after{content:"";background:#6e67d9;height:2px;position:absolute;bottom:-1px;left:12px;right:12px}.growthEventMessage{border-radius:11px;margin:0 0 14px;padding:10px 13px;font-size:11px;font-weight:700}.growthEventMessage.success{color:#35734a;background:#edf8f0;border:1px solid #cce6d4}.growthEventMessage.error{color:#a14e40;background:#fff3f0;border:1px solid #edcec7}.timeline{gap:10px;display:grid}.timeline article{background:#fff;border:1px solid #e6e2dc;border-radius:14px;grid-template-columns:42px 1fr auto;align-items:center;gap:14px;padding:16px 19px;display:grid}.timelineIcon{color:#39805a;background:#e7f5ed;border-radius:12px;place-items:center;width:38px;height:38px;font-size:11px;font-weight:700;display:grid}.timelineIcon.exam{color:#655ec4;background:#eeebff}.timelineIcon.certificate{color:#a87820;background:#fff3d8}.timelineIcon.waterpolo{color:#247d9b;background:#dff5fb}.timelineIcon.reward{background:#ffece7}.timeline small{color:#999;font-size:10px}.timeline h3{margin:3px 0;font-size:14px}.timeline p{color:#888;margin:0;font-size:11px}.timeline>article>strong{color:#d6a633}.timeline>article>strong.spent{color:#a48fa1}.timeline{gap:0}.timeline .growthTimelineEntry{background:0 0;border:0;border-radius:0;grid-template-columns:46px minmax(0,1fr);align-items:stretch;gap:12px;padding:0;display:grid}.growthTimelineMarker{flex-direction:column;align-items:center;display:flex}.growthTimelineMarker .timelineIcon{z-index:1;border:3px solid #fff;flex:none;margin-top:21px;box-shadow:0 0 0 3px #edf5f0}.growthTimelineEntry.latest .growthTimelineMarker .timelineIcon{box-shadow:0 0 0 3px #fff2c9}.growthTimelineMarker>span{background:linear-gradient(#dedbe9,#eeeaf3);border-radius:999px;width:2px;height:100%;margin-top:7px}.growthTimelineCard{background:#fff;border:1px solid #e6e2eb;border-radius:17px;margin-bottom:13px;padding:20px 22px}.growthTimelineEntry.latest .growthTimelineCard{background:linear-gradient(135deg,#fdfcff,#f8f6ff);border-color:#ddd7f3;box-shadow:0 7px 24px #36304e0a}.growthTimelineCard header{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.growthTimelineCard header small{color:#397652;background:#eaf5ee;border-radius:6px;padding:3px 7px;font-size:9px;font-weight:800;display:inline-flex}.growthTimelineCard header small.certificate{color:#946710;background:#fff2cf}.growthTimelineCard header small.exam{color:#625bb5;background:#ece9fc}.growthTimelineCard header small.school{color:#327180;background:#e8f5f8}.growthTimelineCard header small.waterpolo{color:#247d9b;background:#dff5fb}.growthTimelineCard header small.reward{color:#a05f36;background:#fff0e7}.growthTimelineCard header small.adjustment{color:#8b5175;background:#f3eaf1}.growthTimelineCard header b{color:#946710;background:#fff0bd;border-radius:999px;margin-left:7px;padding:3px 7px;font-size:9px}.timeline .growthTimelineCard h3{color:#37333f;margin:7px 0 0;font-size:15px}.growthTimelineCard header time{color:#9c97a2;white-space:nowrap;font-size:10px}.timeline .growthTimelineCard>p{color:#797480;margin:9px 0 14px;font-size:11px;line-height:1.55}.growthTimelineCard footer{border-top:1px solid #eeebf0;justify-content:space-between;align-items:center;gap:12px;min-height:29px;padding-top:12px;display:flex}.growthTimelineCard footer>strong{color:#c7941e;font-size:13px}.growthTimelineCard footer>strong.spent{color:#9b758f}.growthTimelineEntry.cancelled .growthTimelineCard,.growthTimelineEntry.forfeited .growthTimelineCard{background:#f7f5f4}@media (width<=700px){.timeline .growthTimelineEntry{grid-template-columns:35px minmax(0,1fr);gap:8px}.growthTimelineMarker .timelineIcon{border-radius:10px;width:31px;height:31px;margin-top:19px;font-size:9px}.growthTimelineCard{padding:17px 15px}.growthTimelineCard header{gap:8px}.growthTimelineCard header time{font-size:9px}.growthTimelineCard footer{flex-direction:column;align-items:flex-start}.growthTimelineCard .timelineActions{grid-column:auto;width:100%}}.growthForm{background:#fff;border:1px solid #e6e2dc;border-radius:17px;padding:23px}.growthForm h2,.rewardLayout h2{margin:0 0 18px;font-size:17px}.formGrid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.growthForm label{color:#777;gap:6px;font-size:11px;display:grid}.growthForm input,.growthForm select{background:#fff;border:1px solid #ddd8d0;border-radius:9px;padding:10px}.growthForm .wide{grid-column:1/3}.growthForm>button{color:#fff;background:#6e67d9;border:0;border-radius:9px;margin-top:17px;padding:10px 15px}.rewardLayout{grid-template-columns:1fr 310px;gap:20px;display:grid}.rewardCards{gap:9px;display:grid}.rewardCards article{background:#fff;border:1px solid #e6e2dc;border-radius:14px;grid-template-columns:38px 1fr auto auto 20px;align-items:center;gap:11px;padding:14px;display:grid}.rewardCards article>span{color:#9b741c;background:#fff1cf;border-radius:11px;place-items:center;width:35px;height:35px;display:grid}.rewardCards h3{margin:0;font-size:13px}.rewardCards p{color:#999;margin:3px 0 0;font-size:10px}.rewardCards strong{color:#d29e28;font-size:13px}.rewardCards button{color:#fff;background:#6e67d9;border:0;border-radius:8px;padding:7px 10px}.rewardCards button:disabled{background:#ccc}.rewardCards button.removeReward{color:#bbb;background:0 0;padding:0;font-size:17px}.rewardMessage{color:#367653;background:#e8f6ed;border-radius:9px;padding:9px;font-size:12px}@media (width<=750px){.profileHero{grid-template-columns:50px 1fr}.starBalance{text-align:left;grid-column:1/3;justify-content:start}.growthStats{grid-template-columns:1fr 1fr}.rewardLayout,.formGrid{grid-template-columns:1fr}.growthForm .wide{grid-column:auto}.rewardCards article{grid-template-columns:38px 1fr auto}.rewardCards article>button{grid-column:2}.rewardCards button.removeReward{grid-area:1/3}}.timeline article{grid-template-columns:42px minmax(0,1fr) auto auto}.timeline article.cancelled{opacity:.65}.timelineActions{gap:5px;display:flex}.timelineActions button{color:#6e67a0;cursor:pointer;background:#fff;border:1px solid #ddd8d0;border-radius:7px;padding:5px 8px;font-size:10px}.timelineActions button+button{color:#b26255}.growthForm>button.cancelEdit{color:#7770d8;background:0 0;border:1px solid #d9d4ee;margin-left:8px}.redemptionHistory{margin-top:27px}.redemptionHistory>h2{border-top:1px solid #e5e1da;padding-top:20px}.redemptionHistory article{background:#fff;border:1px solid #e5e1da;border-radius:12px;grid-template-columns:1fr auto auto;align-items:center;gap:12px;margin-top:8px;padding:13px 15px;display:grid}.redemptionHistory article.cancelled{color:#999;background:#f5f3f0}.redemptionHistory strong,.redemptionHistory time,.redemptionHistory small{display:block}.redemptionHistory time{color:#8d8791;margin-top:4px;font-size:10px}.redemptionHistory small{color:#a26a60;margin-top:5px;font-size:10px}.redemptionHistory article>b{color:#ce9c2f;font-size:12px}.redemptionHistory button{color:#a95840;background:#fff0eb;border:0;border-radius:7px;padding:6px 9px;font-size:10px}.noRedemptions{color:#999;font-size:12px}@media (width<=700px){.timeline article{grid-template-columns:38px 1fr auto}.timelineActions{grid-column:2/4}.redemptionHistory article{grid-template-columns:1fr auto}.redemptionHistory button{grid-column:1/3;width:max-content}}.adjustmentLayout{grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:20px;display:grid}.adjustmentForm,.adjustmentHistory{background:#fff;border:1px solid #e6dedc;border-radius:18px;padding:22px}.adjustmentIntro{align-items:center;gap:13px;margin-bottom:20px;display:flex}.adjustmentIntro>span{color:#ad5d4e;background:#fff0eb;border-radius:14px;flex:none;place-items:center;width:46px;height:46px;font-size:16px;font-weight:900;display:grid}.adjustmentIntro>span.add{color:#27845a;background:#eaf8f0}.adjustmentIntro h2,.adjustmentHistory h2{color:#3d3943;margin:0;font-size:17px}.adjustmentIntro p{color:#8d8791;margin:4px 0 0;font-size:11px}.adjustmentFields{grid-template-columns:130px minmax(0,1fr);gap:12px;display:grid}.adjustmentFields label{color:#77717f;gap:6px;font-size:11px;display:grid}.adjustmentFields label.wide{grid-column:auto}.adjustmentFields label:nth-child(n+3){grid-column:1/-1}.adjustmentFields input,.adjustmentFields select,.adjustmentFields textarea{color:#4b4650;width:100%;min-width:0;font:inherit;background:#fdfcfb;border:1px solid #ded9d3;border-radius:9px;padding:10px 11px}.adjustmentFields textarea{resize:vertical;min-height:78px}.applyAdjustment{color:#fff;cursor:pointer;background:#a96054;border:0;border-radius:10px;min-height:42px;margin-top:15px;padding:0 16px;font-weight:800}.applyAdjustment:disabled{opacity:.45;cursor:not-allowed}.adjustmentError{color:#a34f43;background:#fff0eb;border-radius:8px;padding:9px 11px;font-size:11px}.parentOnly{color:#99939f;margin-left:10px}.adjustmentHistoryHead{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.adjustmentHistoryHead small{color:#a45d50}.adjustmentHistory article{border-top:1px solid #eeeae5;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:11px;padding:13px 0;display:grid}.adjustmentHistory article>span{color:#a65347;white-space:nowrap;background:#fff0eb;border-radius:7px;padding:5px 7px;font-size:11px;font-weight:800}.adjustmentHistory article.added>span{color:#27845a;background:#eaf8f0}.adjustmentHistory strong,.adjustmentHistory time,.adjustmentHistory small{display:block}.adjustmentHistory time{color:#9a949d;margin-top:4px;font-size:9px}.adjustmentHistory p,.adjustmentHistory small{color:#817b85;margin:5px 0 0;font-size:10px;line-height:1.45}.adjustmentHistory article>button{color:#736c82;cursor:pointer;background:#fff;border:1px solid #ded9d3;border-radius:7px;padding:6px 8px;font-size:9px}.adjustmentHistory article.reversed{opacity:.55}.adjustmentHistory article.reversed>span{color:#918b93;background:#efedeb;text-decoration:line-through}.noAdjustments{color:#aaa4ad;text-align:center;padding:28px 0;font-size:12px}.timelineIcon.adjustment{color:#a65347;background:#fff0eb;font-size:10px}.timelineIcon.adjustment.added{color:#27845a;background:#eaf8f0}.milestone>i.adjustment{background:#b66b5d;box-shadow:0 0 0 2px #b66b5d}.redemptionHistory article.forfeited{background:#fff7f5;border-color:#ead4cf}@media (width<=800px){.adjustmentLayout{grid-template-columns:1fr}}@media (width<=600px){.adjustmentForm,.adjustmentHistory{padding:17px}.adjustmentFields{grid-template-columns:1fr}.adjustmentFields label,.adjustmentFields label.wide,.adjustmentFields label:nth-child(n+3){grid-column:1}.applyAdjustment{width:100%}.parentOnly{text-align:center;margin:8px 0 0;display:block}.adjustmentHistory article{grid-template-columns:auto minmax(0,1fr)}.adjustmentHistory article>button{grid-column:2;justify-self:start}}.homeworkPage form.editingHomework{background:#f0eefb;border:1px solid #d8d3f5;border-radius:14px;grid-template-columns:130px 1fr 160px auto auto;padding:12px}.homeworkPage form button.cancelHomeworkEdit{color:#6e67d9;background:#fff;border:1px solid #cbc5ef;padding:0 16px}.task:has(.taskActions){grid-template-columns:28px minmax(0,1fr) auto}.taskActions{align-items:center;gap:5px;display:flex}.taskActions>button{color:#7770d8;cursor:pointer;background:0 0;border:0;padding:5px;font-size:11px}.taskActions>button.delete{color:#bbb;font-size:19px}@media (width<=800px){.homeworkPage form.editingHomework{grid-template-columns:1fr}.homeworkPage form button.cancelHomeworkEdit{padding:11px}}.homeworkTabs{background:#ebe8e2;border-radius:14px;gap:7px;width:max-content;margin-bottom:18px;padding:5px;display:flex}.homeworkTabs button{color:#77717f;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:10px 17px;font-weight:700}.homeworkTabs button.active{color:#5d56bd;background:#fff;box-shadow:0 3px 12px #29274312}.homeworkPage>form,.homeworkLibrary>form{grid-template-columns:130px minmax(180px,1.2fr) 160px minmax(180px,1fr) auto}.homeworkPage>form{grid-template-columns:120px minmax(220px,1.5fr) 150px minmax(180px,1fr)}.homeworkLibrary>form{grid-template-columns:repeat(3,minmax(180px,1fr))}.homeworkDurationInput,.homeworkStarsInput,.homeworkReminderInput,.homeworkPenaltyInput{white-space:nowrap;background:#fff;border:1px solid #ddd8d0;border-radius:10px;align-items:center;gap:6px;min-height:42px;padding:0 9px;display:flex!important}.homeworkDurationInput input,.homeworkStarsInput input,.homeworkReminderInput input,.homeworkPenaltyInput input[type=number]{text-align:center;min-width:0;background:#f5f3ef!important;border:0!important;width:58px!important;padding:6px!important}.homeworkPenaltyInput{flex-wrap:wrap;grid-column:1/-1;min-width:0;padding:8px 12px}.homeworkPenaltyInput input[type=number]{flex:0 0 58px}.homeworkPenaltyInput input[type=checkbox]{accent-color:#c56a52;flex:0 0 16px;width:16px;height:16px;margin:0;padding:0}.homeworkPenaltyInput input:disabled{opacity:.45}.taskMeta .taskMissedPenalty,.templatePenalty{color:#ad5748;font-weight:800}.homeworkCategoryManager{background:#fff;border:1px solid #e4dfd8;border-radius:14px;margin:12px 0 20px;overflow:hidden}.categoryToggle{color:#423e4b;text-align:left;cursor:pointer;background:#f8f6f2;border:0;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:100%;padding:12px 15px;display:grid}.categoryToggle small{color:#96909b;font-size:10px}.categoryToggle b{color:#6e67d9;font-size:10px}.categoryPanel{padding:13px}.categoryChips{flex-wrap:wrap;gap:7px;display:flex}.categoryChips article{border:1px solid #e5e0d9;border-radius:10px;align-items:center;gap:6px;padding:7px 9px;display:flex}.categoryChips i{background:var(--category);border-radius:50%;width:9px;height:9px}.categoryChips strong{font-size:11px}.categoryChips button{color:#7770d8;cursor:pointer;background:0 0;border:0;padding:2px;font-size:9px}.categoryChips button:last-child{color:#b46b60;font-size:14px}.categoryPanel form{grid-template-columns:42px minmax(160px,1fr) auto auto;gap:8px;margin:12px 0 0;display:grid}.categoryPanel input[type=color]{width:42px;padding:4px}.homeworkTemplateList span:first-of-type{border-left:3px solid var(--category,#aaa)}.homeworkTemplateList article small{color:#8b8590;margin-top:5px;font-size:10px;display:block}.taskMeta{align-items:center;gap:7px;margin-top:4px;display:flex}.taskMeta span{border-left:3px solid var(--category,#aaa);color:#6e6873;background:#f1efeb;border-radius:6px;padding:3px 7px;font-size:9px}.taskMeta small{font-size:9px;margin:0!important}.taskMeta .taskStarReward{color:#8d681a;background:#fff3d4;border-radius:6px;padding:3px 7px;font-weight:800}.homeworkTimer{align-items:center;gap:5px;margin-top:7px;display:flex}.homeworkTimer.running b{color:#4d8c65}.homeworkTimer button{color:#397652;cursor:pointer;background:#e9f5ed;border:0;border-radius:7px;padding:4px 8px;font-size:9px}.homeworkTimer button.timerReset{color:#918a95;background:#f1efec}.task.done .homeworkTimer b{color:#999;text-decoration:none}.tasks .task{background:#fff;border:1px solid #e8e3dc;border-radius:15px;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;margin:9px 0;padding:14px;box-shadow:0 5px 18px #2927430a}.task:has(.taskActions){background:#fff;border:1px solid #e8e3dc;border-radius:15px;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;margin:9px 0;padding:14px;box-shadow:0 5px 18px #2927430a}.tasks .task:hover{border-color:#d7d1ed;box-shadow:0 8px 24px #29274312}.tasks .task.deadlineTask,.tasks .task.deadlineTask:hover,.tasks .task.upcomingDeadlineTask,.tasks .task.upcomingDeadlineTask:hover{background:linear-gradient(135deg,#fffcf3 0%,#fff3c9 100%);border-color:#e4ca78;box-shadow:0 4px 14px #9c781212}.tasks .task.done{background:linear-gradient(120deg,#f1faf3,#fff);border-color:#cfe6d6}.tasks .task.overdueTask{background:linear-gradient(120deg,#fff7f5,#fff);border-color:#eccdc7}.taskMeta .taskUpcomingDeadline{color:#8a6916;font-weight:800}.tasks .check{color:#fff;cursor:pointer;border:2px solid #bdb7d1;border-radius:12px;width:36px;height:36px;font-size:18px;font-weight:900;transition:all .18s}.tasks .task.done .check{background:#50a371;border-color:#50a371;box-shadow:0 5px 13px #50a37135}.taskContent{min-width:0}.taskTitleRow{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.taskTitleRow>strong{color:#353142;font-size:15px;line-height:1.35}.taskRewardBadge{color:#8a6a1f;background:linear-gradient(135deg,#fff8de,#fff0bd);border:1px solid #efd68c;border-radius:10px;flex:none;align-items:center;gap:5px;padding:6px 9px;font-size:9px;display:flex}.taskRewardBadge b{color:#b47b08;font-size:13px}.task.done .taskRewardBadge{color:#3d8056;background:#e4f5e9;border-color:#b9ddc4}.taskMeta{flex-wrap:wrap;margin-top:7px}.taskMeta .taskChild{align-items:center;display:inline-flex}.taskMeta .taskChild i{width:7px;height:7px;margin-right:4px}.taskNotes{background:#f7f5f1;border-radius:8px;padding:7px 9px;line-height:1.5}.taskCompletedRow{align-items:center;gap:10px;margin-top:8px;display:flex}.taskCompletedRow>span{color:#378158;font-size:11px;font-weight:800}.taskCompletedRow .quality{width:auto;margin:0;display:inline-block}.homeworkTimer{justify-content:flex-start;gap:8px;margin-top:10px}.homeworkTimer>div{align-items:baseline;gap:5px;min-width:100px;display:flex}.homeworkTimer>div small{color:#99939f;font-size:9px}.homeworkTimer b{font-size:14px}.homeworkTimer button{min-height:32px;padding:0 13px;font-size:10px;font-weight:800}.homeworkTimer.running button{color:#4e390f;background:#f1b94e}.taskActions{align-self:start}.homeworkPicker{position:relative}.homeworkPicker>input{width:100%;height:100%}.homeworkSuggestions{z-index:30;background:#fff;border:1px solid #ded9d1;border-radius:13px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 15px 40px #29274324}.homeworkSuggestions button{text-align:left;justify-content:space-between;align-items:center;width:100%;min-height:42px;color:#292743!important;background:#fff!important;padding:8px 10px!important;display:flex!important}.homeworkSuggestions button:hover{background:#f2efff!important}.homeworkSuggestions small{color:#918b99}.homeworkSuggestions p{color:#8b8590;margin:0;padding:10px;font-size:12px}.homeworkLibrary>form{margin-bottom:22px;display:grid}.homeworkLibraryHead{justify-content:space-between;align-items:end;gap:18px;margin:10px 0 14px;display:flex}.homeworkLibraryHead h2{margin:0 0 4px}.homeworkLibraryHead p{color:#918b99;margin:0;font-size:12px}.homeworkLibraryHead input{border:1px solid #ddd8d0;border-radius:10px;width:min(280px,100%);padding:11px}.homeworkTemplateList{gap:9px;display:grid}.homeworkTemplateList article{background:#fff;border:1px solid #e5e0d9;border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:15px 17px;display:grid}.homeworkTemplateList strong{font-size:14px}.homeworkTemplateList span{color:#665fc0;background:#ece9fd;border-radius:7px;margin-left:9px;padding:3px 7px;font-size:10px;display:inline-block}.homeworkTemplateList p{color:#918b99;margin:5px 0 0;font-size:12px}.homeworkTemplateList button{color:#6e67d9;cursor:pointer;background:0 0;border:0}.homeworkError{color:#a6493e;background:#fff0ed;border-radius:10px;padding:10px 13px}.taskNotes{color:#77717f;margin:5px 0 0;font-size:12px}.homeworkPage button:disabled{opacity:.45;cursor:not-allowed}.homeworkRepeatSetup{background:#faf9f6;border:1px solid #e3ded6;border-radius:13px;grid-column:1/-1;align-items:center;gap:14px;padding:11px 13px;display:flex}.homeworkModeSwitch{background:#ebe8e2;border-radius:10px;gap:4px;padding:3px;display:flex}.homeworkModeSwitch button{color:#77717f!important;background:0 0!important;min-height:34px!important;padding:0 12px!important}.homeworkModeSwitch button.active{box-shadow:0 2px 8px #29274312;color:#5d56bd!important;background:#fff!important}.tasks .task{box-shadow:none;background:linear-gradient(135deg,#fbfaff 0%,#f8f7fc 100%);border:1px solid #e6e2ed;border-radius:14px;grid-template-columns:34px minmax(0,1fr) auto;gap:13px;margin:9px 0;padding:16px 13px;position:relative;overflow:hidden}.task:has(.taskActions){box-shadow:none;background:linear-gradient(135deg,#fbfaff 0%,#f8f7fc 100%);border:1px solid #e6e2ed;border-radius:14px;grid-template-columns:34px minmax(0,1fr) auto;gap:13px;margin:9px 0;padding:16px 13px;position:relative;overflow:hidden}.tasks .task>.check,.tasks .task>.taskContent,.tasks .task>.taskActions{z-index:1;position:relative}.taskMascot{z-index:0;opacity:.14;pointer-events:none;filter:saturate(.82);background-image:url(/illustrations/homework-mascot-states.png);background-position:0 0;background-repeat:no-repeat;background-size:200% 200%;width:112px;height:112px;position:absolute;bottom:-11px;right:5px}.task.mascotFocusing .taskMascot{opacity:.18;background-position:100% 0}.task.mascotPaused .taskMascot{opacity:.17;background-position:0 100%}.task.done .taskMascot{opacity:.2;background-position:100% 100%}.tasks .task:hover{background:linear-gradient(135deg,#faf9ff 0%,#f5f3fb 100%);border-color:#d8d2e6;box-shadow:0 4px 14px #3831510a}.tasks .task.done,.tasks .task.done:hover{background:linear-gradient(135deg,#f5fbf7 0%,#f1f8f4 100%);border-color:#cee4d5}.tasks .task.overdueTask,.tasks .task.overdueTask:hover{background:linear-gradient(135deg,snow 0%,#fdf6f5 100%);border-color:#ead8d5}.tasks .check{background:#fff;border:2px solid #c9c5d0;border-radius:50%;width:29px;height:29px;font-size:15px}.tasks .check:hover{border-color:var(--task-accent);scale:none}.tasks .task.done .check{box-shadow:none}.taskTitleRow{gap:16px}.taskTitleRow>strong{color:#2f2d36;font-size:16px}.taskRewardBadge{background:0 0;border:0;border-radius:0;flex-direction:column;align-items:flex-end;gap:1px;padding:0}.taskRewardBadge b{color:#b17b08;font-size:15px;line-height:1}.taskRewardBadge small{color:#aaa18f;font-size:9px}.task.done .taskRewardBadge{background:0 0;border:0}.task.done .taskRewardBadge b{color:#43815a}.taskMeta{gap:0;margin-top:6px}.taskMeta span,.taskMeta small{color:#89848d;background:0 0;border:0;border-radius:0;align-items:center;padding:0;font-size:11px;display:inline-flex}.taskMeta small+small:before{color:#d0ccd2;content:"·";margin:0 7px}.taskNotes{color:#77717f;background:0 0;border-radius:0;margin:8px 0 0;padding:0}.homeworkTimer{border-top:1px solid #f0ede9;justify-content:flex-start;gap:10px;margin-top:12px;padding-top:9px;position:relative}.homeworkTimer>div small{color:#99939f}.homeworkTimer b{color:#514d59;font-variant-numeric:tabular-nums;font-size:13px}.homeworkTimer button{color:#625bb5;background:#fff;border:1px solid #ded9eb;min-height:29px;padding:0 11px;font-size:10px}.homeworkTimer.running{background:0 0;border-radius:0;padding:9px 0 0}.homeworkTimer.running button{color:#8c671b;box-shadow:none;background:#fff9e9;border-color:#ead49f}.timerProgress{background:#ebe8e4;border-radius:999px;width:min(140px,28%);height:3px;position:absolute;bottom:-1px;right:0;overflow:hidden}.timerProgress i{border-radius:inherit;background:var(--task-accent);height:100%;transition:width .3s;display:block}.weekdayPicker{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.weekdayPicker>span{color:#77717f;margin-right:2px;font-size:12px}.weekdayPicker>button{width:34px;color:#6f6976!important;background:#fff!important;border:1px solid #ddd8d0!important;border-radius:50%!important;min-height:34px!important;padding:0!important}.weekdayPicker>button.selected{color:#fff!important;background:#6e67d9!important;border-color:#6e67d9!important}.weekdayPicker label{color:#77717f;align-items:center;gap:7px;margin-left:8px;font-size:12px;display:flex}.weekdayPicker input{padding:7px 9px!important}.homeworkSuccess{color:#367547;background:#edf8ef;border-radius:10px;margin:-8px 0 16px;padding:10px 13px;font-size:12px}.homeworkManagerList{padding:20px}.homeworkManagerList .cardTitle{margin-bottom:14px}.homeworkManagerList .cardTitle small{color:#99939f;margin-top:4px;font-size:11px;display:block}.homeworkTodayProgress{grid-template-columns:auto minmax(72px,120px) auto auto;align-items:center;gap:8px;margin-top:7px;display:grid}.homeworkTodayProgress>span{color:#8b8590;font-size:10px}.homeworkTodayProgress>span b{color:#514b66;font-size:13px}.homeworkTodayProgress>i{background:#e8e4ef;border-radius:999px;height:6px;overflow:hidden}.homeworkTodayProgress>i em{border-radius:inherit;background:linear-gradient(90deg,#766fdb,#e9b83e);height:100%;transition:width .35s;display:block}.homeworkTodayProgress>strong{color:#ba8414;white-space:nowrap;font-size:11px}.homeworkTodayProgress>small{color:#8c8691;white-space:nowrap;margin:0;font-size:9px}.homeworkHeaderActions{align-items:center;gap:7px;display:flex}.homeworkCompactToggle.active{color:#665da0;background:#f1edfb;border-color:#d2c9ef}.homeworkTodayCompact .task{grid-template-columns:32px minmax(0,1fr);gap:9px;min-height:0;padding:9px 11px}.homeworkTodayCompact .check{border-radius:9px;width:28px;height:28px}.homeworkTodayCompact .taskTitleRow{gap:8px}.homeworkTodayCompact .taskTitleRow>strong{font-size:13px}.homeworkTodayCompact .taskRewardBadge{padding:3px 7px}.homeworkTodayCompact .taskRewardBadge small,.homeworkTodayCompact .taskCategory,.homeworkTodayCompact .taskEstimate,.homeworkTodayCompact .taskNotes,.homeworkTodayCompact .taskCompletedRow,.homeworkTodayCompact .homeworkTimer,.homeworkTodayCompact .taskActions,.homeworkTodayCompact .taskMascot{display:none}.homeworkTodayCompact .taskMeta{gap:5px;margin-top:3px}.homeworkTodayCompact .taskMeta small{font-size:9px}.homeworkListTools{background:#f7f5f1;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin:0 -4px 12px;padding:10px;display:grid}.homeworkStatusFilters{scrollbar-width:none;gap:5px;display:flex;overflow-x:auto}.homeworkStatusFilters button{color:#77717f;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:none;align-items:center;gap:6px;min-height:36px;padding:0 11px;font-size:12px;font-weight:700;display:flex}.homeworkStatusFilters button.active{color:#5d56bd;background:#fff;box-shadow:0 2px 9px #29274312}.homeworkStatusFilters b{background:#e9e6df;border-radius:999px;place-items:center;min-width:19px;height:19px;font-size:10px;display:grid}.homeworkStatusFilters button.active b{background:#ece9fd}.homeworkListSearch{gap:7px;display:flex}.homeworkListSearch select,.homeworkListSearch input{min-height:38px;padding:0 10px}.homeworkListSearch select{width:110px}.homeworkListSearch input{width:190px}.homeworkDateGroup{color:#4f4a59;border-top:1px solid #eeeae5;align-items:center;gap:8px;margin:10px -20px 0;padding:9px 20px 6px;display:flex}.homeworkDateGroup:first-of-type{border-top:0}.homeworkDateGroup strong{font-size:12px}.homeworkDateGroup time{color:#aaa5ae;font-size:10px}.homeworkDateGroup.overdue strong,.overdueTask>div>strong{color:#b05246}.homeworkManagerList .task{padding:11px 13px}.homeworkManagerList .taskTitleRow>strong{font-size:13px}.homeworkManagerList .taskNotes{margin-left:0;font-size:11px;display:block}.homeworkManagerList .quality{margin-top:5px;padding:5px 7px;font-size:11px}.loadMoreHomework{color:#635cc0;cursor:pointer;background:#f7f5ff;border:1px solid #dcd7ed;border-radius:11px;min-height:42px;margin:14px auto 0;padding:0 18px;font-weight:700;display:block}.loadMoreHomework small{color:#9a94a7;margin-left:7px;font-weight:400}@media (width<=800px){.homeworkPage>form,.homeworkLibrary>form{grid-template-columns:1fr}.homeworkLibraryHead{flex-direction:column;align-items:stretch}.homeworkLibraryHead input,.homeworkTabs{width:100%}.homeworkTabs button{flex:1}.homeworkSuggestions{margin-top:6px;position:static}.homeworkTemplateList article{grid-template-columns:minmax(0,1fr) auto auto}.homeworkRepeatSetup{flex-direction:column;align-items:stretch}.homeworkModeSwitch button{flex:1}.weekdayPicker label{width:100%;margin:5px 0 0}.weekdayPicker label input{flex:1}.homeworkManagerList{padding:15px}.homeworkListTools{grid-template-columns:1fr;margin:0 0 10px;padding:8px}.homeworkListSearch{grid-template-columns:105px minmax(0,1fr);display:grid}.homeworkListSearch select,.homeworkListSearch input{width:100%;min-width:0}.homeworkDateGroup{margin-left:-15px;margin-right:-15px;padding-left:15px;padding-right:15px}.homeworkManagerList .taskNotes{margin-left:0;display:block}.homeworkStatusFilters{margin-right:-8px;padding-right:8px}.homeworkTodayProgress{grid-template-columns:auto minmax(55px,1fr) auto}.homeworkTodayProgress>small{grid-column:1/-1}.tasks:not(.homeworkManagerList) .cardTitle{align-items:flex-start}.homeworkHeaderActions{flex-direction:column;align-items:stretch;gap:5px}.homeworkHeaderActions button{white-space:nowrap;min-height:32px;padding:6px 9px}:is(.homeworkTodayCompact .task,.homeworkTodayCompact .task:has(.taskActions)){grid-template-columns:28px minmax(0,1fr);gap:8px;padding:9px}.categoryToggle{grid-template-columns:auto 1fr}.categoryToggle b{grid-column:2}.categoryPanel form{grid-template-columns:42px minmax(0,1fr)}.categoryPanel form button{grid-column:2}.homeworkDurationInput,.homeworkStarsInput,.homeworkPenaltyInput{justify-content:flex-start}.taskMeta{flex-wrap:wrap}.tasks .task{grid-template-columns:31px minmax(0,1fr);gap:10px;padding:14px 10px}.task:has(.taskActions){grid-template-columns:31px minmax(0,1fr);gap:10px;padding:14px 10px}.tasks .check{width:27px;height:27px}.taskMascot{opacity:.12;width:86px;height:86px;bottom:-7px;right:2px}.task.mascotFocusing .taskMascot,.task.mascotPaused .taskMascot,.task.done .taskMascot{opacity:.16}.taskActions{grid-column:2;justify-content:flex-end}.taskTitleRow{flex-direction:row;align-items:flex-start;gap:10px}.taskRewardBadge{align-self:flex-start}.taskCompletedRow{flex-direction:column;align-items:stretch}.taskCompletedRow .quality{width:100%}.homeworkTimer{flex-wrap:wrap}.homeworkTimer>div{min-width:92px}.timerProgress{flex-basis:100%;width:100%;position:static}}.authPage{background:#fff;grid-template-columns:minmax(420px,560px) 1fr;min-height:100vh;display:grid}.authPanel{flex-direction:column;justify-content:center;padding:clamp(35px,7vw,90px);display:flex}.authBrand{grid-template-columns:42px 1fr;align-items:center;margin-bottom:45px;display:grid}.authBrand>span{background:#f5c76b;border-radius:11px;grid-row:1/3;place-items:center;width:36px;height:36px;font-size:22px;display:grid}.authBrand strong{font-size:17px}.authBrand small{letter-spacing:1.5px;color:#999;font-size:8px}.privacyBadge{color:#347656;background:#e9f6ef;border-radius:15px;width:max-content;padding:6px 11px;font-size:10px}.authPanel h1{margin:16px 0 7px;font-size:29px}.authPanel>p{color:#88838e;margin:0 0 24px;font-size:13px}.authPanel form{gap:14px;display:grid}.authPanel label{color:#716d77;gap:6px;font-size:11px;display:grid}.authPanel input{border:1px solid #dcd7d0;border-radius:10px;padding:12px}.authPanel form>button{color:#fff;background:#6e67d9;border:0;border-radius:10px;margin-top:5px;padding:12px}.authError{color:#a84f3b;background:#fff0ec;border-radius:9px;padding:10px;font-size:11px}.authNote{color:#aaa;text-align:center;margin-top:18px;font-size:9px}.authVisual{color:#fff;background:linear-gradient(145deg,#292743,#4a456e);align-items:flex-end;padding:8vw;display:flex}.authVisual span{letter-spacing:2px;color:#d0caef;font-size:9px}.authVisual h2{margin:13px 0;font-size:38px;line-height:1.3}.authVisual p{color:#c1bed0}.accountButton{color:#fff;text-align:left;background:0 0;border:0;border-top:1px solid #45425f;flex-shrink:0;margin-top:0;padding:15px 18px}.accountButton span,.accountButton small{display:block}.accountButton small{color:#aaa8bb;margin-top:4px;font-size:9px}.privacyHero{color:#fff;background:linear-gradient(125deg,#312e50,#555078);border-radius:22px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:28px 34px;display:flex}.privacyHero small{letter-spacing:2px;color:#ccc7eb;font-size:9px}.privacyHero h2{margin:7px 0}.privacyHero p{color:#c5c1d4;margin:0;font-size:12px}.privacyShield{align-items:center;gap:9px;font-size:30px;display:flex}.privacyShield span{color:#d5d1e4;font-size:9px;line-height:1.4}.privacyLayout{grid-template-columns:1.3fr 1fr;gap:20px;display:grid}.memberCard .cardTitle>span{color:#999;font-size:11px}.memberCard article{border-top:1px solid #eeeae5;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;padding:12px 0;display:grid}.memberAvatar{color:#625bc3;background:#ece9fc;border-radius:11px;place-items:center;width:34px;height:34px;display:grid}.memberCard small{color:#999;margin-top:3px;font-size:10px;display:block}.memberCard em{color:#347656;background:#e6f4ec;border-radius:7px;margin-left:6px;padding:2px 6px;font-size:8px;font-style:normal}.memberCard article>span{color:#777;font-size:10px}.inviteCard{margin-top:20px}.inviteCard>p,.privacyControls>p{color:#999;font-size:11px;line-height:1.6}.inviteCard form{grid-template-columns:1fr 160px auto;gap:7px;display:grid}.inviteCard input,.inviteCard select,.inviteResult input{background:#fff;border:1px solid #ddd8d0;border-radius:8px;padding:9px}.inviteCard button,.inviteResult button{color:#fff;background:#6e67d9;border:0;border-radius:8px;padding:9px 12px}.inviteResult{grid-template-columns:1fr auto;gap:6px;margin-top:13px;display:grid}.inviteResult span{color:#777;grid-column:1/3;font-size:10px}.privacyControls>a{color:#625bc3;background:#eeebff;border-radius:10px;margin:14px 0;padding:11px;text-decoration:none;display:block}.privacyFact{border-top:1px solid #eeeae5;gap:10px;padding:12px 0;display:flex}.privacyFact b{width:28px}.privacyFact span strong,.privacyFact span small{display:block}.privacyFact span strong{font-size:12px}.privacyFact span small{color:#999;margin-top:3px;font-size:9px;line-height:1.5}.auditCard{margin-top:20px}.auditCard article{border-top:1px solid #eeeae5;gap:10px;padding:9px 0;display:flex}.auditCard i{background:#7770d8;border-radius:50%;width:7px;height:7px;margin-top:5px}.auditCard strong,.auditCard small{font-size:10px;display:block}.auditCard small{color:#999;margin-top:3px}@media (width<=850px){.authPage{grid-template-columns:1fr}.authVisual{display:none}.privacyLayout{grid-template-columns:1fr}}@media (width<=600px){.authPage{display:block}.authPanel{min-height:100vh;padding:30px 22px}.inviteCard form{grid-template-columns:1fr}.memberCard article{grid-template-columns:34px 1fr}.memberCard article>span{grid-column:2}}.childManager{margin-bottom:20px}.childManager .cardTitle>span{color:#999;font-size:11px}.childManager article{border-top:1px solid #eeeae5;grid-template-columns:12px 1fr auto auto;align-items:center;gap:9px;padding:10px 0;display:grid}.childManager article>i{border-radius:50%;width:10px;height:10px}.childManager article>button{color:#7770d8;background:0 0;border:0;font-size:10px}.childManager article>button.danger{color:#b15c4e}.childManager form{grid-template-columns:1fr 45px auto auto;gap:7px;margin-top:13px;display:grid}.childManager form input{border:1px solid #ddd8d0;border-radius:8px;padding:8px}.childManager form input[type=color]{width:45px;padding:3px}.childManager form button{color:#fff;background:#6e67d9;border:0;border-radius:8px;padding:8px 11px}.childManager form button[type=button]{color:#6e67d9;background:#fff;border:1px solid #d8d3ee}.independentInvite{border-top:1px solid #e7e3dc;margin-top:20px;padding-top:18px}.independentInvite h3{margin:0;font-size:13px}.independentInvite>button{background:#302d50}.independentInvite p{color:#999;font-size:10px;line-height:1.5}@media (width<=600px){.childManager form{grid-template-columns:1fr 45px}.childManager form button{grid-column:auto}}.notificationSettings{grid-column:1/3;min-width:0}.notificationSettings .cardTitle>span{color:#4f8a66;font-size:10px}.channelChecks{gap:10px;margin-bottom:18px;display:flex}.channelChecks label{border:1px solid #e0dcd5;border-radius:14px;padding:7px 12px;font-size:11px}.channelChecks input{accent-color:#6e67d9;margin-right:6px}.notificationFormGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0;display:grid}.notificationFormGrid>*{min-width:0}.notificationFormGrid label{color:#777;gap:6px;font-size:10px;display:grid}.notificationFormGrid input,.notificationFormGrid select,.notificationFormGrid textarea{font:inherit;background:#fff;border:1px solid #ddd8d0;border-radius:8px;width:100%;min-width:0;max-width:100%;padding:9px}.notificationFormGrid select{text-overflow:ellipsis;display:block}.notificationFormGrid textarea{resize:vertical}.notificationFormGrid .wide{grid-column:span 2}.imessageGroupPicker{background:#faf9ff;border:1px solid #e5e0f5;border-radius:12px;gap:8px;min-width:0;padding:12px;display:grid;overflow:hidden}.groupPickerHeader{color:#777;justify-content:space-between;align-items:center;gap:12px;font-size:10px;display:flex}.groupPickerHeader button{color:#5d55bc;cursor:pointer;background:#fff;border:1px solid #d8d1f2;border-radius:8px;padding:7px 10px}.groupPickerHeader button:disabled{opacity:.6;cursor:wait}.imessageGroupPicker .hint{margin:0}@media (width<=800px){.notificationSettings{grid-column:auto}.notificationFormGrid{grid-template-columns:1fr}.notificationFormGrid .wide{grid-column:auto}.channelChecks{flex-wrap:wrap}.groupPickerHeader{flex-direction:column;align-items:flex-start}}.memberActions{gap:5px;display:flex}.memberActions select{background:#fff;border:1px solid #ddd8d0;border-radius:7px;padding:5px;font-size:9px}.memberActions button{color:#a65340;background:#fff0ec;border:0;border-radius:7px;font-size:9px}.passwordCard{margin-top:20px}.passwordCard h2{margin-top:0;font-size:16px}.passwordCard form{gap:8px;display:grid}.passwordCard input{border:1px solid #ddd8d0;border-radius:8px;padding:9px}.passwordCard button{color:#fff;background:#302d50;border:0;border-radius:8px;padding:9px}.pwaInstall{right:22px;bottom:max(22px, env(safe-area-inset-bottom));z-index:120;color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#292743f5;border:1px solid #ffffff26;border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;width:min(430px,100vw - 32px);padding:13px;display:grid;position:fixed;box-shadow:0 18px 60px #1816294d}.pwaInstallIcon{color:#292743;background:#f3c969;border-radius:13px;place-items:center;width:45px;height:45px;font-size:25px;display:grid}.pwaInstall strong,.pwaInstall small{display:block}.pwaInstall small{color:#d8d5e7;margin-top:3px;font-size:11px}.pwaInstall button{color:#292743;background:#f3c969;border:0;border-radius:10px;min-height:38px;padding:0 15px;font-weight:800}.pwaInstall .pwaDismiss{color:#d8d5e7;background:0 0;min-width:32px;padding:0;font-size:22px}.offlineNotice{top:max(8px, env(safe-area-inset-top));z-index:160;color:#fff;white-space:nowrap;background:#a6493e;border-radius:999px;padding:8px 14px;font-size:12px;font-weight:700;position:fixed;left:50%;translate:-50%;box-shadow:0 8px 24px #63251f38}.pwaHelpBackdrop{z-index:180;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#17152680;place-items:end center;padding:18px;display:grid;position:fixed;inset:0}.pwaHelp{width:min(440px,100%);padding:25px;padding-bottom:max(25px, env(safe-area-inset-bottom));color:#292743;background:#fff;border-radius:24px;box-shadow:0 24px 80px #17152659}.pwaHelp>span{color:#8a6a20;letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:800}.pwaHelp h2{margin:8px 0 15px}.pwaHelp ol{color:#676376;margin:0 0 20px;padding-left:22px;line-height:2}.pwaHelp button{color:#fff;background:#292743;border:0;border-radius:12px;width:100%;min-height:45px;font-weight:800}@media (width<=600px){.pwaInstall{right:12px;bottom:max(12px, env(safe-area-inset-bottom));grid-template-columns:auto minmax(0,1fr) auto;gap:9px;width:calc(100vw - 24px)}.pwaInstallIcon{width:40px;height:40px}.pwaInstall .pwaDismiss{background:#292743;border:1px solid #ffffff26;border-radius:50%;min-height:30px;position:absolute;top:-10px;right:-4px}}@media (display-mode:standalone){body{overscroll-behavior-y:none}}.changelog{max-width:980px}.changelogHero{color:#fff;background:linear-gradient(135deg,#302d50,#514b79);border-radius:22px;justify-content:space-between;align-items:center;gap:28px;margin-bottom:26px;padding:30px 34px;display:flex;overflow:hidden}.changelogHero>div:first-child>span{color:#c9c4f6;letter-spacing:2px;font-size:10px}.changelogHero h2{margin:8px 0 7px;font-size:26px}.changelogHero p{color:#d5d1e5;margin:0;font-size:13px}.currentRelease{background:#ffffff0d;border:1px solid #ffffff26;border-radius:16px;flex:none;min-width:142px;padding:18px 20px;display:grid}.currentRelease small,.currentRelease time{color:#c9c5d9;font-size:10px}.currentRelease strong{color:#fff1a9;margin:3px 0 5px;font-size:25px}.releaseTimeline{display:grid}.release{grid-template-columns:28px minmax(0,1fr);gap:12px;display:grid}.releaseMarker{flex-direction:column;align-items:center;display:flex}.releaseMarker i{background:#6e67d9;border:3px solid #d9d5ee;border-radius:50%;flex:none;width:12px;height:12px;margin-top:25px;box-shadow:0 0 0 4px #f1effb}.release:first-child .releaseMarker i{background:#e3a82e;border-color:#ffe5a0;box-shadow:0 0 0 4px #fff6dc}.releaseMarker span{background:#dedbe9;width:1px;height:100%;margin-top:7px}.releaseCard{background:#fff;border:1px solid #e6e2eb;border-radius:17px;margin-bottom:14px;padding:22px 24px}.release:first-child .releaseCard{background:linear-gradient(135deg,#fdfcff,#f8f6ff);border-color:#ddd7f3;box-shadow:0 7px 24px #36304e0a}.releaseCard header{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.releaseCard header>div>span{color:#6e67d9;font-size:11px;font-weight:800}.releaseCard header b{color:#946710;background:#fff0bd;border-radius:999px;margin-left:7px;padding:3px 7px;font-size:9px}.releaseCard h3{color:#37333f;margin:6px 0 0;font-size:17px}.releaseCard header time{color:#9c97a2;white-space:nowrap;font-size:11px}.releaseCard>p{color:#797480;margin:8px 0 15px;font-size:12px}.releaseCard ul{border-top:1px solid #eeebf0;gap:9px;margin:0;padding:14px 0 0;list-style:none;display:grid}.releaseCard li{color:#625d69;grid-template-columns:47px minmax(0,1fr);align-items:start;gap:9px;font-size:12px;line-height:1.55;display:grid}.releaseCard li em{color:#625bb5;text-align:center;background:#ece9fc;border-radius:5px;padding:3px 5px;font-size:9px;font-style:normal;font-weight:800}.releaseCard li em.improved{color:#397652;background:#eaf5ee}.releaseCard li em.fixed{color:#a05f36;background:#fff0e7}@media (width<=600px){.changelogHero{flex-direction:column;align-items:stretch;padding:24px}.changelogHero h2{font-size:22px}.currentRelease{grid-template-columns:auto 1fr auto;align-items:center;min-width:0;padding:13px 15px}.currentRelease strong{margin:0 9px;font-size:20px}.release{grid-template-columns:18px minmax(0,1fr);gap:7px}.releaseCard{padding:18px 16px}.releaseCard header time{font-size:9px}}.adminConsole{gap:16px;max-width:1120px;display:grid}.adminHero{color:#fff;background:linear-gradient(135deg,#292743,#514b79);border-radius:22px;justify-content:space-between;align-items:center;gap:24px;padding:28px 31px;display:flex}.adminHero span{color:#c9c4f6;letter-spacing:2px;font-size:9px}.adminHero h2{margin:7px 0 5px;font-size:25px}.adminHero p{color:#d5d1e5;margin:0;font-size:12px}.adminHero button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff29;border-radius:11px;flex:none;padding:10px 16px}.adminStats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.adminStats article{background:#fff;border:1px solid #e5e1ea;border-radius:15px;gap:4px;padding:18px 20px;display:grid}.adminStats small{color:#918b98;font-size:10px}.adminStats strong{color:#514b79;font-size:26px}.adminSection{background:#fff;border:1px solid #e5e1ea;border-radius:18px;padding:21px 23px}.adminSection>header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:15px;display:flex}.adminSection h3{margin:0;font-size:16px}.adminSection header p{color:#97919c;margin:4px 0 0;font-size:10px}.adminSection>header>span{color:#625bb5;background:#efecfc;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:700}.adminInviteStats{flex-wrap:wrap;gap:9px;display:flex}.adminInviteStats span{color:#77717e;background:#f7f5fa;border-radius:10px;padding:9px 12px;font-size:11px}.adminInviteStats b{color:#514b79;margin-left:5px}.adminFamilyList,.adminUserList{gap:8px;display:grid}.adminFamilyList>article{background:#fdfcfe;border:1px solid #eeeaf0;border-radius:13px;grid-template-columns:minmax(170px,.8fr) minmax(300px,1.5fr) minmax(170px,.7fr);align-items:center;gap:18px;padding:14px;display:grid}.adminFamilyName{align-items:center;gap:10px;min-width:0;display:flex}.adminFamilyName>span{color:#625bb5;background:#ece9fc;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.adminFamilyName strong,.adminFamilyName small,.adminActivity small,.adminActivity strong,.adminActivity span,.adminUserList strong,.adminUserList small{display:block}.adminFamilyName strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.adminFamilyName small,.adminActivity small,.adminUserList small{color:#9a949e;margin-top:3px;font-size:9px}.adminUsage{flex-wrap:wrap;gap:6px;display:flex}.adminUsage span{color:#77717d;background:#f1eff5;border-radius:6px;padding:5px 7px;font-size:9px}.adminUsage b{color:#4e4954}.adminActivity{text-align:right}.adminActivity strong{margin-top:3px;font-size:10px}.adminActivity span{color:#938d98;margin-top:4px;font-size:8px}.adminUserList>article{border-bottom:1px solid #eeeaf0;grid-template-columns:minmax(180px,1.4fr) minmax(120px,1fr) 70px 130px;align-items:center;gap:12px;padding:12px 13px;font-size:10px;display:grid}.adminUserList>article:last-child{border-bottom:0}.adminUserList>article>span,.adminUserList time{color:#77717e}.adminUserList>article>b{color:#397652;background:#eaf5ee;border-radius:999px;width:max-content;padding:4px 7px;font-size:8px}.adminPrivacyNote{color:#918b98;text-align:center;margin:0;padding:4px 3px;font-size:9px}@media (width<=760px){.adminHero{flex-direction:column;align-items:stretch;padding:22px 20px}.adminHero button{width:100%}.adminStats{grid-template-columns:1fr 1fr}.adminStats article,.adminSection{padding:15px}.adminFamilyList>article{grid-template-columns:1fr;gap:11px}.adminActivity{text-align:left;border-top:1px solid #eeeaf0;padding-top:9px}.adminUserList>article{grid-template-columns:minmax(0,1fr) auto}.adminUserList>article>span,.adminUserList time{grid-column:1/3}}.languageSwitcher{right:18px;bottom:max(18px, env(safe-area-inset-bottom));z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border:1px solid #ded9eb;border-radius:999px;gap:3px;padding:4px;display:flex;position:fixed;box-shadow:0 8px 24px #29274324}.languageSwitcher button{color:#817b8a;cursor:pointer;background:0 0;border:0;border-radius:999px;min-width:42px;min-height:31px;padding:0 10px;font-size:10px;font-weight:800}.languageSwitcher button.active{color:#fff;background:#625bc3;box-shadow:0 3px 10px #625bc33b}@media (width<=600px){.languageSwitcher{right:10px;bottom:max(10px, env(safe-area-inset-bottom))}.languageSwitcher button{min-width:38px;min-height:29px;padding:0 8px}body{overflow-x:hidden}.shell{min-width:0}.shell aside{z-index:40;padding:max(8px, env(safe-area-inset-top)) 10px 8px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#292743f5;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid;position:sticky;top:0;box-shadow:0 6px 24px #29274324}.shell aside .brand,.shell aside .term{display:none}.shell aside nav{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;gap:5px;min-width:0;margin:0;padding:0 2px 3px;display:flex;overflow-x:auto}.shell aside nav::-webkit-scrollbar{display:none}.shell aside nav button{white-space:nowrap;scroll-snap-align:start;border-radius:11px;flex:none;min-height:42px;padding:9px 12px;font-size:13px}.shell aside nav button span{margin-left:6px}.shell aside .accountButton{text-align:center;border:1px solid #514d70;border-radius:11px;align-self:center;min-width:42px;min-height:42px;padding:7px 9px}.shell aside .accountButton span{text-overflow:ellipsis;white-space:nowrap;max-width:42px;font-size:10px;overflow:hidden}.shell aside .accountButton small{font-size:0}.shell aside .accountButton small:after{content:"退出";font-size:8px}.shell main{padding:20px 14px calc(28px + env(safe-area-inset-bottom))}header{align-items:flex-start;gap:12px}header h1{font-size:25px;line-height:1.15}header h1.dailyQuote{letter-spacing:-.3px;font-size:20px;line-height:1.3}header p{margin-bottom:5px;font-size:11px}.avatars{padding-top:2px}.avatars span{border-width:2px;width:32px;height:32px;font-size:12px}.filters,.profileTabs,.growthNav,.historyFilters,.channelChecks{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.filters{margin:20px 0;padding-bottom:3px}.filters button,.profileTabs button,.growthNav button,.historyFilters button{white-space:nowrap;flex:none}.hero{border-radius:18px;align-items:flex-start;padding:21px 20px}.hero strong{font-size:34px}.heroReward{flex-wrap:wrap;max-width:210px}.heroReward em{flex-basis:max-content}.ring{width:68px;height:68px}.card{border-radius:16px;min-width:0;padding:18px}.cardTitle{align-items:flex-start;gap:10px;margin-bottom:16px}.cardTitle h2{font-size:16px}.event{grid-template-columns:128px minmax(0,1fr);align-items:center;gap:12px;font-size:12px}.event time,.event .courseTitleMarker{min-width:0}.weekGrid{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;grid-template-columns:none;grid-auto-columns:min(84vw,330px);grid-auto-flow:column;gap:10px;margin-right:-14px;padding-right:14px}.weekGrid::-webkit-scrollbar{display:none}.day{scroll-snap-align:start;min-height:330px;padding:16px}.day.current{background:linear-gradient(#ebe8ff 0,#fff 135px);border-width:2px;border-color:#6e67d9;box-shadow:0 16px 38px #514ab129}.day.current:before{content:"";background:#6e67d9;border-radius:999px;width:42px;height:4px;margin:-9px auto 12px;display:block}.homeworkPage form,.homeworkPage form.editingHomework,.childManager form,.inviteCard form,.formGrid,.notificationFormGrid{grid-template-columns:minmax(0,1fr)}.homeworkPage form button,.homeworkPage form button.cancelHomeworkEdit,.childManager form button,.inviteCard form button,.growthForm>button,.sendTest{min-height:44px}.task:has(.taskActions){grid-template-columns:28px minmax(0,1fr)}.taskActions{flex-wrap:wrap;grid-column:2}.courseTop{flex-direction:column;align-items:stretch;gap:8px}.courseSearch{width:100%}.courseList{padding:4px 15px}.courseList article{grid-template-columns:minmax(0,1fr) auto}.courseList article>button:last-child{grid-column:2}.termCards article{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:17px;display:grid}.notificationSettings{grid-column:auto}.notificationSettings .cardTitle{display:grid}.notificationFormGrid .wide{grid-column:auto}.channelChecks{padding-bottom:5px}.channelChecks label{white-space:nowrap;flex:none}.groupPickerHeader{align-items:stretch}.groupPickerHeader button{min-height:42px}.preview pre{overflow-wrap:anywhere;max-width:100%;padding:14px;font-size:12px}.profileHero{border-radius:18px;padding:21px 19px}.growthStats div{padding:12px 8px}.timeline article{padding:14px}.rewardCards article{grid-template-columns:38px minmax(0,1fr) auto}.privacyHero{align-items:flex-start;padding:22px 20px}.privacyShield{display:none}.memberCard article,.childManager article{grid-template-columns:34px minmax(0,1fr)}.memberActions,.childManager article>button{grid-column:2}.memberActions{flex-wrap:wrap}.inviteResult{grid-template-columns:minmax(0,1fr)}.inviteResult span{grid-column:auto}.resolveOverlay{align-items:end;padding:10px}.resolveDialog{border-radius:20px 20px 14px 14px;max-height:calc(100dvh - 20px);padding:19px;overflow-y:auto}.resolveActions{grid-template-columns:1fr 1fr;display:grid}.resolveActions button{min-height:44px}.authPage{min-width:0}.authPanel{padding:28px 20px}.tasks{padding:16px 14px}.tasks .cardTitle{align-items:center;margin-bottom:12px}.tasks .cardTitle button{flex:none}:is(.tasks .task,.tasks .task:has(.taskActions)){grid-template-columns:28px minmax(0,1fr);align-items:start;gap:10px;margin:8px 0;padding:14px 11px}.tasks .check{width:27px;height:27px}.tasks .taskContent{width:100%;min-width:0}.tasks .taskTitleRow{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;display:grid}.tasks .taskTitleRow>strong{overflow-wrap:anywhere;min-width:0;font-size:14px}.tasks .taskRewardBadge{text-align:right;min-width:39px;display:block}.tasks .taskRewardBadge b{white-space:nowrap;font-size:13px;display:block}.tasks .taskRewardBadge small{display:none}.tasks .taskMeta{align-items:center;gap:0;margin-top:6px;display:flex}.tasks .taskMeta small{white-space:nowrap;margin-top:0;line-height:1.6;display:inline-flex}.tasks .taskNotes{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:7px;font-size:11px;display:-webkit-box;overflow:hidden}.tasks .homeworkTimer{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;margin-top:10px;display:grid}.tasks .homeworkTimer>div{align-items:baseline;gap:6px;min-width:0;display:flex}.tasks .homeworkTimer>div small{white-space:nowrap;margin:0}.tasks .homeworkTimer button{white-space:nowrap;min-height:30px;padding:0 10px}.tasks .timerProgress{grid-column:1/-1;width:100%}.tasks .taskCompletedRow{align-items:stretch;gap:7px}.tasks .taskCompletedRow>span{margin:0}.tasks .taskCompletedRow .quality{width:100%;min-width:0}.tasks .taskActions{grid-column:2;justify-content:flex-end;width:100%;margin-top:-2px}.tasks .taskActions>button{min-height:30px;padding:4px 7px}.tasks .taskMascot{width:68px;height:68px;bottom:1px;right:5px}.homeworkManagerList .homeworkListSearch{grid-template-columns:96px minmax(0,1fr)}.homeworkManagerList .homeworkDateGroup{margin-left:-14px;margin-right:-14px;padding-left:14px;padding-right:14px}}@media (width<=380px){.hero .ring{display:none}.event{grid-template-columns:120px minmax(0,1fr);gap:9px}.profileHero{grid-template-columns:44px minmax(0,1fr);gap:12px}.bigAvatar{border-radius:14px;width:44px;height:44px;font-size:21px}}.todayScheduleCard,.weatherDay{--sky-top:#2274b2;--sky-mid:#7fb4d5;--sky-bottom:#dce9eb;--cloud-opacity:0;isolation:isolate;background:linear-gradient(175deg, var(--sky-top), var(--sky-mid) 48%, var(--sky-bottom));position:relative;overflow:hidden}.todayScheduleCard>:not(.weatherScene){z-index:2;position:relative}.todayScheduleCard>.cardTitle{color:#fff;text-shadow:0 1px 8px #17375330}.todayScheduleCard>.cardTitle button{color:#fff;background:#183b631f;border:1px solid #ffffff59;border-radius:10px;min-height:36px;padding:6px 10px}.todayScheduleCard .childBlock{color:#343047;background:#ffffffeb;border:1px solid #ffffffe0;border-radius:16px;padding:16px;box-shadow:0 8px 24px #153b6410}.todayScheduleCard .childBlock .event:last-child{border-bottom:0}.weatherNow{color:#364d65;background:#ffffffdf;border:1px solid #ffffffa8;border-radius:12px;flex-wrap:wrap;align-items:center;gap:4px 8px;width:fit-content;max-width:100%;margin:-6px 0 12px;padding:7px 11px;font-size:11px;font-weight:700;line-height:1.6;display:flex}.weatherNow em{color:#526579;font-style:normal;font-weight:500}.weatherScene{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.weatherAtmosphere,.weatherHorizon{position:absolute;inset:0}.weatherAtmosphere{background:radial-gradient(at 87% 0,#fff7dd99,#0000 58%)}.weatherHorizon{background:linear-gradient(#0000 35%,#e9f0ef66)}.weatherOrb{background:radial-gradient(circle,#fffef5 30%,#fff4cce6 65%,#fff3cc00 74%);border-radius:50%;width:44px;height:44px;position:absolute;top:70px;right:12%;box-shadow:0 0 36px 16px #fff6d578,0 0 100px 50px #fff3c738}.weatherCloud{width:115%;height:170px;opacity:var(--cloud-opacity);filter:blur(14px);background:radial-gradient(at 16% 66%,#f5f8fbcc,#0000 36%),radial-gradient(at 43% 45%,#ffffffb3,#0000 39%),radial-gradient(at 74% 62%,#dce5f2b3,#0000 40%),radial-gradient(at 95% 40%,#ffffffa6,#0000 32%);animation:42s ease-in-out infinite alternate weatherDrift;position:absolute}.cloudOne{top:-35px;left:-18%}.cloudTwo{opacity:calc(var(--cloud-opacity) * .65);animation-duration:58s;animation-direction:alternate-reverse;animation-delay:-23s;top:65px;right:-24%;transform:scale(1.25)}.cloudThree{height:220px;opacity:calc(var(--cloud-opacity) * .4);filter:blur(22px);animation-duration:68s;animation-delay:-39s;top:40%;left:-20%}.weatherRain,.weatherStars{display:none;position:absolute;inset:0}.weatherRain i{width:1px;height:55px;opacity:var(--rain-depth);animation:weatherRain var(--fall-duration) var(--fall-delay) linear infinite;background:linear-gradient(#0000,#ecf7ffb3);position:absolute;top:-80px;transform:rotate(12deg)}.weatherStars i{background:#f5f5ff;border-radius:50%;width:2px;height:2px;position:absolute;box-shadow:0 0 5px #e9eeff66}.weather-partly{--cloud-opacity:.8}.weather-cloudy{--sky-top:#647f9a;--sky-mid:#a5b6c7;--sky-bottom:#dce3e8;--cloud-opacity:.95}.weather-rain{--sky-top:#465e76;--sky-mid:#7e95a8;--sky-bottom:#c2d0d9;--cloud-opacity:.85}.weather-storm{--sky-top:#303f58;--sky-mid:#64788d;--sky-bottom:#a4b4c4;--cloud-opacity:.65}.weather-fog{--sky-top:#8096a5;--sky-mid:#b1c2cb;--sky-bottom:#dce4e7;--cloud-opacity:.95}.weather-cloudy .weatherOrb,.weather-rain .weatherOrb,.weather-storm .weatherOrb,.weather-fog .weatherOrb{display:none}.weather-rain .weatherRain,.weather-storm .weatherRain{display:block}.weather-fog .weatherCloud{filter:blur(28px)}.weather-afterDark{--sky-top:#101d3c;--sky-mid:#304967;--sky-bottom:#798da3}.weather-afterDark .weatherAtmosphere{background:radial-gradient(at 83% 8%,#c0d2f026,#0000 50%)}.weather-afterDark .weatherOrb{background:#eef1e8;width:32px;height:32px;box-shadow:0 0 26px 6px #d8e4fa30,0 0 70px 24px #d8e4fa15}.weather-afterDark .weatherOrb:after{content:"";background:#172847;border-radius:50%;position:absolute;inset:-3px -3px 6px 9px}.weather-afterDark .weatherCloud{opacity:calc(var(--cloud-opacity) * .3)}.weather-afterDark.weather-night .weatherStars,.weather-afterDark.weather-partly .weatherStars{display:block}.weather-default{--sky-top:#789ab9;--sky-mid:#b2c9dc;--sky-bottom:#e6edf2}@keyframes weatherDrift{0%{translate:-3%}to{translate:9% 6px}}@keyframes weatherRain{0%{transform:translate(12px,-60px)rotate(12deg)}to{transform:translate(-65px,850px)rotate(12deg)}}@media (width<=600px){.weatherOrb{top:70px;right:10%}.weatherNow{font-size:10px}.todayScheduleCard .childBlock{padding:12px}.weatherCloud{filter:blur(12px)}.weatherRain i:nth-child(2n){display:none}}@media (prefers-reduced-motion:reduce){.weatherCloud,.weatherRain i{animation:none}.weatherRain{background:repeating-linear-gradient(102deg,#0000 0 47px,#dcecff17 48px,#0000 49px 92px)}.weatherRain i{display:none}}.day.weatherDay{background:linear-gradient(175deg, var(--sky-top), var(--sky-mid) 48%, var(--sky-bottom))}.day.weatherDay>:not(.weatherScene){z-index:2;position:relative}.day.weatherDay h3,.day.weatherDay.current h3{color:#fff}.day h3{flex-wrap:wrap;align-items:center;gap:6px}.weekWeatherDate{font-size:11px;font-weight:500}.day.weatherDay .weatherNow{gap:3px;width:100%;margin:-8px 0 14px;padding:8px;font-size:11px}.forecastTemperatures{word-spacing:2px;flex-basis:100%;display:block}.forecastTemperatures small{font-size:10px;font-weight:500}.day.weatherDay .weekWeatherChild{background:#ffffffed;border:1px solid #ffffffcf;border-radius:12px;margin-top:12px;padding:10px}.day.weatherDay h4{margin-top:0}.day.weatherDay .weatherOrb{opacity:.6;width:25px;height:25px;top:18px;right:20px;box-shadow:0 0 35px 14px #fff4d64a}.day.weatherDay .weatherCloud{filter:blur(10px);height:120px;animation-duration:75s}.day.weatherDay .weatherRain i{animation-duration:calc(var(--fall-duration) * 1.8);opacity:calc(var(--rain-depth) * .6)}.weekWeatherUnavailable{color:#827d8c;margin:-10px 0 16px;font-size:11px;display:block}.weekWeatherSource{color:#827d8c;margin:6px 0 0;font-size:11px}.weekWeatherSource a{color:inherit}@media (prefers-reduced-motion:reduce){.day.weatherDay .weatherCloud,.day.weatherDay .weatherRain i{animation:none}}.day.weatherDay .weekEvent{grid-template-columns:minmax(0,1fr) auto;gap:4px}.day.weatherDay .weekEvent>p{overflow-wrap:anywhere;min-width:0}.day.weatherDay .weekEventActions{flex-direction:column}.day.weatherDay .scheduleTime{white-space:normal;flex-wrap:wrap;max-width:100%}
