@import "https://fonts.googleapis.com/css2?family=Nunito:wght@500;600;700;800&display=swap";html,body{width:100%;height:100%}input::-ms-clear{display:none}input::-ms-reveal{display:none}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:#0000;font-family:sans-serif;line-height:1.15}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}address{font-style:normal;line-height:inherit;margin-bottom:1em}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{text-align:left;caption-side:bottom;padding-top:.75em;padding-bottom:.3em}input,button,select,optgroup,textarea{color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical;overflow:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal;margin-bottom:.5em;padding:0;display:block}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}.app-footer{text-align:center;padding:calc(2.19vw * var(--scale)) calc(1.67vw * var(--scale)) calc(2.6vw * var(--scale));position:relative}.app-footer__tagline{margin:0 0 calc(.42vw * var(--scale));font-size:calc(1.25vw * var(--scale));color:var(--text-muted);font-weight:600}.app-footer__version{margin:0 0 calc(1.46vw * var(--scale));font-size:calc(.83vw * var(--scale));color:var(--text-light);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.app-footer__links{justify-content:center;align-items:center;gap:calc(1.25vw * var(--scale));display:flex}.app-footer__links a{font-size:calc(1.04vw * var(--scale));color:var(--teal);font-weight:600;text-decoration:none}.app-footer__links a:hover{text-decoration:underline}.app-header{height:var(--header-height);min-height:56px;padding:0 calc(1.67vw * var(--scale));background:var(--bg-white);border-bottom:calc(.05vw * var(--scale)) solid var(--border-light);box-shadow:0 calc(.1vw * var(--scale)) calc(.21vw * var(--scale)) #00000008;flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}.app-header__avatar{width:calc(2.5vw * var(--scale));height:calc(2.5vw * var(--scale));border:calc(.1vw * var(--scale)) solid var(--border-blue);min-width:40px;min-height:40px;box-shadow:0 calc(.1vw * var(--scale)) calc(.31vw * var(--scale)) #006d771f;background:linear-gradient(135deg,#a8dff5,#7ec8e3);border-radius:50%;justify-content:center;align-items:center;display:flex;overflow:hidden}.app-header__avatar img{object-fit:cover;width:100%;height:100%}.app-header__avatar-initial{font-size:calc(1.04vw * var(--scale));color:var(--teal);font-weight:800}.sidebar{z-index:10;width:var(--sidebar-width);background:var(--bg-white);border-right:calc(.05vw * var(--scale)) solid var(--border-light);height:100vh;box-shadow:calc(.1vw * var(--scale)) 0 calc(.42vw * var(--scale)) #0000000a;flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar__brand{align-items:center;gap:calc(.63vw * var(--scale));padding:calc(.83vw * var(--scale)) calc(.83vw * var(--scale));min-height:calc(4.38vw * var(--scale));display:flex;overflow:hidden}.sidebar__logo{width:clamp(28px, calc(2.71vw * var(--scale)), 40px);height:clamp(28px, calc(2.71vw * var(--scale)), 40px);object-fit:contain;flex-shrink:0}.sidebar__brand-text{min-width:0;font-size:clamp(15px, calc(1.67vw * var(--scale)), 22px);color:var(--teal);letter-spacing:-.03em;white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:700;line-height:1;overflow:hidden}.sidebar__nav{gap:calc(.42vw * var(--scale));padding:calc(.83vw * var(--scale)) calc(.83vw * var(--scale)) 0;flex-direction:column;flex:1;min-width:0;display:flex;overflow-y:auto}.sidebar__link{align-items:center;gap:calc(.83vw * var(--scale));padding:calc(.83vw * var(--scale)) calc(.83vw * var(--scale));border-radius:calc(.83vw * var(--scale));font-size:calc(1.04vw * var(--scale));color:var(--text-muted);min-width:0;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:flex}.sidebar__link span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar__link:hover{color:var(--text-dark);background:#f3f4f6}.sidebar__link--active{background:var(--purple-soft);color:var(--purple);font-weight:700}.sidebar__link-icon{font-size:calc(1.04vw * var(--scale));flex-shrink:0}.sidebar__footer{padding:calc(1.04vw * var(--scale)) calc(.83vw * var(--scale));border-top:calc(.05vw * var(--scale)) solid var(--border-light);gap:calc(.42vw * var(--scale));flex-direction:column;min-width:0;display:flex}.sidebar__footer-link{align-items:center;gap:calc(.63vw * var(--scale));padding:calc(.63vw * var(--scale)) calc(.63vw * var(--scale));border-radius:calc(.63vw * var(--scale));font-family:inherit;font-size:calc(1.04vw * var(--scale));color:var(--text-muted);cursor:pointer;background:0 0;border:none;min-width:0;font-weight:600;text-decoration:none;transition:background .15s;display:flex}.sidebar__footer-link span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar__footer-link:hover{color:var(--text-dark);background:#f3f4f6}.app-layout{background:var(--bg-page);min-height:100vh;font-family:Nunito,system-ui,sans-serif;display:flex;overflow-x:hidden}.app-layout__main{margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));flex-direction:column;min-width:0;min-height:100vh;display:flex}.app-layout__content{flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow-x:auto}.app-layout__content>*{box-sizing:border-box;max-width:100%}@media (width<=768px){.app-layout__main{width:100%;margin-left:0}.sidebar{transform:translate(-100%)}}.classwork-page{padding:calc(1.25vw * var(--scale)) calc(2.08vw * var(--scale)) calc(1.04vw * var(--scale));box-sizing:border-box;flex:1;width:100%;max-width:100%;margin:0 auto}.classwork-page__title{margin:0 0 calc(1.67vw * var(--scale));font-size:calc(2.92vw * var(--scale));color:var(--teal);letter-spacing:-.02em;font-weight:800;line-height:1.15}.classwork-page__section-title{margin:0 0 calc(1.46vw * var(--scale));font-size:calc(1.67vw * var(--scale));color:var(--text-dark);font-weight:800}.classwork-page__course-card{min-height:calc(11.93vw * var(--scale));margin-bottom:calc(2.08vw * var(--scale));background:var(--bg-white);border:calc(.05vw * var(--scale)) solid var(--border-light);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);display:flex;overflow:hidden}.classwork-page__course-card--active{background:linear-gradient(135deg,#fffde7 0%,#fff8e1 100%);border-color:#ffe082}.classwork-page__thumb{width:calc(13.96vw * var(--scale));min-width:200px;padding:calc(.68vw * var(--scale));flex-shrink:0;justify-content:center;align-items:center;display:flex}.classwork-page__thumb--addition{background:linear-gradient(135deg,#e8f6fb 0%,#b8e8f8 100%)}.classwork-page__thumb--subtraction{background:linear-gradient(135deg,#fff3e0 0%,#ffe0b2 100%)}.classwork-page__thumb--multiplication{background:linear-gradient(135deg,#f3e8ff 0%,#d4c4ff 100%)}.classwork-page__thumb--division{background:linear-gradient(135deg,#e8f5e9 0%,#c8e6c9 100%)}.classwork-page__thumb--mental{background:linear-gradient(135deg,#fff8e1 0%,#ffecb3 100%)}.classwork-page__thumb--memory{background:linear-gradient(135deg,#fce4ec 0%,#f8bbd0 100%)}.classwork-page__thumb--advanced{background:linear-gradient(135deg,#ede9fe 0%,#c4b5fd 100%)}.classwork-page__thumb-art{width:calc(10.57vw * var(--scale));height:calc(10.57vw * var(--scale));justify-content:center;align-items:center;min-width:140px;min-height:140px;display:flex;position:relative}.classwork-page__thumb-mascot{object-fit:contain;width:75%;height:auto}.classwork-page__thumb-symbol{font-size:calc(1.67vw * var(--scale));color:var(--teal);width:calc(2.5vw * var(--scale));height:calc(2.5vw * var(--scale));min-width:36px;min-height:36px;box-shadow:0 calc(.1vw * var(--scale)) calc(.31vw * var(--scale)) #0000001a;background:#ffffffd9;border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:flex;position:absolute;bottom:8%;right:8%}.classwork-page__course-body{min-width:0;padding:calc(1.67vw * var(--scale)) calc(1.67vw * var(--scale)) calc(1.46vw * var(--scale));flex-direction:column;flex:1;justify-content:space-between;display:flex}.classwork-page__course-header{justify-content:space-between;align-items:flex-start;gap:calc(1.04vw * var(--scale));margin-bottom:calc(1.04vw * var(--scale));display:flex}.classwork-page__course-info{flex:1;min-width:0}.classwork-page__course-title{margin:0 0 calc(.31vw * var(--scale));font-size:calc(1.67vw * var(--scale));color:var(--text-dark);font-weight:800;line-height:1.2}.classwork-page__course-desc{font-size:calc(1.04vw * var(--scale));color:var(--text-muted);max-width:calc(28vw * var(--scale));margin:0;font-weight:600;line-height:1.45}.classwork-page__course-stats{gap:calc(.83vw * var(--scale));flex-shrink:0;display:flex}.classwork-page__stat-badge{align-items:center;gap:calc(.42vw * var(--scale));padding:calc(.21vw * var(--scale)) calc(.63vw * var(--scale));border-radius:calc(2.08vw * var(--scale));font-size:calc(1.04vw * var(--scale));white-space:nowrap;font-weight:700;display:inline-flex}.classwork-page__stat-badge--blue{color:var(--teal);background:#e8f6fb}.classwork-page__stat-badge--purple{background:var(--purple-soft);color:var(--purple)}.classwork-page__stat-badge .anticon{font-size:calc(.83vw * var(--scale))}.classwork-page__course-footer{align-items:flex-end;gap:calc(1.67vw * var(--scale));display:flex}.classwork-page__progress-block{min-width:0;max-width:calc(48.36vw * var(--scale));flex:1}.classwork-page__progress-labels{margin-bottom:calc(.42vw * var(--scale));font-size:calc(1.04vw * var(--scale));color:var(--text-light);justify-content:space-between;font-weight:600;display:flex}.classwork-page__progress-track{height:calc(1.25vw * var(--scale));border-radius:calc(2.08vw * var(--scale));min-height:20px;box-shadow:inset 0 calc(.05vw * var(--scale)) calc(.1vw * var(--scale)) #0000000f;background:#eef0f2;overflow:hidden}.classwork-page__progress-fill{background:linear-gradient(90deg, #ffc233, var(--yellow));border-radius:inherit;height:100%;box-shadow:0 calc(.05vw * var(--scale)) calc(.15vw * var(--scale)) #ffb70359;transition:width .3s}.classwork-page__resume-btn,.classwork-page__continue-btn{min-height:44px;box-shadow:0 calc(.15vw * var(--scale)) 0 var(--yellow-dark);letter-spacing:.02em;flex-shrink:0;align-items:center;height:calc(2.71vw * var(--scale))!important;padding:0 calc(1.67vw * var(--scale))!important;background:var(--yellow)!important;border-color:var(--yellow)!important;color:var(--text-dark)!important;font-size:calc(1.04vw * var(--scale))!important;border-radius:calc(2.71vw * var(--scale))!important;gap:calc(.42vw * var(--scale))!important;font-weight:800!important;display:inline-flex!important}.classwork-page__resume-btn:hover,.classwork-page__continue-btn:hover{color:var(--text-dark)!important;background:#ffc233!important;border-color:#ffc233!important}.classwork-page__path{gap:calc(1.35vw * var(--scale));margin-bottom:calc(2.6vw * var(--scale));flex-direction:column;display:flex}.classwork-page__lesson{border:calc(.05vw * var(--scale)) solid #ffb70338;border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);padding:calc(1.04vw * var(--scale)) calc(1.25vw * var(--scale)) calc(1.25vw * var(--scale));background:#fff8e1;overflow:hidden}.classwork-page__lesson-header{justify-content:space-between;align-items:center;gap:calc(.83vw * var(--scale));padding:calc(.63vw * var(--scale)) calc(1.04vw * var(--scale));margin-bottom:calc(.83vw * var(--scale));background:var(--bg-white);border:calc(.1vw * var(--scale)) dashed #d1d5db;border-radius:calc(2.5vw * var(--scale));display:flex}.classwork-page__lesson-title-wrap{align-items:center;gap:calc(.73vw * var(--scale));min-width:0;display:flex}.classwork-page__lesson-number{width:calc(1.88vw * var(--scale));height:calc(1.88vw * var(--scale));background:var(--purple);color:#fff;min-width:30px;min-height:30px;font-size:calc(.94vw * var(--scale));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:800;line-height:1;display:flex}.classwork-page__lesson-title{font-size:calc(1.35vw * var(--scale));color:var(--text-dark);margin:0;font-weight:800;line-height:1.2}.classwork-page__lesson-star{color:var(--yellow);font-size:calc(1.25vw * var(--scale));stroke-width:40px;flex-shrink:0}.classwork-page__lesson-tracks{gap:calc(.73vw * var(--scale));grid-template-columns:1fr 1fr;display:grid}.classwork-page__track{align-items:center;gap:calc(.63vw * var(--scale));border-radius:calc(2.5vw * var(--scale));padding:calc(.42vw * var(--scale)) calc(.63vw * var(--scale));min-height:calc(5.42vw * var(--scale));min-width:0;display:flex}.classwork-page__track--abacus{border:calc(.05vw * var(--scale)) solid #7ec8e359;background:#a8dff573}.classwork-page__track--no-abacus{border:calc(.05vw * var(--scale)) solid #e6a60047;background:#fff8e1a6}.classwork-page__track-label{justify-content:center;align-items:center;gap:calc(.42vw * var(--scale));padding:calc(.52vw * var(--scale)) calc(.94vw * var(--scale));border-radius:calc(2.5vw * var(--scale));font-size:calc(.94vw * var(--scale));white-space:nowrap;flex-shrink:0;font-weight:800;display:inline-flex}.classwork-page__track-label .anticon{font-size:calc(1.04vw * var(--scale))}.classwork-page__track-label--abacus{background:var(--teal);color:#fff;box-shadow:0 calc(.1vw * var(--scale)) calc(.21vw * var(--scale)) #006d7733}.classwork-page__track-label--no-abacus{background:var(--yellow);color:#5d4037;box-shadow:0 calc(.1vw * var(--scale)) calc(.21vw * var(--scale)) #e6a60040}.classwork-page__track-levels{justify-content:space-evenly;align-items:center;gap:calc(.31vw * var(--scale));min-width:0;padding:calc(.1vw * var(--scale)) 0;flex:1;display:flex}.classwork-page__level{color:inherit;flex:0 auto;justify-content:center;align-items:center;text-decoration:none;display:flex}.classwork-page__level--clickable{cursor:pointer;transition:transform .15s}.classwork-page__level--clickable:hover{transform:translateY(calc(-.1vw * var(--scale)))}.classwork-page__level--clickable:hover .classwork-page__level-icon-wrap{box-shadow:0 calc(.15vw * var(--scale)) calc(.42vw * var(--scale)) #006d772e}.classwork-page__level-icon-wrap{width:calc(4.38vw * var(--scale));height:calc(4.38vw * var(--scale));background:0 0;border-radius:50%;min-width:56px;min-height:56px;transition:box-shadow .15s,transform .15s;overflow:hidden}.classwork-page__level-icon{object-fit:cover;width:100%;height:100%;display:block}.classwork-page__level--completed .classwork-page__level-icon-wrap{box-shadow:0 0 0 calc(.1vw * var(--scale)) #66bb6a}.classwork-page__level--active .classwork-page__level-icon-wrap{box-shadow:0 0 0 calc(.15vw * var(--scale)) var(--yellow)}.classwork-page__level--locked .classwork-page__level-icon-wrap{opacity:.45;filter:grayscale(.85)}.classwork-page__other{margin-bottom:calc(1.04vw * var(--scale))}.classwork-page__other-list{gap:calc(2.08vw * var(--scale));flex-direction:column;display:flex}@media (width<=1200px){.classwork-page,.classwork-page__course-desc,.classwork-page__progress-block{max-width:100%}}@media (width<=900px){.classwork-page__course-card{flex-direction:column}.classwork-page__thumb{width:100%;min-width:0;min-height:160px}.classwork-page__course-header{flex-direction:column}.classwork-page__course-footer{flex-direction:column;align-items:stretch}.classwork-page__resume-btn,.classwork-page__continue-btn{justify-content:center;width:100%}.classwork-page__lesson-tracks{grid-template-columns:1fr}.classwork-page__track{border-radius:calc(1.25vw * var(--scale));flex-wrap:wrap;justify-content:center}.classwork-page__track-levels{flex-wrap:wrap;justify-content:center;width:100%}}.digital-abacus{--bead-step:calc(2.19vw * var(--scale));--earth-count:4;--zone-inset:calc(.42vw * var(--scale));width:100%;transition:box-shadow .2s}.digital-abacus__frame{border-radius:calc(1.25vw * var(--scale));padding:calc(1.04vw * var(--scale)) calc(1.25vw * var(--scale));box-shadow:inset 0 calc(.1vw * var(--scale)) calc(.31vw * var(--scale)) #00000040, 0 calc(.21vw * var(--scale)) calc(.83vw * var(--scale)) #5d403759;background:linear-gradient(#6d4c41 0%,#5d4037 100%)}.digital-abacus__rods{justify-content:center;gap:calc(1.04vw * var(--scale));min-height:calc(22.4vw * var(--scale));padding:calc(.83vw * var(--scale));border-radius:calc(.83vw * var(--scale));background:#fff8e7;display:flex}.digital-abacus__rod{width:calc(3.65vw * var(--scale));min-width:48px;height:calc(22.4vw * var(--scale));flex-direction:column;align-items:center;display:flex;position:relative}.digital-abacus__rod:before{content:"";width:calc(.21vw * var(--scale));border-radius:calc(.1vw * var(--scale));z-index:0;background:linear-gradient(#bdbdbd,#9e9e9e);min-width:3px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.digital-abacus__heaven-zone,.digital-abacus__earth-zone{z-index:1;width:100%;position:relative}.digital-abacus__heaven-zone{min-height:0;padding-top:var(--zone-inset);padding-bottom:calc(.21vw * var(--scale));box-sizing:border-box;flex:0 0 32%}.digital-abacus__earth-zone{min-height:0;padding-top:calc(.21vw * var(--scale));padding-bottom:var(--zone-inset);box-sizing:border-box;flex:1}.digital-abacus__bar{width:100%;height:calc(.31vw * var(--scale));border-radius:calc(.1vw * var(--scale));z-index:2;min-height:4px;box-shadow:0 calc(.05vw * var(--scale)) calc(.1vw * var(--scale)) #0003;background:#757575;flex-shrink:0}.digital-abacus__bead{z-index:2;border:none;border-radius:50%;padding:0;transition:top .15s,bottom .15s,box-shadow .15s,filter .15s;position:absolute;left:50%;transform:translate(-50%)}.digital-abacus__bead:focus-visible{outline:calc(.15vw * var(--scale)) solid var(--teal);outline-offset:calc(.1vw * var(--scale))}.digital-abacus__bead--heaven{width:calc(2.5vw * var(--scale));height:calc(2.08vw * var(--scale));min-width:36px;min-height:30px;box-shadow:0 calc(.1vw * var(--scale)) calc(.21vw * var(--scale)) #00000040, inset 0 calc(.05vw * var(--scale)) calc(.1vw * var(--scale)) #ffffff59;cursor:pointer;background:radial-gradient(circle at 35% 30%,#a1887f,#6d4c41);top:0;bottom:auto}.digital-abacus__bead--heaven.digital-abacus__bead--active{top:auto;bottom:0}.digital-abacus__bead--earth{width:calc(2.29vw * var(--scale));height:calc(1.88vw * var(--scale));min-width:32px;min-height:26px;box-shadow:0 calc(.1vw * var(--scale)) calc(.21vw * var(--scale)) #0003, inset 0 calc(.05vw * var(--scale)) calc(.1vw * var(--scale)) #fff6;top:auto;bottom:calc((var(--earth-count) - 1 - var(--bead-index)) * var(--bead-step));cursor:default;background:radial-gradient(circle at 35% 30%,#64b5f6,#1e88e5)}.digital-abacus__bead--earth.digital-abacus__bead--active{bottom:auto;top:calc(var(--bead-index) * var(--bead-step))}.digital-abacus__bead--earth.digital-abacus__bead--clickable{cursor:pointer}.digital-abacus__bead--earth.digital-abacus__bead--clickable:hover,.digital-abacus__bead--heaven:hover{filter:brightness(1.05)}.digital-abacus__bead--earth.digital-abacus__bead--clickable:active,.digital-abacus__bead--heaven:active{filter:brightness(.96)}.digital-abacus--correct .digital-abacus__frame{box-shadow:inset 0 calc(.1vw * var(--scale)) calc(.31vw * var(--scale)) #00000040, 0 0 0 calc(.21vw * var(--scale)) #66bb6a;animation:.45s abacus-success-pulse}.digital-abacus--error .digital-abacus__frame{box-shadow:inset 0 calc(.1vw * var(--scale)) calc(.31vw * var(--scale)) #00000040, 0 0 0 calc(.21vw * var(--scale)) #ef4444;animation:.45s abacus-shake}@keyframes abacus-shake{0%,to{transform:translate(0)}20%{transform:translateX(calc(-.31vw * var(--scale)))}40%{transform:translateX(calc(.31vw * var(--scale)))}60%{transform:translateX(calc(-.21vw * var(--scale)))}80%{transform:translateX(calc(.21vw * var(--scale)))}}@keyframes abacus-success-pulse{0%{box-shadow:0 0 #66bb6a99}70%{box-shadow:0 0 0 calc(.42vw * var(--scale)) #66bb6a00}to{box-shadow:0 0 #66bb6a00}}.practice-page{gap:calc(2.24vw * var(--scale));padding:calc(1.35vw * var(--scale)) calc(2.08vw * var(--scale)) calc(1.04vw * var(--scale));box-sizing:border-box;flex:1;grid-template-columns:minmax(0,1fr) minmax(260px,32%);align-items:start;width:100%;max-width:100%;margin:0 auto;display:grid}.practice-page__left{gap:calc(1.46vw * var(--scale));flex-direction:column;min-width:0;display:flex}.practice-page--abacus{align-items:stretch}.practice-page--abacus.practice-page--keypad .practice-page__left--abacus{justify-content:space-between}.practice-page--abacus.practice-page--keypad .practice-page__abacus-card{flex:1}.practice-page--abacus.practice-page--keypad .practice-page__badge-card{flex-shrink:0}.practice-page__abacus-card{align-items:center;gap:calc(.83vw * var(--scale));min-height:calc(28.07vw * var(--scale));padding:calc(1.67vw * var(--scale)) calc(1.82vw * var(--scale));background:var(--bg-white);border:calc(.05vw * var(--scale)) solid var(--border-light);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);flex-direction:column;display:flex}.practice-page__abacus-feedback{padding:calc(.52vw * var(--scale)) calc(.83vw * var(--scale));border-radius:calc(.83vw * var(--scale));font-size:calc(.94vw * var(--scale));text-align:center;width:100%;margin:0;font-weight:700}.practice-page__abacus-feedback--error{color:#dc2626;background:#fef2f2}.practice-page__abacus-feedback--correct{color:#2e7d32;background:#e8f5e9}.practice-page__abacus-feedback--idle{color:var(--text-muted);background:#f3f4f6}.practice-page__question-row--abacus{grid-template-columns:calc(3.13vw * var(--scale)) 1fr calc(2.6vw * var(--scale));padding:calc(.42vw * var(--scale)) calc(.63vw * var(--scale));border-radius:calc(.63vw * var(--scale));transition:background .15s,border-color .15s}.practice-page__question-row--active{border:calc(.05vw * var(--scale)) solid #006d7733;background:#006d770f}.practice-page__question-row--correct{background:#66bb6a14}.practice-page__question-row--incorrect{border:calc(.05vw * var(--scale)) solid #ef444440;background:#ef44440f}.practice-page__status{width:calc(2.19vw * var(--scale));height:calc(2.19vw * var(--scale));border-radius:calc(.63vw * var(--scale));min-width:36px;min-height:36px;font-size:calc(.94vw * var(--scale));justify-content:center;align-items:center;font-weight:800;display:inline-flex}.practice-page__status--pending{color:var(--text-light);border:calc(.05vw * var(--scale)) solid #e5e7eb;background:#f3f4f6}.practice-page__status--correct{color:#fff;background:#66bb6a}.practice-page__status--incorrect{color:#fff;background:#ef4444}.practice-page__mascot-card{align-items:center;gap:calc(2.08vw * var(--scale));min-height:calc(28.07vw * var(--scale));padding:calc(1.67vw * var(--scale)) calc(1.82vw * var(--scale));background:var(--bg-white);border:calc(.05vw * var(--scale)) solid var(--border-light);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);display:flex;position:relative;overflow:hidden}.practice-page__mascot-glow{right:calc(-2.08vw * var(--scale));bottom:calc(-2.08vw * var(--scale));width:calc(8.33vw * var(--scale));height:calc(8.33vw * var(--scale));pointer-events:none;background:radial-gradient(circle,#5e50d12e 0%,#7ec8e31f 50%,#0000 70%);border-radius:50%;position:absolute}.practice-page__mascot-img{width:calc(16.82vw * var(--scale));object-fit:contain;flex-shrink:0;max-width:323px;height:auto}.practice-page__mascot-text{flex:1;min-width:0}.practice-page__mascot-title{margin:0 0 calc(.52vw * var(--scale));font-size:calc(2.08vw * var(--scale));color:var(--teal);font-weight:800;line-height:1.2}.practice-page__mascot-desc{font-size:calc(1.04vw * var(--scale));color:var(--text-muted);max-width:calc(25.21vw * var(--scale));margin:0;font-weight:600;line-height:1.5}.practice-page__badge-card{align-items:center;gap:calc(2.08vw * var(--scale));min-height:calc(16.04vw * var(--scale));padding:calc(1.88vw * var(--scale)) calc(1.88vw * var(--scale));background:var(--bg-white);border:calc(.1vw * var(--scale)) solid var(--border-blue);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);display:flex}.practice-page__badge-img{width:calc(12.24vw * var(--scale));object-fit:contain;flex-shrink:0;max-width:235px;height:auto}.practice-page__badge-text{flex:1;min-width:0}.practice-page__badge-title{margin:0 0 calc(.42vw * var(--scale));font-size:calc(2.08vw * var(--scale));color:var(--teal);font-weight:800;line-height:1.2}.practice-page__badge-desc{font-size:calc(1.04vw * var(--scale));color:var(--text-muted);margin:0;font-weight:600;line-height:1.5}.practice-page__quiz-card{min-height:calc(39.95vw * var(--scale));background:var(--bg-white);border:calc(.05vw * var(--scale)) solid var(--border-light);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);padding:calc(1.67vw * var(--scale)) calc(1.67vw * var(--scale)) calc(2.08vw * var(--scale));flex-direction:column;display:flex;position:relative;overflow:hidden}.practice-page__quiz-accent{height:calc(.31vw * var(--scale));background:var(--yellow);min-height:4px;position:absolute;bottom:0;left:0;right:0}.practice-page__quiz-header{align-items:center;gap:calc(.83vw * var(--scale));margin-bottom:calc(1.25vw * var(--scale));flex-wrap:wrap;display:flex}.practice-page__chapter,.practice-page__question-pill{padding:calc(.21vw * var(--scale)) calc(.83vw * var(--scale));font-size:calc(1.04vw * var(--scale));border-radius:calc(2.08vw * var(--scale));letter-spacing:.02em;align-items:center;font-weight:800;display:inline-flex}.practice-page__chapter{background:var(--purple);color:#fff;letter-spacing:.04em}.practice-page__question-pill{background:var(--purple-soft);color:var(--purple)}.practice-page__lesson-tag{font-size:calc(.94vw * var(--scale));color:var(--text-light);font-weight:700}.practice-page__timer{align-items:center;gap:calc(.42vw * var(--scale));font-size:calc(1.67vw * var(--scale));color:var(--teal);margin-left:auto;font-weight:800;display:inline-flex}.practice-page__timer .anticon{font-size:calc(1.25vw * var(--scale))}.practice-page__questions{gap:calc(.42vw * var(--scale));flex-direction:column;flex:1;margin:0;padding:0;list-style:none;display:flex}.practice-page__question-row{grid-template-columns:calc(3.13vw * var(--scale)) 1fr calc(7.08vw * var(--scale));align-items:center;gap:calc(.83vw * var(--scale));min-height:calc(2.6vw * var(--scale));display:grid}.practice-page__question-label{font-size:calc(1.46vw * var(--scale));color:var(--text-dark);font-weight:800}.practice-page__question-expr{font-size:calc(1.46vw * var(--scale));color:var(--text-muted);font-weight:700}.practice-page__answer-input{text-align:center;height:calc(2.19vw * var(--scale))!important;border-radius:calc(.83vw * var(--scale))!important;min-height:42px!important;font-size:calc(1.04vw * var(--scale))!important;border-color:#e5e7eb!important;font-weight:700!important}.practice-page__answer-input:focus,.practice-page__answer-input:hover{border-color:var(--teal)!important}.practice-page__quiz-footer{justify-content:center;align-items:center;gap:calc(.83vw * var(--scale));margin-top:calc(1.46vw * var(--scale));padding-top:calc(.52vw * var(--scale));display:flex}.practice-page__nav-btn{width:calc(4.01vw * var(--scale));height:calc(2.71vw * var(--scale));cursor:pointer;min-width:52px;min-height:52px;font-size:calc(.83vw * var(--scale));border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;transition:opacity .15s;display:inline-flex}.practice-page__nav-btn:hover{opacity:.85}.practice-page__nav-btn--back{color:var(--text-light);background:#f3f4f6}.practice-page__nav-btn--next{background:var(--teal);color:#fff}.practice-page__submit-btn{max-width:calc(12.04vw * var(--scale));box-shadow:0 calc(.15vw * var(--scale)) 0 var(--yellow-dark);flex:1;height:calc(3.13vw * var(--scale))!important;background:var(--yellow)!important;border-color:var(--yellow)!important;min-height:52px!important;color:var(--text-dark)!important;font-size:calc(1.25vw * var(--scale))!important;border-radius:calc(2.71vw * var(--scale))!important;font-weight:800!important}.practice-page__submit-btn:hover{color:var(--text-dark)!important;background:#ffc233!important;border-color:#ffc233!important}.practice-page--keypad .practice-page__quiz-card{min-height:calc(46.15vw * var(--scale))}.practice-page__quiz-card--keypad .practice-page__quiz-header{margin-bottom:calc(.83vw * var(--scale))}.practice-page__keypad-body{padding:calc(.83vw * var(--scale)) 0 calc(.52vw * var(--scale));flex-direction:column;flex:1;align-items:center;display:flex}.practice-page__expression{margin:calc(1.67vw * var(--scale)) 0 calc(1.25vw * var(--scale));font-size:calc(5.63vw * var(--scale));color:var(--text-dark);text-align:center;font-weight:800;line-height:1}.practice-page__expression--flash{font-size:calc(5.63vw * var(--scale));letter-spacing:-.02em}.practice-page__answer-display{width:calc(12.5vw * var(--scale));min-width:200px;height:calc(5.83vw * var(--scale));min-height:80px;margin-bottom:calc(1.67vw * var(--scale));border:calc(.1vw * var(--scale)) solid #e5e7eb;border-radius:calc(1.04vw * var(--scale));font-size:calc(3.13vw * var(--scale));color:var(--text-dark);background:#f3f4f6;justify-content:center;align-items:center;font-weight:800;display:flex}.practice-page__answer-placeholder{color:#d1d5db;font-weight:700}.practice-page__keypad-wrap{width:100%;max-width:calc(21.72vw * var(--scale));padding:calc(1.25vw * var(--scale)) calc(1.67vw * var(--scale));border-radius:calc(1.04vw * var(--scale));background:#f5f7f9}.practice-page__quiz-card--flash .practice-page__keypad-wrap{box-shadow:inset 0 calc(.05vw * var(--scale)) calc(.21vw * var(--scale)) #0000000a}.practice-page__keypad{grid-template-columns:repeat(3, calc(4.29vw * var(--scale)));gap:calc(.83vw * var(--scale)) calc(1.25vw * var(--scale));justify-content:center;width:100%;display:grid}.practice-page__keypad-key{width:calc(4.29vw * var(--scale));height:calc(3.33vw * var(--scale));background:var(--bg-white);border:calc(.05vw * var(--scale)) solid #eef0f2;border-radius:calc(.83vw * var(--scale));min-width:64px;min-height:52px;box-shadow:0 calc(.1vw * var(--scale)) calc(.31vw * var(--scale)) #0000000f;font-family:inherit;font-size:calc(1.46vw * var(--scale));color:var(--text-dark);cursor:pointer;justify-content:center;align-items:center;padding:0;font-weight:800;transition:background .12s,transform .12s;display:flex}.practice-page__keypad-key:hover{background:#f9fafb}.practice-page__keypad-key:active{transform:scale(.97)}.practice-page__keypad-key--backspace{color:#ef4444;font-size:calc(1.25vw * var(--scale));background:#fef2f2;border-color:#fecaca}.practice-page__keypad-key--backspace:hover{background:#fee2e2}.practice-page__keypad-key--confirm{color:#fff;font-size:calc(1.25vw * var(--scale));background:#3b82f6;border-color:#2563eb}.practice-page__keypad-key--confirm:hover{background:#2563eb}@media (width<=1100px){.practice-page{grid-template-columns:1fr;max-width:100%}.practice-page__mascot-desc,.practice-page__badge-desc{max-width:100%}.practice-page__quiz-card{min-height:auto}}@media (width<=600px){.practice-page__mascot-card,.practice-page__badge-card{text-align:center;flex-direction:column}.practice-page__question-row{grid-template-rows:auto auto;grid-template-columns:auto 1fr}.practice-page__answer-input{grid-column:1/-1}.practice-page__expression{font-size:calc(10vw * var(--scale))}.practice-page__keypad{grid-template-columns:repeat(3,1fr);max-width:100%}.practice-page__keypad-key{width:100%}}.dashboard-page{padding:calc(1.77vw * var(--scale)) calc(2.08vw * var(--scale)) calc(1.04vw * var(--scale));box-sizing:border-box;flex:1;width:100%;max-width:100%;margin:0 auto;position:relative}.dashboard-page__atmosphere{pointer-events:none;position:absolute}.dashboard-page__atmosphere--star-1{top:calc(7vw * var(--scale));left:calc(1vw * var(--scale));width:calc(2.6vw * var(--scale));height:calc(2.47vw * var(--scale));opacity:.4;background:radial-gradient(circle,#d4c4ff 30%,#0000 70%);border-radius:50%}.dashboard-page__atmosphere--star-2{top:calc(35vw * var(--scale));right:calc(3vw * var(--scale));width:calc(1.56vw * var(--scale));height:calc(1.48vw * var(--scale));opacity:.45;background:radial-gradient(circle,#ffe9a0 30%,#0000 70%);border-radius:50%}.dashboard-page__atmosphere--blur-1{top:calc(-10vw * var(--scale));left:calc(-10vw * var(--scale));width:calc(20vw * var(--scale));height:calc(20vw * var(--scale));filter:blur(calc(2vw * var(--scale)));background:radial-gradient(circle,#d4c4ff40 0%,#0000 70%);border-radius:50%}.dashboard-page__atmosphere--blur-2{bottom:calc(5vw * var(--scale));left:calc(5vw * var(--scale));width:calc(5vw * var(--scale));height:calc(5vw * var(--scale));opacity:.5;background:radial-gradient(circle,#a8dff54d 0%,#0000 70%);border-radius:50%}.dashboard-page__hero{justify-content:space-between;align-items:center;gap:calc(1.67vw * var(--scale));padding:calc(2.34vw * var(--scale)) calc(2.29vw * var(--scale));margin-bottom:calc(1.25vw * var(--scale));background:var(--bg-white);border:calc(.1vw * var(--scale)) solid var(--border-blue);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);display:flex;position:relative;overflow:hidden}.dashboard-page__hero-content{min-width:0;max-width:calc(47vw * var(--scale));flex:1}.dashboard-page__hero-title{margin:0 0 calc(.42vw * var(--scale));font-size:calc(2.92vw * var(--scale));color:var(--text-dark);letter-spacing:-.02em;font-weight:800;line-height:1.15}.dashboard-page__hero-subtitle{margin:0 0 calc(1.25vw * var(--scale));font-size:calc(1.56vw * var(--scale));color:var(--text-muted);font-weight:600;line-height:1.4}.dashboard-page__progress-wrap{margin-bottom:calc(1.46vw * var(--scale));max-width:calc(23.33vw * var(--scale))}.dashboard-page__progress-labels{margin-bottom:calc(.42vw * var(--scale));font-size:calc(1.04vw * var(--scale));color:var(--text-muted);justify-content:space-between;font-weight:700;display:flex}.dashboard-page__progress-track{height:calc(1.25vw * var(--scale));border:calc(.05vw * var(--scale)) solid #e5e7eb;border-radius:calc(2.08vw * var(--scale));min-height:20px;box-shadow:inset 0 calc(.05vw * var(--scale)) calc(.1vw * var(--scale)) #0000000f;background:#eef0f2;overflow:hidden}.dashboard-page__progress-fill{background:linear-gradient(90deg, #ffc233, var(--yellow));border-radius:inherit;height:100%;box-shadow:0 calc(.05vw * var(--scale)) calc(.21vw * var(--scale)) #ffb70366;transition:width .4s}.dashboard-page__continue-btn{min-height:48px;box-shadow:0 calc(.21vw * var(--scale)) 0 var(--yellow-dark);height:calc(3.13vw * var(--scale))!important;padding:0 calc(2.08vw * var(--scale))!important;background:var(--yellow)!important;border-color:var(--yellow)!important;color:var(--text-dark)!important;font-size:calc(1.25vw * var(--scale))!important;border-radius:calc(3.13vw * var(--scale))!important;font-weight:800!important}.dashboard-page__continue-btn:hover{color:var(--text-dark)!important;background:#ffc233!important;border-color:#ffc233!important}.dashboard-page__continue-btn .anticon{font-size:calc(.73vw * var(--scale));color:var(--text-dark)}.dashboard-page__hero-mascot{width:calc(12.86vw * var(--scale));object-fit:contain;flex-shrink:0;align-self:flex-end;height:auto}.dashboard-page__stats{gap:calc(1.67vw * var(--scale));margin-bottom:calc(1.25vw * var(--scale));grid-template-columns:repeat(4,1fr);display:grid}.dashboard-page__stat-card{padding:calc(1.46vw * var(--scale)) calc(1.04vw * var(--scale));min-height:calc(12.5vw * var(--scale));background:var(--bg-white);border:calc(.05vw * var(--scale)) solid var(--border-light);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.dashboard-page__accuracy-ring{--accuracy:92;width:calc(5vw * var(--scale));height:calc(5vw * var(--scale));background:conic-gradient(var(--teal) calc(var(--accuracy) * 1%), #e8f6fb calc(var(--accuracy) * 1%));min-width:80px;min-height:80px;margin-bottom:calc(.63vw * var(--scale));border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.dashboard-page__accuracy-ring:before{content:"";inset:calc(.42vw * var(--scale));background:var(--bg-white);border-radius:50%;position:absolute}.dashboard-page__accuracy-ring span{z-index:1;font-size:calc(1.04vw * var(--scale));color:var(--teal);font-weight:800;position:relative}.dashboard-page__stat-icon{width:calc(5vw * var(--scale));height:calc(5vw * var(--scale));min-width:80px;min-height:80px;font-size:calc(1.67vw * var(--scale));margin-bottom:calc(.42vw * var(--scale));border-radius:50%;justify-content:center;align-items:center;display:flex}.dashboard-page__stat-icon--yellow{color:var(--yellow-dark);background:#ffb70326}.dashboard-page__stat-icon--purple{background:var(--purple-soft);color:var(--purple)}.dashboard-page__stat-icon--red{color:#e53e3e;background:#ef44441f}.dashboard-page__stat-value{margin:0 0 calc(.21vw * var(--scale));font-size:calc(1.67vw * var(--scale));color:var(--text-dark);font-weight:800;line-height:1.2}.dashboard-page__stat-label{font-size:calc(1.04vw * var(--scale));color:var(--text-light);letter-spacing:.04em;text-transform:uppercase;margin:0;font-weight:700}.dashboard-page__lower-grid{gap:calc(1.67vw * var(--scale));margin-bottom:calc(1.25vw * var(--scale));grid-template-columns:1fr 1.68fr;display:grid}.dashboard-page__section-title{margin:0 0 calc(1.04vw * var(--scale));font-size:calc(1.67vw * var(--scale));color:var(--text-dark);font-weight:800}.dashboard-page__weekly-card{padding:calc(1.88vw * var(--scale));background:var(--bg-white);border:calc(.05vw * var(--scale)) solid var(--border-light);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow)}.dashboard-page__chart{justify-content:space-between;align-items:flex-end;gap:calc(.42vw * var(--scale));height:calc(10.42vw * var(--scale));min-height:160px;padding-top:calc(.42vw * var(--scale));display:flex}.dashboard-page__chart-col{justify-content:flex-end;align-items:center;gap:calc(.63vw * var(--scale));flex-direction:column;flex:1;height:100%;display:flex}.dashboard-page__chart-bar{width:100%;max-width:calc(3.43vw * var(--scale));border-radius:calc(.63vw * var(--scale)) calc(.63vw * var(--scale)) 0 0;min-height:8px;transition:height .3s}.dashboard-page__chart-bar--blue{background:linear-gradient(#a8dff5,#7ec8e3)}.dashboard-page__chart-bar--yellow{background:linear-gradient(180deg, #ffc233, var(--yellow))}.dashboard-page__chart-bar--teal{background:linear-gradient(180deg, var(--teal-light), var(--teal))}.dashboard-page__chart-day{font-size:calc(1.04vw * var(--scale));color:var(--text-light);font-weight:600}.dashboard-page__up-next{padding-left:calc(1.04vw * var(--scale))}.dashboard-page__up-next-grid{gap:calc(1.04vw * var(--scale));grid-template-columns:1fr 1fr;display:grid}.dashboard-page__up-next-card{padding:calc(1.46vw * var(--scale));background:var(--bg-white);border:calc(.05vw * var(--scale)) solid var(--border-light);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);flex-direction:column;display:flex}.dashboard-page__up-next-icon{width:calc(2.5vw * var(--scale));height:calc(2.5vw * var(--scale));border-radius:calc(.63vw * var(--scale));min-width:40px;min-height:40px;font-size:calc(1.04vw * var(--scale));margin-bottom:calc(.63vw * var(--scale));justify-content:center;align-items:center;display:flex}.dashboard-page__up-next-icon--teal{color:var(--teal);background:#006d771a}.dashboard-page__up-next-icon--purple{background:var(--purple-soft);color:var(--purple)}.dashboard-page__up-next-card h3{margin:0 0 calc(.21vw * var(--scale));font-size:calc(1.46vw * var(--scale));color:var(--text-dark);font-weight:800}.dashboard-page__up-next-card p{padding-bottom:calc(1.04vw * var(--scale));font-size:calc(1.25vw * var(--scale));color:var(--text-muted);margin:0 0 auto;font-weight:600}.dashboard-page__start-btn{width:100%;height:calc(2.29vw * var(--scale));border-radius:calc(.83vw * var(--scale));min-height:40px;font-size:calc(1.25vw * var(--scale));color:#fff;justify-content:center;align-items:center;font-weight:700;text-decoration:none;transition:opacity .15s,transform .15s;display:flex}.dashboard-page__start-btn:hover{opacity:.9;color:#fff}.dashboard-page__start-btn--teal{background:var(--teal)}.dashboard-page__start-btn--purple{background:var(--purple)}.dashboard-page__motivation{justify-content:center;align-items:center;gap:calc(.83vw * var(--scale));padding:calc(1.25vw * var(--scale)) calc(1.67vw * var(--scale));border:calc(.05vw * var(--scale)) solid var(--border-blue);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);background:linear-gradient(90deg,#e8f6fb 0%,#fff8e1 100%);display:flex}.dashboard-page__motivation p{font-size:calc(1.56vw * var(--scale));color:var(--teal);text-align:center;margin:0;font-weight:700}.dashboard-page__motivation span{font-size:calc(1.15vw * var(--scale));flex-shrink:0}@media (width<=1200px){.dashboard-page{max-width:100%}.dashboard-page__stats{grid-template-columns:repeat(2,1fr)}.dashboard-page__lower-grid{grid-template-columns:1fr}.dashboard-page__up-next{padding-left:0}.dashboard-page__hero-mascot{width:calc(10vw * var(--scale))}}@media (width<=768px){.dashboard-page__hero{text-align:center;flex-direction:column}.dashboard-page__hero-content,.dashboard-page__progress-wrap{max-width:100%}.dashboard-page__hero-mascot{display:none}.dashboard-page__stats,.dashboard-page__up-next-grid{grid-template-columns:1fr}.dashboard-page__motivation{flex-wrap:wrap}}.login-page{--scale:1;--teal:#006d77;--yellow:#ffb703;--yellow-dark:#e6a600;--purple:#5e50d1;--purple-dark:#4a3fb8;--border-blue:#a0d8ef;--text-dark:#333;--text-muted:#4a4a4a;--icon-blue:#7ec8e3;--bg:#fff;background:var(--bg);flex-direction:column;min-height:100vh;display:flex;position:relative;overflow-x:hidden}.login-page__bokeh{filter:blur(calc(3.125vw * var(--scale)));pointer-events:none;opacity:.65;border-radius:50%;position:absolute}.login-page__bokeh--purple{width:calc(2.6vw * var(--scale));height:calc(2.6vw * var(--scale));top:calc(9.64vw * var(--scale));left:calc(10vw * var(--scale));background:#d4c4ff}.login-page__bokeh--yellow{width:calc(1.56vw * var(--scale));height:calc(1.56vw * var(--scale));top:calc(12.24vw * var(--scale));left:calc(72.71vw * var(--scale));background:#ffe9a0}.login-page__bokeh--blue{width:calc(2.08vw * var(--scale));height:calc(2.08vw * var(--scale));top:calc(41.35vw * var(--scale));left:calc(14.64vw * var(--scale));background:#a8dff5}.login-page__navbar{z-index:2;border-bottom:calc(.05vw * var(--scale)) solid #e8edf0;width:100%;min-height:56px;box-shadow:0 calc(.1vw * var(--scale)) calc(.42vw * var(--scale)) #0000000a;position:relative;height:calc(4.17vw * var(--scale))!important;background:#fff!important;padding:0!important;line-height:1!important}.login-page__navbar-inner{align-items:center;gap:calc(1.04vw * var(--scale));height:100%;padding:calc(.42vw * var(--scale)) calc(.73vw * var(--scale));display:flex}.login-page__logo-icon{width:calc(2.71vw * var(--scale));height:calc(2.71vw * var(--scale));object-fit:contain;flex-shrink:0;min-width:32px;min-height:32px}.login-page__brand{font-size:calc(1.67vw * var(--scale));color:var(--teal);letter-spacing:-.03em;white-space:nowrap;font-weight:700;line-height:1}.login-page__main{z-index:1;width:calc(52vw * var(--scale));max-width:100%;padding:calc(2vw * var(--scale)) calc(2vw * var(--scale));flex-direction:column;flex:1;justify-content:center;align-items:center;margin:0 auto;display:flex;position:relative}.login-page__hero{text-align:center;margin-bottom:calc(1.46vw * var(--scale));width:calc(52vw * var(--scale));max-width:100%}.login-page__mascot-wrap{margin-bottom:calc(.83vw * var(--scale));display:inline-block;position:relative}.login-page__mascot{width:calc(16vw * var(--scale));aspect-ratio:556/376;object-fit:contain;height:auto}.login-page__title{width:calc(52vw * var(--scale));letter-spacing:-.02em;max-width:100%;margin:0 auto calc(.42vw * var(--scale))!important;font-size:calc(3.5vw * var(--scale))!important;color:var(--teal)!important;font-weight:800!important;line-height:1.15!important}.login-page__subtitle{width:calc(52vw * var(--scale));max-width:100%;font-size:calc(1.9vw * var(--scale));color:var(--text-muted);margin:0 auto;font-weight:600;line-height:1.4;display:block}.login-page__card{--form-scale:.82;width:calc(30vw * var(--scale));align-self:center;max-width:100%;border:calc(.1vw * var(--scale) * var(--form-scale)) solid var(--border-blue)!important;border-radius:calc(1.04vw * var(--scale) * var(--form-scale))!important;box-shadow:0 calc(.21vw * var(--scale) * var(--form-scale)) calc(1.25vw * var(--scale) * var(--form-scale)) #006d7714!important;background:#fff!important}.login-page__card .ant-card-body{padding:calc(1.3vw * var(--scale) * var(--form-scale)) calc(1.98vw * var(--scale) * var(--form-scale)) calc(1.56vw * var(--scale) * var(--form-scale))}.login-page__form .ant-form-item{margin-bottom:calc(1.25vw * var(--scale) * var(--form-scale))}.login-page__form .ant-form-item-label{padding-bottom:calc(.42vw * var(--scale) * var(--form-scale))!important}.login-page__form .ant-form-item-label>label{font-size:calc(1.04vw * var(--scale) * var(--form-scale));color:var(--text-dark);height:auto;font-weight:700}.login-page__form .ant-input-affix-wrapper,.login-page__form .ant-input{font-size:calc(1.3vw * var(--scale) * var(--form-scale));color:var(--text-dark);border:calc(.1vw * var(--scale) * var(--form-scale)) solid #e0e0e0;border-radius:calc(1.67vw * var(--scale) * var(--form-scale));height:calc(3.33vw * var(--scale) * var(--form-scale));padding:0 calc(1.04vw * var(--scale) * var(--form-scale));background:#fff;font-weight:500}.login-page__form .ant-input-affix-wrapper{padding:0 calc(1.04vw * var(--scale) * var(--form-scale)) 0 calc(.83vw * var(--scale) * var(--form-scale))}.login-page__form .ant-input-affix-wrapper .ant-input{height:auto;font-size:calc(1.3vw * var(--scale) * var(--form-scale));background:0 0;border:none;padding:0}.login-page__form .ant-input-affix-wrapper:focus,.login-page__form .ant-input-affix-wrapper-focused,.login-page__form .ant-input-affix-wrapper:hover{border-color:var(--border-blue);box-shadow:0 0 0 calc(.1vw * var(--scale)) #a0d8ef66}.login-page__form .ant-input-password .ant-input-suffix{display:none}.login-page__form .ant-input::placeholder{color:#9ca3af;font-weight:500}.login-page__input-icon{color:var(--icon-blue);font-size:calc(1.04vw * var(--scale) * var(--form-scale));margin-right:calc(.42vw * var(--scale) * var(--form-scale))}.login-page__alert{margin-bottom:calc(.83vw * var(--scale) * var(--form-scale));border-radius:calc(.63vw * var(--scale) * var(--form-scale));font-size:calc(.94vw * var(--scale) * var(--form-scale))}.login-page__submit-item{margin-top:calc(.42vw * var(--scale) * var(--form-scale));margin-bottom:0!important}.login-page__btn-primary{box-shadow:0 calc(.21vw * var(--scale) * var(--form-scale)) 0 var(--yellow-dark);background:var(--yellow)!important;border-color:var(--yellow)!important;color:#fff!important;font-size:calc(1.25vw * var(--scale) * var(--form-scale))!important;height:calc(3.33vw * var(--scale) * var(--form-scale))!important;border-radius:calc(1.67vw * var(--scale) * var(--form-scale))!important;font-weight:800!important}.login-page__btn-primary:hover:not(:disabled){color:#fff!important;background:#ffc233!important;border-color:#ffc233!important}.login-page__btn-primary:active:not(:disabled){transform:translateY(calc(.1vw * var(--scale)));box-shadow:0 calc(.1vw * var(--scale)) 0 var(--yellow-dark)}.login-page__divider{font-size:calc(1.25vw * var(--scale) * var(--form-scale));color:var(--text-muted);font-weight:700;margin:calc(1.15vw * var(--scale) * var(--form-scale)) 0!important}.login-page__divider.ant-divider-horizontal.ant-divider-with-text:before,.login-page__divider.ant-divider-horizontal.ant-divider-with-text:after{border-block-start-color:#e5e7eb}.login-page__divider .ant-divider-inner-text{padding:0 calc(.83vw * var(--scale) * var(--form-scale));font-size:calc(1.25vw * var(--scale) * var(--form-scale))}.login-page__btn-google{margin-bottom:calc(.83vw * var(--scale) * var(--form-scale));height:calc(2.92vw * var(--scale) * var(--form-scale))!important;font-size:calc(1.25vw * var(--scale) * var(--form-scale))!important;border-radius:calc(1.46vw * var(--scale) * var(--form-scale))!important;border:calc(.1vw * var(--scale) * var(--form-scale)) solid #e0e0e0!important;color:var(--text-dark)!important;background:#fff!important;font-weight:600!important}.login-page__btn-google:hover:not(:disabled){color:var(--text-dark)!important;background:#fafafa!important;border-color:#d1d5db!important}.login-page__btn-google .ant-btn-icon{align-items:center;display:flex}.login-page__google-icon{width:calc(1.3vw * var(--scale) * var(--form-scale));height:calc(1.35vw * var(--scale) * var(--form-scale))}.login-page__btn-secondary{box-shadow:0 calc(.21vw * var(--scale) * var(--form-scale)) 0 var(--purple-dark);background:var(--purple)!important;border-color:var(--purple)!important;color:#fff!important;font-size:calc(1.25vw * var(--scale) * var(--form-scale))!important;height:calc(2.92vw * var(--scale) * var(--form-scale))!important;border-radius:calc(1.46vw * var(--scale) * var(--form-scale))!important;font-weight:800!important}.login-page__btn-secondary:hover:not(:disabled){color:#fff!important;background:#6d5fe0!important;border-color:#6d5fe0!important}.login-page__btn-secondary:active:not(:disabled){transform:translateY(calc(.1vw * var(--scale)));box-shadow:0 calc(.1vw * var(--scale)) 0 var(--purple-dark)}@media (width<=768px){.login-page{--scale:.85}.login-page__main{width:88vw;padding:calc(4vw * var(--scale)) calc(4vw * var(--scale));justify-content:center}.login-page__brand{font-size:max(calc(2.08vw * var(--scale)), 16px)}.login-page__title{font-size:max(calc(3.5vw * var(--scale)), 24px)!important}.login-page__subtitle{font-size:max(calc(1.9vw * var(--scale)), 16px)}.login-page__form .ant-form-item-label>label,.login-page__form .ant-input-affix-wrapper,.login-page__form .ant-input,.login-page__btn-primary,.login-page__btn-google,.login-page__btn-secondary{font-size:max(calc(1.25vw * var(--scale)), 13px)!important}.login-page__form .ant-input-affix-wrapper,.login-page__form .ant-input,.login-page__btn-primary{height:max(calc(3.33vw * var(--scale)), 40px)!important}.login-page__btn-google,.login-page__btn-secondary{height:max(calc(2.92vw * var(--scale)), 36px)!important}}.leaderboard-page{padding:calc(1.25vw * var(--scale)) calc(2.08vw * var(--scale)) calc(1.04vw * var(--scale));box-sizing:border-box;flex-direction:column;flex:1;align-items:center;width:100%;max-width:100%;margin:0 auto;display:flex}.leaderboard-page__hero{text-align:center;margin-bottom:calc(1.67vw * var(--scale));max-width:calc(46.67vw * var(--scale));flex-direction:column;align-items:center;display:flex}.leaderboard-page__trophy-wrap{margin-bottom:calc(1.25vw * var(--scale));position:relative}.leaderboard-page__trophy-glow{inset:calc(-.42vw * var(--scale));filter:blur(calc(.83vw * var(--scale)));background:radial-gradient(circle,#ffd34f73 0%,#0000 70%);border-radius:50%;position:absolute}.leaderboard-page__trophy-circle{width:calc(13.33vw * var(--scale));height:calc(13.33vw * var(--scale));border:calc(.21vw * var(--scale)) solid #ffd54f;min-width:160px;min-height:160px;box-shadow:0 calc(.42vw * var(--scale)) calc(1.25vw * var(--scale)) #ffb70340, inset 0 calc(.1vw * var(--scale)) calc(.31vw * var(--scale)) #fffc;background:linear-gradient(145deg,#fff8e1,#ffe082);border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.leaderboard-page__trophy-icon{font-size:calc(4.69vw * var(--scale));color:#f5a623}.leaderboard-page__title{margin:0 0 calc(.42vw * var(--scale));font-size:calc(2.92vw * var(--scale));color:var(--teal);letter-spacing:-.02em;font-weight:800;line-height:1.15}.leaderboard-page__subtitle{font-size:calc(1.67vw * var(--scale));color:var(--text-muted);max-width:calc(23.33vw * var(--scale));margin:0;font-weight:600;line-height:1.4}.leaderboard-page__stats{gap:calc(1.25vw * var(--scale));width:100%;margin-bottom:calc(2.5vw * var(--scale));grid-template-columns:repeat(3,1fr);display:grid}.leaderboard-page__stat-card{padding:calc(1.67vw * var(--scale)) calc(1.04vw * var(--scale));min-height:calc(9.79vw * var(--scale));border:calc(.05vw * var(--scale)) solid var(--border-light);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);text-align:center;background:#f9fafb;flex-direction:column;justify-content:center;align-items:center;display:flex}.leaderboard-page__stat-card--teal{border-bottom:calc(.31vw * var(--scale)) solid var(--teal)}.leaderboard-page__stat-card--gold{border-bottom:calc(.31vw * var(--scale)) solid var(--yellow)}.leaderboard-page__stat-card--purple{background:var(--purple-soft);border-bottom:calc(.31vw * var(--scale)) solid var(--purple)}.leaderboard-page__stat-card-icon{font-size:calc(2.08vw * var(--scale));color:var(--teal);margin-bottom:calc(.42vw * var(--scale))}.leaderboard-page__stat-card-icon--purple{color:var(--purple)}.leaderboard-page__stat-card-label{margin:0 0 calc(.21vw * var(--scale));font-size:calc(1.04vw * var(--scale));color:var(--text-light);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.leaderboard-page__stat-card-value{font-size:calc(2.92vw * var(--scale));color:var(--teal);margin:0;font-weight:800;line-height:1.1}.leaderboard-page__stat-card-value--purple{color:var(--purple);font-size:calc(2.08vw * var(--scale))}.leaderboard-page__stars-stack{align-items:center;gap:calc(.1vw * var(--scale));margin-bottom:calc(.42vw * var(--scale));flex-direction:column;display:flex}.leaderboard-page__star-icon{font-size:calc(1.74vw * var(--scale));color:var(--yellow)}.leaderboard-page__stars-count{font-size:calc(1.67vw * var(--scale));color:var(--text-dark);font-weight:800;line-height:1}.leaderboard-page__stars-label{font-size:calc(.83vw * var(--scale));color:var(--text-dark);letter-spacing:.04em;font-weight:800}.leaderboard-page__stat-card-sublabel{font-size:calc(1.04vw * var(--scale));color:var(--text-light);margin:0;font-weight:600}.leaderboard-page__achievement{align-items:center;gap:calc(1.67vw * var(--scale));width:100%;max-width:calc(49.48vw * var(--scale));padding:calc(1.88vw * var(--scale)) calc(1.88vw * var(--scale));margin-bottom:calc(2.5vw * var(--scale));background:var(--bg-white);border:calc(.1vw * var(--scale)) solid var(--border-blue);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);display:flex}.leaderboard-page__badge-img{width:calc(12.24vw * var(--scale));height:calc(12.29vw * var(--scale));object-fit:contain;flex-shrink:0;min-width:160px;min-height:160px}.leaderboard-page__achievement-text{flex:1;min-width:0}.leaderboard-page__quote{margin:0 0 calc(.63vw * var(--scale));font-size:calc(2.08vw * var(--scale));color:var(--teal);font-weight:800;line-height:1.2}.leaderboard-page__message{font-size:calc(1.56vw * var(--scale));color:var(--text-muted);margin:0;font-weight:600;line-height:1.5}.leaderboard-page__actions{justify-content:center;align-items:center;gap:calc(1.25vw * var(--scale));width:100%;max-width:calc(35vw * var(--scale));margin-bottom:calc(1.04vw * var(--scale));display:flex}.leaderboard-page__btn-play{min-height:56px;box-shadow:0 calc(.21vw * var(--scale)) 0 var(--yellow-dark);flex:1;height:calc(4.06vw * var(--scale))!important;background:var(--yellow)!important;border-color:var(--yellow)!important;color:var(--text-dark)!important;font-size:calc(1.25vw * var(--scale))!important;border-radius:calc(4.06vw * var(--scale))!important;font-weight:800!important}.leaderboard-page__btn-play:hover{color:var(--text-dark)!important;background:#ffc233!important;border-color:#ffc233!important}.leaderboard-page__btn-next{justify-content:center;align-items:center;gap:calc(.42vw * var(--scale));height:calc(4.06vw * var(--scale));background:var(--purple);color:#fff;min-height:56px;font-family:inherit;font-size:calc(1.25vw * var(--scale));border-radius:calc(4.06vw * var(--scale));box-shadow:0 calc(.21vw * var(--scale)) 0 var(--purple-dark);cursor:pointer;border:none;flex:1;font-weight:800;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex}.leaderboard-page__btn-next:hover{color:#fff;background:#6d5fe0}.leaderboard-page__btn-next:active{transform:translateY(calc(.1vw * var(--scale)));box-shadow:0 calc(.1vw * var(--scale)) 0 var(--purple-dark)}@media (width<=1024px){.leaderboard-page,.leaderboard-page__hero,.leaderboard-page__subtitle{max-width:100%}.leaderboard-page__stats{grid-template-columns:1fr}.leaderboard-page__achievement{text-align:center;flex-direction:column;max-width:100%}.leaderboard-page__actions{flex-direction:column;max-width:100%}.leaderboard-page__btn-play,.leaderboard-page__btn-next{width:100%}}.placeholder-page{padding:calc(2.6vw * var(--scale)) calc(1.67vw * var(--scale));text-align:center;flex:1}.placeholder-page__title{color:var(--teal)!important;margin-bottom:calc(.63vw * var(--scale))!important;font-size:calc(2.08vw * var(--scale))!important;font-weight:800!important}.placeholder-page__subtitle{color:var(--text-muted)!important;font-size:calc(1.25vw * var(--scale))!important;font-weight:600!important}.app-shell{--scale:1;--teal:#006d77;--teal-light:#1a9e96;--yellow:#ffb703;--yellow-dark:#e6a600;--purple:#5e50d1;--purple-dark:#4a3fb8;--purple-soft:#ede9fe;--purple-muted:#7c6fe0;--border-blue:#a0d8ef;--border-light:#e8edf0;--text-dark:#333;--text-muted:#4a4a4a;--text-light:#6b7280;--icon-blue:#7ec8e3;--bg-page:#f5f7f9;--bg-white:#fff;--profile-header-bg:#e8f6fb;--card-shadow:0 calc(.21vw * var(--scale)) calc(1.04vw * var(--scale)) #006d770f;--sidebar-width:clamp(240px, calc(15vw * var(--scale)), 288px);--header-height:clamp(56px, calc(4.17vw * var(--scale)), 80px);--content-max-width:min(100%, calc(75vw * var(--scale)))}.profile-page{padding:calc(1.67vw * var(--scale)) calc(1.67vw * var(--scale)) 0;flex:1;position:relative}.profile-page__atmosphere{pointer-events:none;opacity:.35;position:absolute}.profile-page__atmosphere--star-1{top:calc(21.6vw * var(--scale));right:calc(2.6vw * var(--scale));width:calc(2.6vw * var(--scale));height:calc(2.47vw * var(--scale));background:radial-gradient(circle,#ffe9a0 30%,#0000 70%);border-radius:50%}.profile-page__atmosphere--star-2{bottom:calc(8vw * var(--scale));right:calc(1.67vw * var(--scale));width:calc(4.58vw * var(--scale));height:calc(4.58vw * var(--scale));background:radial-gradient(circle,#a8dff5 20%,#0000 70%);border-radius:50%}.profile-page__header-card{align-items:center;gap:calc(1.67vw * var(--scale));padding:calc(1.88vw * var(--scale)) calc(1.88vw * var(--scale));margin-bottom:calc(2.08vw * var(--scale));background:var(--profile-header-bg);border:calc(.1vw * var(--scale)) solid var(--border-blue);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);display:flex;position:relative;overflow:hidden}.profile-page__avatar-wrap{flex-shrink:0;position:relative}.profile-page__avatar{width:calc(8.33vw * var(--scale));height:calc(8.33vw * var(--scale));border-radius:calc(1.25vw * var(--scale));border:calc(.21vw * var(--scale)) solid #fff;min-width:120px;min-height:120px;box-shadow:0 calc(.21vw * var(--scale)) calc(.83vw * var(--scale)) #006d7726;background:linear-gradient(145deg,#b8e8f8,#7ec8e3);justify-content:center;align-items:center;display:flex;overflow:hidden}.profile-page__avatar img{object-fit:cover;width:100%;height:100%}.profile-page__avatar-initial{font-size:calc(3.13vw * var(--scale));color:var(--teal);font-weight:800}.profile-page__level-badge{bottom:calc(-.42vw * var(--scale));padding:calc(.42vw * var(--scale)) calc(1.04vw * var(--scale));border:calc(.1vw * var(--scale)) solid #fff;border-radius:calc(2.08vw * var(--scale));font-size:calc(1.04vw * var(--scale));color:#5c4a00;white-space:nowrap;box-shadow:0 calc(.1vw * var(--scale)) calc(.42vw * var(--scale)) #ffb70366;background:linear-gradient(135deg,#ffd54f,#ffb703);font-weight:800;position:absolute;left:50%;transform:translate(-50%)}.profile-page__identity{flex:1;min-width:0}.profile-page__name-row{align-items:center;gap:calc(.63vw * var(--scale));margin-bottom:calc(.42vw * var(--scale));flex-wrap:wrap;display:flex}.profile-page__name{font-size:calc(2.08vw * var(--scale));color:var(--teal);margin:0;font-weight:800;line-height:1.15}.profile-page__badge{padding:calc(.21vw * var(--scale)) calc(.83vw * var(--scale));background:var(--purple);border-radius:calc(2.08vw * var(--scale));font-size:calc(1.04vw * var(--scale));color:#fff;letter-spacing:.02em;font-weight:700}.profile-page__meta{align-items:center;gap:calc(.42vw * var(--scale));margin-bottom:calc(.83vw * var(--scale));font-size:calc(1.25vw * var(--scale));color:var(--text-muted);flex-wrap:wrap;font-weight:600;display:flex}.profile-page__meta-dot{color:var(--text-light)}.profile-page__actions{align-items:center;gap:calc(.63vw * var(--scale));flex-wrap:wrap;display:flex}.profile-page__student-id{align-items:center;gap:calc(.42vw * var(--scale));padding:calc(.52vw * var(--scale)) calc(.94vw * var(--scale));border:calc(.05vw * var(--scale)) solid #a0d8ef99;border-radius:calc(2.29vw * var(--scale));font-size:calc(1.25vw * var(--scale));color:var(--text-dark);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffb3;font-weight:700;display:flex}.profile-page__student-id-label{font-size:calc(.83vw * var(--scale));color:var(--text-light);letter-spacing:.04em;font-weight:700}.profile-page__edit-btn{min-height:40px;box-shadow:0 calc(.15vw * var(--scale)) 0 var(--yellow-dark);height:calc(2.29vw * var(--scale))!important;padding:0 calc(1.25vw * var(--scale))!important;background:var(--yellow)!important;border-color:var(--yellow)!important;color:#fff!important;font-size:calc(1.25vw * var(--scale))!important;border-radius:calc(2.29vw * var(--scale))!important;font-weight:800!important}.profile-page__edit-btn:hover{color:#fff!important;background:#ffc233!important;border-color:#ffc233!important}.profile-page__mascot{width:calc(9.32vw * var(--scale));object-fit:contain;flex-shrink:0;align-self:flex-end;height:auto}.profile-page__grid{gap:calc(1.67vw * var(--scale));margin-bottom:calc(2.08vw * var(--scale));grid-template-columns:1.95fr 1fr;display:grid}.profile-page__card{background:var(--bg-white);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow)}.profile-page__card--settings{padding:calc(1.88vw * var(--scale));border:calc(.05vw * var(--scale)) solid var(--border-light)}.profile-page__card--help{padding:calc(1.88vw * var(--scale));border:calc(.1vw * var(--scale)) solid #d4c4ff;margin-bottom:calc(1.67vw * var(--scale))}.profile-page__card--privacy{padding:calc(1.88vw * var(--scale));border:calc(.1vw * var(--scale)) solid var(--border-blue)}.profile-page__card-title{align-items:center;gap:calc(.63vw * var(--scale));margin-bottom:calc(1.46vw * var(--scale));display:flex}.profile-page__card-title--sub{margin-bottom:calc(1.04vw * var(--scale))}.profile-page__card-title h2,.profile-page__card-title h3{font-size:calc(1.67vw * var(--scale));color:var(--text-dark);margin:0;font-weight:800}.profile-page__card-title h3{font-size:calc(1.46vw * var(--scale))}.profile-page__card-icon{width:calc(2.13vw * var(--scale));height:calc(2.13vw * var(--scale));border-radius:calc(.63vw * var(--scale));min-width:36px;min-height:36px;font-size:calc(1.25vw * var(--scale));justify-content:center;align-items:center;display:flex}.profile-page__card-icon--teal{color:var(--teal);background:#006d771a}.profile-page__card-icon--purple{background:var(--purple-soft);color:var(--purple)}.profile-page__settings-grid{gap:calc(.83vw * var(--scale));margin-bottom:calc(1.46vw * var(--scale));grid-template-columns:1fr 1fr;display:grid}.profile-page__settings-row{justify-content:space-between;align-items:center;gap:calc(.63vw * var(--scale));width:100%;padding:calc(.94vw * var(--scale));border:calc(.05vw * var(--scale)) solid #eef0f2;border-radius:calc(1.04vw * var(--scale));cursor:pointer;text-align:left;background:#f9fafb;font-family:inherit;transition:border-color .15s,background .15s;display:flex}.profile-page__settings-row:hover{border-color:var(--border-blue);background:#f3f9fc}.profile-page__settings-row--static{cursor:default}.profile-page__settings-row--static:hover{background:#f9fafb;border-color:#eef0f2}.profile-page__settings-row--language{cursor:default;grid-column:1/-1}.profile-page__settings-row--language:hover{background:#f9fafb;border-color:#eef0f2}.profile-page__settings-row-main{align-items:center;gap:calc(.83vw * var(--scale));min-width:0;display:flex}.profile-page__settings-icon{width:calc(2.08vw * var(--scale));height:calc(2.08vw * var(--scale));border-radius:calc(.63vw * var(--scale));min-width:40px;min-height:40px;font-size:calc(1.04vw * var(--scale));flex-shrink:0;justify-content:center;align-items:center;display:flex}.profile-page__settings-icon--blue{color:var(--teal);background:#7ec8e340}.profile-page__settings-icon--white{border:calc(.05vw * var(--scale)) solid #e5e7eb;background:#fff}.profile-page__settings-icon--white img{width:calc(1.04vw * var(--scale));height:calc(1.04vw * var(--scale));min-width:20px;min-height:20px}.profile-page__settings-label{font-size:calc(1.25vw * var(--scale));color:var(--text-dark);font-weight:700}.profile-page__settings-value{font-size:calc(.83vw * var(--scale));color:var(--text-light);margin-top:calc(.1vw * var(--scale));font-weight:600}.profile-page__settings-chevron,.profile-page__settings-action-icon{color:var(--text-light);font-size:calc(.83vw * var(--scale));flex-shrink:0}.profile-page__language-select{min-width:calc(7.81vw * var(--scale))}.profile-page__language-select .ant-select-selector{color:var(--text-muted)!important;font-weight:600!important}.profile-page__parent-contact{padding-top:calc(1.46vw * var(--scale));border-top:calc(.05vw * var(--scale)) solid var(--border-light)}.profile-page__parent-form{gap:calc(.83vw * var(--scale));display:flex}.profile-page__parent-input{flex:1;min-height:44px;height:calc(2.71vw * var(--scale))!important;border-radius:calc(1.04vw * var(--scale))!important;font-size:calc(1.25vw * var(--scale))!important;background:#f3f4f6!important;border-color:#e5e7eb!important;font-weight:600!important}.profile-page__update-btn{min-height:44px;height:calc(2.71vw * var(--scale))!important;padding:0 calc(1.67vw * var(--scale))!important;background:var(--teal)!important;border-color:var(--teal)!important;font-size:calc(1.25vw * var(--scale))!important;border-radius:calc(1.04vw * var(--scale))!important;font-weight:700!important}.profile-page__update-btn:hover{background:var(--teal-light)!important;border-color:var(--teal-light)!important}.profile-page__side-column{flex-direction:column;display:flex}.profile-page__link-list{gap:calc(.42vw * var(--scale));flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.profile-page__link-list a{padding:calc(.63vw * var(--scale)) calc(.63vw * var(--scale));border-radius:calc(.63vw * var(--scale));font-size:calc(1.25vw * var(--scale));color:var(--text-dark);font-weight:600;text-decoration:none;transition:background .15s;display:block}.profile-page__link-list a:hover{background:#f9fafb}.profile-page__link--danger{color:#e53e3e!important}.profile-page__privacy-content{gap:calc(1.04vw * var(--scale));display:flex}.profile-page__privacy-icon{width:calc(3.33vw * var(--scale));height:calc(3.33vw * var(--scale));border-radius:calc(.83vw * var(--scale));min-width:56px;min-height:56px;color:var(--teal);font-size:calc(1.67vw * var(--scale));background:#006d771a;flex-shrink:0;justify-content:center;align-items:center;display:flex}.profile-page__privacy-content h2{margin:0 0 calc(.42vw * var(--scale));font-size:calc(1.67vw * var(--scale));color:var(--text-dark);font-weight:800}.profile-page__privacy-content p{margin:0 0 calc(.83vw * var(--scale));font-size:calc(1.04vw * var(--scale));color:var(--text-muted);font-weight:600;line-height:1.5}.profile-page__privacy-links{gap:calc(1.04vw * var(--scale));flex-wrap:wrap;display:flex}.profile-page__privacy-links a{font-size:calc(1.04vw * var(--scale));color:var(--teal);font-weight:700;text-decoration:none}.profile-page__privacy-links a:hover{text-decoration:underline}.profile-page__transactions{margin-bottom:calc(1.04vw * var(--scale))}.profile-page__section-title{align-items:center;gap:calc(.63vw * var(--scale));margin-bottom:calc(1.46vw * var(--scale));display:flex}.profile-page__section-title h2{font-size:calc(1.67vw * var(--scale));color:var(--text-dark);margin:0;font-weight:800}.profile-page__section-title .anticon{font-size:calc(1.25vw * var(--scale));color:var(--teal)}.profile-page__transaction-grid{gap:calc(1.25vw * var(--scale));grid-template-columns:1fr 1fr;display:grid}.profile-page__transaction-card{align-items:center;gap:calc(1.25vw * var(--scale));padding:calc(1.67vw * var(--scale)) calc(1.88vw * var(--scale));background:var(--bg-white);border:calc(.05vw * var(--scale)) solid var(--border-light);border-radius:calc(1.67vw * var(--scale));box-shadow:var(--card-shadow);display:flex}.profile-page__transaction-icon{width:calc(5.26vw * var(--scale));height:calc(5.31vw * var(--scale));border-radius:calc(1.04vw * var(--scale));min-width:80px;min-height:80px;font-size:calc(2.08vw * var(--scale));background:#7ec8e333;flex-shrink:0;justify-content:center;align-items:center;display:flex}.profile-page__transaction-body{flex:1;min-width:0}.profile-page__transaction-body h3{margin:0 0 calc(.31vw * var(--scale));font-size:calc(1.25vw * var(--scale));color:var(--text-muted);font-weight:700}.profile-page__transaction-amount{margin:0 0 calc(.21vw * var(--scale));font-size:calc(1.25vw * var(--scale));color:var(--text-dark);font-weight:800}.profile-page__transaction-meta{font-size:calc(.83vw * var(--scale));color:var(--text-light);margin:0;font-weight:600}.profile-page__renewal-row{align-items:center;gap:calc(.63vw * var(--scale));margin-bottom:calc(.21vw * var(--scale));flex-wrap:wrap;display:flex}.profile-page__renewal-row .profile-page__transaction-amount{margin:0}.profile-page__autopay-badge{padding:calc(.21vw * var(--scale)) calc(.63vw * var(--scale));border-radius:calc(2.08vw * var(--scale));font-size:calc(.83vw * var(--scale));color:#2e7d32;background:#e8f5e9;font-weight:700}.profile-page__invoice-link{align-items:center;gap:calc(.42vw * var(--scale));font-family:inherit;font-size:calc(1.04vw * var(--scale));color:var(--teal);cursor:pointer;background:0 0;border:none;flex-shrink:0;font-weight:700;display:flex}.profile-page__invoice-link:hover{text-decoration:underline}.profile-page__manage-btn{flex-shrink:0;min-height:36px;height:calc(1.88vw * var(--scale))!important;padding:0 calc(1.25vw * var(--scale))!important;background:var(--icon-blue)!important;border-color:var(--icon-blue)!important;color:#fff!important;font-size:calc(1.04vw * var(--scale))!important;border-radius:calc(.83vw * var(--scale))!important;font-weight:700!important}.profile-page__manage-btn:hover{color:#fff!important;background:#5eb8d9!important;border-color:#5eb8d9!important}@media (width<=1200px){.profile-page__grid{grid-template-columns:1fr}.profile-page__mascot{display:none}}@media (width<=768px){.profile-page__header-card{text-align:center;flex-direction:column}.profile-page__name-row,.profile-page__meta,.profile-page__actions{justify-content:center}.profile-page__settings-grid,.profile-page__transaction-grid{grid-template-columns:1fr}.profile-page__parent-form{flex-direction:column}.profile-page__transaction-card{flex-wrap:wrap}}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.auth-loading{justify-content:center;align-items:center;min-height:100vh;display:flex}
