.track-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.track-tile{border:1px solid #e3e8ed;border-radius:24px;overflow:hidden;background:white;box-shadow:0 14px 35px #183c3610}.track-cover{height:190px;padding:25px;display:flex;flex-direction:column;position:relative;color:white;background:linear-gradient(125deg,#6551a7,#302650)}.track-cover span,.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800}.track-cover b{font-size:76px;font-weight:400;line-height:1.3}.track-cover small{position:absolute;right:24px;bottom:25px;letter-spacing:2px;font-size:10px}.teal .track-cover,.track-hero.teal{background:linear-gradient(120deg,#145a58,#24877c)}.navy .track-cover,.track-hero.navy{background:linear-gradient(120deg,#233d62,#406493)}.track-body{padding:26px}.track-body h2{font-size:24px;margin:15px 0}.track-body p{color:#68756f;line-height:1.7;min-height:80px}.track-numbers{display:flex;justify-content:space-between;font-size:11px;color:#68756f;margin:22px 0 12px}.track-body .button{display:block;text-align:center;margin-top:22px}.track-guidance{margin-top:28px}.track-breadcrumb{font-size:12px;color:#6b7774;margin-bottom:20px}.track-breadcrumb a{color:var(--green)}.track-hero{padding:40px;border-radius:26px;background:linear-gradient(125deg,#6551a7,#302650);color:white;display:grid;grid-template-columns:1fr 220px;align-items:center;gap:30px}.track-hero h1{font-size:40px;color:white;margin:15px 0}.track-hero p{max-width:590px;line-height:1.8;color:#ffffffd9}.track-hero .secondary{background:#ffffff15;border-color:#ffffff70;color:white}.track-hero-glyph{text-align:center;font-size:105px;font-weight:300}.track-hero-glyph small{display:block;font-size:10px;letter-spacing:2px}.track-metrics{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #e1e7e3;border-radius:18px;background:white;margin:22px 0 35px;padding:24px}.track-metrics div{display:flex;align-items:center;gap:14px;justify-content:center}.track-metrics strong{font-size:28px;color:var(--green)}.track-metrics span{font-size:12px;color:#67746f}.track-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:25px;margin-bottom:35px}aside.track-side{position:static;width:auto;height:auto;background:none;border:0;padding:0;display:flex;flex-direction:column;gap:20px}.track-stage{display:flex;gap:12px;align-items:center;margin:24px 0;font-size:13px;line-height:1.6}.track-stage b{background:#edf3ef;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;flex-shrink:0;color:var(--green)}.track-syllabus{border:1px solid #e1e7e3;border-radius:18px;overflow:hidden;background:white}.syllabus-row{display:grid;grid-template-columns:40px 1fr 24px;gap:16px;align-items:center;text-align:left;border:0;border-bottom:1px solid #edf1ef;background:white;color:#263a34;padding:20px;width:100%;border-radius:0}.syllabus-row:hover{background:#f2f7f4}.syllabus-row:last-child{border-bottom:0}.syllabus-row strong{display:block;font-size:14px;line-height:1.6}.syllabus-row small{display:block;color:#7d8984;font-size:11px;margin-top:5px}.syllabus-number{font-size:14px;color:#96a59d}.syllabus-status{color:var(--green)}.scenario-grid,.mock-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.mock-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:25px 0}.scenario-grid .muted,.mock-grid .muted{font-size:13px;line-height:1.7}.mock-section{padding-top:25px}.roleplay-lines{display:grid;gap:20px;margin:25px 0}.roleplay-line{display:grid;grid-template-columns:30px 1fr 45px;gap:12px;padding:18px;border-radius:14px;background:#edf4ef;align-items:start}.roleplay-line.role-b{background:#f2eff7}.roleplay-line h3{font-size:23px;margin:0}.roleplay-line p{font-size:13px;color:#68776e}.translation{background:none;border:0;color:#485e53;padding:0;text-align:left;font-weight:400;font-size:13px}.translation.masked{color:transparent;background:#cbd8d0;border-radius:4px}.home-track-links{display:flex;gap:12px;margin-bottom:25px}.home-track-links a{padding:16px;border:1px solid #dbe6df;background:white;border-radius:14px;flex:1;color:var(--green);font-weight:700;font-size:13px}.speaking-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:25px}.speaking-prompt h2{font-size:30px;line-height:1.6}.speaking-prompt details{margin:24px 0;font-size:14px;line-height:1.8}.record-zone{text-align:center;padding:30px 15px;background:#f2f6f3;border-radius:18px;margin-top:30px}.record-indicator{font-size:40px;color:#8bafa0}.record-indicator.recording{color:#c95151;animation:recordPulse 1s infinite}.record-zone audio{max-width:100%;margin-top:25px}.speaking-checks{display:grid;gap:20px;margin:30px 0;font-size:14px}.speaking-checks input{accent-color:var(--green)}.exam-dialog{max-width:1000px;width:calc(100% - 32px)}.exam-body{display:grid;grid-template-columns:180px minmax(0,1fr);gap:30px;margin-top:30px}aside.exam-map{position:static;width:auto;height:auto;padding:0;border:0;background:none;display:block}.exam-map>div{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.exam-map button{background:#f0f4f1;color:#557063;border:1px solid #d5e0d9;padding:8px;font-size:12px;border-radius:7px}.exam-map button.answered{background:#d5e8dd}.exam-map button.current{border:2px solid var(--green)}.exam-map small{display:block;color:#718078;font-size:11px;line-height:1.7;margin-top:20px}.exam-clock{background:#edf4ef;color:var(--green);padding:8px 14px;border-radius:8px;font-variant-numeric:tabular-nums}.reading-passage{font-size:23px;line-height:1.8;background:#f2f6f3;padding:22px;border-radius:13px}.answers .exam-selected{background:#e2f0e7;border-color:var(--green);color:var(--green)}.exam-skill-results{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.exam-skill-results div{text-align:center;background:#edf4ef;padding:18px;border-radius:12px}.exam-skill-results strong,.exam-skill-results small{display:block}.exam-skill-results strong{font-size:23px;color:var(--green)}.exam-skill-results small{margin-top:8px;color:#6c7c72}.answer-review{border:1px solid #dfe8e2;border-radius:12px;padding:16px;margin:12px 0;font-size:14px;line-height:1.7}.answer-review summary{cursor:pointer;font-weight:700}.landing-track-grid{text-align:left}.text-link{color:var(--green);font-size:13px;line-height:2}@keyframes recordPulse{50%{opacity:.35}}@media(max-width:1100px){.track-grid{gap:14px}.track-body{padding:20px}.track-layout{grid-template-columns:minmax(0,1fr) 230px}.track-hero{grid-template-columns:1fr 160px;padding:30px}.track-hero h1{font-size:32px}}@media(max-width:800px){.track-grid,.track-layout,.speaking-layout{grid-template-columns:1fr}.track-body p{min-height:0}.track-cover{height:155px}.track-hero{grid-template-columns:1fr;padding:25px}.track-hero-glyph{display:none}.track-hero h1{font-size:30px}.track-metrics{padding:18px 8px;gap:8px}.track-metrics div{flex-direction:column;gap:6px;text-align:center}.track-metrics span{font-size:10px}.mock-grid,.scenario-grid{grid-template-columns:1fr}.exam-body{grid-template-columns:1fr;gap:20px}.exam-map>div{grid-template-columns:repeat(10,1fr)}.exam-map small{margin-top:8px}.home-track-links{gap:6px}.home-track-links a{padding:12px 8px;font-size:11px}.roleplay-line{grid-template-columns:22px 1fr 40px;padding:12px;gap:8px}.roleplay-line h3{font-size:21px}.exam-dialog{padding:20px}.exam-skill-results{grid-template-columns:repeat(2,1fr)}.track-hero .actions{flex-wrap:wrap}}
.material-filters{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.material-card h2{font-size:22px;line-height:1.5}.material-card .pill{margin-left:12px;font-size:10px}.material-dialog{max-width:850px}.material-reading{font-size:28px;line-height:1.9;background:#f0f5f1;border-radius:18px;padding:25px;margin:25px 0}.material-vocab{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0}.material-vocab div{background:#f4f6f2;padding:16px;border-radius:12px;display:flex;flex-direction:column;gap:8px}.material-vocab strong{font-size:23px}.material-vocab small{color:var(--green)}.material-vocab span{font-size:12px;color:#637368}.material-question,.material-task{margin:18px 0}.material-feedback{font-size:14px;line-height:1.8;color:var(--green)}.material-entry{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;background:#edf5ee;border-radius:14px;margin-bottom:25px;font-size:13px;color:var(--green)}@media(max-width:600px){.material-vocab{grid-template-columns:repeat(2,1fr)}.material-reading{font-size:24px;padding:18px}.material-entry{align-items:flex-start;flex-direction:column;gap:10px}.material-filters button{font-size:12px;padding:10px}.material-card .pill{display:block;width:max-content;margin:12px 0 0}}
.work-phrase-bank{margin:25px 0}.work-phrase-bank .card{margin-top:14px}.work-phrase-bank h3{font-size:23px;line-height:1.6}.work-phrase-bank p{font-size:14px;line-height:1.8}
.vocab-row.with-picture{display:grid;grid-template-columns:80px 90px minmax(0,1fr) 45px;gap:16px}.vocab-picture{object-fit:contain;background:#f8f6f0;border-radius:14px;max-width:100%;flex:none}.vocab-picture-lesson{width:80px;height:80px}.vocab-row.with-picture strong{min-width:0}.vocab-picture-review{width:220px;height:220px;display:block;margin:22px auto}.picture-intro{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:25px 0}.picture-intro p{font-size:13px;line-height:1.8}.picture-word-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:25px 0}.picture-word-card{background:white;border:1px solid #e1e6df;border-radius:20px;overflow:hidden}.picture-word-card figure{margin:0;background:#f8f6f0;aspect-ratio:1;display:grid;place-items:center}.vocab-picture-gallery{width:100%;height:100%;border-radius:0}.picture-word-content{padding:20px;position:relative}.picture-word-content>strong{font-size:30px}.picture-word-content>button.secondary{position:absolute;right:16px;top:18px;padding:8px 12px}.picture-word-content details{margin-top:18px;font-size:12px;line-height:1.8}.picture-word-content details p{color:var(--green)}.picture-word-content details h3{font-size:17px}.picture-word-content small{display:block;color:#899288;font-size:10px;margin:18px 0 8px}.picture-lesson-link{padding:0;background:none;border:0;color:var(--green);font-size:11px;font-weight:400}.picture-word-content .text-link{font-size:11px}@media(max-width:1100px){.picture-word-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.picture-word-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.picture-word-content{padding:14px}.picture-word-content>strong{font-size:25px}.picture-word-content>button.secondary{right:12px;top:13px}.picture-intro{align-items:flex-start;flex-direction:column}.vocab-row.with-picture{grid-template-columns:65px minmax(0,1fr) 40px;gap:10px}.vocab-row.with-picture .vocab-picture{width:65px;height:65px;grid-row:1/3;grid-column:1}.vocab-row.with-picture>strong{grid-row:1;grid-column:2;font-size:25px}.vocab-row.with-picture>div{grid-row:2;grid-column:2;font-size:12px}.vocab-row.with-picture>button{grid-row:1/3;grid-column:3}.vocab-picture-review{width:180px;height:180px}}
.vocabulary-controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:18px;margin:25px 0}.vocabulary-results{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#718277}.vocabulary-card .picture-word-content>strong{display:block;margin-top:12px}.vocabulary-card .picture-word-content>button.secondary{top:46px}.vocabulary-pinyin{color:var(--green);font-size:13px}.vocabulary-card h3{font-size:16px;line-height:1.6}.vocabulary-actions{display:grid;gap:14px;margin-top:20px}.vocabulary-actions button.secondary{font-size:11px;padding:10px}.vocabulary-card .tag{font-size:9px}@media(max-width:700px){.vocabulary-controls{grid-template-columns:1fr 1fr;gap:12px}.vocabulary-controls>label:first-child{grid-column:1/-1}.vocabulary-results{font-size:10px;gap:12px}}
.vocabulary-release{display:flex;justify-content:space-between;align-items:center;gap:25px;margin:24px 0;background:#eef5ef}.vocabulary-release h3{margin:12px 0}.vocabulary-release p{font-size:12px;line-height:1.7}@media(max-width:650px){.vocabulary-release{flex-direction:column;align-items:flex-start}}

/* Quick curriculum links: decorative icons, visible labels, whole-card targets. */
.home-track-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.home-track-links .home-track-link{display:flex;align-items:center;gap:14px;min-width:0;padding:18px 20px;border:1px solid #e6e0ef;border-radius:18px;background:#fff;box-shadow:0 3px 10px #2d254a04;transition:background-color .18s,border-color .18s}
.home-track-icon{width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border-radius:14px;background:#f0eafa;color:#7450bf}
.home-track-icon svg{width:26px;height:26px;display:block}
.home-track-work .home-track-icon{background:#e6f4f0;color:#247768}
.home-track-certificate .home-track-icon{background:#fff1df;color:#a96620}
.home-track-label{font-size:15px;font-weight:700;color:#342b4b;line-height:1.4}
.home-track-arrow{margin-left:auto;font-size:21px;font-weight:400;color:#9d91b0}
.home-track-links .home-track-link:hover{background:#fbf9ff;border-color:#bba9d8}
@media(max-width:700px){.home-track-links{gap:8px}.home-track-links .home-track-link{flex-direction:column;justify-content:center;gap:9px;padding:14px 6px;border-radius:15px}.home-track-icon{width:38px;height:38px;flex-basis:38px;border-radius:12px}.home-track-icon svg{width:23px;height:23px}.home-track-label{font-size:12px;text-align:center}.home-track-arrow{display:none}}

.vocabulary-access-summary{display:flex;align-items:center;gap:20px;padding:25px;border:1px solid #ddd3ef;border-radius:20px;background:#f4effb;margin:25px 0 12px}
.vocabulary-access-icon{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:15px;background:white;color:#7855b5}
.vocabulary-access-icon svg{display:block;width:27px;height:27px}
.vocabulary-access-summary>div{flex:1;min-width:0}.vocabulary-access-summary h2{margin:12px 0 8px;font-size:21px;line-height:1.4}.vocabulary-access-summary p{font-size:13px;line-height:1.7}.vocabulary-access-summary>a{flex-shrink:0;text-align:center}
@media(max-width:850px){.vocabulary-access-summary{flex-wrap:wrap;padding:22px;align-items:flex-start}.vocabulary-access-summary>div{flex-basis:calc(100% - 70px)}.vocabulary-access-summary>a{width:100%;font-size:13px}.vocabulary-access-summary h2{font-size:19px}}
