/* Public landing-page rhythm; deliberately excludes forms and course tools. */
html{scroll-padding-top:88px}
body[data-layout-polish]{overflow-wrap:break-word}
[data-layout-polish] :is(.max-w-6xl,.shell){max-width:1152px;width:100%;margin-inline:auto;padding-inline:24px}
[data-layout-polish] header [aria-label="版本切换"]{white-space:nowrap;flex-shrink:0}
[data-layout-polish] header a,[data-layout-polish] header button{white-space:nowrap}
[data-layout-polish] header>div{gap:16px}
[data-layout-polish] h1{font-size:clamp(30px,3.5vw,48px);line-height:1.28;letter-spacing:-.025em;text-wrap:balance}
[data-layout-polish] h2{font-size:clamp(24px,2.4vw,30px);line-height:1.4;letter-spacing:-.02em;text-wrap:balance}
[data-layout-polish] h3{line-height:1.45;text-wrap:pretty}
[data-layout-polish] p{ text-wrap:pretty }
[data-layout-polish] section:not(.hero){padding-block:48px!important;scroll-margin-top:88px}
[data-layout-polish] .hero,[data-layout-polish] .hero-grid~.relative{padding-block:64px!important}
[data-layout-polish] .home-hero-inner{padding-top:48px!important;padding-bottom:40px!important}
[data-layout-polish] .home-hero-inner h1{max-width:960px}
[data-layout-polish] .home-hero-inner>p{max-width:780px}
[data-layout-polish] :is(.grid,.version-guide)>*{min-width:0}
[data-layout-polish] .card-hover{border-radius:16px}
[data-layout-polish] .mt-10{margin-top:28px}
[data-layout-polish] .mt-12{margin-top:32px}
[data-layout-polish] .sectionhead{margin-bottom:24px}
[data-layout-polish] .version-choice{padding:20px!important;gap:10px}
[data-layout-polish] .version-choice h3{font-size:19px}
[data-layout-polish] .version-choice .vg-go{padding-top:10px}
[data-layout-polish] .home-book-details{border-radius:20px;margin-block:16px;max-width:1104px;width:calc(100% - 48px)}
[data-layout-polish] .home-shortcuts{gap:8px 12px}
[data-layout-polish] .home-shortcuts a{padding:7px 12px;border:1px solid #dde7f5;border-radius:8px;text-decoration:none;font-size:13px}
[data-layout-polish] .home-shortcuts a:hover{background:#ecfccb;color:#365314}
[data-layout-polish] .subnav{overflow-x:auto}
[data-layout-polish] .subnav nav{flex-wrap:nowrap}
[data-layout-polish] .subnav a{white-space:nowrap}
@media(min-width:1024px) and (max-width:1150px){[data-layout-polish] header .gap-5{gap:12px}[data-layout-polish] header [aria-label="版本切换"]>*{padding-inline:9px;font-size:13px}[data-layout-polish] header nav{gap:12px}}
@media(max-width:767px){
[data-layout-polish] :is(.max-w-6xl,.shell){padding-inline:20px}
[data-layout-polish] section:not(.hero){padding-block:32px!important}
[data-layout-polish] .hero,[data-layout-polish] .hero-grid~.relative{padding-block:44px!important}
[data-layout-polish] .home-hero-inner{padding-block:32px!important}
[data-layout-polish] h1{font-size:30px;line-height:1.35}
[data-layout-polish] h2{font-size:24px}
[data-layout-polish] .mt-10,[data-layout-polish] .mt-12{margin-top:24px}
[data-layout-polish] .version-choice{padding:16px!important;gap:6px}
[data-layout-polish] .version-choice .vg-go{padding-top:6px}
[data-layout-polish] .version-note{margin-top:16px;line-height:1.7}
[data-layout-polish] .home-book-details{width:calc(100% - 40px);padding-inline:20px;border-radius:16px}
[data-layout-polish] .home-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:8px;text-align:center}
[data-layout-polish] .home-shortcuts a{padding:9px 6px}
[data-layout-polish] .actions{gap:10px}
[data-layout-polish] .sectionhead{margin-bottom:20px}
[data-layout-polish] .hero-note{gap:8px 16px;margin-top:24px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Homepage: one explicit two-column layout, no overlapping grid patches. */
.home-clean{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:64px;align-items:center;padding-block:56px;color:#fff}
.home-kicker{font-size:13px;font-weight:600;color:#a3e635;letter-spacing:.08em;margin:0 0 16px}
[data-layout-polish] .home-clean h1{font-size:40px;line-height:1.3;margin:0;letter-spacing:-.02em;text-wrap:balance}
.home-clean h1 span{display:block;font-size:26px;font-weight:500;color:#c6d3e8;margin-top:8px}
.home-clean-intro{font-size:16px;line-height:1.9;color:#c6d3e8;margin:22px 0 12px}
.home-byline{font-size:13px;color:#8fa3c4;margin:0}
.home-clean-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.home-primary,.home-secondary{display:inline-flex;align-items:center;justify-content:center;padding:11px 20px;border-radius:8px;font-size:14px;font-weight:600;min-height:44px;text-decoration:none}
.home-primary{background:#a3e635;color:#050a14}.home-secondary{border:1px solid #26406b;color:#c6d3e8;background:transparent}
.home-purchase{display:inline-block;margin-top:18px;color:#8fa3c4;font-size:13px;text-decoration:underline;text-underline-offset:4px}
.home-clean-cover{margin:0;width:100%;max-width:220px;justify-self:center}
.home-clean-cover img{width:100%;height:auto;display:block;border-radius:4px;box-shadow:0 16px 32px #0003}
.home-clean-cover figcaption{color:#8fa3c4;text-align:center;font-size:12px;line-height:1.6;margin-top:14px}
.home-clean-book{background:#050a14;color:white;border-radius:16px;width:calc(100% - 48px)!important;max-width:1104px!important;margin-block:16px}
.home-clean-book h2{margin-bottom:24px}.home-clean-book .space-y-8> :not(:first-child){margin-top:24px}
@media(max-width:767px){.home-clean{grid-template-columns:minmax(0,1fr) 110px;gap:20px;padding-block:32px;align-items:start}[data-layout-polish] .home-clean h1{font-size:27px}.home-clean h1 span{font-size:20px}.home-clean-cover{padding-top:30px}.home-clean-cover figcaption{font-size:10px}.home-clean-intro{font-size:14px;margin-top:18px}.home-clean-actions{gap:8px;margin-top:20px}.home-primary,.home-secondary{padding:10px 12px;font-size:13px}.home-clean-book{width:calc(100% - 40px)!important}.home-kicker{font-size:11px}.home-byline{font-size:12px}}
@media(max-width:400px){.home-clean{grid-template-columns:minmax(0,1fr) 86px;gap:14px}[data-layout-polish] .home-clean h1{font-size:24px}.home-clean h1 span{font-size:18px}}
.learning-home-section{padding-block:42px}.learning-home-section h2,.learning-entry h2{margin:12px 0;font-size:28px;line-height:1.4}.learning-home-section p,.learning-entry p{color:#26406b;line-height:1.8}.learning-home-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px}.learning-home-card{padding:22px;border:1px solid #dde7f5;border-radius:16px;background:white;min-width:0}.learning-home-card h3{font-size:19px}.learning-home-card p{font-size:14px;margin:12px 0}.learning-home-card span{font-size:13px;color:#4d7c0f}.learning-entry{padding-block:32px!important;border-bottom:1px solid #dde7f5}.learning-entry .home-primary{margin-top:12px}.dark .learning-home-card{background:#101010;border-color:#2b2b2b}.dark .learning-home-section p,.dark .learning-entry p{color:#d4d4d4}.dark .learning-home-card span{color:white}@media(max-width:900px){.learning-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.learning-home-grid{grid-template-columns:1fr;gap:10px}.learning-home-card{padding:16px}.learning-home-section h2,.learning-entry h2{font-size:23px}.learning-home-section{padding-block:28px}}
/* Shared finishing rules: readable narrow screens and consistent dark surfaces. */
.dark .home-clean-book{background:#101010}.dark .home-clean .home-kicker{color:#fff}.dark .home-primary{background:#fff;color:#000}.dark .home-secondary{border-color:#525252;color:#fafafa}.dark .home-clean-cover figcaption{color:#a3a3a3}
[data-layout-polish] .home-clean-actions a{max-width:100%}
@media(max-width:767px){.home-clean{display:flex;flex-direction:column;gap:24px;align-items:stretch}.home-clean-cover{order:-1;max-width:130px!important;align-self:center;padding-top:0!important}.home-clean-copy{text-align:left}.home-clean-actions>a{flex:1}.home-clean-cover figcaption{display:none}.learning-home-grid{grid-template-columns:1fr!important}.learning-home-card{padding:18px}.learning-entry{width:calc(100% - 40px)!important;max-width:1112px}}
@media(min-width:768px) and (max-width:1100px){.learning-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

[data-layout-polish] h1{text-wrap:balance}
