:root{--jy-readable:1rem;--jy-meta:.8125rem}
html,body{max-width:100%;overflow-x:hidden}
body{font-size:var(--jy-readable)}
.page-library .hero,.page-library .hero-inner{min-height:510px}
.page-library .hero-inner{padding-block:44px}
.page-library .hero p,.page-library .intro-copy,.page-library .feature p,.page-library .card p,.page-library .account p{text-align:left;text-wrap:pretty}
.page-library .overline,.page-library .label,.page-library .version,.page-library .free,.page-library .level{font-size:.75rem;line-height:1.45}
.page-library .stats span{font-size:.75rem;line-height:1.35}
.page-library .feature p,.page-library .card p{font-size:.875rem;line-height:1.65}
.page-library .actions{align-items:center}
.page-library .account-actions{display:flex;align-items:center;gap:8px;margin-left:auto;padding-left:14px;border-left:1px solid rgba(255,255,255,.34)}
.page-library .account-actions .btn{min-height:40px}
.page-library .edition-guide{max-width:780px;margin-top:6px;color:var(--muted);font-size:.9rem;line-height:1.6;text-align:left}
.page-library .foundation-progress{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;margin-top:48px}
.page-library .foundation-card,.page-library .learning-dashboard{min-width:0;border:1px solid var(--line);background:var(--surface);box-shadow:0 14px 42px rgba(52,28,19,.07)}
.page-library .foundation-card{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,1.3fr);overflow:hidden}
.page-library .foundation-art{position:relative;min-height:310px;background:linear-gradient(0deg,rgba(37,23,17,.34),transparent 48%),url("foundation-poster-v25.webp") center 43%/cover no-repeat}
.page-library .foundation-art::before{content:"正音";position:absolute;left:50%;top:42%;padding:0;background:transparent;color:#251711;font:400 clamp(3.25rem,6vw,5.2rem)/.9 "STKaiti","Kaiti SC",KaiTi,"Noto Serif SC",serif;letter-spacing:.08em;white-space:nowrap;text-align:center;text-shadow:0 1px rgba(255,255,255,.35);transform:translate(-50%,-50%) rotate(-3deg)}
.page-library .foundation-art::after{content:"";position:absolute;inset:12px;border:1px solid rgba(255,250,243,.44);pointer-events:none}
.page-library .foundation-body{display:flex;flex-direction:column;padding:26px}
.page-library .foundation-body h2{margin:8px 0 10px;font-size:2rem;line-height:1.15}
.page-library .foundation-body p{margin:0;color:var(--muted);line-height:1.7;text-align:left}
.page-library .foundation-body .btn{align-self:flex-start;margin-top:auto}
.page-library .learning-dashboard{padding:22px}
.page-library .learning-dashboard h2{margin:6px 0 16px;font-size:1.65rem}
.page-library .learning-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-block:1px solid var(--line)}
.page-library .learning-metric{padding:13px 8px}
.page-library .learning-metric:nth-child(odd){border-right:1px solid var(--line)}
.page-library .learning-metric strong{display:block;font:500 1.65rem/1.1 Georgia,serif}
.page-library .learning-metric span{display:block;margin-top:4px;color:var(--muted);font-size:.75rem;line-height:1.35}
.page-library .learning-history{margin-top:14px}
.page-library .learning-history summary{cursor:pointer;font-weight:750}
.page-library .learning-history-list{display:grid;gap:7px;margin-top:10px}
.page-library .learning-history-item{padding:9px 0;border-top:1px solid var(--line);font-size:.8125rem;line-height:1.45}
.page-library .learning-history-item strong{display:block;color:var(--ink)}
.page-library .learning-history-item span{color:var(--muted)}
.page-hsk .masthead-grid{min-height:clamp(440px,49vw,555px)!important}
.page-hsk .masthead-copy .sub,.page-hsk .sub,.page-hsk .note,.page-hsk .warn,.page-hsk .good,.page-hsk .ahelp,.page-hsk .gp .gd,.page-hsk .eg .vi,.page-hsk .tip,.page-hsk .excard .exf,.page-hsk .pass .vi,.page-hsk .sp-item .pr{text-align:left!important;text-justify:auto!important}
.page-hsk .text-card .zh-body,.page-hsk .tx-body{text-align:justify!important}
.page-hsk .exam-badge,.page-hsk .exam-badge span,.page-hsk .tag,.page-hsk .pos,.page-hsk .vw .pos,.page-hsk .gh{font-size:.75rem!important;line-height:1.45}
.page-hsk .nav{padding-left:58px!important;padding-right:126px!important;scrollbar-width:auto!important;scrollbar-color:#d7b799 rgba(255,255,255,.08)!important;overscroll-behavior-inline:contain}
.page-hsk .nav::-webkit-scrollbar{height:5px!important}.page-hsk .nav::-webkit-scrollbar-thumb{background:#d7b799!important;border-radius:99px}
.page-hsk .nav button{font-size:.8125rem!important;min-height:48px}
.page-hsk .portal-tools>label{font-size:.8125rem!important}
.page-hsk .portal-tools{top:max(12px,env(safe-area-inset-top))!important;right:14px!important;left:14px!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;pointer-events:none!important}
.page-hsk .portal-tools>a,.page-hsk .portal-tools>label{flex:0 0 auto!important;pointer-events:auto!important}
.page-hsk .portal-tools>label{margin-left:auto!important;max-width:calc(100vw - 84px)!important}
.page-hsk .portal-tools select{max-width:150px!important}
.page-hsk .wrap,.page-hsk .masthead,.page-hsk .masthead-grid,.page-hsk .masthead-copy,.page-hsk .sec{min-width:0!important}
.page-hsk .sec{max-width:100%!important}
.page-hsk .hero-art img{image-rendering:auto!important;transform:translateZ(0);filter:saturate(.9) contrast(1.06)!important}
.page-hsk .vocab-list,.page-hsk .tools,.page-hsk .writer,.page-hsk .card,.page-hsk .box{max-width:100%!important}
.page-hsk [data-jm] .jm-note,.page-hsk [data-jm] small{font-size:.8125rem!important;line-height:1.55}
.page-manager .summary,.page-manager .count,.page-manager .eyebrow{font-size:.8125rem!important;line-height:1.45}
.page-manager .person small{font-size:.8125rem}
.page-manager .person{grid-template-columns:22px 42px minmax(0,1fr) minmax(92px,auto) 38px}
.jy-consent-eyebrow,.jy-consent-version{font-size:.75rem!important}.jy-consent-scroll p,.jy-consent-scroll li,.jy-consent-check{font-size:.875rem!important;line-height:1.6!important}
.checkout-dialog p,.checkout-dialog li{font-size:.875rem!important;line-height:1.65!important}.checkout-summary span,.checkout-discount,.checkout-dev-notice{font-size:.8125rem!important;line-height:1.55!important}.checkout-version{font-size:.75rem!important}
@media(max-width:900px){.page-library .foundation-progress{grid-template-columns:1fr}.page-library .foundation-card{grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr)}}
@media(max-width:650px){
  .page-library .hero,.page-library .hero-inner{min-height:465px}.page-library .hero-inner{padding-block:34px}
  .page-library .hero h1{font-size:clamp(3.2rem,17vw,4.2rem)}
  .page-library .actions{display:grid;grid-template-columns:1fr 1fr}.page-library .actions>.btn:first-child{grid-column:1/-1}
  .page-library .account-actions{display:grid;grid-template-columns:1fr 1fr;grid-column:1/-1;margin:3px 0 0;padding:10px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.34)}
  .page-library .account-actions .btn{width:100%}.page-library .foundation-card{grid-template-columns:1fr}.page-library .foundation-art{min-height:190px}
  .page-hsk .masthead-grid{min-height:480px!important}.page-hsk .nav{padding-left:54px!important;padding-right:108px!important}.page-hsk .nav button{font-size:.8rem!important}
  .page-hsk h1{white-space:normal!important}.page-hsk .portal-tools{right:9px!important;left:9px!important}.page-hsk .portal-tools select{max-width:122px!important}
  .page-manager .person{grid-template-columns:22px 34px minmax(0,1fr)}.page-manager .person .switch{grid-column:3;justify-self:start;min-width:92px;font-size:.8125rem}.page-manager .person .remove{grid-column:3;justify-self:end;grid-row:2}
}
@media(max-width:460px){.page-library .actions{grid-template-columns:1fr}.page-library .actions>.btn:first-child,.page-library .account-actions{grid-column:1}.page-library .account-actions{grid-template-columns:1fr}.page-hsk .masthead-grid{min-height:445px!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
