html,body{width:100%;height:100%}input::-ms-clear{display:none}input::-ms-reveal{display:none}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:#0000;font-family:sans-serif;line-height:1.15}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}address{font-style:normal;line-height:inherit;margin-bottom:1em}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{text-align:left;caption-side:bottom;padding-top:.75em;padding-bottom:.3em}input,button,select,optgroup,textarea{color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical;overflow:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal;margin-bottom:.5em;padding:0;display:block}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{background-color:#feffe6;padding:.2em}.child-layout[data-v-102c84dd]{background:#f5f7fb;min-height:100vh}.child-header[data-v-102c84dd]{background:#fff;border-bottom:1px solid #e8ecf2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;height:auto;min-height:56px;padding:10px clamp(12px,3vw,24px);line-height:1.4;display:flex}.brand[data-v-102c84dd]{color:#1f2937;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:clamp(15px,2.5vw,18px);font-weight:600;overflow:hidden}.header-nav[data-v-102c84dd]{flex-wrap:wrap;flex:0 auto;align-items:center;gap:12px 16px;display:flex}.child-content[data-v-102c84dd]{width:100%;padding:clamp(12px,3vw,24px) 0}.page-container[data-v-102c84dd]{box-sizing:border-box;width:100%;max-width:min(960px,100%);margin:0 auto;padding:0 clamp(12px,3vw,24px)}@media (width<=480px){.child-header[data-v-102c84dd]{flex-direction:column;align-items:flex-start}.brand[data-v-102c84dd]{white-space:normal}}.admin-layout[data-v-f1fd363f]{background:#f5f5f5;min-height:100vh}.admin-header[data-v-f1fd363f]{color:#fff;background:#001529;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;line-height:1.4;display:flex;height:auto!important}.brand[data-v-f1fd363f]{white-space:nowrap;font-weight:600}.nav[data-v-f1fd363f]{flex-wrap:wrap;gap:12px 16px;display:flex}.admin-header[data-v-f1fd363f] a{color:#ffffffd9}.admin-content[data-v-f1fd363f]{width:100%;max-width:1200px;margin:0 auto;padding:20px}@media (width<=640px){.admin-header[data-v-f1fd363f]{padding:12px 14px}}.public-home[data-v-f83c9a9d]{--home-primary:#1677ff;--home-secondary:#f6b73c;box-sizing:border-box;background:radial-gradient(circle at top right, color-mix(in srgb, var(--home-secondary) 35%, white), transparent 42%), linear-gradient(160deg, #f7f9fc 0%, #eef4ff 55%, #fff8ea 100%);color:#1f2937;width:100%;min-height:100vh;padding:clamp(16px,4vw,40px)}.hero[data-v-f83c9a9d]{grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(20px,4vw,48px);max-width:1100px;margin:0 auto;display:grid}.eyebrow[data-v-f83c9a9d]{color:color-mix(in srgb, var(--home-primary) 80%, #334155);letter-spacing:.04em;margin:0 0 8px;font-weight:600}.title[data-v-f83c9a9d]{color:#111827;margin:0;font-size:clamp(1.8rem,4vw,3rem);line-height:1.2}.subtitle[data-v-f83c9a9d]{color:#374151;margin:12px 0 0;font-size:clamp(1.05rem,2.2vw,1.35rem)}.welcome[data-v-f83c9a9d]{color:#4b5563;max-width:36rem;margin:16px 0 0;font-size:clamp(.98rem,1.8vw,1.1rem);line-height:1.7}.cta[data-v-f83c9a9d]{min-width:160px;height:48px;margin-top:24px;background:var(--home-primary)!important;border-color:var(--home-primary)!important}.hero-visual[data-v-f83c9a9d]{background:linear-gradient(135deg, color-mix(in srgb, var(--home-primary) 70%, white), color-mix(in srgb, var(--home-secondary) 75%, white));border-radius:24px;min-height:240px;overflow:hidden;box-shadow:0 16px 40px #0f172a1f}.hero-image[data-v-f83c9a9d]{object-fit:cover;width:100%;height:100%;min-height:240px;display:block}.hero-fallback[data-v-f83c9a9d]{color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:280px;font-size:1.2rem;font-weight:600;display:flex}.star[data-v-f83c9a9d]{color:var(--home-secondary);text-shadow:0 2px 8px #00000026;font-size:2.4rem}.intro[data-v-f83c9a9d]{max-width:1100px;margin:clamp(28px,5vw,48px) auto 0}.intro h2[data-v-f83c9a9d]{margin:0 0 16px;font-size:1.25rem}.intro-grid[data-v-f83c9a9d]{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.intro-item[data-v-f83c9a9d]{background:#ffffffe0;border:1px solid #e5e7eb;border-radius:16px;padding:16px}.intro-item p[data-v-f83c9a9d]{color:#6b7280;margin:8px 0 0;line-height:1.6}.home-footer[data-v-f83c9a9d]{text-align:center;max-width:1100px;margin:28px auto 0}@media (width<=1023px){.hero[data-v-f83c9a9d]{grid-template-columns:1fr}}@media (width<=767px){.public-home[data-v-f83c9a9d]{padding:16px}.intro-grid[data-v-f83c9a9d]{grid-template-columns:1fr}.cta[data-v-f83c9a9d]{width:100%}.hero-fallback[data-v-f83c9a9d]{min-height:200px}}.leaderboard-panel[data-v-b0c7ffe8]{box-sizing:border-box;background:#fff;border:1px solid #e8ecf2;border-radius:12px;width:100%;min-width:0;padding:16px}.leaderboard-panel.compact[data-v-b0c7ffe8]{padding:12px}.panel-head[data-v-b0c7ffe8]{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.panel-title[data-v-b0c7ffe8]{color:#1f2937;margin:0;font-size:1.05rem;font-weight:600}.view-all[data-v-b0c7ffe8]{height:auto;padding:0}.leaderboard-list[data-v-b0c7ffe8]{margin:0;padding:0;list-style:none}.leaderboard-row[data-v-b0c7ffe8]{border-bottom:1px solid #f0f2f5;grid-template-columns:2.5rem 1fr auto;align-items:center;gap:8px;padding:8px 0;font-size:.95rem;display:grid}.leaderboard-row[data-v-b0c7ffe8]:last-child{border-bottom:none}.leaderboard-row.top3[data-v-b0c7ffe8]{font-weight:600}.rank[data-v-b0c7ffe8]{text-align:center;color:#64748b}.name[data-v-b0c7ffe8]{text-overflow:ellipsis;white-space:nowrap;color:#1f2937;min-width:0;overflow:hidden}.stars[data-v-b0c7ffe8]{white-space:nowrap;color:#b45309}@media (width<=767px){.leaderboard-row[data-v-b0c7ffe8]{grid-template-columns:2rem 1fr auto;font-size:.9rem}}.home[data-v-9e72a3c1]{width:100%;min-width:0}.home-main[data-v-9e72a3c1]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;margin-bottom:20px;display:grid}.learner-card[data-v-9e72a3c1]{margin-bottom:0}.login-form[data-v-9e72a3c1]{max-width:360px}.current-learner[data-v-9e72a3c1]{font-size:18px;font-weight:600}.stars-badge[data-v-9e72a3c1]{margin-top:8px;font-size:16px}.home[data-v-9e72a3c1] .ant-card{height:100%}@media (width<=1023px){.home-main[data-v-9e72a3c1]{grid-template-columns:1fr}}.courses-page[data-v-9994dc7d]{width:100%;min-width:0}.back-link[data-v-9994dc7d]{margin-bottom:4px;padding-left:0}.subject-card[data-v-9994dc7d]{cursor:pointer;height:100%}.subject-progress[data-v-9994dc7d]{margin-top:16px}.subject-courses[data-v-02f72ad5]{width:100%;min-width:0}.back-link[data-v-02f72ad5]{margin-bottom:8px;padding-left:0}.filter-tabs[data-v-02f72ad5]{margin-bottom:16px}.course-item[data-v-02f72ad5]{cursor:pointer}.subject-courses[data-v-02f72ad5] .ant-list-item{flex-wrap:wrap;gap:8px}.subject-courses[data-v-02f72ad5] .ant-list-item-meta{flex:200px;min-width:0}.subject-courses[data-v-02f72ad5] .ant-list-item-action{margin-inline-start:0}.question[data-v-0280ea7f]{color:#1f2937;font-size:clamp(15px,2.4vw,16px);line-height:1.75;margin-bottom:8px!important}.options[data-v-0280ea7f]{flex-direction:column;gap:12px;width:100%;display:flex}.option-btn[data-v-0280ea7f]{white-space:normal;text-align:left;border-radius:10px;height:auto;padding:12px 14px}.question[data-v-92dd84ce]{color:#1f2937;font-size:clamp(15px,2.4vw,16px);line-height:1.75;margin-bottom:8px!important}.multi-block[data-v-92dd84ce]{flex-direction:column;gap:12px;display:flex}.multi-group[data-v-92dd84ce]{flex-direction:column;gap:10px;width:100%;display:flex}.multi-item[data-v-92dd84ce]{white-space:normal;margin-inline-start:0!important}.question[data-v-ccb2f62d]{color:#1f2937;font-size:clamp(15px,2.4vw,16px);line-height:1.75;margin-bottom:8px!important}.fill-row[data-v-ccb2f62d]{flex-wrap:wrap;gap:10px;display:flex}.fill-row[data-v-ccb2f62d] .ant-input{flex:180px;min-width:0}.question[data-v-fff340a8]{color:#1f2937;font-size:clamp(15px,2.4vw,16px);line-height:1.75;margin-bottom:8px!important}.short-block[data-v-fff340a8]{flex-direction:column;gap:12px;display:flex}.task-card[data-v-cc60ec47]{background:linear-gradient(#f8fafc 0%,#fff 100%);border:1px solid #e2e8f0;border-radius:10px;padding:12px 14px}.task-title[data-v-cc60ec47]{color:#0f172a;margin:0 0 8px!important;font-size:clamp(17px,3vw,19px)!important}.instruction[data-v-cc60ec47]{color:#1f2937;font-size:clamp(15px,2.4vw,16px);line-height:1.75;margin-bottom:12px!important}.question[data-v-aaf13cc8]{color:#1f2937;font-size:clamp(15px,2.4vw,16px);line-height:1.75;margin-bottom:8px!important}.options[data-v-aaf13cc8]{flex-direction:column;gap:10px;display:flex}.option-btn[data-v-aaf13cc8]{white-space:normal;text-align:left;border-radius:10px;height:auto;padding:12px 14px}.course-detail[data-v-32bf8784]{flex-direction:column;width:100%;min-width:0;display:flex}.back-link[data-v-32bf8784]{align-self:flex-start;margin-bottom:4px;padding-left:0}.preview-banner[data-v-32bf8784]{margin-bottom:12px}.hero-block[data-v-32bf8784]{background:linear-gradient(#f8fbff 0%,#fff 100%);border:1px solid #e8eef6;border-radius:12px;margin-bottom:4px;padding:clamp(12px,3vw,18px)}.course-title[data-v-32bf8784]{color:#0f172a;line-height:1.35;margin:0 0 10px!important;font-size:clamp(22px,5vw,28px)!important}.hero-meta[data-v-32bf8784]{flex-wrap:wrap;gap:8px;display:flex}.block[data-v-32bf8784]{margin-top:clamp(16px,3vw,22px)}.section-label[data-v-32bf8784]{color:#334155;margin-bottom:10px;font-size:clamp(15px,2.4vw,17px);font-weight:600}.soft-card[data-v-32bf8784]{background:#fff;border-color:#e8edf3;border-radius:12px}.soft-card[data-v-32bf8784] .ant-card-body{padding:clamp(14px,3vw,18px)}.card-goal[data-v-32bf8784]{background:#f8fafc}.card-exercise[data-v-32bf8784]{background:#fcfcff}.activity-card+.activity-card[data-v-32bf8784]{margin-top:12px}.activity-head[data-v-32bf8784]{margin-bottom:8px}.card-summary[data-v-32bf8784]{background:#f7fbf7}.readable-text[data-v-32bf8784]{color:#1f2937;font-size:clamp(15px,2.4vw,16px);line-height:1.75;margin-bottom:0!important}.content-text[data-v-32bf8784]{white-space:pre-wrap;font-size:clamp(15px,2.4vw,16px);line-height:1.85;margin-bottom:0!important}.options[data-v-32bf8784]{flex-direction:column;gap:12px;width:100%;margin-top:4px;display:flex}.option-btn[data-v-32bf8784]{white-space:normal;text-align:left;border-radius:10px;height:auto;padding:12px 14px}.feedback[data-v-32bf8784]{margin-top:14px}.card-summary[data-v-32bf8784] .ant-typography{display:block}.course-detail[data-v-32bf8784] .ant-card{width:100%}.learning-progress[data-v-64355c85]{width:100%;min-width:0}.back-link[data-v-64355c85]{margin-bottom:8px;padding-left:0}.stars-line[data-v-64355c85]{margin-bottom:12px;font-size:16px;font-weight:600}.subject-tabs[data-v-64355c85]{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.stats[data-v-64355c85]{margin-bottom:16px}.progress-card[data-v-64355c85]{margin-top:8px}.admin-home[data-v-fb759731]{width:100%;min-width:0}.admin-home[data-v-fb759731] .ant-card{height:100%}.admin-courses[data-v-0fdc7138]{width:100%;min-width:0}.toolbar[data-v-0fdc7138]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.filters[data-v-0fdc7138]{flex-wrap:wrap;gap:10px;width:100%;margin-top:16px;display:flex}.filter-search[data-v-0fdc7138]{flex:180px;min-width:0;max-width:100%}.filter-select[data-v-0fdc7138]{flex:120px;min-width:120px;max-width:100%}.table-scroll[data-v-0fdc7138]{width:100%;overflow-x:auto}.course-template-form[data-v-0fdc7138]{max-height:min(72vh,780px);padding-right:4px;overflow-y:auto}.flow-hint[data-v-0fdc7138]{margin-bottom:16px}.form-section[data-v-0fdc7138]{background:#fafafa;border:1px solid #f0f0f0;border-radius:8px;margin-bottom:16px;padding:12px clamp(10px,2vw,14px)}.section-title[data-v-0fdc7138]{color:#1f2937;margin-bottom:8px;font-weight:600}.section-title-row[data-v-0fdc7138]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.activity-list[data-v-0fdc7138]{flex-direction:column;gap:10px;display:flex}.activity-item[data-v-0fdc7138]{background:#fff;border:1px solid #e8e8e8;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.activity-main[data-v-0fdc7138]{flex:220px;gap:8px;min-width:0;display:flex}.activity-index[data-v-0fdc7138]{color:#64748b;font-weight:600}.activity-body[data-v-0fdc7138]{min-width:0}.activity-type[data-v-0fdc7138]{color:#1f2937;font-weight:600}.activity-question[data-v-0fdc7138]{color:#475569;word-break:break-word;margin-top:2px}.activity-actions[data-v-0fdc7138]{flex:0 auto}.responsive-modal .ant-modal{max-width:calc(100vw - 24px);margin:0 auto}.admin-records[data-v-6b796f03]{width:100%;min-width:0}.table-scroll[data-v-6b796f03]{width:100%;overflow-x:auto}.admin-subjects[data-v-bd4c6148]{width:100%;min-width:0}.toolbar[data-v-bd4c6148]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.table-scroll[data-v-bd4c6148]{width:100%;overflow-x:auto}.admin-users[data-v-fe7456f8]{width:100%;min-width:0}.toolbar[data-v-fe7456f8]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.table-scroll[data-v-fe7456f8]{width:100%;overflow-x:auto}.admin-homepage[data-v-81d73bd5]{width:100%;min-width:0}.toolbar[data-v-81d73bd5]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.settings-form[data-v-81d73bd5]{max-width:760px}.block[data-v-81d73bd5]{margin-bottom:16px}.admin-login[data-v-4d746661]{max-width:420px;margin:40px auto;padding:0 16px}.login-card[data-v-4d746661]{margin-top:16px}.leaderboard-page[data-v-218df470]{width:100%;min-width:0}.back-link[data-v-218df470]{margin-bottom:8px;padding-left:0}*,:before,:after{box-sizing:border-box}html,body,#app{width:100%;min-height:100%;margin:0}html{overflow-x:hidden}body{color:#1f2937;background:#f5f7fb;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;overflow-x:hidden}img,video,canvas,svg{max-width:100%;height:auto}a{color:#1677ff;text-decoration:none}a.router-link-active{font-weight:600}.ant-typography{overflow-wrap:anywhere;word-break:break-word}
