/* Trang chủ (tách từ front-page.php) */
#primary.cht-home{--cht-ink:#17324d;--cht-muted:#506578;--cht-teal:#087568;--cht-navy:#173f59;--cht-soft:#f3f8fa;--cht-line:#dce6eb;--cht-paper:#fff;color:var(--cht-ink);background:var(--cht-paper);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65;isolation:isolate}
#primary.cht-home *{box-sizing:border-box}
#primary.cht-home h1,#primary.cht-home h2,#primary.cht-home h3,#primary.cht-home p{margin:0}
#primary.cht-home h1,#primary.cht-home h2,#primary.cht-home h3{color:var(--cht-ink);font-family:inherit;font-weight:700;text-transform:none}
#primary.cht-home h1{font-size:clamp(32px,4.3vw,52px);line-height:1.16;letter-spacing:-1.5px;max-width:640px}
#primary.cht-home h1 span{color:var(--cht-teal)}
#primary.cht-home h2{font-size:clamp(25px,2.9vw,34px);line-height:1.3;letter-spacing:-.6px}
#primary.cht-home h3{font-size:21px;line-height:1.4}
#primary.cht-home p{max-width:70ch}
#primary.cht-home a{color:var(--cht-teal);text-decoration-thickness:1px;text-underline-offset:4px}
#primary.cht-home a:hover{text-decoration:underline}
#primary.cht-home a:focus-visible,#primary.cht-home summary:focus-visible{outline:3px solid var(--cht-teal);outline-offset:4px}
#primary.cht-home .cht-wrap{max-width:1160px;margin:0 auto;padding:0 28px}
#primary.cht-home .cht-section{padding:54px 0}
#primary.cht-home .cht-eyebrow{margin-bottom:13px;color:var(--cht-teal);font-size:13px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase}
#primary.cht-home .cht-intro{margin-top:20px;color:var(--cht-muted);font-size:18px}
#primary.cht-home .cht-head{display:flex;justify-content:space-between;align-items:end;gap:18px;flex-wrap:wrap;margin-bottom:24px}
#primary.cht-home .cht-head p{margin-top:10px;color:var(--cht-muted)}
#primary.cht-home .cht-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
#primary.cht-home .cht-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid var(--cht-navy);border-radius:8px;background:var(--cht-navy);color:#fff;font-size:16px;font-weight:700;line-height:1.4;text-align:center;text-decoration:none}
#primary.cht-home .cht-button:hover{background:#205371;color:#fff;text-decoration:none}
#primary.cht-home .cht-button.cht-secondary{background:var(--cht-paper);color:var(--cht-ink);border-color:var(--cht-line)}
#primary.cht-home .cht-button.cht-secondary:hover{background:var(--cht-soft)}
#primary.cht-home .cht-hero{padding:64px 0;background:linear-gradient(115deg,#fff 40%,#f0f6f8 100%)}
#primary.cht-home .cht-hero-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:46px;align-items:center}
#primary.cht-home .cht-sample{padding:27px;background:#fff;border:1px solid var(--cht-line);border-radius:18px;box-shadow:0 12px 32px #153d560b}
#primary.cht-home .cht-sample-label{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--cht-muted)}
#primary.cht-home .cht-tag{display:inline-block;padding:4px 9px;border-radius:5px;background:#e7f4ef;color:#076456;font-size:13px;font-weight:700}
#primary.cht-home .cht-figure{height:170px;max-width:340px;margin:8px auto 18px;position:relative;overflow:hidden}
#primary.cht-home .cht-plane{position:absolute;width:68%;height:48px;left:13%;top:111px;transform:skew(-34deg) rotate(-8deg);background:#e7f4ef;border:1.5px solid #087568}
#primary.cht-home .cht-perp{position:absolute;left:54%;top:30px;height:99px;border-left:2px dashed #087568}
#primary.cht-home .cht-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:#17324d;left:calc(54% - 3px);top:26px}
#primary.cht-home .cht-dot.cht-foot{top:125px;background:#087568}
#primary.cht-home .cht-m{position:absolute;left:calc(54% + 11px);top:18px;font-family:Georgia,serif}
#primary.cht-home .cht-h{position:absolute;left:calc(54% - 1px);top:134px;font-family:Georgia,serif}
#primary.cht-home .cht-p{position:absolute;left:20%;top:125px;color:#087568;font-family:Georgia,serif}
#primary.cht-home .cht-angle{position:absolute;left:54%;top:117px;width:12px;height:12px;border-top:1.5px solid #087568;border-right:1.5px solid #087568}
#primary.cht-home .cht-sample h3{font-size:23px;margin-bottom:14px}
#primary.cht-home .cht-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
#primary.cht-home .cht-card{display:flex;flex-direction:column;align-items:start;padding:25px;border:1px solid var(--cht-line);border-radius:14px;background:#fff;color:var(--cht-ink);text-decoration:none;min-width:0}
#primary.cht-home .cht-card:hover{background:var(--cht-soft);text-decoration:none}
#primary.cht-home .cht-card p{margin-top:12px;color:var(--cht-muted);font-size:16px}
#primary.cht-home .cht-card-link{display:block;margin-top:22px;color:var(--cht-teal);font-size:16px;font-weight:700}
#primary.cht-home .cht-future{margin-top:22px;padding-top:17px;border-top:1px solid var(--cht-line);color:var(--cht-muted);font-size:15px}
#primary.cht-home .cht-path{background:var(--cht-soft)}
#primary.cht-home .cht-path-grid{display:grid;grid-template-columns:.9fr 1.2fr;gap:40px;align-items:start}
#primary.cht-home .cht-path-note{color:var(--cht-muted);margin-top:14px}
#primary.cht-home .cht-steps{margin:0;padding-left:25px;display:grid;gap:11px}
#primary.cht-home .cht-steps li{padding:9px 12px 9px 6px;color:var(--cht-teal)}
#primary.cht-home .cht-steps a{color:var(--cht-ink)}
#primary.cht-home .cht-lesson{border-top:2px solid var(--cht-teal);padding-top:20px;min-width:0}
#primary.cht-home .cht-lesson .cht-subject{display:block;margin-bottom:13px;font-size:14px;color:var(--cht-muted)}
#primary.cht-home .cht-lesson h3{font-size:21px}
#primary.cht-home .cht-lesson h3 a{color:var(--cht-ink);text-decoration:none}
#primary.cht-home .cht-lesson h3 a:hover{text-decoration:underline}
#primary.cht-home .cht-lesson p{color:var(--cht-muted);font-size:16px;margin-top:12px}
#primary.cht-home .cht-class{background:var(--cht-navy);color:#fff;border-radius:18px;padding:36px;display:grid;grid-template-columns:1.2fr 1fr;gap:35px;align-items:center}
#primary.cht-home .cht-class h2,#primary.cht-home .cht-class h3{color:#fff}
#primary.cht-home .cht-class p{color:#e1edf3;margin-top:16px}
#primary.cht-home .cht-class .cht-tag{background:#ffffff1a;color:#fff;margin-bottom:16px}
#primary.cht-home .cht-class .cht-button{margin-top:22px;background:#fff;color:var(--cht-navy);border-color:#fff}
#primary.cht-home .cht-class .cht-button:hover{background:#eaf2f6}
#primary.cht-home .cht-class-side{border-left:1px solid #ffffff4a;padding-left:30px}
#primary.cht-home .cht-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px}
#primary.cht-home .cht-methods{margin:18px 0 0;padding-left:22px;color:var(--cht-muted)}
#primary.cht-home .cht-methods li{margin:10px 0}
#primary.cht-home .cht-faq{border-top:1px solid var(--cht-line);padding:0}
#primary.cht-home .cht-faq summary{padding:18px 0;cursor:pointer;font-weight:700;line-height:1.5}
#primary.cht-home .cht-faq p{padding:0 0 20px;font-size:16px;color:var(--cht-muted)}
#primary.cht-home .cht-contact{border-top:1px solid var(--cht-line);margin-top:30px;padding-top:22px;color:var(--cht-muted)}
#primary.cht-home [id]{scroll-margin-top:24px}
@media(max-width:760px){#primary.cht-home .cht-wrap{padding-left:22px;padding-right:22px}#primary.cht-home .cht-hero{padding-top:40px;padding-bottom:40px}#primary.cht-home .cht-hero-grid,#primary.cht-home .cht-path-grid,#primary.cht-home .cht-about-grid,#primary.cht-home .cht-class{grid-template-columns:1fr;gap:28px}#primary.cht-home .cht-section{padding-top:38px;padding-bottom:38px}#primary.cht-home .cht-grid{grid-template-columns:1fr;gap:24px}#primary.cht-home .cht-card{padding:22px}#primary.cht-home .cht-class{padding:28px 24px}#primary.cht-home .cht-class-side{border-left:0;border-top:1px solid #ffffff4a;padding-left:0;padding-top:24px}#primary.cht-home .cht-intro{font-size:17px}#primary.cht-home .cht-head{align-items:start}#primary.cht-home .cht-sample{padding:23px}#primary.cht-home h1{letter-spacing:-.8px}}
@media(max-width:390px){#primary.cht-home .cht-wrap{padding-left:18px;padding-right:18px}#primary.cht-home .cht-actions{flex-direction:column;align-items:stretch}#primary.cht-home .cht-button{width:100%}}
@media(prefers-reduced-motion:reduce){#primary.cht-home *{scroll-behavior:auto}}
#primary.cht-home{width:100%;min-width:0;max-width:none;margin:0;padding:0;float:none;display:block}
#primary.cht-home p{text-align:left;letter-spacing:normal}
#primary.cht-home h1,#primary.cht-home h2,#primary.cht-home h3{padding:0;width:auto;letter-spacing:normal}
#primary.cht-home h1{letter-spacing:-1.5px}
#primary.cht-home h2{letter-spacing:-.6px}
#primary.cht-home h2::after{content:none;display:none}
#primary.cht-home .cht-steps{list-style:decimal outside}
#primary.cht-home .cht-methods{list-style:disc outside}
#primary.cht-home .cht-sample-steps{margin:22px 0 18px;padding-left:22px;list-style:decimal outside;color:var(--cht-muted);font-size:16px}
#primary.cht-home .cht-sample-steps li{margin:9px 0}
#primary.cht-home .cht-card .cht-tag{margin-bottom:15px}
#primary.cht-home a,#primary.cht-home summary{font-family:inherit}
#primary.cht-home details>summary{display:list-item;list-style:disclosure-closed inside}
#primary.cht-home details[open]>summary{list-style-type:disclosure-open}
@media(max-width:760px){#primary.cht-home h1{letter-spacing:-.8px}}


/* CHT EDITORIAL HOMEPAGE 20261029 */
#primary.cht-home .cht-editorial-shortcuts{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:20px;font-size:15px;font-weight:700}
#primary.cht-home .cht-editorial-home{background:linear-gradient(120deg,#f3f8f6,#faf7ff);border-top:1px solid #e1eae6;border-bottom:1px solid #e1eae6}
#primary.cht-home .cht-editorial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
#primary.cht-home .cht-editorial-card{min-width:0;display:flex;flex-direction:column;padding:30px;border:1px solid #dce6e3;border-radius:20px;background:#fff;box-shadow:0 8px 24px #17324d05}
#primary.cht-home .cht-editorial-card-head{display:flex;align-items:center;gap:18px;margin-bottom:18px}
#primary.cht-home .cht-editorial-icon{display:grid;place-items:center;flex:0 0 66px;width:66px;height:66px;border-radius:18px;background:#edf6f2}
#primary.cht-home .cht-editorial-card-books .cht-editorial-icon{background:#f2edfb}
#primary.cht-home .cht-editorial-icon svg{width:44px;height:44px;display:block}
#primary.cht-home .cht-editorial-label{color:#456960;font-size:12px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;margin-bottom:6px}
#primary.cht-home .cht-editorial-card h3{font-size:25px;line-height:1.3}
#primary.cht-home .cht-editorial-description{font-size:17px;color:var(--cht-muted);margin-bottom:22px;line-height:1.7}
#primary.cht-home .cht-editorial-feed{margin-top:auto}
#primary.cht-home .cht-publication-empty{padding:19px 20px;border:1px dashed #cbded6;border-radius:12px;background:#f7fbf9}
#primary.cht-home .cht-editorial-card-books .cht-publication-empty{background:#faf8fd;border-color:#ded6ec}
#primary.cht-home .cht-publication-empty p{font-size:14px;line-height:1.7;color:var(--cht-muted)}
#primary.cht-home .cht-publication-empty .cht-publication-empty-title{font-size:15px;font-weight:700;color:var(--cht-ink);margin-bottom:7px}
#primary.cht-home .cht-publication-list{display:grid;gap:16px}
#primary.cht-home .cht-publication-item{padding-top:16px;border-top:1px solid var(--cht-line)}
#primary.cht-home .cht-publication-category{display:none}
#primary.cht-home .cht-publication-title{font-family:inherit;font-size:19px;font-weight:700;line-height:1.45;margin:0 0 6px;text-transform:none;letter-spacing:normal}
#primary.cht-home .cht-publication-title a{color:var(--cht-ink)}
#primary.cht-home .cht-publication-date{font-size:12px;color:var(--cht-muted);margin-bottom:6px}
#primary.cht-home .cht-publication-excerpt{font-size:15px;color:var(--cht-muted);margin-bottom:8px}
#primary.cht-home .cht-publication-link{font-size:14px;font-weight:700}
#primary.cht-home .cht-editorial-card>.cht-button{align-self:flex-start;margin-top:22px;min-height:46px;padding:11px 20px}
@media(max-width:760px){#primary.cht-home .cht-editorial-grid{grid-template-columns:1fr;gap:20px}#primary.cht-home .cht-editorial-card{padding:24px}#primary.cht-home .cht-editorial-card h3{font-size:23px}#primary.cht-home .cht-editorial-icon{width:58px;height:58px;flex-basis:58px}#primary.cht-home .cht-editorial-icon svg{width:39px;height:39px}#primary.cht-home .cht-editorial-shortcuts{font-size:14px;gap:12px 18px}}
/* END CHT EDITORIAL HOMEPAGE 20261029 */


/* CHT LEARNING GATEWAYS 20261030 — additions only */
#primary.cht-home .cht-choice-panel{min-width:0;padding:28px;border:1px solid #d2e4df;border-radius:20px;background:linear-gradient(145deg,#f2f8f5,#fff 75%);box-shadow:0 12px 32px #153d5608}
#primary.cht-home .cht-choice-heading{display:flex;align-items:center;gap:14px}
#primary.cht-home .cht-choice-heading h2{font-size:25px;line-height:1.3;letter-spacing:normal;min-width:0}
#primary.cht-home .cht-choice-icon{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;border-radius:14px;background:#e3f1eb;color:var(--cht-teal)}
#primary.cht-home .cht-choice-icon svg{display:block;width:34px;height:34px}
#primary.cht-home .cht-choice-links{display:grid;gap:10px;margin:22px 0 18px}
#primary.cht-home .cht-choice-link{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px;padding:11px 15px;border:1px solid #d8e5e0;border-radius:10px;background:#fff;color:var(--cht-ink);text-decoration:none}
#primary.cht-home .cht-choice-link:hover{background:#eaf4ef;text-decoration:none}
#primary.cht-home .cht-choice-link>span:first-child{min-width:0}
#primary.cht-home .cht-choice-link strong{display:block;font-size:16px;line-height:1.4}
#primary.cht-home .cht-choice-link small{display:block;margin-top:3px;font-size:13px;line-height:1.4;color:var(--cht-muted)}
#primary.cht-home .cht-gateway-note{font-size:15px;color:var(--cht-muted);line-height:1.6}
#primary.cht-home .cht-choice-panel>.cht-card-link{margin-top:17px;font-size:15px}
#primary.cht-home .cht-preschool-strip{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,auto);align-items:center;gap:24px;margin-top:24px;padding:24px;border:1px solid #e4dfc9;border-radius:15px;background:#fcfaf1}
#primary.cht-home .cht-preschool-strip .cht-eyebrow{font-size:11px;letter-spacing:.8px;margin-bottom:7px;color:#626541}
#primary.cht-home .cht-preschool-strip h3{font-size:21px}
#primary.cht-home .cht-preschool-strip p:not(.cht-eyebrow){margin-top:9px;color:var(--cht-muted);font-size:16px}
#primary.cht-home .cht-preschool-actions{display:grid;justify-items:start;gap:12px;max-width:280px}
#primary.cht-home .cht-preschool-sample{font-size:14px;line-height:1.5;font-weight:700}
#primary.cht-home .cht-featured .cht-lesson{display:flex;flex-direction:column}
#primary.cht-home .cht-featured .cht-lesson .cht-card-link{margin-top:auto;padding-top:20px}
#primary.cht-home .cht-home-starts{margin-top:24px}
#primary.cht-home .cht-high-details{margin-top:28px;border:1px solid var(--cht-line);border-radius:15px;background:#fff;padding:0}
#primary.cht-home .cht-high-details>summary{cursor:pointer;padding:20px 24px;font-size:18px;font-weight:700;color:var(--cht-ink);line-height:1.5}
#primary.cht-home .cht-details-body{padding:0 24px 26px;min-width:0}
#primary.cht-home .cht-details-body>.cht-grid{margin-top:20px}
#primary.cht-home .cht-details-body>.cht-head{padding-top:6px}
#primary.cht-home .cht-details-body .cht-section{padding:26px 0 0}
#primary.cht-home .cht-details-body .cht-wrap{max-width:none;padding:0}
#primary.cht-home .cht-details-body .cht-head h2{font-size:26px}
#primary.cht-home .cht-legacy-topics{margin-top:28px;padding-top:22px;border-top:1px solid var(--cht-line)}
#primary.cht-home .cht-legacy-topics h3{font-size:20px}
#primary.cht-home .cht-more-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 24px;list-style:none;margin:14px 0 0;padding:0}
#primary.cht-home .cht-more-links li{min-width:0;margin:0;padding:0}
#primary.cht-home .cht-more-links a{display:block;padding:9px 0;font-size:16px;line-height:1.5}
#primary.cht-home .cht-catalog-featured{margin-top:24px;max-width:660px}
#primary.cht-home .cht-count{margin:0 0 22px;color:var(--cht-muted);font-size:15px}
@media(max-width:760px){#primary.cht-home .cht-choice-panel{padding:23px}#primary.cht-home .cht-choice-heading h2{font-size:23px}#primary.cht-home .cht-preschool-strip{grid-template-columns:1fr;gap:18px;padding:22px}#primary.cht-home .cht-preschool-actions{max-width:none}#primary.cht-home .cht-high-details>summary{padding:19px 20px;font-size:17px}#primary.cht-home .cht-details-body{padding:0 20px 23px}#primary.cht-home .cht-more-links{grid-template-columns:1fr}}
@media(max-width:390px){#primary.cht-home .cht-choice-panel{padding:20px}#primary.cht-home .cht-choice-heading{gap:11px}#primary.cht-home .cht-choice-icon{width:44px;height:44px;flex-basis:44px}#primary.cht-home .cht-choice-icon svg{width:29px;height:29px}#primary.cht-home .cht-choice-heading h2{font-size:21px}#primary.cht-home .cht-preschool-strip{padding:19px}#primary.cht-home .cht-high-details>summary{padding:17px}#primary.cht-home .cht-details-body{padding:0 17px 20px}}
/* END CHT LEARNING GATEWAYS 20261030 */


/* BEGIN CHT GROUPED GRADE CHOOSER 20261101 */
#primary.cht-home .cht-grade-level{margin-top:32px;scroll-margin-top:24px}
#primary.cht-home .cht-grade-level+.cht-grade-level{padding-top:32px;border-top:1px solid var(--cht-line)}
#primary.cht-home .cht-grade-level>.cht-head{align-items:center}
#primary.cht-home .cht-grade-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#primary.cht-home .cht-grade-card{min-width:0;padding:20px;border:1px solid var(--cht-line);border-radius:14px;background:#fff;scroll-margin-top:24px;display:flex;flex-direction:column}
#primary.cht-home .cht-grade-open{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;color:var(--cht-ink);text-decoration:none}
#primary.cht-home .cht-grade-open:hover{color:var(--cht-teal)}
#primary.cht-home .cht-grade-open h4{margin:0;color:inherit;font:700 22px/1.35 Arial,Helvetica,sans-serif;text-transform:none}
#primary.cht-home .cht-grade-card p{font-size:16px;color:var(--cht-muted);margin-top:10px}
#primary.cht-home .cht-grade-card .cht-grade-meta{font-size:14px;color:var(--cht-teal);font-weight:700}
#primary.cht-home .cht-grade-starts{margin-top:16px;border-top:1px solid var(--cht-line);padding-top:6px}
#primary.cht-home .cht-grade-starts summary{min-height:44px;padding:10px 0;color:var(--cht-teal);font-size:15px;font-weight:700;cursor:pointer}
#primary.cht-home .cht-grade-starts ul{list-style:none;margin:0;padding:4px 0 0}
#primary.cht-home .cht-grade-starts li+li{border-top:1px solid var(--cht-line)}
#primary.cht-home .cht-grade-starts a{display:flex;align-items:center;gap:6px;min-height:44px;padding:8px 0;font-size:15px;line-height:1.5}
@media(max-width:800px){#primary.cht-home .cht-grade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){#primary.cht-home .cht-grade-grid{grid-template-columns:minmax(0,1fr)}#primary.cht-home .cht-grade-card{padding:18px}}
/* END CHT GROUPED GRADE CHOOSER 20261101 */
