@import"https://fonts.googleapis.com/css2?family=Noto+Sans:wght@300;400;500;600;700;800&family=Noto+Sans+Math&family=Noto+Sans+Symbols+2&display=swap";@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-opsz-normal-D9N6E8K1.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-opsz-normal-IcJDqblK.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-opsz-normal-Cre6nC2_.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-ext-wght-normal-DCwSJGxG.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-wght-normal-D_ZTVpCC.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lexend-vietnamese-400-normal-DoLa7jNB.woff2) format("woff2"),url(/assets/lexend-vietnamese-400-normal-mPlHoWg5.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lexend-latin-ext-400-normal-D38JI5AK.woff2) format("woff2"),url(/assets/lexend-latin-ext-400-normal-D9P7pMo-.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lexend-latin-400-normal-CwRJVcUA.woff2) format("woff2"),url(/assets/lexend-latin-400-normal-CHypAkT3.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lexend-vietnamese-500-normal-Bos7Oy9U.woff2) format("woff2"),url(/assets/lexend-vietnamese-500-normal-EFAPmUTE.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lexend-latin-ext-500-normal-Bo17xs96.woff2) format("woff2"),url(/assets/lexend-latin-ext-500-normal-DbCmXT_D.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lexend-latin-500-normal-Dl-X5nog.woff2) format("woff2"),url(/assets/lexend-latin-500-normal-D9x1QWTH.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/syne-greek-700-normal-RbvlO3f8.woff2) format("woff2"),url(/assets/syne-greek-700-normal-C01yjWE_.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/syne-latin-ext-700-normal-DuyXglMe.woff2) format("woff2"),url(/assets/syne-latin-ext-700-normal-C-qCH-vM.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/syne-latin-700-normal-AF3Rs61n.woff2) format("woff2"),url(/assets/syne-latin-700-normal-Cd-_iCn5.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/syne-greek-800-normal-n2LZS_yH.woff2) format("woff2"),url(/assets/syne-greek-800-normal-DtzFnRR0.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/syne-latin-ext-800-normal-CAQAsWuS.woff2) format("woff2"),url(/assets/syne-latin-ext-800-normal-B2iBRfEf.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/syne-latin-800-normal-EehdNYzx.woff2) format("woff2"),url(/assets/syne-latin-800-normal-BuJcbPcX.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-12{height:3rem}.h-3{height:.75rem}.h-6{height:1.5rem}.min-h-screen{min-height:100vh}.w-12{width:3rem}.w-3{width:.75rem}.w-6{width:1.5rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.shrink{flex-shrink:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.rounded{border-radius:.25rem}.rounded-card{border-radius:var(--kd-r-card)}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-border{border-color:var(--kd-line)}.bg-accent{background-color:var(--kd-blue)}.bg-accent-bg{background-color:var(--kd-blue-50)}.bg-surface{background-color:var(--kd-surface)}.bg-surface2{background-color:var(--kd-surface-2)}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-16{padding-bottom:4rem}.pb-8{padding-bottom:2rem}.pt-16{padding-top:4rem}.pt-8{padding-top:2rem}.text-center{text-align:center}.font-body{font-family:var(--kd-font-ui)}.font-heading{font-family:var(--kd-font-display)}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-light{font-weight:300}.font-medium{font-weight:500}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-relaxed{line-height:1.625}.tracking-wide{letter-spacing:.025em}.text-accent{color:var(--kd-blue)}.text-ink{color:var(--kd-ink)}.text-ink3{color:var(--kd-ink-3)}.text-on-accent{color:var(--kd-on-brand)}.underline{text-decoration-line:underline}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.font-heading{font-family:var(--font-heading)}.font-body{font-family:var(--font-body)}:root,:root[data-theme=light]{--kd-bg: #FFFFFF;--kd-surface: #FFFFFF;--kd-surface-2: #F2F4FA;--kd-plate: #E6EAF5;--kd-line: #E8EBF2;--kd-ink: #0D1124;--kd-ink-2: #4E556E;--kd-ink-3: #666D85;--kd-blue: #3155D9;--kd-blue-text: #3155D9;--kd-blue-50: #EEF2FD;--kd-blue-100: #D9E1FA;--kd-blue-300: #8FA5EC;--kd-pink: #F451B3;--kd-pink-text: #B81F7C;--kd-pink-50: #FEEDF7;--kd-on-brand: #FFFFFF;--kd-on-pink: #0D1124;--kd-focus: #3155D9;--kd-locked: #9AA1B6;--kd-shadow-card: 0 1px 2px rgba(13, 17, 36, .04), 0 10px 28px rgba(13, 17, 36, .06);--kd-shadow-raised: 0 2px 4px rgba(13, 17, 36, .04), 0 24px 48px rgba(13, 17, 36, .1);--kd-shadow-blue: 0 10px 22px rgba(49, 85, 217, .28);--kd-shadow-hero: 0 16px 32px rgba(49, 85, 217, .28);--kd-shadow-scan: 0 10px 22px rgba(49, 85, 217, .35);--kd-shadow-pink: 0 12px 24px rgba(244, 81, 179, .35);--kd-shadow-seg: 0 4px 10px rgba(49, 85, 217, .25);--scrim: rgba(13, 15, 20, .4);--scrim-strong: rgba(13, 15, 20, .82);--orange: #E65100;--streak-warn-bg: rgba(255, 152, 0, .1);--streak-warn: #FF9800;--streak-warn-text: #B23C00;--streak-danger-bg: rgba(220, 53, 69, .1);--streak-danger: #ef4444;--streak-danger-text: #C81E2B;--danger: #DC2626;--danger-text: #C81E2B;--danger-soft: rgba(239, 68, 68, .06);--danger-soft-hover: rgba(239, 68, 68, .12);--danger-line: rgba(239, 68, 68, .35)}:root[data-theme=dark]{--kd-bg: #0A0C13;--kd-surface: #141824;--kd-surface-2: #1F2434;--kd-plate: #1B2030;--kd-line: #262C3E;--kd-ink: #F3F5FB;--kd-ink-2: #B6BCCE;--kd-ink-3: #9AA1B6;--kd-blue: #3155D9;--kd-blue-text: #A9BBF7;--kd-blue-50: #1A2550;--kd-blue-100: #22305E;--kd-blue-300: #4A63B8;--kd-pink: #F451B3;--kd-pink-text: #FF8ACF;--kd-pink-50: #2E1428;--kd-on-brand: #FFFFFF;--kd-on-pink: #0D1124;--kd-focus: #A9BBF7;--kd-locked: #5C6378;--kd-shadow-card: 0 12px 32px rgba(0, 0, 0, .45);--kd-shadow-raised: 0 2px 4px rgba(0, 0, 0, .3), 0 24px 48px rgba(0, 0, 0, .5);--kd-shadow-blue: 0 10px 22px rgba(49, 85, 217, .28);--kd-shadow-hero: 0 16px 32px rgba(0, 0, 0, .5);--kd-shadow-scan: 0 10px 22px rgba(49, 85, 217, .35);--kd-shadow-pink: 0 12px 24px rgba(244, 81, 179, .35);--kd-shadow-seg: 0 4px 10px rgba(49, 85, 217, .25);--scrim: rgba(2, 2, 5, .6);--scrim-strong: rgba(2, 2, 5, .88);--orange: #FF9800;--streak-warn-bg: rgba(255, 152, 0, .12);--streak-warn: #FF9800;--streak-warn-text: #FFB74D;--streak-danger-bg: rgba(220, 53, 69, .12);--streak-danger: #ef4444;--streak-danger-text: #f87171;--danger: #DC2626;--danger-text: #f87171;--danger-soft: rgba(239, 68, 68, .1);--danger-soft-hover: rgba(239, 68, 68, .18);--danger-line: rgba(239, 68, 68, .4)}:root,:root[data-theme=light],:root[data-theme=dark]{--kd-font-display: "Bricolage Grotesque Variable", "Bricolage Grotesque", system-ui, sans-serif;--kd-font-ui: "Figtree Variable", "Figtree", system-ui, sans-serif;--font-fallback: "Noto Sans", "Noto Sans Math", "Noto Sans Symbols 2", sans-serif;--font-serif: "Lexend", var(--font-fallback);--kd-r-pill: 999px;--kd-r-xs: 10px;--kd-r-sm: 12px;--kd-r-md: 15px;--kd-r-btn: 18px;--kd-r-tile: 20px;--kd-r-card: 22px;--kd-r-hero: 28px;--kd-ease-out: cubic-bezier(.2, .8, .2, 1);--kd-ease-in-out: cubic-bezier(.4, 0, .2, 1);--kd-ease-spring: cubic-bezier(.34, 1.56, .64, 1);--kd-tabbar-h: 60px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--bg: var(--kd-bg);--surface: var(--kd-surface);--surface-2: var(--kd-surface-2);--surface-3: var(--kd-plate);--border: var(--kd-line);--border-med: var(--kd-line);--hairline: var(--kd-line);--text-primary: var(--kd-ink);--text-secondary: var(--kd-ink-2);--text-muted: var(--kd-ink-3);--card-edge: var(--kd-line);--nav-glass: var(--kd-surface);--accent: var(--kd-blue);--accent-strong: var(--kd-blue);--accent-text: var(--kd-blue-text);--accent-soft: var(--kd-blue-50);--accent-softer: var(--kd-blue-50);--accent-line: var(--kd-blue-100);--accent-glow: var(--kd-blue-100);--on-accent: var(--kd-on-brand);--gold: var(--kd-pink);--gold-text: var(--kd-pink-text);--gold-soft: var(--kd-pink-50);--gold-line: var(--kd-pink-50);--on-gold: var(--kd-ink);--violet: var(--kd-blue);--violet-text: var(--kd-blue-text);--violet-soft: var(--kd-blue-50);--violet-line: var(--kd-blue-100);--purple: var(--kd-blue);--purple-light: var(--kd-blue-300);--purple-soft: var(--kd-blue-50);--green: var(--kd-blue);--green-soft: var(--kd-blue-50);--yellow: var(--kd-pink);--yellow-raw: var(--kd-pink);--yellow-soft: var(--kd-pink-50);--font-body: var(--kd-font-ui);--font-display: var(--kd-font-ui);--font-heading: var(--kd-font-display);--font-numeric: var(--kd-font-display);--font-greeting: var(--kd-font-display);--font-logo: var(--kd-font-display);--radius-sm: var(--kd-r-xs);--radius-md: var(--kd-r-sm);--radius-lg: var(--kd-r-card);--radius-xl: var(--kd-r-card);--radius-pill: var(--kd-r-pill);--shadow-sm: var(--kd-shadow-card);--shadow-md: var(--kd-shadow-card);--shadow-lg: var(--kd-shadow-raised);--shadow-accent: var(--kd-shadow-blue);--card-front-bg: var(--kd-surface);--card-back-bg: var(--kd-surface);--card-back-border: var(--kd-line);--bg2: var(--kd-surface);--bg3: var(--kd-surface-2);--surface2: var(--kd-surface-2);--surface3: var(--kd-plate);--border2: var(--kd-line);--ink: var(--kd-ink);--ink2: var(--kd-ink-2);--ink3: var(--kd-ink-3);--accent2: var(--kd-blue);--accent-bg: var(--kd-blue-50);--gold-bg: var(--kd-pink-50);--gold-dark: var(--kd-pink-text);--success: var(--kd-blue);--success-bg: var(--kd-blue-50);--nav-bg: var(--kd-surface);--nav-border: var(--kd-line);--stat-bg: var(--kd-surface);--stat-border: var(--kd-line);--deck-bg: var(--kd-surface);--section-label: var(--kd-ink-3)}:root,:root[data-theme=light],:root[data-theme=dark]{--spring: var(--kd-ease-spring);--ease-out: var(--kd-ease-out);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-io: var(--kd-ease-in-out);--dur-instant: .1s;--dur-fast: .16s;--dur-med: .24s;--dur-slow: .42s;--t-control: background-color .16s var(--ease-out), border-color .16s var(--ease-out), color .16s var(--ease-out), box-shadow .16s var(--ease-out), transform .16s var(--ease-out), opacity .16s var(--ease-out)}:root[data-theme=dark] .popup-panel{background:var(--kd-surface)!important}:root[data-theme=dark] .modal-card{background:var(--kd-surface)!important}*,*:before,*:after{transition:background-color .2s ease,border-color .2s ease,color .15s ease;box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--kd-bg);color:var(--kd-ink);font-family:var(--kd-font-ui);font-weight:500;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .3s,color .3s}@media(min-width:521px){body{background:var(--kd-surface-2)}:root[data-theme=dark] body{background:var(--kd-bg)}#root{max-width:480px;margin-left:auto;margin-right:auto;min-height:100vh;min-height:100dvh;background:var(--kd-bg)}}h1,h2,h3,h4,h5,h6{font-family:var(--kd-font-display);font-weight:700}h1{font-weight:700;letter-spacing:-.025em}h2,h3{font-weight:700;letter-spacing:-.015em}.kard-card-scene{perspective:1000px;width:100%}.kard-card-inner{position:relative;width:100%;height:100%;transition:transform .52s cubic-bezier(.31,1.28,.42,1);transform-style:preserve-3d}.kard-card-inner.flipped{transform:rotateY(180deg)}.kard-card-front,.kard-card-back{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:var(--radius-lg);overflow:hidden}.kard-card-back{transform:rotateY(180deg)}.k-sub,.k-sup{font-size:.72em;line-height:0;position:relative}.k-sub{top:.24em}.k-sup{top:-.42em}.flip-card{perspective:1200px;transition:transform var(--dur-med) var(--ease-in)}.flip-card:hover{transform:translateY(-2px);transition-timing-function:var(--ease-out)}.flip-card-inner{position:relative;width:100%;height:100%;transition:transform .52s cubic-bezier(.31,1.28,.42,1);transform-style:preserve-3d}.flip-card-inner.flipped{transform:rotateY(180deg)}.flip-card-front,.flip-card-back{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:var(--radius-lg);overflow:hidden}.flip-card-back{transform:rotateY(180deg)}.upload-zone{border:2px dashed var(--accent-line);background:var(--accent-softer);transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),transform var(--dur-med) var(--ease-out)}.upload-zone:hover,.upload-zone.drag-over{border-color:var(--accent);background-color:var(--accent-soft)}.upload-zone.drag-over{transform:scale(1.015)}@keyframes fabEntrance{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.fab-upload{animation:fabEntrance .3s var(--ease-out) forwards;bottom:28px;right:28px}@media(max-width:767px){.fab-upload{bottom:80px;right:16px}}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}.achievement-toast-enter{animation:slideUp .4s cubic-bezier(.4,0,.2,1) forwards}.achievement-toast-exit{animation:slideDown .4s cubic-bezier(.4,0,.2,1) forwards}@keyframes star-commit{0%{transform:scale(1)}40%{transform:scale(1.28)}70%{transform:scale(.96)}to{transform:scale(1)}}@keyframes kard-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.85)}}@keyframes kard-fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes kard-step-active{0%,to{opacity:1}50%{opacity:.6}}.kard-step-active{animation:kard-step-active 1.5s ease infinite;color:var(--purple);font-weight:700;font-family:var(--font-body)}.kard-actions-revealed{animation:kard-fadeInUp .3s ease forwards}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.4);opacity:1}}.pulse-dot{animation:pulse-dot 1.2s ease-in-out infinite}.progress-bar-fill{transition:width .9s var(--ease-out);position:relative;overflow:hidden}.progress-bar-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.25) 45%,transparent 70%);transform:translate(-100%);animation:progress-sheen 2.9s var(--ease-io) .7s infinite}@keyframes progress-sheen{0%{transform:translate(-100%)}55%,to{transform:translate(220%)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--ink3)}.swipeable{touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none}.safe-bottom{padding-bottom:env(safe-area-inset-bottom,0px)}@media(max-width:767px){.page-content{padding-bottom:calc(4rem + env(safe-area-inset-bottom,0px))}}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:28px;max-width:1100px;margin:0 auto}.dashboard-grid>*{min-width:0}@media(min-width:900px){.dashboard-grid{grid-template-columns:1fr 300px}}.dashboard-right-col{display:none}@media(min-width:900px){.dashboard-right-col{display:block}}.dashboard-desktop-only{display:none}@media(min-width:900px){.dashboard-mobile-only{display:none!important}.dashboard-desktop-only{display:block}}.dashboard-fullwidth-sections{max-width:1100px;margin-left:auto;margin-right:auto;margin-top:28px}@media(min-width:900px){.stats-row-compact{margin-top:0;margin-bottom:14px;gap:8px}.stats-row-compact .stat-box{padding:12px}.stats-row-compact .stat-number{font-size:22px;letter-spacing:-.5px}.stats-row-compact .stat-number-4d{font-size:18px;letter-spacing:-.5px}.stats-row-compact .stat-number-5d{font-size:17px;letter-spacing:-.5px}.stats-row-compact .stat-number-6d{font-size:14px;letter-spacing:0}.stats-row-compact .stat-label{font-size:9px;letter-spacing:1px;margin-top:4px}}.stats-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px;margin-bottom:20px}.stat-box{background:var(--surface);border:1px solid var(--card-edge);border-radius:var(--radius-lg);padding:20px 24px;min-width:0;position:relative;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--dur-med) var(--ease-in),box-shadow var(--dur-med) var(--ease-in),border-color var(--dur-fast) var(--ease-out)}.stat-box:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);transition-timing-function:var(--ease-out)}.stat-box-brand{border-top:3px solid transparent;background:var(--surface)}.stat-number{font-family:var(--font-numeric);font-variant-numeric:tabular-nums;font-size:38px;font-weight:600;letter-spacing:-2px;line-height:1;display:block}.stat-number-4d{font-size:30px;letter-spacing:-1.5px}.stat-number-5d{font-size:26px;letter-spacing:-1px}.stat-number-6d{font-size:20px;letter-spacing:-.5px}.stat-label{font-size:10px;color:var(--text-muted);margin-top:6px;text-transform:uppercase;letter-spacing:1.2px;font-weight:600;display:block;font-family:var(--font-body)}@media(max-width:480px){.stat-number{font-size:26px;letter-spacing:-1px}.stat-number-4d,.stat-number-5d{font-size:22px;letter-spacing:-.5px}.stat-number-6d{font-size:17px;letter-spacing:0}.stat-box{padding:14px 12px}.stats-row{gap:8px}}@media(min-width:641px){.stats-row.stats-row-profile{display:flex;width:-moz-fit-content;width:fit-content;margin-left:auto;margin-right:auto;gap:20px}.stats-row.stats-row-profile .stat-box{max-width:160px;flex:0 0 160px}}.section-header{display:flex;align-items:center;gap:12px;margin-bottom:14px}.section-header-label{font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);font-family:var(--font-heading);white-space:nowrap}.section-header-rule{flex:1;height:1px;background:var(--hairline);min-width:12px}.theme-toggle{position:relative}.theme-toggle:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--ink);color:var(--bg);font-size:10px;font-family:var(--font-body);border-radius:var(--radius-sm);padding:3px 8px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-in);z-index:200}.theme-toggle:hover:after{opacity:1;transition-timing-function:var(--ease-out)}.dashboard-greeting{overflow:visible!important;padding-bottom:.25em!important;display:block!important}@keyframes greeting-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.greeting-reveal{opacity:0;animation-name:greeting-rise;animation-duration:.3s;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:forwards;animation-delay:var(--greeting-delay, 0ms)}@media(prefers-reduced-motion:reduce){.greeting-reveal{animation:none;opacity:1;transform:none}}.deck-grid-container{touch-action:pan-y}.deck-grid-container.drag-active{touch-action:none}.recently-studied-scroll{display:flex;gap:14px;overflow-x:auto;padding-top:6px;padding-bottom:8px;scrollbar-width:none}.recently-studied-scroll::-webkit-scrollbar{display:none}@media(min-width:900px){.recently-studied-scroll{display:grid;grid-template-columns:repeat(3,1fr);overflow-x:unset;width:100%}}.deck-main-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:var(--space-4);width:100%}@media(min-width:900px){.deck-main-grid.deck-main-grid-bento>*:first-child{grid-column:span 2}}@media(max-width:899px){.deck-main-grid{grid-template-columns:1fr;gap:var(--space-3)}}@media(min-width:900px){.stats-row-sidebar .stat-box{padding:22px 18px}}.greeting-stats-block{display:flex;align-items:stretch;gap:12px;margin-bottom:16px}.greeting-content-col{flex:1;min-width:0}@media(min-width:900px){.greeting-stats-block{display:block;margin-bottom:24px}.greeting-content-col{flex:none}}.mobile-stat-col{display:flex;flex-direction:column;gap:8px;width:96px;flex-shrink:0;align-self:stretch}.mobile-stat-box{padding:10px!important;display:flex;flex-direction:column;justify-content:center}.mobile-stat-col .stat-number{font-size:22px!important;letter-spacing:-1px!important}.mobile-stat-col .stat-number-4d{font-size:18px!important;letter-spacing:-.5px!important}.mobile-stat-col .stat-number-5d{font-size:16px!important;letter-spacing:0!important}.mobile-stat-col .stat-number-6d{font-size:13px!important;letter-spacing:0!important}.mobile-stat-col .stat-label{font-size:7px!important;letter-spacing:.6px!important;margin-top:3px!important}@media(min-width:900px){.mobile-stat-col{display:none}}.streak-xp-row{display:flex;align-items:center;gap:14px;margin-top:12px}.streak-bar-reset-margin>div{margin-top:0!important}.desktop-only-xp-inline{display:none}@media(min-width:900px){.desktop-only-xp-inline{display:flex;align-items:center;gap:10px;flex:1;max-width:67%;min-width:0;background:var(--surface);border:1px solid var(--card-edge);border-radius:var(--radius-lg);padding:12px 16px;box-shadow:var(--shadow-sm)}}@keyframes profile-deck-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes profile-flame-flicker{0%,to{transform:scale(1) rotate(-1deg);opacity:.9}30%{transform:scale(1.06) rotate(1.5deg);opacity:1}60%{transform:scale(.97) rotate(-.5deg);opacity:.95}80%{transform:scale(1.03) rotate(1deg);opacity:1}}.profile-flame-active{animation:profile-flame-flicker 2.8s ease-in-out infinite;transform-origin:center bottom}@media(prefers-reduced-motion:reduce){.profile-flame-active{animation:none}}@media(min-width:900px){.dashboard-right-col{display:flex;flex-direction:column;align-self:start}.stats-row.stats-row-sidebar{display:flex;flex-direction:column;grid-template-columns:unset;gap:8px;margin-top:0;margin-bottom:0}.stats-row-sidebar .stat-box{padding:22px 18px}}.k-press{transition:transform var(--dur-fast) var(--ease-in),box-shadow var(--dur-fast) var(--ease-out),filter var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.k-press:active{transform:scale(.97);transition-duration:var(--dur-instant);transition-timing-function:var(--ease-out)}.k-lift{transition:transform var(--dur-med) var(--ease-in),box-shadow var(--dur-med) var(--ease-in),border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.k-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)!important;transition-timing-function:var(--ease-out)}.k-lift:active{transform:translateY(0) scale(.985);transition-duration:var(--dur-instant)}@keyframes k-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.k-enter{opacity:0;animation:k-rise .3s var(--ease-out) forwards}.k-stagger>*{opacity:0;animation:k-rise .3s var(--ease-out) forwards}.k-stagger>*:nth-child(1){animation-delay:0ms}.k-stagger>*:nth-child(2){animation-delay:40ms}.k-stagger>*:nth-child(3){animation-delay:80ms}.k-stagger>*:nth-child(4){animation-delay:.12s}.k-stagger>*:nth-child(5){animation-delay:.16s}.k-stagger>*:nth-child(6){animation-delay:.2s}.k-stagger>*:nth-child(7){animation-delay:.24s}.k-stagger>*:nth-child(8){animation-delay:.28s}.k-stagger>*:nth-child(n+9){animation-delay:.3s}@keyframes k-toast-in{0%{opacity:0;transform:translate(-50%,22px) scale(.82)}62%{opacity:1;transform:translate(-50%,-6px) scale(1.06)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes k-toast-out{0%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-14px) scale(.94)}}@keyframes k-pop{0%{transform:scale(.4);opacity:0}55%{transform:scale(1.14);opacity:1}78%{transform:scale(.96)}to{transform:scale(1);opacity:1}}.k-pop{animation:k-pop .55s var(--spring) forwards}@keyframes k-halo{0%,to{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 0 16px #0000}}.k-halo{animation:k-halo 2s var(--ease-out) infinite}@keyframes k-modal-in{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:none}}@keyframes k-fade-in{0%{opacity:0}to{opacity:1}}.modal-card,.popup-panel{border-color:var(--card-edge)!important;box-shadow:var(--shadow-lg)!important}.modal-card{animation:k-modal-in var(--dur-med) var(--ease-out) both}.popup-panel{animation:k-fade-in var(--dur-fast) var(--ease-out) both}:focus-visible{outline:2px solid var(--kd-focus);outline-offset:2px;border-radius:var(--radius-sm)}.auth-card{padding:var(--space-6)}@media(max-width:480px){.auth-card{padding:var(--space-5)}}.auth-logo{display:flex;justify-content:center}.auth-input{width:100%;height:48px;padding:0 var(--space-4);background:var(--surface-2);border:1px solid transparent;border-radius:var(--radius-md);font-family:var(--font-body);font-size:15px;color:var(--text-primary);transition:var(--t-control)}.auth-input::-moz-placeholder{color:var(--text-muted)}.auth-input::placeholder{color:var(--text-muted)}.auth-input:hover{border-color:var(--border-med)}.auth-input:focus,.auth-input:focus-visible{outline:none;background:var(--surface);border-color:var(--accent);border-radius:var(--radius-md);box-shadow:0 0 0 3px var(--accent-soft)}.auth-input-wrap{position:relative}.auth-input-wrap .auth-input{padding-right:48px}.auth-eye{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:var(--t-control)}.auth-eye:hover{color:var(--text-primary);background:var(--hairline)}.auth-btn-primary{width:100%;min-height:50px;padding:0 var(--space-5);background:var(--accent);color:var(--on-accent);border:none;border-radius:var(--radius-pill);font-family:var(--font-body);font-size:15px;font-weight:600;cursor:pointer;box-shadow:var(--shadow-accent);text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.auth-btn-primary:hover:not(:disabled){background:var(--accent-strong)}.auth-btn-primary:disabled{opacity:.55;cursor:default;box-shadow:none}.auth-btn-primary:focus-visible{border-radius:var(--radius-pill);outline-offset:3px}.auth-link{color:var(--accent);font-weight:600;text-decoration:none;text-underline-offset:3px}.auth-link:hover{text-decoration:underline}.auth-link:focus-visible{border-radius:4px}.kd-press{transition:transform .12s var(--kd-ease-out),background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .12s var(--kd-ease-out);-webkit-tap-highlight-color:transparent}.kd-press:active:not(:disabled){transform:scale(.97)}.kd-press-scan:active{transform:scale(.94)}.kd-focus:focus-visible{outline:2px solid var(--kd-focus);outline-offset:2px}.kd-hit{position:relative}.kd-hit:after{content:"";position:absolute;left:50%;top:50%;width:max(100%,44px);height:max(100%,44px);transform:translate(-50%,-50%)}.kd-tabbar-pad{padding-bottom:calc(var(--kd-tabbar-h) + env(safe-area-inset-bottom,0px) + 24px)}.kd-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.kd-input::-moz-placeholder{color:var(--kd-ink-3);opacity:1}.kd-input::placeholder{color:var(--kd-ink-3);opacity:1}.kd-field:has(.kd-input:focus-visible){outline:2px solid var(--kd-focus);outline-offset:2px}@keyframes kd-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes kd-fade-in{0%{opacity:0}to{opacity:1}}.kd-sheet{animation:kd-sheet-in .28s var(--kd-ease-out) both}.kd-scrim{animation:kd-fade-in .2s ease both}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.k-enter,.k-stagger>*{opacity:1;animation:none}.k-press:active,.k-lift:hover,.k-lift:active,.kd-press:active:not(:disabled),.kd-press-scan:active{transform:none}.kd-sheet{animation:kd-fade-in .15s ease both}.progress-bar-fill:after{animation:none;display:none}.pulse-dot,.k-halo{animation:none}}.kd-study-plate{position:absolute;border-radius:var(--kd-r-hero)}.kd-study-card{position:absolute;top:0;right:0;bottom:0;left:0;perspective:1400px;cursor:pointer;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.kd-study-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .56s var(--kd-ease-out)}.kd-study-inner.is-flipped{transform:rotateY(180deg)}.kd-study-face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;padding:24px;border-radius:var(--kd-r-hero);background:var(--kd-surface);border:1px solid var(--kd-line);box-shadow:var(--kd-shadow-raised);overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden}.kd-study-face--back{transform:rotateY(180deg)}.kd-study-inner:not(.is-flipped) .kd-study-face--back,.kd-study-inner.is-flipped .kd-study-face--front{pointer-events:none}.kd-study-card.is-exit-right{animation:kd-study-out-right .32s var(--kd-ease-in-out) forwards}.kd-study-card.is-exit-left{animation:kd-study-out-left .32s var(--kd-ease-in-out) forwards}.kd-study-card.is-enter{animation:kd-study-in .32s var(--kd-ease-out) both}@keyframes kd-study-out-right{to{transform:translate(120%) rotate(12deg);opacity:0}}@keyframes kd-study-out-left{to{transform:translate(-120%) rotate(-12deg);opacity:0}}@keyframes kd-study-in{0%{transform:translateY(28px) scale(.94);opacity:0}to{transform:none;opacity:1}}@keyframes kd-fade-out{to{opacity:0}}.kd-xp-bump{animation:kd-xp-bump .24s var(--kd-ease-out)}@keyframes kd-xp-bump{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@media(prefers-reduced-motion:reduce){.kd-study-inner,.kd-study-inner.is-flipped,.kd-study-face--back{transform:none!important;transition:none!important}.kd-study-face{transition:opacity .2s ease!important}.kd-study-inner:not(.is-flipped) .kd-study-face--back,.kd-study-inner.is-flipped .kd-study-face--front{opacity:0}.kd-study-card.is-exit-right,.kd-study-card.is-exit-left{animation:kd-fade-out .2s ease forwards!important}.kd-study-card.is-enter{animation:kd-fade-in .15s ease both!important}.kd-xp-bump{animation:none!important}}.kd-badge-pop{animation:kd-badge-pop .5s var(--kd-ease-spring) .1s both}@keyframes kd-badge-pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.kd-confetti{animation:kd-confetti-in .6s var(--kd-ease-out) both}@keyframes kd-confetti-in{0%{transform:translateY(-14px);opacity:0}}.kd-toast{animation:kd-fade-in .18s ease both}@media(prefers-reduced-motion:reduce){.kd-badge-pop{animation:kd-fade-in .15s ease both!important}.kd-confetti{animation:none!important}}.hover\:text-accent:hover{color:var(--kd-blue)}@media(min-width:640px){.sm\:flex-shrink-0{flex-shrink:0}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:gap-3{gap:.75rem}}@media(min-width:768px){.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:pb-24{padding-bottom:6rem}.md\:pb-32{padding-bottom:8rem}.md\:pt-32{padding-top:8rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}
