:root{--ink:#14233f;--muted:#73809a;--line:#e9eef6;--blue:#2366e8;--blue-dark:#174ec2;--pale:#f4f8ff;--mint:#21b891;--orange:#f39b46;--violet:#8060e9;--shadow:0 14px 42px rgba(31,77,143,.08)}*{box-sizing:border-box}body{margin:0;background:#f5f8fd;color:var(--ink);font-family:'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;font-size:14px}.app-shell{min-height:100vh}.topbar{height:74px;padding:0 max(calc((100vw - 1190px)/2),32px);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.88);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;backdrop-filter:blur(16px)}.brand-lockup{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none}.brand-mark{width:40px;height:40px;border-radius:14px;background:linear-gradient(140deg,#2bb5ee,#2763e8);color:white;display:grid;place-items:center;font-size:25px;box-shadow:0 8px 16px #2a70dd35}.brand-lockup b{display:block;font-size:16px}.brand-lockup small{display:block;color:#8a96aa;font-size:10px;letter-spacing:1px;margin-top:2px}.top-context{color:#66738d;font-size:12px}.live-dot{display:inline-block;width:7px;height:7px;background:#29c79d;border-radius:50%;margin-right:7px;box-shadow:0 0 0 4px #e4faf3}.avatar,.profile-avatar{border:0;background:linear-gradient(145deg,#e6edff,#c6d9ff);color:#2664de;border-radius:50%;width:39px;height:39px;font-size:17px;font-weight:700;display:grid;place-items:center}.main-content{max-width:1190px;margin:0 auto;padding:35px 32px 80px;min-height:calc(100vh - 74px)}.view{display:none;animation:fadeIn .24s ease}.view.active{display:block}@keyframes fadeIn{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}.welcome-row,.page-title-row,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.eyebrow{font-size:10px;color:#8996ac;letter-spacing:1.8px;font-weight:700;margin:0 0 9px}.welcome-row h1,.page-title-row h1{font-size:27px;letter-spacing:-.5px;margin:0 0 8px}.welcome-row h1 span{font-size:21px}.muted{color:var(--muted);margin:0;line-height:1.65}.streak-pill,.count-chip{padding:10px 15px;border-radius:30px;background:#fff;border:1px solid var(--line);color:#71809a;font-size:12px;box-shadow:0 4px 16px #1d4c8d08}.streak-pill b{color:#ec8b2d;margin-left:3px}.hero-card{margin-top:27px;min-height:234px;background:linear-gradient(112deg,#2161e5,#338ef0 67%,#63c1f3);border-radius:22px;color:white;overflow:hidden;padding:31px 39px;display:flex;justify-content:space-between;position:relative;box-shadow:0 16px 38px #2d6ed72b}.hero-copy{position:relative;z-index:1}.light{color:#dcecff}.hero-card h2{font-size:29px;line-height:1.32;margin:7px 0 8px;letter-spacing:.2px}.hero-card p{color:#e0efff;margin:0 0 19px;font-size:13px}.button{border:0;display:inline-flex;justify-content:center;align-items:center;gap:11px;padding:11px 18px;border-radius:11px;cursor:pointer;font:600 13px inherit;transition:transform .16s,box-shadow .16s,background .16s}.button:hover{transform:translateY(-1px)}.button-white{background:white;color:#245ed0;box-shadow:0 7px 16px #1549a133}.button-primary{background:linear-gradient(130deg,#286ce9,#367de8);color:white;box-shadow:0 8px 16px #2e6fe52b}.button-ghost{background:#f2f6ff;color:#2d65ce}.button-white span,.button-primary span,.text-button span{font-size:16px}.hero-art{width:300px;position:relative;margin-right:48px}.art-orbit{position:absolute;border:1px solid #ffffff3b;border-radius:50%;transform:rotate(-24deg)}.orbit-one{width:230px;height:140px;right:8px;top:24px}.orbit-two{width:190px;height:110px;right:24px;top:39px}.art-book{position:absolute;right:80px;top:35px;width:98px;height:86px;border-radius:14px;background:linear-gradient(130deg,#fff,#d6f1ff);box-shadow:0 17px 30px #10459b49;color:#2b76df;font-size:61px;text-align:center;line-height:82px;transform:rotate(-9deg)}.art-arrow{position:absolute;right:19px;top:-8px;color:#bde8ff;font-size:71px;transform:rotate(-9deg)}.art-bars{position:absolute;bottom:0;right:34px;height:69px;display:flex;align-items:end;gap:8px}.art-bars i{display:block;width:28px;border-radius:6px 6px 0 0;background:#b6e8ff7e}.art-bars i:nth-child(1){height:25px}.art-bars i:nth-child(2){height:42px}.art-bars i:nth-child(3){height:55px}.art-bars i:nth-child(4){height:70px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:19px}.stat-card{display:flex;align-items:center;gap:13px;background:white;border:1px solid var(--line);border-radius:15px;padding:16px 18px}.stat-icon{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;font-size:20px;font-weight:700}.icon-blue{background:#edf3ff;color:#3275e3}.icon-mint{background:#e8faf4;color:#17b88c}.icon-violet{background:#f1edff;color:#8568ea}.stat-card small,.stat-card b{display:block}.stat-card small{color:#8591a6;font-size:11px;margin-bottom:4px}.stat-card b{font-size:20px}.stat-card em{font-style:normal;font-size:11px;color:#8a96aa;font-weight:500}.section-heading{margin:31px 0 15px}.section-heading h2{margin:0;font-size:19px}.text-button{border:0;background:none;color:#72809a;cursor:pointer;font-size:12px}.content-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.course-card{background:white;border:1px solid var(--line);border-radius:16px;padding:12px;display:flex;gap:14px;align-items:center;cursor:pointer;transition:.18s}.course-card:hover,.list-course:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.course-art{height:105px;width:132px;flex:none;border-radius:12px;position:relative;display:grid;place-items:center;overflow:hidden}.course-art>span{position:absolute;left:12px;top:10px;font-size:10px;font-weight:700;opacity:.55}.art-cyan{background:linear-gradient(135deg,#d7f1ff,#a7d6ff);color:#2876d9}.play-glyph{height:43px;width:43px;border-radius:50%;display:grid;place-items:center;color:white;background:linear-gradient(135deg,#48b7ef,#2767e4);padding-left:3px;box-shadow:0 8px 17px #3a7de438}.art-peach{background:linear-gradient(140deg,#fff0db,#ffd8a8);color:#e59435}.book-glyph{font-size:57px;color:#ef9a35}.course-info{min-width:0;flex:1}.tag{display:inline-flex;align-items:center;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:600}.tag-blue{color:#2868d5;background:#edf4ff}.tag-orange{color:#c97c28;background:#fff5e8}.tag-green{color:#139474;background:#e9faf4}.tag-violet{color:#7758d5;background:#f1edff}.tag-gray{color:#7e8ba0;background:#f0f2f6}.course-info h3,.list-course h3{font-size:13px;margin:8px 0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-info small,.list-course small{display:block;color:#909bb0;font-size:10px;margin-top:6px}.progress-track{height:5px;border-radius:5px;background:#edf1f7;overflow:hidden}.progress-track i{height:100%;display:block;background:linear-gradient(90deg,#4ab4ee,#2d6fe4);border-radius:5px}.progress-track .mint-fill{background:linear-gradient(90deg,#59d3ad,#20b78d)}.arrow-circle{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#f2f6ff;color:#3974db;flex:none}.next-task-card{margin-top:16px;padding:17px 19px;background:linear-gradient(100deg,#fff7eb,#fff);border:1px solid #ffedd4;border-radius:15px;display:flex;align-items:center;gap:14px}.task-badge{background:#fff0d9;color:#d9872a;border-radius:10px;padding:10px 11px;font-size:11px;font-weight:700}.next-task-copy{flex:1}.next-task-copy b,.next-task-copy span{display:block}.next-task-copy b{font-size:13px;margin-bottom:4px}.next-task-copy span{font-size:10px;color:#929caf}.filter-row{display:flex;gap:8px;margin:24px 0 17px;overflow:auto}.filter-chip{white-space:nowrap;border:1px solid var(--line);background:white;border-radius:30px;color:#7b879d;padding:9px 15px;font-size:11px;cursor:pointer}.filter-chip b{font-weight:500;margin-left:4px}.filter-chip.selected{background:#2368e7;border-color:#2368e7;color:white}.course-list,.task-list,.exam-list{display:grid;gap:13px}.list-course{background:white;border:1px solid var(--line);border-radius:15px;padding:14px;display:flex;gap:16px;align-items:center;cursor:pointer;transition:.18s}.list-cover{height:91px;width:119px;flex:none;border-radius:12px;display:grid;place-items:center;font-size:28px}.cover-blue{color:#fff;background:linear-gradient(140deg,#78c8f1,#3b77e3)}.cover-peach{color:#d88730;background:linear-gradient(140deg,#ffe9c9,#ffc985)}.cover-mint{color:#fff;background:linear-gradient(140deg,#69dab7,#21ad8a)}.list-course-main{min-width:0;flex:1}.tag-row{display:flex;align-items:center;gap:9px}.small{font-size:10px}.status-pill{border-radius:20px;background:#f3f5f8;color:#7b8798;padding:6px 10px;font-size:10px;white-space:nowrap}.status-learning{background:#edf4ff;color:#2b6bdd}.status-review{background:#fff5e8;color:#ce812b}.status-done{background:#e8faf3;color:#1b9d79}.count-chip{color:#426da9;background:#f0f6ff;border:none;box-shadow:none}.back-button{padding:5px 0;border:0;background:none;color:#58739f;cursor:pointer;font-size:12px;margin-bottom:21px}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:26px}.lesson-main h1,.text-lesson-wrap h1{font-size:23px;margin:11px 0 8px}.video-frame{height:382px;border-radius:18px;background:radial-gradient(ellipse at 55% 40%,#2e70ca,#102b62 64%,#101d3e);margin-top:22px;position:relative;overflow:hidden;display:grid;place-items:center;color:white}.video-glow{position:absolute;width:380px;height:380px;border-radius:50%;background:#47abff21;filter:blur(12px);right:12%;top:-42%}.video-play{width:63px;height:63px;border-radius:50%;display:grid;place-items:center;background:#ffffff26;border:1px solid #ffffff6b;padding-left:4px;font-size:21px;z-index:1}.video-caption{position:absolute;bottom:53px;left:22px;font-size:11px;color:#d3e3ff}.video-controls{position:absolute;bottom:0;left:0;right:0;height:48px;background:#0d1a358c;display:flex;align-items:center;gap:12px;padding:0 17px;font-size:10px;color:#d8e4f4}.control-play{border:0;background:none;color:white;cursor:pointer}.video-track{height:4px;border-radius:5px;background:#ffffff50;flex:1}.video-track i{display:block;width:62%;height:100%;background:#52b7ff;border-radius:5px;transition:width .5s}.lesson-aside{align-self:start;background:white;border:1px solid var(--line);border-radius:15px;padding:19px}.lesson-aside>b{font-size:14px}.lesson-chapters{list-style:none;padding:0;margin:16px 0}.lesson-chapters li{font-size:11px;line-height:1.55;color:#78869d;padding:12px 9px;border-top:1px solid #f0f2f6}.lesson-chapters span{float:right;font-size:9px;color:#8090a8}.lesson-chapters .chapter-done{color:#17a37d}.lesson-chapters .chapter-current{background:#f0f6ff;color:#2869dc;border-radius:8px}.completion-tip{padding:12px;background:#eaf9f3;border-radius:9px;color:#228c70;font-size:10px;line-height:1.6}.lesson-note{display:flex;gap:12px;margin-top:15px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px}.note-icon{color:#3981eb;font-size:20px}.lesson-note b{font-size:12px}.lesson-note p{margin:5px 0 0;color:#76839b;font-size:11px;line-height:1.6}.text-lesson-wrap{max-width:760px;margin:0 auto}.reading-progress{display:flex;justify-content:space-between;color:#4f75b1;font-size:11px;margin:21px 0 9px}.reading-pages{height:355px;overflow:auto;border:1px solid var(--line);border-radius:15px;background:white;scrollbar-color:#cad8ef #f5f7fb}.reading-page{display:none;padding:25px 31px;min-height:580px;position:relative}.reading-page.active{display:block}.page-number{color:#a3aec0;font-size:10px;letter-spacing:1px}.reading-page h2{font-size:22px;margin:18px 0}.reading-page p{font-size:14px;line-height:2;color:#50617d;margin:0 0 17px}.reading-spacer{height:160px}.scroll-hint{color:#a8b1bf;font-size:10px}.text-lesson-wrap>.button{margin-top:14px}.text-lesson-wrap>.button:disabled{background:#b7c7e6;box-shadow:none;cursor:not-allowed}.success-banner{background:#e7f8f1;color:#138365;border-radius:10px;padding:13px;font-size:12px;margin-top:13px}.hidden{display:none!important}.task-list{grid-template-columns:repeat(2,minmax(0,1fr))}.task-card,.exam-card,.task-detail-card,.exam-detail-card{background:white;border:1px solid var(--line);border-radius:16px;padding:21px;box-shadow:0 6px 22px #20467c06}.task-card h2,.exam-card h2{font-size:17px;margin:15px 0 7px}.task-card>p,.exam-card>p{font-size:11px}.task-card-top,.exam-card-top{display:flex;align-items:center;justify-content:space-between}.task-meta,.exam-meta{display:flex;justify-content:space-between;gap:10px;margin:16px 0;color:#8995a8;font-size:10px}.full-button{width:100%}.task-instructions{margin:18px 0;padding:16px;background:#f6f8fc;border-radius:12px;font-size:12px}.task-instructions ol{padding-left:17px;color:#6c7990;line-height:2;margin:7px 0 0}.deadline-dot{color:#c57c31;font-size:11px}.upload-zone{min-height:125px;border:1px dashed #b7c9e6;border-radius:13px;background:#f7faff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;color:#5378b2}.upload-icon{width:29px;height:29px;background:#e4eeff;border-radius:9px;display:grid;place-items:center;color:#3576e0;font-size:19px}.upload-zone b{font-size:12px}.upload-zone small,.fine-print{font-size:10px;color:#9aa5b6}.upload-zone input{display:none}.fine-print{text-align:center}.evidence-preview{display:flex;gap:9px;flex-wrap:wrap;margin:11px 0}.evidence-thumb{width:72px;height:68px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}.result-card{max-width:630px;margin:35px auto;background:white;border:1px solid var(--line);border-radius:20px;padding:31px;text-align:center;box-shadow:var(--shadow)}.result-icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;margin:0 auto 15px;font-size:29px}.result-icon.waiting{background:#edf4ff;color:#3474df}.result-icon.passed{background:#e6f8f1;color:#1aaa80}.result-card h1{margin:12px 0 6px;font-size:23px}.result-card>p{color:#8290a5;font-size:11px}.timeline{text-align:left;margin-top:26px;border-top:1px solid var(--line);padding:20px 0 0 12px}.timeline-item{position:relative;padding:0 0 20px 23px;border-left:1px solid #dce5f2}.timeline-item:last-child{border-left:0}.timeline-item i{position:absolute;left:-5px;top:2px;width:9px;height:9px;border-radius:50%;background:#bdc8d9}.timeline-item.done i{background:#27b88e}.timeline-item.current i{background:#3a78e5;box-shadow:0 0 0 4px #e9f0fd}.timeline-item b,.timeline-item small{display:block;font-size:11px}.timeline-item small{margin-top:5px;color:#8d99ab}.exam-list{grid-template-columns:repeat(2,minmax(0,1fr))}.exam-card{padding:20px}.exam-open{border-top:3px solid #36c49a}.exam-onsite{border-top:3px solid #8a6ce4}.exam-closed{border-top:3px solid #cdd4df}.ip-note{padding:11px;background:#f3f0ff;color:#7157c3;border-radius:9px;font-size:10px;line-height:1.5}.exam-detail-card{max-width:660px;margin:20px auto;padding:28px}.exam-detail-card h1{font-size:25px;margin:13px 0}.exam-facts{display:flex;flex-wrap:wrap;gap:8px;margin:19px 0}.exam-facts span{background:#f2f6fc;padding:9px 11px;border-radius:8px;font-size:10px;color:#62738f}.exam-note{background:#f6f8fc;padding:15px;border-radius:11px;margin-bottom:19px}.exam-note b{font-size:12px}.exam-note p{font-size:11px;color:#75839a;line-height:1.7}.exam-paper-head{display:flex;justify-content:space-between;color:#73819a;align-items:center}.view#view-exam-paper{max-width:790px;margin:0 auto;background:white;border:1px solid var(--line);border-radius:20px;padding:27px}.view#view-exam-paper h1{font-size:22px;margin:27px 0}.question-options{display:grid;gap:11px}.answer-option{display:flex;align-items:center;gap:13px;text-align:left;border:1px solid var(--line);background:white;padding:15px;border-radius:12px;color:#2f6fde;font-weight:700;cursor:pointer}.answer-option span{color:#53617a;font-size:12px;font-weight:500}.answer-option.selected{border-color:#4282ea;background:#f2f7ff}.paper-footer{display:flex;justify-content:space-between;align-items:center;margin-top:28px;color:#8894a7;font-size:10px}.exam-result-card h1{font-size:56px;color:#2368e6}.exam-result-card h1 small{font-size:15px}.score-breakdown{display:flex;justify-content:center;gap:25px;margin:21px 0 25px;color:#8792a5;font-size:10px}.score-breakdown b{color:#263a5b}.profile-card{display:flex;align-items:center;gap:16px;padding:21px;background:white;border:1px solid var(--line);border-radius:17px}.profile-card h1{font-size:21px;margin:7px 0 2px}.profile-card p{margin:0;color:#8591a6;font-size:11px}.profile-card .button{margin-left:auto}.profile-avatar{width:58px;height:58px;font-size:23px}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:19px 0;margin:14px 0;background:white;border:1px solid var(--line);border-radius:15px}.profile-stats div{text-align:center;border-right:1px solid var(--line)}.profile-stats div:last-child{border:0}.profile-stats b,.profile-stats small{display:block}.profile-stats b{font-size:21px;color:#276add}.profile-stats small{font-size:10px;color:#8c98aa;margin-top:5px}.profile-links{background:white;border:1px solid var(--line);border-radius:15px;padding:5px 17px}.profile-links button{width:100%;display:flex;align-items:center;gap:11px;padding:14px 0;border:0;border-bottom:1px solid #f0f2f6;background:white;text-align:left;color:#4e5d77;font-size:12px;cursor:pointer}.profile-links button:last-child{border:0}.profile-links button>span:last-child{margin-left:auto;color:#a3adbd}.link-icon{width:28px;height:28px;border-radius:9px;display:grid;place-items:center}.link-icon.blue{background:#edf3ff;color:#3673df}.link-icon.orange{background:#fff4e5;color:#df9139}.link-icon.violet{background:#f1edff;color:#8062dd}.link-icon.mint{background:#e9faf3;color:#27ab82}.link-icon.gray{background:#f1f3f7;color:#7f8da4}.bottom-nav{display:none}.toast{position:fixed;bottom:29px;left:50%;transform:translate(-50%,15px);opacity:0;background:#1b2b49;color:white;border-radius:10px;padding:11px 17px;font-size:11px;z-index:9;transition:.2s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:760px){body{background:#f7f9fc}.topbar{height:58px;padding:0 17px}.brand-mark{width:34px;height:34px;border-radius:12px}.brand-lockup b{font-size:13px}.brand-lockup small{display:none}.top-context{font-size:10px}.avatar{width:33px;height:33px;font-size:14px}.main-content{padding:24px 16px 102px;min-height:calc(100vh - 58px)}.welcome-row{align-items:flex-start}.welcome-row h1,.page-title-row h1{font-size:22px}.welcome-row .muted{font-size:11px}.streak-pill{font-size:10px;padding:8px 10px}.hero-card{min-height:210px;padding:25px 21px;border-radius:18px;margin-top:20px}.hero-card h2{font-size:23px}.hero-card p{font-size:11px}.hero-art{position:absolute;right:-105px;bottom:1px;transform:scale(.76);transform-origin:bottom left;opacity:.8}.stat-grid{gap:8px;margin-top:12px}.stat-card{padding:11px 9px;gap:7px;border-radius:12px}.stat-icon{width:31px;height:31px;font-size:15px;border-radius:9px}.stat-card small{font-size:9px}.stat-card b{font-size:17px}.stat-card em{font-size:9px}.section-heading{margin:24px 0 12px}.section-heading h2{font-size:16px}.content-grid{grid-template-columns:1fr;gap:9px}.course-card{padding:9px;gap:11px}.course-art{width:88px;height:86px}.course-info h3{font-size:11px;margin:6px 0 8px}.course-info small{font-size:9px}.tag{font-size:9px;padding:4px 7px}.arrow-circle{width:25px;height:25px}.next-task-card{padding:12px;gap:9px}.next-task-copy b{font-size:11px}.next-task-copy span{font-size:9px}.next-task-card .button{padding:9px 10px;font-size:10px}.page-title-row{align-items:flex-start}.count-chip{font-size:9px;padding:8px 9px;margin-top:8px}.filter-row{margin:18px 0 12px}.filter-chip{padding:8px 12px;font-size:10px}.list-course{gap:10px;padding:10px}.list-cover{width:70px;height:75px}.list-course h3{font-size:11px;white-space:normal;margin:6px 0}.list-course small{font-size:9px}.list-course .status-pill{font-size:9px;padding:5px 7px}.lesson-layout{display:block}.lesson-main h1,.text-lesson-wrap h1{font-size:19px}.video-frame{height:235px;margin-top:17px}.lesson-aside{margin-top:12px}.lesson-aside>b{font-size:12px}.lesson-chapters{margin:8px 0}.lesson-chapters li{padding:8px;font-size:10px}.completion-tip{font-size:9px}.lesson-note{padding:12px}.reading-pages{height:56vh;min-height:300px}.reading-page{padding:21px 20px;min-height:610px}.reading-page h2{font-size:19px}.reading-page p{font-size:12px}.task-list,.exam-list{grid-template-columns:1fr}.task-card,.exam-card{padding:16px}.task-card h2,.exam-card h2{font-size:15px}.task-detail-card{padding:18px}.task-detail-card h1{font-size:20px}.task-meta,.exam-meta{font-size:9px}.exam-facts{gap:5px}.exam-facts span{font-size:9px;padding:8px}.view#view-exam-paper{padding:18px}.view#view-exam-paper h1{font-size:18px;line-height:1.5}.answer-option{padding:12px;font-size:12px}.answer-option span{font-size:11px}.paper-footer{align-items:flex-start;flex-direction:column;gap:12px}.paper-footer .button{width:100%}.score-breakdown{gap:12px;font-size:9px}.profile-card{gap:11px;padding:14px}.profile-avatar{width:47px;height:47px}.profile-card h1{font-size:17px}.profile-card p{font-size:9px}.profile-card .button{padding:8px;font-size:9px}.profile-stats{padding:14px 0}.profile-stats b{font-size:18px}.profile-stats small{font-size:9px}.bottom-nav{height:67px;position:fixed;z-index:6;left:0;right:0;bottom:0;display:flex;justify-content:space-around;align-items:center;background:#ffffffed;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);backdrop-filter:blur(16px)}.nav-item{height:53px;min-width:52px;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;border:0;background:transparent;color:#9aa5b7;cursor:pointer}.nav-symbol{font-size:21px;line-height:22px}.nav-item small{font-size:9px}.nav-item.active{color:#2469e5}.nav-item.active .nav-symbol{font-weight:700}.nav-badge{position:absolute;top:3px;right:6px;min-width:15px;height:15px;display:grid;place-items:center;border-radius:10px;background:#ef7d69;color:white;font-style:normal;font-size:8px;border:1px solid white}.toast{bottom:81px}.result-card{margin:20px auto;padding:24px 17px}}
@media(min-width:761px) and (max-width:1000px){.main-content{padding-left:24px;padding-right:24px}.hero-art{margin-right:0;transform:scale(.82);transform-origin:center right}.course-art{width:100px}}
body.logged-out .top-context,body.logged-out .avatar,body.logged-out .bottom-nav{display:none}body.logged-out .main-content{min-height:calc(100vh - 74px);display:grid;place-items:center;padding-top:28px;padding-bottom:28px}.login-panel,.password-modal{width:min(100%,420px);background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px;box-shadow:var(--shadow)}.login-panel{text-align:center}.login-mark,.modal-mark{width:54px;height:54px;margin:0 auto 19px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(140deg,#2bb5ee,#2763e8);box-shadow:0 10px 20px #2a70dd2e;color:white;font-size:29px}.login-panel h1,.password-modal h2{font-size:24px;margin:0 0 8px}.login-panel>.muted,.password-modal>.muted{font-size:11px;margin-bottom:23px}.login-field{display:grid;gap:7px;text-align:left;margin-bottom:14px}.login-field span{font-size:10px;color:#6f7d95}.login-field input{height:43px;width:100%;border:1px solid #e3eaf4;border-radius:9px;padding:0 12px;font:12px inherit;color:var(--ink);outline:none}.login-field input:focus{border-color:#70a0ee;box-shadow:0 0 0 3px #eaf2ff}.login-help{display:block;color:#9aa5b5;font-size:9px;margin-top:15px;line-height:1.6}.login-footer{border-top:1px solid #eff2f6;margin-top:23px;padding-top:14px;color:#8c99ad;font-size:10px}.modal-backdrop{position:fixed;z-index:12;inset:0;background:#17284671;display:grid;place-items:center;padding:18px}.modal-backdrop.hidden{display:none}.password-modal{text-align:center}.password-modal .login-field{text-align:left}.password-modal .button{width:100%}
@media(max-width:760px){body.logged-out .main-content{min-height:calc(100vh - 58px);padding:18px}.login-panel,.password-modal{padding:27px 21px;border-radius:18px}.login-panel h1,.password-modal h2{font-size:21px}.modal-backdrop{align-items:center}}
.desktop-nav{display:flex;align-items:center;gap:4px}.desktop-nav button{border:0;background:transparent;color:#8390a5;padding:9px 12px;border-radius:8px;font:600 11px 'Microsoft YaHei','PingFang SC','Segoe UI',sans-serif;cursor:pointer}.desktop-nav button:hover,.desktop-nav button.active{background:#edf4ff;color:#286be4}body.logged-out .desktop-nav{display:none}
@media(max-width:760px){.desktop-nav{display:none}.topbar{justify-content:space-between}}
:root{--ink:#1a2333;--muted:#6b7a90;--line:#e8edf3;--blue:#2b6ce5;--bg:#eff3fa}body{font-size:14px;background:var(--bg)}.main-content{max-width:1190px;padding:32px 28px 88px}.muted{font-size:14px;color:var(--muted)}.button{font-size:14px;padding:12px 18px;min-height:44px;border-radius:12px}.button-ghost,.button-white{font-size:14px}.tag{font-size:12px;padding:6px 10px}.welcome-row h1,.page-title-row h1,.login-panel h1{font-size:24px}.section-heading h2{font-size:20px}.stat-card{padding:20px;border-radius:16px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 4px 12px rgba(0,0,0,.04)}.stat-card small,.count-chip,.streak-pill{font-size:12px}.stat-card b{font-size:27px}.course-card,.list-course,.task-card,.exam-card,.profile-card,.profile-links,.task-detail-card,.result-card{padding:20px;border-radius:16px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 4px 12px rgba(0,0,0,.04)}.course-info h3,.list-course h3{font-size:15px}.course-info small,.list-course small,.status-pill,.filter-chip,.task-meta,.exam-meta,.fine-print,.login-help,.login-field span,.login-footer{font-size:12px}.course-list,.task-list,.exam-list{gap:16px}.content-grid{gap:16px}.filter-chip{padding:10px 16px}.lesson-main h1,.text-lesson-wrap h1{font-size:22px}.reading-page p{font-size:14px;line-height:1.9}.reading-page h2{font-size:20px}.reading-pages{border-radius:16px}.login-panel,.password-modal{box-shadow:0 1px 3px rgba(0,0,0,.04),0 4px 12px rgba(0,0,0,.04)}.login-field input{font-size:14px;padding:0 14px}.login-panel>.muted,.password-modal>.muted{font-size:14px}.profile-stats b{font-size:25px}.profile-stats small,.profile-links button{font-size:13px}.nav-item small{font-size:12px}.nav-item{min-height:56px}.reading-page .scroll-hint{font-size:12px}.learning-empty{padding:28px;text-align:center;color:var(--muted);font-size:14px;background:#fff;border-radius:16px}@media(max-width:760px){.main-content{padding:22px 16px 108px}.welcome-row h1,.page-title-row h1{font-size:22px}.welcome-row .muted,.hero-card p,.course-info small,.task-meta,.exam-meta{font-size:12px}.hero-card{padding:24px 20px}.stat-grid{gap:8px}.stat-card{padding:14px 9px}.stat-card small{font-size:11px}.stat-card b{font-size:22px}.content-grid{gap:12px}.course-card{padding:14px 12px}.course-info h3,.list-course h3{font-size:14px}.list-course{padding:14px 12px}.list-course .status-pill{font-size:11px}.task-card,.exam-card{padding:18px}.reading-pages{height:56vh}.reading-page{padding:20px 18px}.reading-page p{font-size:14px}.profile-card{padding:16px}.profile-card p{font-size:12px}.profile-card .button{font-size:12px}.toast{font-size:13px}.login-panel,.password-modal{padding:28px 22px}}

.task-instructions{margin:20px 0;padding:16px 18px;background:#f5f8fe;border:1px solid #e6edfa;border-radius:12px}.task-instructions ol{margin:10px 0 0;padding-left:22px;color:#43536c;line-height:1.8}.task-instructions li+li{margin-top:5px}.task-old-evidence{margin:16px 0}.task-old-evidence>b{display:block;margin-bottom:10px}.upload-zone{display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 16px;border:1.5px dashed #9ab8ef;border-radius:14px;background:#f8faff;text-align:center;cursor:pointer}.upload-zone:hover{background:#f0f6ff;border-color:var(--blue)}.upload-zone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.upload-zone small{color:var(--muted);font-size:12px}.upload-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#e7f0ff;color:var(--blue);font-size:25px}.task-detail-card .success-banner{margin-top:18px}.task-detail-card #task-submit-button{margin-top:12px}.result-card .callout{margin:14px 0;padding:12px;border-radius:10px;background:#fff4ed;color:#a75530;font-size:13px}
/* Runtime navigation visibility overrides the default bottom tab layout. */
.nav-item[hidden],.desktop-nav button[hidden]{display:none!important}
.nav-badge[hidden]{display:none!important}
