@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(./inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(./inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(./inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(./inter-greek-400-normal-q2sYcFCs.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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(./inter-vietnamese-400-normal-Bbgyi5SW.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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(./inter-latin-ext-400-normal-77YHD8bZ.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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(./inter-latin-400-normal-CyCys3Eg.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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(./inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(./inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(./inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(./inter-greek-500-normal-Xzm54t5V.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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(./inter-vietnamese-500-normal-mJboJaSs.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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(./inter-latin-ext-500-normal-BxGbmqWO.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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(./inter-latin-500-normal-BL9OpVg8.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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(./inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(./inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(./inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(./inter-greek-600-normal-BZpKdvQh.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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(./inter-vietnamese-600-normal-BuLX-rYi.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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(./inter-latin-ext-600-normal-CIVaiw4L.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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(./inter-latin-600-normal-CiBQ2DWP.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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(./inter-cyrillic-ext-700-normal-LO58E6JB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(./inter-cyrillic-700-normal-DrXBdSj3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(./inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(./inter-greek-700-normal-BUv2fZ6O.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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(./inter-vietnamese-700-normal-BZaoP0fm.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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(./inter-latin-ext-700-normal-TidjK2hL.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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(./inter-latin-700-normal-BLAVimhd.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}:root{--color-primary: #8cd484;--color-primary-strong: #6fa140;--color-primary-soft: #eaf7e8;--color-primary-soft-2: #d5edcf;--color-cta-yellow: #ffe9a0;--color-star: #f5a623;--color-danger: #e5484d;--color-danger-soft: #fdecec;--color-info: #4a90d9;--color-info-soft: #e8f1fb;--color-on-primary: #17250f;--color-on-primary-dark: #10160f;--color-toast-bg: rgba(28, 36, 27, .94);--color-toast-ink: #f2f6f0;--cover-green-1: #d9f0d0;--cover-green-2: #9ad690;--cover-green-ink: #3f6b2f;--cover-blue-1: #d4e6f8;--cover-blue-2: #8ab9e4;--cover-blue-ink: #2f5580;--cover-orange-1: #fce6c8;--cover-orange-2: #eeb46a;--cover-orange-ink: #7a5220;--cover-purple-1: #e6dcf6;--cover-purple-2: #b295de;--cover-purple-ink: #53397e;--cover-teal-1: #cdeee8;--cover-teal-2: #74c8ba;--cover-teal-ink: #23635a;--cover-pink-1: #fbdee7;--cover-pink-2: #ec96ae;--cover-pink-ink: #7d2f45;--avatar-orange-1: #fde3c0;--avatar-orange-2: #f0b060;--avatar-blue-1: #cfe4f7;--avatar-blue-2: #7db3e0;--avatar-teal-1: #c8ece7;--avatar-teal-2: #6cc4b8;--avatar-purple-1: #e3d9f5;--avatar-purple-2: #a98cd8;--avatar-pink-1: #fadbe4;--avatar-pink-2: #e592ab;--toast-icon-success: #8cd484;--toast-icon-error: #f2818a;--toast-icon-warning: #f5c06a;--toast-icon-info: #9cc4ec;--color-ink: #1e2a1e;--color-ink-2: #6b7a6b;--color-ink-3: #9aa89a;--color-bg: #f7faf6;--color-surface: #ffffff;--color-line: #e4ede3;--color-line-strong: #d3e0d2;--color-dark-bg: #10160f;--color-dark-surface: #1a2417;--color-dark-line: #2a3826;--color-dark-ink: #e8f0e6;--color-dark-ink-2: #9db39a;--color-dark-primary: #9fe097;--font-sans: "Inter", system-ui, -apple-system, "PingFang SC", "Noto Sans CJK SC", sans-serif;--text-xs: 11px;--text-sm: 13px;--text-md: 15px;--text-lg: 17px;--text-xl: 20px;--text-2xl: 24px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 999px;--shadow-card: 0 1px 3px rgba(30, 42, 30, .06);--shadow-float: 0 8px 24px rgba(30, 42, 30, .14);--shell-max: 480px;--nav-height: 60px;--bg: var(--color-bg);--surface: var(--color-surface);--line: var(--color-line);--ink: var(--color-ink);--ink-2: var(--color-ink-2);--ink-3: var(--color-ink-3);--primary: var(--color-primary);--primary-strong: var(--color-primary-strong);--primary-soft: var(--color-primary-soft);--star: var(--color-star);--danger: var(--color-danger);--danger-soft: var(--color-danger-soft);--info: var(--color-info);--info-soft: var(--color-info-soft)}html[data-theme=dark]{--bg: var(--color-dark-bg);--surface: var(--color-dark-surface);--line: var(--color-dark-line);--ink: var(--color-dark-ink);--ink-2: var(--color-dark-ink-2);--ink-3: var(--color-dark-ink-2);--primary: var(--color-dark-primary);--primary-strong: var(--color-dark-primary);--primary-soft: rgba(159, 224, 151, .14);--star: var(--color-star);--danger: #f0666b;--danger-soft: rgba(240, 102, 107, .15);--info: #6aa9e8;--info-soft: rgba(106, 169, 232, .15);--shadow-card: 0 1px 3px rgba(0, 0, 0, .4);--shadow-float: 0 8px 24px rgba(0, 0, 0, .55)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}img,svg{display:block;max-width:100%}body{margin:0;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;background:#eef2ec;color:var(--ink)}html[data-theme=dark] body{background:#0a0e09}h1,h2,h3,h4,h5,h6,p{margin:0}button,input,textarea,select{font:inherit;color:inherit}.shell{max-width:var(--shell-max);margin:0 auto;min-height:100dvh;background:var(--bg);position:relative;display:flex;flex-direction:column}.shell-page{flex:1;padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px))}.shell--flush{padding-bottom:0}.page{padding:0 var(--space-5)}.num{font-variant-numeric:tabular-nums}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::placeholder{color:var(--ink-3)}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.page-enter{animation:page-in .22s ease-out both}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}:root{--color-page-bg: #eef2ec}html,body,#root{height:auto;min-height:100%}#root{align-items:flex-start}.shell,.app-shell{min-height:100vh;min-height:100dvh}body{background:var(--color-page-bg, #eef2ec)}.toast-region{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:200;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);width:min(calc(100vw - 40px),420px);pointer-events:none}.toast{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-toast-bg);color:var(--color-toast-ink);font-size:var(--text-sm);line-height:1.45;box-shadow:var(--shadow-float);animation:toast-in .2s ease-out;max-width:100%}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.toast--success svg{color:var(--toast-icon-success)}.toast--error svg{color:var(--toast-icon-error)}.toast--warning svg{color:var(--toast-icon-warning)}.toast--info svg{color:var(--toast-icon-info)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 5px;border-radius:var(--radius-full);font-size:10.5px;font-weight:600;line-height:1}.badge--danger{background:var(--danger);color:#fff}.badge--primary{background:var(--primary);color:var(--color-on-primary)}.badge--neutral{background:var(--line-strong);color:var(--ink-2)}.badge-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.badge-dot--danger{background:var(--danger)}.badge-dot--primary{background:var(--primary)}.badge-dot--neutral{background:var(--line-strong)}.bnav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--shell-max);height:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);display:flex;background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);z-index:50}.bnav__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--ink-3);font-size:11px;transition:color .15s}.bnav__item--active{color:var(--primary-strong);font-weight:600}html[data-theme=dark] .bnav__item--active{color:var(--primary)}.bnav__icon{position:relative;display:inline-flex}.bnav__badge{position:absolute;top:-5px;right:-9px}.bnav__dot{width:4px;height:4px;border-radius:50%;background:var(--primary);margin-top:1px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:filter .15s,transform .05s,background .15s;white-space:nowrap}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--block{display:flex;width:100%}.btn--sm{height:32px;padding:0 var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-sm)}.btn--md{height:44px;padding:0 var(--space-4);font-size:var(--text-md)}.btn--lg{height:50px;padding:0 var(--space-5);font-size:var(--text-md);border-radius:var(--radius-lg)}.btn--primary{background:var(--primary);color:var(--color-on-primary)}.btn--primary:hover:not(:disabled){filter:brightness(1.05)}.btn--secondary{background:var(--primary-soft);color:var(--primary-strong)}html[data-theme=dark] .btn--secondary{color:var(--primary)}.btn--secondary:hover:not(:disabled){filter:brightness(.97)}.btn--ghost{background:transparent;color:var(--ink-2);border-color:var(--line)}.btn--ghost:hover:not(:disabled){background:var(--primary-soft);color:var(--primary-strong)}html[data-theme=dark] .btn--ghost:hover:not(:disabled){color:var(--primary)}.btn--danger{background:var(--danger);color:#fff}.btn__spinner{width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.cb{display:inline-flex;align-items:flex-start;gap:var(--space-2);cursor:pointer;font-size:var(--text-sm);color:var(--ink-2);line-height:1.5}.cb--disabled{opacity:.5;cursor:not-allowed}.cb--error .cb__box{border-color:var(--danger)}.cb__input{position:absolute;opacity:0;width:1px;height:1px}.cb__box{flex:none;width:18px;height:18px;margin-top:1px;border:1.6px solid var(--line-strong);border-radius:5px;display:inline-flex;align-items:center;justify-content:center;color:var(--color-on-primary);background:var(--surface);transition:background .12s,border-color .12s}html[data-theme=dark] .cb__box{color:var(--color-on-primary-dark)}.cb__box--on{background:var(--primary);border-color:var(--primary)}.cb__input:focus-visible+.cb__box{outline:2px solid var(--primary);outline-offset:2px}.cb__label a{color:var(--primary-strong);text-decoration:underline}html[data-theme=dark] .cb__label a{color:var(--primary)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field__label{font-size:var(--text-sm);color:var(--ink-2);font-weight:500}.input-wrap{display:flex;align-items:center;gap:var(--space-2);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);transition:border-color .15s,box-shadow .15s}.input-wrap--sm{height:36px;padding:0 var(--space-3)}.input-wrap--md{height:48px;padding:0 var(--space-4)}.input-wrap:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.input-wrap--error{border-color:var(--danger)}.input-wrap--error:focus-within{box-shadow:0 0 0 3px var(--danger-soft)}.input-wrap__input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-size:var(--text-md)}.input-wrap__input:disabled{color:var(--ink-3)}.input-wrap__affix{display:inline-flex;align-items:center;color:var(--ink-3)}.field__error{font-size:var(--text-sm);color:var(--danger)}.field__hint{font-size:var(--text-sm);color:var(--ink-3)}.textarea{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);padding:var(--space-3) var(--space-4);min-height:88px;resize:vertical;outline:none;font-size:var(--text-md);transition:border-color .15s,box-shadow .15s}.textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.textarea--error{border-color:var(--danger)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;border:none;cursor:pointer;border-radius:var(--radius-md);transition:background .15s,filter .15s;color:var(--ink);background:transparent}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn--sm{width:32px;height:32px}.icon-btn--md{width:40px;height:40px}.icon-btn--plain{background:transparent}.icon-btn--plain:hover:not(:disabled){background:var(--primary-soft);color:var(--primary-strong)}html[data-theme=dark] .icon-btn--plain:hover:not(:disabled){color:var(--primary)}.icon-btn--filled{background:var(--primary);color:var(--color-on-primary)}.icon-btn--filled:hover:not(:disabled){filter:brightness(1.05)}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:var(--space-5);background:#0f160e73;animation:modal-fade .15s ease-out}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}.modal__panel{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);width:100%;max-height:calc(100dvh - 40px);display:flex;flex-direction:column;animation:modal-pop .18s ease-out}@keyframes modal-pop{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:none}}.modal__panel--sm{max-width:300px}.modal__panel--md{max-width:360px}.modal__panel--lg{max-width:min(440px,calc(100vw - 40px))}.modal__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-4) 0}.modal__title{font-size:var(--text-lg);font-weight:600}.modal__body{padding:var(--space-4);overflow-y:auto;font-size:var(--text-md);color:var(--ink);line-height:1.6}.modal__foot{display:flex;gap:var(--space-3);padding:0 var(--space-4) var(--space-4)}.modal__foot>*{flex:1}.auth{min-height:100dvh;display:flex;flex-direction:column;padding:var(--space-8) var(--space-5) var(--space-6);position:relative;overflow:hidden}.auth__deco{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.auth__ring{position:absolute;border-radius:50%;border-style:solid;border-color:transparent;opacity:.55}.auth__ring--green{width:230px;height:230px;top:-70px;right:-60px;border:30px solid var(--primary);border-top-color:transparent;border-right-color:transparent;transform:rotate(18deg)}.auth__ring--orange{width:170px;height:170px;top:-50px;left:-60px;border:26px solid #ffe6ad;border-bottom-color:transparent;border-left-color:transparent;transform:rotate(-14deg)}.auth__hero{margin-top:130px;margin-bottom:var(--space-8);position:relative}.auth__hero h1{font-size:var(--text-2xl);font-weight:700;line-height:1.3}.auth__hero p{margin-top:var(--space-2);color:var(--ink-2);font-size:var(--text-md)}.auth__hero-sub{margin-top:var(--space-2);color:var(--ink-2);font-size:var(--text-md);line-height:1.6}.auth__form{display:flex;flex-direction:column;gap:var(--space-4);position:relative}.auth__toggle{align-self:flex-start;display:inline-flex;align-items:center;gap:5px;border:none;background:none;color:var(--ink-3);font-size:var(--text-sm);cursor:pointer;padding:0}.auth__toggle:hover{color:var(--primary-strong)}.auth__agree-error{color:var(--danger)}.auth__agree-text{color:var(--danger);font-size:var(--text-xs);margin-top:var(--space-1)}.auth__alt{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-4)}.auth__wx{align-self:center;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-full);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:var(--text-sm);cursor:pointer}.auth__wx:hover{border-color:var(--primary)}.auth__wx svg{color:#2aae67}.auth__links{display:flex;justify-content:space-between;font-size:var(--text-sm)}.auth__links a{color:var(--primary-strong)}html[data-theme=dark] .auth__links a{color:var(--primary)}.auth__wx-modal{color:var(--ink-2);line-height:1.65}.auth__wx-actions{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4)}.agreement{padding:var(--space-5);line-height:1.8;color:var(--ink-2);font-size:var(--text-md)}.agreement h2{color:var(--ink);font-size:var(--text-lg);margin:var(--space-5) 0 var(--space-2)}.agreement h2:first-child{margin-top:0}.ph{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ph--flush{padding-left:var(--space-5);padding-right:var(--space-5)}.ph__back{flex:none;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface)}.ph__titles{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center}.ph__title{font-size:var(--text-lg);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.ph__subtitle{font-size:var(--text-xs);color:var(--ink-2)}.ph__actions{flex:none;display:inline-flex;align-items:center;gap:var(--space-2);min-width:40px;justify-content:flex-end}.onb{min-height:100dvh;display:flex;flex-direction:column;padding:var(--space-6) var(--space-5) var(--space-6)}.onb__head{display:flex;flex-direction:column;gap:var(--space-3);position:relative}.onb__step{font-size:var(--text-sm);color:var(--ink-3);font-weight:600}.onb__skip{position:absolute;top:0;right:0;border:none;background:none;color:var(--ink-3);font-size:var(--text-sm);cursor:pointer;padding:var(--space-1) var(--space-2)}.onb__skip:hover{color:var(--primary-strong)}html[data-theme=dark] .onb__skip:hover{color:var(--primary)}.onb__bar{height:5px;border-radius:var(--radius-full);background:var(--line);overflow:hidden}.onb__bar span{display:block;height:100%;background:var(--primary);border-radius:var(--radius-full);transition:width .25s}.onb__body{flex:1;padding-top:var(--space-8)}.onb__body h1{font-size:var(--text-2xl);font-weight:700}.onb__sub{margin-top:var(--space-2);color:var(--ink-2);font-size:var(--text-md)}.onb__chips{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.onb__chip{padding:var(--space-3) var(--space-5);border-radius:var(--radius-full);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font-size:var(--text-md);cursor:pointer;transition:all .15s}.onb__chip--on{background:var(--primary);border-color:var(--primary);color:#17250f;font-weight:600}.onb__goals{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-6)}.onb__goal{display:flex;flex-direction:column;gap:4px;text-align:left;padding:var(--space-4);border-radius:var(--radius-lg);border:1.5px solid var(--line);background:var(--surface);cursor:pointer;transition:all .15s}.onb__goal--on{border-color:var(--primary);background:var(--primary-soft)}.onb__goal-title{font-weight:600;font-size:var(--text-md)}.onb__goal-desc{font-size:var(--text-sm);color:var(--ink-2)}.onb__foot{display:flex;gap:var(--space-3);padding-top:var(--space-6)}.onb__foot .btn{flex:1}.onb__next--yellow{background:var(--color-cta-yellow);color:#5c4a12}.onb__next--yellow:hover:not(:disabled){filter:brightness(1.03)}.onb__next--yellow:disabled{background:var(--line);color:var(--ink-3)}.onb__browse{display:flex;justify-content:center;gap:var(--space-5);padding-top:var(--space-4)}.onb__browse a{font-size:var(--text-sm);color:var(--ink-3);text-decoration:underline}.onb__browse a:hover{color:var(--primary-strong)}html[data-theme=dark] .onb__browse a:hover{color:var(--primary)}.card{display:block;width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4)}.card--inset{width:calc(100% - 2 * var(--space-5))}.card--flat{border-color:transparent;background:transparent}.card--raised{box-shadow:var(--shadow-card)}button.card{cursor:default}.card--interactive{cursor:pointer;transition:box-shadow .15s,transform .15s,border-color .15s}.card--interactive:hover{transform:translateY(-1px);box-shadow:var(--shadow-float);border-color:var(--primary-soft)}.cover{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);flex:none}.cover--sm{width:52px;height:52px}.cover--md{width:72px;height:72px}.cover--lg{width:100%;height:170px;border-radius:var(--radius-lg)}.cover--green{background:linear-gradient(135deg,var(--cover-green-1),var(--cover-green-2));color:var(--cover-green-ink)}.cover--blue{background:linear-gradient(135deg,var(--cover-blue-1),var(--cover-blue-2));color:var(--cover-blue-ink)}.cover--orange{background:linear-gradient(135deg,var(--cover-orange-1),var(--cover-orange-2));color:var(--cover-orange-ink)}.cover--purple{background:linear-gradient(135deg,var(--cover-purple-1),var(--cover-purple-2));color:var(--cover-purple-ink)}.cover--teal{background:linear-gradient(135deg,var(--cover-teal-1),var(--cover-teal-2));color:var(--cover-teal-ink)}.cover--pink{background:linear-gradient(135deg,var(--cover-pink-1),var(--cover-pink-2));color:var(--cover-pink-ink)}.cover__level{display:inline-block;font-size:var(--text-xs);padding:2px 8px;border-radius:var(--radius-full);background:var(--primary-soft);color:var(--primary-strong)}html[data-theme=dark] .cover__level{color:var(--primary)}.cover__meta{font-size:var(--text-xs);color:var(--ink-3);display:inline-flex;align-items:center;gap:4px}.cover__meta-icons{display:inline-flex}.cover__rating{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-sm);color:var(--star);font-weight:600}.cover__rating-count{color:var(--ink-3);font-weight:400;font-size:var(--text-xs)}.cover__price{display:inline-flex;align-items:baseline;gap:var(--space-2)}.cover__price-now{font-size:var(--text-lg);font-weight:700;color:var(--primary-strong)}html[data-theme=dark] .cover__price-now{color:var(--primary)}.cover__price-origin{font-size:var(--text-xs);color:var(--ink-3)}.ccard{display:flex;flex-direction:column;gap:var(--space-3)}.ccard--row{flex-direction:row;align-items:center}.ccard__top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.ccard__body{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;flex:1}.ccard__title{font-size:var(--text-md);font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ccard--row .ccard__title{font-size:var(--text-md)}.ccard__subtitle{font-size:var(--text-sm);color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ccard__meta{display:flex;align-items:center;gap:var(--space-2)}.ccard__lessons{font-size:var(--text-xs);color:var(--ink-3)}.ccard__foot{display:flex;align-items:center;justify-content:space-between}.ccard__bm{border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink-3);flex:none}.ccard__bm--on{color:var(--primary-strong);background:var(--primary-soft);border-color:var(--primary-soft)}html[data-theme=dark] .ccard__bm--on{color:var(--primary)}.ccard__progress{display:flex;align-items:center;gap:var(--space-2)}.ccard__progress-track{flex:1;height:6px;border-radius:var(--radius-full);background:var(--line);overflow:hidden}.ccard__progress-fill{height:100%;border-radius:var(--radius-full);background:var(--primary);transition:width .3s}.ccard__progress-pct{font-size:var(--text-xs);color:var(--primary-strong);font-weight:600}html[data-theme=dark] .ccard__progress-pct{color:var(--primary)}.avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;overflow:hidden;flex:none;font-weight:600}.avatar--sm{width:32px;height:32px;font-size:var(--text-sm)}.avatar--md{width:44px;height:44px;font-size:var(--text-md)}.avatar--lg{width:64px;height:64px;font-size:var(--text-xl)}.avatar--xl{width:84px;height:84px;font-size:30px}.avatar__img{width:100%;height:100%;object-fit:cover}.avatar__initial{color:var(--color-on-primary)}.avatar--green{background:linear-gradient(135deg,var(--primary-soft-2),var(--primary))}.avatar--blue{background:linear-gradient(135deg,var(--avatar-blue-1),var(--avatar-blue-2))}.avatar--orange{background:linear-gradient(135deg,var(--avatar-orange-1),var(--avatar-orange-2))}.avatar--purple{background:linear-gradient(135deg,var(--avatar-purple-1),var(--avatar-purple-2))}.avatar--teal{background:linear-gradient(135deg,var(--avatar-teal-1),var(--avatar-teal-2))}.avatar--pink{background:linear-gradient(135deg,var(--avatar-pink-1),var(--avatar-pink-2))}.home__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5) var(--space-3)}.home__me{display:flex;align-items:center;gap:var(--space-3)}.home__hello{display:flex;flex-direction:column}.home__date{font-size:var(--text-xs);color:var(--ink-3)}.home__name{font-size:var(--text-lg);font-weight:700}.home__header-actions{display:flex;gap:var(--space-2);position:relative}.home__bell-badge{position:absolute;top:-3px;right:-3px;pointer-events:none}.home{padding:0 var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-6)}.home__continue{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);cursor:pointer}.home__continue--empty{align-items:flex-start}.home__continue-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-2)}.home__continue-label{font-size:var(--text-xs);color:var(--ink-3);font-weight:600;letter-spacing:.04em}.home__continue-title{font-size:var(--text-lg);font-weight:700}.home__continue-cta{display:inline-flex;align-items:center;gap:5px;font-size:var(--text-sm);color:var(--primary-strong);font-weight:600}html[data-theme=dark] .home__continue-cta{color:var(--primary)}.home__continue-progress{display:flex;align-items:center;gap:var(--space-2)}.home__progress-track{flex:1;max-width:180px;height:6px;background:var(--line);border-radius:var(--radius-full);overflow:hidden}.home__progress-track>div{height:100%;background:var(--primary);border-radius:var(--radius-full);transition:width .3s}.home__continue-progress>span{font-size:var(--text-xs);color:var(--primary-strong);font-weight:700}html[data-theme=dark] .home__continue-progress>span{color:var(--primary)}.home__quick{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.home__quick-item{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line);font-size:var(--text-sm);font-weight:600;color:var(--ink);transition:border-color .15s}.home__quick-item:hover{border-color:var(--primary-soft)}.home__quick-item svg{color:var(--primary-strong)}html[data-theme=dark] .home__quick-item svg{color:var(--primary)}.home__quick-count{font-size:var(--text-xs);color:var(--ink-2);font-weight:500}.home__section{display:flex;flex-direction:column;gap:var(--space-3)}.home__section-head{display:flex;align-items:baseline;justify-content:space-between}.home__section-title{font-size:var(--text-lg);font-weight:700}.home__more{display:inline-flex;align-items:center;gap:2px;font-size:var(--text-sm);color:var(--ink-2)}.home__more:hover{color:var(--primary-strong)}.home__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.home__stat{display:flex;flex-direction:column;gap:2px;align-items:center;padding:var(--space-4) var(--space-2)}.home__stat-value{font-size:var(--text-xl);font-weight:700;color:var(--primary-strong)}html[data-theme=dark] .home__stat-value{color:var(--primary)}.home__stat-label{font-size:var(--text-xs);color:var(--ink-3)}.home__plan{display:flex;align-items:center;gap:var(--space-3);cursor:pointer}.home__plan--sub{box-shadow:none;border-style:dashed}.home__plan--empty{cursor:pointer}.home__plan-icon{flex:none;width:40px;height:40px;border-radius:var(--radius-md);background:var(--primary-soft);color:var(--primary-strong);display:flex;align-items:center;justify-content:center}html[data-theme=dark] .home__plan-icon{color:var(--primary)}.home__plan-body{flex:1;min-width:0}.home__plan-body h3{font-size:var(--text-md);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home__plan-body p{font-size:var(--text-xs);color:var(--ink-2);margin-top:2px}.home__plan-go{color:var(--primary-strong);flex:none}html[data-theme=dark] .home__plan-go{color:var(--primary)}.home__recs{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.home__cats{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-1);margin:0 calc(-1 * var(--space-5));padding-left:var(--space-5);padding-right:var(--space-5);scrollbar-width:none}.home__cats::-webkit-scrollbar{display:none}.home__cat{flex:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:all .15s}.home__cat:hover{border-color:var(--primary)}.home__cat--on{background:var(--primary);border-color:var(--primary);color:#17250f;font-weight:600}.home__cat-empty{grid-column:1 / -1}.tabs{display:flex;gap:var(--space-1);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tabs--underline{border-bottom:1px solid var(--line);gap:var(--space-5)}.tabs--pill{background:var(--line);border:none;border-radius:var(--radius-md);padding:3px}.tabs__tab{position:relative;display:inline-flex;align-items:center;gap:var(--space-1);border:none;background:none;cursor:pointer;font-size:var(--text-md);color:var(--ink-2);padding:var(--space-2) var(--space-3);transition:color .15s;white-space:nowrap}.tabs--underline .tabs__tab{padding:var(--space-3) 0}.tabs--underline .tabs__tab--active{color:var(--primary-strong);font-weight:600}html[data-theme=dark] .tabs--underline .tabs__tab--active{color:var(--primary)}.tabs--underline .tabs__tab--active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;border-radius:2px;background:var(--primary)}.tabs--pill .tabs__tab{border-radius:var(--radius-sm);flex:1;justify-content:center}.tabs--pill .tabs__tab--active{background:var(--surface);color:var(--primary-strong);font-weight:600;box-shadow:var(--shadow-card)}html[data-theme=dark] .tabs--pill .tabs__tab--active{color:var(--primary)}.tabs__badge{display:inline-flex;min-width:16px;height:16px;align-items:center;justify-content:center;padding:0 4px;border-radius:var(--radius-full);background:var(--danger);color:#fff;font-size:10px;font-weight:600}.sbar{display:flex;gap:var(--space-3);align-items:center}.sbar__box{flex:1;display:flex;align-items:center;gap:var(--space-2);height:46px;padding:0 var(--space-3) 0 var(--space-4);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);transition:border-color .15s,box-shadow .15s}.sbar__box:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.sbar__icon{color:var(--ink-3);flex:none}.sbar__input{flex:1;min-width:0;border:none;outline:none;background:none;font-size:var(--text-md)}.sbar__input::-webkit-search-cancel-button{display:none}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-8) var(--space-5);gap:var(--space-2)}.empty__art{width:88px;height:88px;border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:var(--ink-3);background:var(--surface);border:1px dashed var(--line-strong);margin-bottom:var(--space-2)}.empty__art--illustration{border:none;background:linear-gradient(150deg,var(--primary-soft),transparent 70%);color:var(--primary-strong)}html[data-theme=dark] .empty__art--illustration{color:var(--primary)}.empty__art--primary{color:var(--primary-strong)}.empty__title{font-size:var(--text-lg);font-weight:600}.empty__desc{font-size:var(--text-sm);color:var(--ink-2);max-width:260px;line-height:1.6}.empty__action{margin-top:var(--space-3)}.drawer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0f160e73;animation:drawer-fade .15s ease-out}@keyframes drawer-fade{0%{opacity:0}to{opacity:1}}.drawer__panel{position:absolute;background:var(--surface);display:flex;flex-direction:column;box-shadow:var(--shadow-float)}.drawer__panel--bottom{left:0;right:0;bottom:0;width:100%;max-width:var(--shell-max);margin:0 auto;border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:86dvh;animation:drawer-up .22s cubic-bezier(.2,.8,.3,1)}@keyframes drawer-up{0%{transform:translateY(100%)}to{transform:none}}.drawer__panel--left{left:0;top:0;bottom:0;width:min(84vw,360px);animation:drawer-left .22s cubic-bezier(.2,.8,.3,1)}@keyframes drawer-left{0%{transform:translate(-100%)}to{transform:none}}.drawer__panel--right{right:0;top:0;bottom:0;width:min(84vw,360px);animation:drawer-right .22s cubic-bezier(.2,.8,.3,1)}@keyframes drawer-right{0%{transform:translate(100%)}to{transform:none}}.drawer__head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line)}.drawer__title{font-size:var(--text-lg);font-weight:600}.drawer__close{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary-strong);cursor:pointer}html[data-theme=dark] .drawer__close{color:var(--primary)}.drawer__body{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-5)}.drawer__foot{padding:var(--space-4) var(--space-5) calc(var(--space-4) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line)}.fdrawer__group{margin-bottom:var(--space-6)}.fdrawer__group h3{font-size:var(--text-md);font-weight:600;margin-bottom:var(--space-3)}.fdrawer__chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.fchip{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font-size:var(--text-sm);cursor:pointer;transition:all .15s}.fchip:hover{border-color:var(--primary)}.fchip--on{background:var(--primary);border-color:var(--primary);color:var(--color-on-primary);font-weight:600}.fdrawer__foot{display:flex;gap:var(--space-3)}.fdrawer__foot .btn{flex:1}.courses{padding:var(--space-4) var(--space-5) var(--space-6)}.courses__head{margin-bottom:var(--space-4)}.courses__head h1{font-size:var(--text-xl);font-weight:700}.courses__head p{font-size:var(--text-xs);color:var(--ink-3);margin-top:2px}.courses__filter-btn{border:1px solid var(--line-strong);border-radius:var(--radius-md);width:46px;height:46px}.courses__entries{margin-top:var(--space-4)}.courses__entries>button{flex:1;justify-content:center}.courses__active{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-3);font-size:var(--text-xs)}.courses__active>span{padding:3px 10px;background:var(--primary-soft);color:var(--primary-strong);border-radius:var(--radius-full);font-weight:600}html[data-theme=dark] .courses__active>span{color:var(--primary)}.courses__clear{border:none;background:none;color:var(--ink-3);font-size:var(--text-xs);cursor:pointer;text-decoration:underline;padding:3px 4px}.courses__clear--big{font-size:var(--text-md);color:var(--primary-strong)}html[data-theme=dark] .courses__clear--big{color:var(--primary)}.courses__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3);margin-top:var(--space-4)}.select{position:relative}.select__trigger{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);cursor:pointer;color:var(--ink);transition:border-color .15s,box-shadow .15s}.select__trigger--sm{height:36px;padding:0 var(--space-3);font-size:var(--text-sm)}.select__trigger--md{height:48px;padding:0 var(--space-4);font-size:var(--text-md)}.select__trigger:disabled{opacity:.55;cursor:not-allowed}.select__trigger--open,.select__trigger:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.select__value--placeholder{color:var(--ink-3)}.select__menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;margin:0;padding:var(--space-1);list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-float);max-height:260px;overflow-y:auto}.select__option{display:block;width:100%;text-align:left;padding:var(--space-3);border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-md);color:var(--ink)}.select__option:hover{background:var(--primary-soft)}.select__option--active{color:var(--primary-strong);font-weight:600;background:var(--primary-soft)}html[data-theme=dark] .select__option--active{color:var(--primary)}.cd__cover{position:relative}.cd__cover .cover--lg{border-radius:0 0 var(--radius-xl) var(--radius-xl)}.cd__cover-nav{position:absolute;top:0;left:0;right:0}.cd__cover-nav .ph{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.cd__cover-nav .ph__back{background:#ffffffd9;border:none}html[data-theme=dark] .cd__cover-nav .ph__back{background:#141c12d9}.cd__cat{position:absolute;bottom:14px;left:20px;padding:3px 10px;border-radius:var(--radius-full);background:#17250fb8;color:#eaf7e8;font-size:var(--text-xs);font-weight:600}.cd__body{padding:var(--space-4) var(--space-5) calc(var(--space-6) + 84px)}.cd__titlebar{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.cd__title{font-size:var(--text-xl);font-weight:700;line-height:1.3}.cd__bm{flex:none;display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:var(--radius-full);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font-size:var(--text-xs);cursor:pointer;transition:all .15s}.cd__bm--on{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-strong)}html[data-theme=dark] .cd__bm--on{color:var(--primary)}.cd__subtitle{margin-top:var(--space-2);color:var(--ink-2);font-size:var(--text-md);line-height:1.55}.cd__facts{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-3);font-size:var(--text-xs);color:var(--ink-2)}.cd__facts>span{display:inline-flex;align-items:center;gap:4px}.cd__rating{color:var(--star)}.cd__pricebar{margin:var(--space-3) 0 var(--space-4)}.cd__section{padding-top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.cd__teacher{display:flex;flex-direction:column;gap:2px}.cd__teacher-name{font-weight:700;font-size:var(--text-md)}.cd__teacher-title{font-size:var(--text-sm);color:var(--ink-2)}.cd__highlights{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.cd__highlights li{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-md);color:var(--ink)}.cd__highlights svg{color:var(--primary-strong);flex:none}html[data-theme=dark] .cd__highlights svg{color:var(--primary)}.cd__about{color:var(--ink-2);font-size:var(--text-md);line-height:1.75}.cd__lessons{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.cd__lessons li{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) 0;border-bottom:1px solid var(--line);font-size:var(--text-sm)}.cd__lessons li:last-child{border-bottom:none}.cd__lesson-play{color:var(--primary-strong);flex:none}html[data-theme=dark] .cd__lesson-play{color:var(--primary)}.cd__lesson-lock{font-size:12px}.cd__lesson-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cd__lesson-min{color:var(--ink-3);flex:none;font-size:var(--text-xs)}.cd__lessons li em{font-style:normal;font-size:var(--text-xs);color:var(--primary-strong);font-weight:600}html[data-theme=dark] .cd__lessons li em{color:var(--primary)}.cd__lessons-more{font-size:var(--text-xs);color:var(--ink-3)}.cd__review{display:flex;flex-direction:column;gap:var(--space-2)}.cd__review-head{display:flex;align-items:center;justify-content:space-between}.cd__review-head strong{font-size:var(--text-md)}.cd__review-stars{display:inline-flex;gap:1px;color:var(--star)}.cd__review p{font-size:var(--text-sm);color:var(--ink-2);line-height:1.6}.cd__review time{font-size:var(--text-xs);color:var(--ink-3)}.cd__quiz{display:flex;align-items:center;gap:var(--space-3);cursor:pointer}.cd__quiz>svg{color:var(--primary-strong);flex:none}html[data-theme=dark] .cd__quiz>svg{color:var(--primary)}.cd__quiz-body{flex:1;min-width:0}.cd__quiz-body h3{font-size:var(--text-md);font-weight:600}.cd__quiz-body p{font-size:var(--text-xs);color:var(--ink-3);margin-top:2px}.cd__actions{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--shell-max);display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5) calc(var(--space-3) + env(safe-area-inset-bottom,0px));background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);z-index:40}.cd__ask{flex:none;display:flex;flex-direction:column;align-items:center;gap:2px;border:none;background:none;color:var(--ink-2);font-size:10px;cursor:pointer;padding:0 var(--space-2)}.cd__ask:hover{color:var(--primary-strong)}.cd__buy-group,.cd__actions>.btn{flex:1}.cd__buy-group{display:flex;gap:var(--space-2)}.cd__buy-group .btn--secondary{flex:1}.cd__buy-group .btn--primary{flex:1.4}.cd__plan-form{display:flex;flex-direction:column;gap:var(--space-4)}.cd__plan-hint{font-size:var(--text-xs);color:var(--ink-3)}.cd__ask-actions{margin-top:var(--space-3)}.cd__lang-row{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-3) 0}.cd__mentor{display:flex;flex-direction:column;gap:var(--space-4);cursor:pointer;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.cd__mentor-top{display:flex;align-items:center;gap:var(--space-3)}.cd__mentor-info h3{font-size:var(--text-md);font-weight:700}.cd__mentor-info p{font-size:var(--text-sm);color:var(--ink-2);margin-top:2px}.cd__mentor-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2)}.cd__mentor-stats>div{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-2) 0;background:var(--primary-soft);border-radius:var(--radius-md)}.cd__mentor-stats strong{font-size:var(--text-md);color:var(--primary-strong)}html[data-theme=dark] .cd__mentor-stats strong{color:var(--primary)}.cd__mentor-stats span{font-size:10px;color:var(--ink-2)}.cd__mentor-link{display:inline-flex;align-items:center;gap:2px;font-size:var(--text-sm);color:var(--primary-strong);font-weight:600;align-self:flex-end}html[data-theme=dark] .cd__mentor-link{color:var(--primary)}a.cd__teacher-name{display:inline-flex;align-items:center;gap:2px;color:var(--primary-strong);font-weight:700;font-size:var(--text-md)}html[data-theme=dark] a.cd__teacher-name{color:var(--primary)}.switch{position:relative;width:44px;height:26px;border-radius:var(--radius-full);border:none;background:var(--line-strong);cursor:pointer;transition:background .18s;flex:none;padding:0}.switch--on{background:var(--primary)}.switch:disabled{opacity:.5;cursor:not-allowed}.switch__thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .18s}.switch--on .switch__thumb{transform:translate(18px)}.switch-row{display:inline-flex;align-items:center;gap:var(--space-3);cursor:pointer;font-size:var(--text-md)}.switch-row--disabled{opacity:.5;cursor:not-allowed}.learn{padding-bottom:var(--space-6)}.learn__header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5) var(--space-2)}.learn__back{flex:none;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);cursor:pointer}.learn__head-info{flex:1;min-width:0}.learn__head-info h1{font-size:var(--text-lg);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.learn__head-info p{font-size:var(--text-xs);color:var(--ink-3)}.learn__progress{padding:var(--space-2) var(--space-5)}.learn__progress>div{height:6px;background:var(--line);border-radius:var(--radius-full);overflow:hidden}.learn__progress>div>span{display:block;height:100%;background:var(--primary);border-radius:var(--radius-full);transition:width .3s}.learn__player{padding:var(--space-3) var(--space-5) 0;display:flex;flex-direction:column;gap:var(--space-3)}.learn__player--start{padding-top:var(--space-4)}.learn__screen{position:relative}.learn__screen .cover--lg{pointer-events:none}.learn__screen--muted{opacity:.72}.learn__play{position:absolute;top:12px;right:12px;width:40px;height:40px;border:none;border-radius:var(--radius-full);background:#17250fa6;color:#eaf7e8;display:flex;align-items:center;justify-content:center;cursor:pointer}.learn__player-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.learn__player-title{display:flex;flex-direction:column;gap:2px;min-width:0}.learn__player-title strong{font-size:var(--text-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.learn__player-title span{font-size:var(--text-xs);color:var(--ink-3)}.learn__autoplay{display:flex;align-items:center;gap:var(--space-2);color:var(--ink-2);font-size:var(--text-sm)}.learn__player-links{display:flex;gap:var(--space-2)}.learn__player-links .btn{flex:1}.learn__list{padding:var(--space-5) var(--space-5) 0}.learn__list h2{font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-2)}.learn__list ol{list-style:none;margin:0;padding:0}.learn__lesson{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-2);border:none;border-bottom:1px solid var(--line);background:none;cursor:pointer;text-align:left;border-radius:var(--radius-sm)}.learn__lesson:hover,.learn__lesson--current{background:var(--primary-soft)}.learn__lesson-done{color:var(--primary-strong);flex:none}html[data-theme=dark] .learn__lesson-done{color:var(--primary)}.learn__lesson-todo{color:var(--ink-3);flex:none}.learn__lesson-title{flex:1;min-width:0;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.learn__lesson-min{font-size:var(--text-xs);color:var(--ink-3);flex:none}.quiz{min-height:100dvh;display:flex;flex-direction:column}.quiz__missing{padding:var(--space-5);color:var(--ink-2)}.quiz__bar{height:5px;margin:0 var(--space-5);background:var(--line);border-radius:var(--radius-full);overflow:hidden}.quiz__bar span{display:block;height:100%;background:var(--primary);border-radius:var(--radius-full);transition:width .25s}.quiz__question{flex:1;padding:var(--space-6) var(--space-5);display:flex;flex-direction:column;gap:var(--space-5)}.quiz__question h2{font-size:var(--text-lg);line-height:1.6;font-weight:600}.quiz__options{display:flex;flex-direction:column;gap:var(--space-3)}.quiz__opt{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);border:1.5px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;font-size:var(--text-md);transition:all .15s}.quiz__opt:hover{border-color:var(--primary)}.quiz__opt-key{flex:none;width:26px;height:26px;border-radius:var(--radius-full);background:var(--primary-soft);color:var(--primary-strong);display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:700}html[data-theme=dark] .quiz__opt-key{color:var(--primary)}.quiz__opt--right{border-color:var(--primary);background:var(--primary-soft)}.quiz__opt--right svg{color:var(--primary-strong);margin-left:auto;flex:none}.quiz__opt--wrong{border-color:var(--danger);background:var(--danger-soft)}.quiz__opt--wrong svg{color:var(--danger);margin-left:auto;flex:none}.quiz__verdict{font-size:var(--text-sm);font-weight:600}.quiz__verdict--ok{color:var(--primary-strong)}.quiz__verdict--bad{color:var(--danger)}.quiz__foot{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5) calc(var(--space-4) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line)}.quiz__foot .btn{flex:1}.quiz--result{padding:var(--space-8) var(--space-5) var(--space-6)}.quiz__result-icon{color:var(--danger);display:flex;justify-content:center;margin-bottom:var(--space-4)}.quiz__result-icon--good{color:var(--primary)}.quiz--result h1{text-align:center;font-size:var(--text-2xl);font-weight:700}.quiz--result>p{text-align:center;color:var(--ink-2);margin-top:var(--space-2)}.quiz__review{margin-top:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}.quiz__review-item{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--line)}.quiz__review-item--bad{border-color:var(--danger-soft);background:var(--danger-soft)}.quiz__review-stem{font-size:var(--text-sm);line-height:1.55}.quiz__review-ans{font-size:var(--text-xs);color:var(--ink-2);margin-top:4px}.quiz__result-actions{display:flex;gap:var(--space-3);margin-top:var(--space-6)}.quiz__result-actions .btn{flex:1}.myc{padding-bottom:var(--space-6)}.myc__wrong{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-3) var(--space-5) 0;width:calc(100% - 2 * var(--space-5));cursor:pointer}.myc__wrong svg{color:var(--primary-strong);flex:none}html[data-theme=dark] .myc__wrong svg{color:var(--primary)}.myc__wrong-body h2{font-size:var(--text-md);font-weight:600}.myc__wrong-body p{font-size:var(--text-xs);color:var(--ink-3)}.myc__plan-section{padding:var(--space-5) var(--space-5) 0}.myc__plan-section h2{font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-3)}.myc__plans,.myc__plan{display:flex;flex-direction:column;gap:var(--space-3)}.myc__plan-main h3{font-size:var(--text-md);font-weight:600}.myc__plan-main p{font-size:var(--text-xs);color:var(--ink-2);margin-top:2px}.myc__plan-ops{display:flex;align-items:center;justify-content:space-between}.myc__plan-remove{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-3);cursor:pointer;transition:all .15s}.myc__plan-remove:hover{color:var(--danger);border-color:var(--danger);background:var(--danger-soft)}.myc .tabs{margin:var(--space-5) var(--space-5) 0}.myc__list{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5) 0}.myc__course{display:flex;gap:var(--space-3);align-items:flex-start}.myc__course-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.myc__course-body h3{font-size:var(--text-md);font-weight:600;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.myc__course-body h3:hover{color:var(--primary-strong)}.myc__course-body p{font-size:var(--text-xs);color:var(--ink-3)}.myc__course-progress{display:flex;align-items:center;gap:var(--space-2)}.myc__course-progress>div{flex:1;height:6px;background:var(--line);border-radius:var(--radius-full);overflow:hidden}.myc__course-progress>div>span{display:block;height:100%;background:var(--primary);border-radius:var(--radius-full);transition:width .3s}.myc__course-progress>span{font-size:var(--text-xs);font-weight:700;color:var(--primary-strong)}html[data-theme=dark] .myc__course-progress>span{color:var(--primary)}.myc__course-check{color:var(--primary-strong)}html[data-theme=dark] .myc__course-check{color:var(--primary)}.myc__course-ops{display:flex;flex-direction:column;gap:var(--space-2);align-items:stretch;flex:none}.myc__plan-form{display:flex;flex-direction:column;gap:var(--space-3)}.myc__native-select{height:46px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);padding:0 var(--space-3);font-size:var(--text-md);color:var(--ink)}.bm-grid{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5) 0}.search{padding:var(--space-4) var(--space-5) var(--space-6)}.search__bar-wrap{margin-bottom:var(--space-5)}.search__section{margin-bottom:var(--space-6)}.search__section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.search__section-head h2{display:inline-flex;align-items:center;gap:5px;font-size:var(--text-md);font-weight:600;color:var(--ink-2)}.search__clear{border:none;background:none;color:var(--ink-3);font-size:var(--text-sm);cursor:pointer;text-decoration:underline}.search__chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.search__chip{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font-size:var(--text-sm);cursor:pointer;transition:all .15s}.search__chip:hover{border-color:var(--primary);color:var(--ink)}.search__chip--hot{background:var(--primary-soft);border-color:transparent;color:var(--primary-strong);font-weight:600}html[data-theme=dark] .search__chip--hot{color:var(--primary)}.search__count{font-size:var(--text-xs);color:var(--ink-3);margin-bottom:var(--space-3)}.search__results{display:flex;flex-direction:column;gap:var(--space-3)}.co{padding-bottom:var(--space-8)}.co__course{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-3) var(--space-5) 0;width:calc(100% - 2 * var(--space-5))}.co__course-body{flex:1;min-width:0}.co__course-body h2{font-size:var(--text-md);font-weight:600}.co__course-body p{font-size:var(--text-xs);color:var(--ink-3);margin-top:2px}.co__course-price{font-weight:700;color:var(--primary-strong);flex:none}html[data-theme=dark] .co__course-price{color:var(--primary)}.co__section{padding:var(--space-5) var(--space-5) 0}.co__section h2{font-size:var(--text-md);font-weight:600;margin-bottom:var(--space-3)}.co__method{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);border-radius:var(--radius-lg);border:1.5px solid var(--line);background:var(--surface);margin-bottom:var(--space-3);cursor:pointer;transition:all .15s;font-size:var(--text-md)}.co__method--on{border-color:var(--primary);background:var(--primary-soft)}.co__method-icon{flex:none;width:34px;height:34px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.co__method-icon--wx{background:#e8f7ee;color:#2aae67}.co__method-icon--ali{background:#e8f1fb;color:#1677ff}.co__method-name{flex:1;text-align:left;font-weight:600}.co__method-check{flex:none;width:22px;height:22px;border-radius:50%;border:1.6px solid var(--line-strong);display:flex;align-items:center;justify-content:center;color:#17250f}.co__method--on .co__method-check{background:var(--primary);border-color:var(--primary)}.co__summary{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-md)}.co__summary>div{display:flex;justify-content:space-between;color:var(--ink-2)}.co__discount{color:var(--primary-strong)}html[data-theme=dark] .co__discount{color:var(--primary)}.co__total{border-top:1px dashed var(--line-strong);padding-top:var(--space-3);margin-top:var(--space-2);color:var(--ink)!important;font-weight:700}.co__total .num{font-size:var(--text-lg);color:var(--primary-strong)}html[data-theme=dark] .co__total .num{color:var(--primary)}.co__pay{padding:var(--space-6) var(--space-5) 0}.co__safe{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:var(--space-3);font-size:var(--text-xs);color:var(--ink-3)}.co__sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0f160e73;display:flex;align-items:flex-end;justify-content:center;animation:co-fade .15s ease-out}@keyframes co-fade{0%{opacity:0}to{opacity:1}}.co__sheet-panel{width:100%;max-width:var(--shell-max);background:var(--surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--space-6) var(--space-5) calc(var(--space-5) + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:center;gap:var(--space-2);animation:co-up .22s cubic-bezier(.2,.8,.3,1)}@keyframes co-up{0%{transform:translateY(100%)}to{transform:none}}.co__sheet-panel h2{font-size:var(--text-lg);font-weight:600}.co__sheet-amount{font-size:32px;font-weight:800;color:var(--ink)}.co__sheet-method{font-size:var(--text-xs);color:var(--ink-3)}.co__sheet-actions{width:100%;display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.co__sheet-cancel{border:none;background:none;color:var(--ink-3);font-size:var(--text-sm);cursor:pointer;padding:var(--space-2);text-decoration:underline}.payres{min-height:100dvh;display:flex;flex-direction:column;padding:var(--space-8) var(--space-5) var(--space-6)}.payres__icon{display:flex;justify-content:center;color:var(--danger);margin-bottom:var(--space-4)}.payres__icon--ok{color:var(--primary)}.payres__icon--wait{color:var(--star)}.payres h1{text-align:center;font-size:var(--text-2xl);font-weight:700}.payres__desc{text-align:center;color:var(--ink-2);margin-top:var(--space-2);font-size:var(--text-md)}.payres__card{margin-top:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}.payres__card>div{display:flex;justify-content:space-between;font-size:var(--text-sm)}.payres__card>div>span:first-child{color:var(--ink-3)}.payres__card>div>span:last-child{color:var(--ink);font-weight:500;text-align:right}.payres__actions{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-6)}.payres__confirm{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0f160e73;display:flex;align-items:center;justify-content:center;padding:var(--space-5);animation:pr-fade .15s ease-out}@keyframes pr-fade{0%{opacity:0}to{opacity:1}}.payres__confirm-panel{width:100%;max-width:340px;background:var(--surface);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-float);animation:pr-pop .18s ease-out}@keyframes pr-pop{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:none}}.payres__confirm-panel h2{font-size:var(--text-lg);font-weight:700}.payres__confirm-panel p{margin-top:var(--space-2);color:var(--ink-2);font-size:var(--text-sm);line-height:1.6}.payres__confirm-actions{display:flex;gap:var(--space-3);margin-top:var(--space-5)}.payres__confirm-actions .btn{flex:1}.orders{padding-bottom:var(--space-6)}.orders__tabs{margin:var(--space-2) var(--space-5) var(--space-4);width:calc(100% - 40px)}.orders__tabs>button{flex:1;justify-content:center}.orders__list{display:flex;flex-direction:column;gap:var(--space-3);padding:0 var(--space-5)}.orders__item{display:flex;flex-direction:column;gap:var(--space-3)}.orders__item-top{display:flex;justify-content:space-between;align-items:center}.orders__no{font-size:var(--text-xs);color:var(--ink-3)}.orders__status{font-size:var(--text-xs);font-weight:700}.orders__status--pending{color:var(--star)}.orders__status--paid{color:var(--primary-strong)}.orders__status--cancelled,.orders__status--failed{color:var(--ink-3)}html[data-theme=dark] .orders__status--paid{color:var(--primary)}.orders__item-body{display:flex;align-items:center;gap:var(--space-3);cursor:pointer}.orders__item-info{flex:1;min-width:0}.orders__item-info h3{font-size:var(--text-md);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.orders__item-info p{font-size:var(--text-xs);color:var(--ink-3);margin-top:2px}.orders__amount{font-weight:700;flex:none}.orders__item-ops{display:flex;justify-content:flex-end;gap:var(--space-2);border-top:1px dashed var(--line);padding-top:var(--space-3)}.msg{padding-bottom:var(--space-6)}.msg__list{display:flex;flex-direction:column;padding:0 var(--space-5)}.msg__thread{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) 0;border:none;border-bottom:1px solid var(--line);background:none;cursor:pointer;text-align:left}.msg__thread:last-child{border-bottom:none}.msg__avatar-wrap{position:relative;flex:none}.msg__unread{position:absolute;top:-4px;right:-7px}.msg__thread-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.msg__thread-top{display:flex;justify-content:space-between;align-items:baseline}.msg__thread-top strong{font-size:var(--text-md);font-weight:600}.msg__thread-top time{font-size:var(--text-xs);color:var(--ink-3)}.msg__thread-preview{font-size:var(--text-sm);color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg__chat{display:flex;flex-direction:column;gap:var(--space-3);min-height:260px}.msg__bubble-row{display:flex}.msg__bubble-row--me{justify-content:flex-end}.msg__bubble{max-width:78%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--primary-soft);font-size:var(--text-md);line-height:1.55;display:flex;flex-direction:column;gap:4px}.msg__bubble--me{background:var(--primary);color:#17250f}.msg__bubble time{font-size:10px;opacity:.65}.msg__composer{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.msg__input{flex:1;height:44px;border:1px solid var(--line-strong);border-radius:var(--radius-full);background:var(--surface);padding:0 var(--space-4);outline:none;font-size:var(--text-md)}.msg__input:focus{border-color:var(--primary)}.thread{min-height:100dvh;display:flex;flex-direction:column}.thread__head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line);position:sticky;top:0;background:color-mix(in srgb,var(--bg) 90%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.thread__who{flex:1;min-width:0;display:flex;flex-direction:column}.thread__who strong{font-size:var(--text-md)}.thread__who span{font-size:var(--text-xs);color:var(--ink-3)}.thread__chat{flex:1;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5);overflow-y:auto}.thread__composer{padding:var(--space-3) var(--space-5) calc(var(--space-3) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);margin-top:0}.thread__mentor-link{border:none;background:none;padding:0;color:var(--primary-strong);font-size:var(--text-xs);cursor:pointer;text-decoration:underline}html[data-theme=dark] .thread__mentor-link{color:var(--primary)}.ntf{padding-bottom:var(--space-6)}.ntf__list{display:flex;flex-direction:column;padding:0 var(--space-5)}.ntf__item{display:flex;gap:var(--space-3);padding:var(--space-4) 0;border:none;border-bottom:1px solid var(--line);background:none;cursor:pointer;text-align:left;align-items:flex-start}.ntf__item:last-child{border-bottom:none}.ntf__item--unread{background:linear-gradient(90deg,var(--primary-soft),transparent 60%);border-radius:var(--radius-md)}.ntf__icon{flex:none;width:38px;height:38px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:var(--primary-soft);color:var(--primary-strong)}html[data-theme=dark] .ntf__icon{color:var(--primary)}.ntf__icon--order{background:var(--info-soft);color:var(--info)}.ntf__icon--quiz{background:#fdf3e3;color:#b97a14}.ntf__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.ntf__title{display:flex;align-items:center;gap:6px;font-size:var(--text-md);font-weight:600}.ntf__dot{width:7px;height:7px;border-radius:50%;background:var(--danger);flex:none}.ntf__text{font-size:var(--text-sm);color:var(--ink-2);line-height:1.5}.ntf__body time{font-size:var(--text-xs);color:var(--ink-3)}.profile{padding-bottom:var(--space-8)}.profile__card{display:flex;align-items:center;gap:var(--space-4);margin:var(--space-3) var(--space-5) 0;width:calc(100% - 2 * var(--space-5))}.profile__card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.profile__card-body h2{font-size:var(--text-lg);font-weight:700}.profile__card-body p{font-size:var(--text-sm);color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile__phone{font-size:var(--text-xs);color:var(--ink-3)}.profile__group{padding:var(--space-5) var(--space-5) 0}.profile__group h2{font-size:var(--text-xs);font-weight:600;color:var(--ink-3);letter-spacing:.05em;margin-bottom:var(--space-2)}.prow{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);border:none;border-bottom:1px solid var(--line);background:none;cursor:pointer;text-align:left;font-size:var(--text-md);transition:background .15s}.prow:last-child{border-bottom:none}.prow:hover{background:var(--primary-soft)}.prow--danger .prow__title,.prow--danger .prow__icon{color:var(--danger)}.prow__icon{color:var(--primary-strong);flex:none;display:inline-flex}html[data-theme=dark] .prow__icon{color:var(--primary)}.prow__title{flex:1;color:var(--ink)}.prow__value{color:var(--ink-3);font-size:var(--text-sm)}.prow__chev{color:var(--ink-3);flex:none}.profile__logout{padding:var(--space-6) var(--space-5) 0}.profile__modal-actions{margin-top:var(--space-4)}.profile__modal-desc{color:var(--ink-2);font-size:var(--text-sm);line-height:1.6;margin-bottom:var(--space-4)}.profile__types{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.profile__type{display:flex;flex-direction:column;gap:4px;padding:var(--space-4);border-radius:var(--radius-lg);border:1.5px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;transition:all .15s}.profile__type--on{border-color:var(--primary);background:var(--primary-soft)}.profile__type strong{font-size:var(--text-md)}.profile__type span{font-size:var(--text-sm);color:var(--ink-2)}.sslider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:var(--radius-full);background:linear-gradient(to right,var(--primary) 0%,var(--primary) var(--pct, 50%),var(--line) var(--pct, 50%),var(--line) 100%);outline:none;cursor:pointer}.sslider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--surface);border:2px solid var(--primary);box-shadow:var(--shadow-card)}.sslider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--surface);border:2px solid var(--primary)}.set{padding-bottom:var(--space-8)}.set__group{padding:var(--space-4) var(--space-5) 0}.set__group h2{font-size:var(--text-xs);font-weight:600;color:var(--ink-3);letter-spacing:.05em;margin-bottom:var(--space-2)}.set__row{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4) 0;border:none;border-bottom:1px solid var(--line);background:none;text-align:left;font-size:var(--text-md)}.set__group .set__row:last-child{border-bottom:none}.set__row--btn{cursor:pointer}.set__row--btn:hover .set__row-title{color:var(--primary-strong)}.set__row--danger .set__row-title,.set__row--danger .set__row-icon{color:var(--danger)}.set__row--column{flex-direction:column;align-items:stretch;gap:var(--space-3)}.set__row-top{display:flex;align-items:center;gap:var(--space-3)}.set__row-icon{color:var(--primary-strong);flex:none;display:inline-flex}html[data-theme=dark] .set__row-icon{color:var(--primary)}.set__row-title{flex:1;color:var(--ink)}.set__row-note{font-size:var(--text-xs);color:var(--ink-3)}.set__row-value{color:var(--ink-3);font-size:var(--text-sm);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:46%}.set__chev{color:var(--ink-3);flex:none}.set__options{display:flex;flex-direction:column;gap:var(--space-3)}.set__option{display:flex;flex-direction:column;gap:4px;padding:var(--space-4);border-radius:var(--radius-lg);border:1.5px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;transition:all .15s}.set__option--on{border-color:var(--primary);background:var(--primary-soft)}.set__option strong{font-size:var(--text-md)}.set__option span{font-size:var(--text-sm);color:var(--ink-2)}.set__chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.set__chip{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font-size:var(--text-sm);cursor:pointer;transition:all .15s}.set__chip--on{background:var(--primary);border-color:var(--primary);color:#17250f;font-weight:600}.support{min-height:100dvh;display:flex;flex-direction:column}.support__stage{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-8) var(--space-5)}.support__avatar{position:relative}.support__avatar--live{animation:sup-pulse 2s ease-in-out infinite}@keyframes sup-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.support__online{position:absolute;right:4px;bottom:6px;width:16px;height:16px;border-radius:50%;background:var(--primary);border:3px solid var(--surface)}.support__stage h2{font-size:var(--text-xl);font-weight:700}.support__status{color:var(--ink-2);font-size:var(--text-md)}.support__controls{display:flex;gap:var(--space-8);margin-top:var(--space-6)}.support__ctrl{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);width:62px;height:62px;justify-content:center;border-radius:var(--radius-full);border:none;background:var(--primary-soft);color:var(--primary-strong);cursor:pointer;font-size:10px;transition:all .15s}html[data-theme=dark] .support__ctrl{color:var(--primary)}.support__ctrl span{font-size:10px;font-weight:600}.support__ctrl--off{background:var(--danger-soft);color:var(--danger)}.support__ctrl--on{background:var(--primary);color:#17250f}.support__actions{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.support__hangup{align-self:center;width:72px;height:72px;border-radius:50%;border:none;background:var(--danger);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-float);transition:transform .1s}.support__hangup:active{transform:scale(.96)}.support__note{text-align:center;color:var(--ink-3);font-size:var(--text-xs);padding:0 var(--space-5) var(--space-6)}.agreement{padding:var(--space-5);line-height:1.85;color:var(--ink-2);font-size:var(--text-md)}.agreement h2{color:var(--ink);font-size:var(--text-md);margin:var(--space-5) 0 var(--space-2)}.agreement h2:first-of-type{margin-top:var(--space-4)}.mentor{padding-bottom:var(--space-6)}.mentor__hero{position:relative;display:flex;flex-direction:column;align-items:center;padding:var(--space-8) var(--space-5) var(--space-6);background:linear-gradient(180deg,var(--primary-soft),transparent);text-align:center}.mentor__hero-nav{position:absolute;top:0;left:0;right:0}.mentor__hero-nav .ph{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.mentor__hero-nav .ph__back{background:var(--surface)}.mentor__avatar{border:4px solid var(--surface);box-shadow:var(--shadow-card)}.mentor__hero h1{font-size:var(--text-xl);font-weight:700;margin-top:var(--space-3)}.mentor__hero>p{font-size:var(--text-sm);color:var(--ink-2);margin-top:4px}.mentor__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2);width:100%;margin-top:var(--space-5)}.mentor__stats>div{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) 0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}.mentor__stats strong{font-size:var(--text-md);color:var(--primary-strong)}html[data-theme=dark] .mentor__stats strong{color:var(--primary)}.mentor__stats span{font-size:10px;color:var(--ink-2)}.mentor__body{padding:0 var(--space-5)}.mentor__bio{color:var(--ink-2);font-size:var(--text-md);line-height:1.7}.mentor__call{display:flex;gap:var(--space-2);margin:var(--space-4) 0 var(--space-6)}.mentor__call .btn{flex:1}.mentor__section-title{font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-3)}.mentor__courses{display:flex;flex-direction:column;gap:var(--space-3)}.mentor__course{display:flex;align-items:center;gap:var(--space-3);cursor:pointer}.mentor__course-body{flex:1;min-width:0}.mentor__course-body h3{font-size:var(--text-md);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mentor__course-body p{font-size:var(--text-xs);color:var(--ink-3);margin-top:2px}.mentor__course-foot{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-1)}.mentor__course-enrolled{font-size:var(--text-xs);font-weight:600;color:var(--primary-strong);padding:2px 8px;background:var(--primary-soft);border-radius:var(--radius-full)}html[data-theme=dark] .mentor__course-enrolled{color:var(--primary)}.mentor__course-go{color:var(--ink-3);flex:none}.mentor__call-sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0f160e8c;display:flex;align-items:center;justify-content:center;padding:var(--space-5);animation:mentor-fade .15s ease-out}@keyframes mentor-fade{0%{opacity:0}to{opacity:1}}.mentor__call-panel{width:100%;max-width:340px;background:var(--surface);border-radius:var(--radius-xl);padding:var(--space-6) var(--space-5);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-3);box-shadow:var(--shadow-float);animation:mentor-pop .18s ease-out}@keyframes mentor-pop{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:none}}.mentor__call-panel h2{font-size:var(--text-lg);font-weight:700}.mentor__call-panel p{font-size:var(--text-sm);color:var(--ink-2)}.mentor__call-actions{display:flex;gap:var(--space-2);margin-top:var(--space-4);width:100%}.mentor__call-actions .btn{flex:1}.mentor__call-live{animation:mentor-live 2s ease-in-out infinite}.mentor__call-live--muted{opacity:.7}@keyframes mentor-live{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.mentor__call-ctrls{display:flex;align-items:center;gap:var(--space-6);margin-top:var(--space-3)}.mentor__ctrl{width:54px;height:54px;border-radius:50%;border:none;background:var(--primary-soft);color:var(--primary-strong);display:flex;align-items:center;justify-content:center;cursor:pointer}html[data-theme=dark] .mentor__ctrl{color:var(--primary)}.mentor__ctrl--off{background:var(--danger-soft);color:var(--danger)}.mentor__hangup{width:60px;height:60px;border-radius:50%;border:none;background:var(--danger);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-float)}.clp{padding-bottom:var(--space-6)}.clp__list{list-style:none;margin:var(--space-3) var(--space-5) 0;padding:0}.clp__item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4) var(--space-2);border:none;border-bottom:1px solid var(--line);background:none;cursor:pointer;text-align:left;border-radius:var(--radius-sm)}.clp__item:hover{background:var(--primary-soft)}.clp__idx{color:var(--primary-strong);display:inline-flex;flex:none}html[data-theme=dark] .clp__idx,.clp__idx--done{color:var(--primary)}.clp__title{flex:1;min-width:0;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clp__min{font-size:var(--text-xs);color:var(--ink-3);flex:none}.clp__free{font-style:normal;font-size:var(--text-xs);color:var(--primary-strong);font-weight:600;flex:none}html[data-theme=dark] .clp__free{color:var(--primary)}.clp__item--done .clp__title{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--line-strong)}.splash{min-height:100dvh;display:flex;flex-direction:column;padding:var(--space-8) var(--space-5) var(--space-6);position:relative;overflow:hidden;overflow-x:clip}.splash__deco{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.splash__ring{position:absolute;border-radius:50%;border-style:solid;border-color:transparent;opacity:.5}.splash__ring--green{width:220px;height:220px;top:-60px;right:-70px;border:28px solid var(--primary);border-top-color:transparent;border-right-color:transparent;transform:rotate(20deg)}.splash__ring--yellow{width:160px;height:160px;top:-40px;left:-60px;border:24px solid var(--color-cta-yellow);border-bottom-color:transparent;border-left-color:transparent;transform:rotate(-16deg)}.splash__brand{margin-top:120px;text-align:center;position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.splash__logo{width:72px;height:72px;border-radius:var(--radius-xl);background:var(--primary);color:#17250f;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-float)}.splash__brand h1{font-size:30px;font-weight:800;letter-spacing:-.02em}.splash__brand p{color:var(--ink-2);font-size:var(--text-md)}.splash__slides{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-4);position:relative}.splash__slide{text-align:center;animation:splash-in .25s ease-out;min-height:84px}@keyframes splash-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.splash__slide h2{font-size:var(--text-xl);font-weight:700}.splash__slide p{margin-top:var(--space-2);color:var(--ink-2);font-size:var(--text-md);line-height:1.6}.splash__dots{display:flex;justify-content:center;gap:var(--space-2)}.splash__dot{width:7px;height:7px;border-radius:50%;border:none;background:var(--line-strong);cursor:pointer;padding:0;transition:all .2s}.splash__dot--on{width:20px;border-radius:var(--radius-full);background:var(--primary)}.splash__skip{align-self:center;border:none;background:none;color:var(--ink-3);font-size:var(--text-sm);cursor:pointer;padding:var(--space-2)}.splash__skip:hover{color:var(--primary-strong)}html[data-theme=dark] .splash__skip:hover{color:var(--primary)}.splash__cta{margin-top:var(--space-6)}.cem{min-height:100dvh;display:flex;flex-direction:column}.cem__body{flex:1;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6) var(--space-5)}.cem__icon{align-self:center;width:88px;height:88px;border-radius:var(--radius-xl);background:var(--primary-soft);color:var(--primary-strong);display:flex;align-items:center;justify-content:center}html[data-theme=dark] .cem__icon{color:var(--primary)}.cem__body h1{text-align:center;font-size:var(--text-xl);font-weight:700}.cem__body>p{text-align:center;color:var(--ink-2);font-size:var(--text-sm);line-height:1.7}.cem__body>p strong{color:var(--primary-strong)}html[data-theme=dark] .cem__body>p strong{color:var(--primary)}.cem__input{height:50px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);padding:0 var(--space-4);font-size:var(--text-md);outline:none}.cem__input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.cem__error{color:var(--danger);font-size:var(--text-sm)}.cem__sent{font-size:var(--text-sm);color:var(--ink-2);line-height:1.6}.cem__resend{border:none;background:none;color:var(--primary-strong);font-size:var(--text-sm);cursor:pointer;text-decoration:underline;padding:0}html[data-theme=dark] .cem__resend{color:var(--primary)}.cem__skip{margin-top:var(--space-4);display:inline-flex;align-items:center;justify-content:center;gap:4px;border:none;background:none;color:var(--ink-2);font-size:var(--text-md);cursor:pointer;padding:var(--space-3)}.cem__skip:hover{color:var(--primary-strong)}html[data-theme=dark] .cem__skip:hover{color:var(--primary)}.npref{padding-bottom:var(--space-6)}.npref__nav{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.npref__back{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;color:var(--ink)}.npref__nav h1{flex:1;text-align:center;font-size:var(--text-lg);font-weight:600}.npref__spacer{width:40px}.npref__lead{padding:var(--space-2) var(--space-5) 0;font-size:var(--text-xs);color:var(--ink-3)}.npref__list{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5) 0}.npref__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.npref__text{display:flex;flex-direction:column;gap:2px;min-width:0}.npref__title{font-size:var(--text-md);font-weight:500;color:var(--ink)}.npref__note{font-size:var(--text-xs);color:var(--ink-3)}.pm{padding-bottom:var(--space-6)}.pm__nav{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.pm__back{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;color:var(--ink)}.pm__nav h1{flex:1;text-align:center;font-size:var(--text-lg);font-weight:600}.pm__spacer{width:40px}.pm__lead{padding:var(--space-2) var(--space-5) 0;font-size:var(--text-xs);color:var(--ink-3)}.pm__list{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5) 0}.pm__item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--surface);border:1.5px solid var(--line);border-radius:var(--radius-lg);cursor:pointer;text-align:left;transition:border-color .15s}.pm__item--on{border-color:var(--primary);background:var(--primary-soft)}.pm__icon{flex:none;width:40px;height:40px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.pm__icon--wx{background:#e8f7ee;color:#2aae67}.pm__icon--ali{background:#e8f1fb;color:#1677ff}.pm__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.pm__body strong{font-size:var(--text-md)}.pm__body span{font-size:var(--text-xs);color:var(--ink-3)}.pm__check{flex:none;display:inline-flex;align-items:center;gap:3px;font-size:var(--text-xs);font-weight:600;color:var(--color-on-primary);background:var(--primary);padding:4px 10px;border-radius:var(--radius-full)}.pm__set{font-size:var(--text-xs);color:var(--ink-3)}.pm__item:hover .pm__set{color:var(--primary-strong)}html[data-theme=dark] .pm__item:hover .pm__set{color:var(--primary)}.pm__note{padding:var(--space-4) var(--space-5) 0;font-size:var(--text-xs);color:var(--ink-3);line-height:1.6}.cert{padding-bottom:var(--space-6)}.cert__list{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5) 0}.cert__item{display:flex;align-items:center;gap:var(--space-3)}.cert__seal{flex:none;width:52px;height:52px;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--color-cta-yellow),#f5c06a);color:#7a5220;display:flex;align-items:center;justify-content:center}.cert__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.cert__body h2{font-size:var(--text-md);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cert__body p{font-size:var(--text-xs);color:var(--ink-2)}.cert__no{font-size:10px;color:var(--ink-3);letter-spacing:.04em}.cert__share{flex:none;width:34px;height:34px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-3);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.cert__share:hover{color:var(--primary-strong);border-color:var(--primary);background:var(--primary-soft)}html[data-theme=dark] .cert__share:hover{color:var(--primary)}.cert__progress{padding:var(--space-6) var(--space-5) 0}.cert__progress h2{font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-3)}.cert__near{display:flex;flex-direction:column;gap:var(--space-2)}.cert__near-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);cursor:pointer;box-shadow:none}.cert__near-item>svg{color:var(--primary-strong);flex:none}html[data-theme=dark] .cert__near-item>svg{color:var(--primary)}.cert__near-body{flex:1;min-width:0}.cert__near-body h3{font-size:var(--text-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cert__near-track{height:4px;border-radius:var(--radius-full);background:var(--line);overflow:hidden;margin-top:4px}.cert__near-track>span{display:block;height:100%;background:var(--primary);border-radius:var(--radius-full)}.cert__near-pct{font-size:var(--text-xs);font-weight:700;color:var(--primary-strong);flex:none}html[data-theme=dark] .cert__near-pct{color:var(--primary)}.cert__near-go{color:var(--ink-3);flex:none}.stats{padding-bottom:var(--space-6)}.stats__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);padding:var(--space-3) var(--space-5) 0}.stats__card{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-4) var(--space-2)}.stats__card-icon{width:30px;height:30px;border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary-strong);display:flex;align-items:center;justify-content:center;margin-bottom:4px}html[data-theme=dark] .stats__card-icon{color:var(--primary)}.stats__card strong{font-size:var(--text-lg);color:var(--ink)}.stats__card>span:last-child{font-size:var(--text-xs);color:var(--ink-3)}.stats__week{margin:var(--space-4) var(--space-5) 0;width:calc(100% - 2 * var(--space-5));display:flex;flex-direction:column;gap:var(--space-3)}.stats__week-head{display:flex;justify-content:space-between;align-items:baseline}.stats__week-head h2{font-size:var(--text-md);font-weight:700}.stats__week-head span{font-size:var(--text-xs);color:var(--ink-2)}.stats__week-bar{height:10px;border-radius:var(--radius-full);background:var(--line);overflow:hidden}.stats__week-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--color-cta-yellow));border-radius:var(--radius-full);transition:width .3s}.stats__week>p{font-size:var(--text-xs);color:var(--ink-3)}.stats__chart{margin:var(--space-3) var(--space-5) 0;width:calc(100% - 2 * var(--space-5));display:flex;flex-direction:column;gap:var(--space-4)}.stats__chart h2{font-size:var(--text-md);font-weight:700}.stats__bars{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-2);align-items:end}.stats__bar-col{display:flex;flex-direction:column;align-items:center;gap:4px}.stats__bar-val{font-size:10px;color:var(--ink-2);min-height:13px}.stats__bar-track{width:100%;max-width:26px;height:110px;border-radius:var(--radius-sm);background:var(--line);display:flex;align-items:flex-end;overflow:hidden}.stats__bar-fill{width:100%;background:var(--primary);border-radius:var(--radius-sm);transition:height .3s}.stats__bar-label{font-size:10px;color:var(--ink-3)}.stats__per{padding:var(--space-5) var(--space-5) 0}.stats__per h2{font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-3)}.stats__course-list{display:flex;flex-direction:column;gap:var(--space-3)}.stats__course{position:relative;display:flex;flex-direction:column;gap:var(--space-2);cursor:pointer}.stats__course-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2)}.stats__course-head h3{font-size:var(--text-md);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats__course-head span{font-size:var(--text-sm);font-weight:700;color:var(--primary-strong);flex:none}html[data-theme=dark] .stats__course-head span{color:var(--primary)}.stats__course-track{height:7px;border-radius:var(--radius-full);background:var(--line);overflow:hidden}.stats__course-track>span{display:block;height:100%;background:var(--primary);border-radius:var(--radius-full);transition:width .3s}.stats__course p{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--ink-3)}.stats__course-go{position:absolute;right:var(--space-4);bottom:var(--space-4);color:var(--ink-3)}.vfd{min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:var(--space-8) var(--space-5) var(--space-6);text-align:center}.vfd__icon{color:var(--primary);margin-bottom:var(--space-4)}.vfd h1{font-size:var(--text-2xl);font-weight:700}.vfd>p{margin-top:var(--space-2);color:var(--ink-2);font-size:var(--text-md);line-height:1.65;max-width:300px}.vfd__perks{margin-top:var(--space-6);align-self:stretch;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--primary-soft)}.vfd__perks>div{display:flex;align-items:center;gap:5px;text-align:left;font-size:var(--text-sm);color:var(--ink)}.vfd__perks svg{color:var(--primary-strong);flex:none}html[data-theme=dark] .vfd__perks svg{color:var(--primary)}.vfd__who{margin-top:var(--space-4);font-size:var(--text-xs);color:var(--ink-3)}.vfd__actions{margin-top:auto;padding-top:var(--space-6);width:100%;display:flex;flex-direction:column;gap:var(--space-3)}
