:root{--green:#17324f;--ink:#172f48;--muted:#596a79;--line:#dce2e7;--paper:#f4f6f8;--gold:#b58a42}header{background:#17324f;border-bottom:4px solid var(--gold)}.brand span,header p{color:#dce5ef}.intro{background:#eaf0f5}.eyebrow{color:#6c582e}h1{max-width:24em}.stats article{background:#f2f5f8}#status{border-left-color:var(--gold)}a{color:#174d80}button:disabled{cursor:not-allowed}.check-label{display:flex;align-items:flex-start;gap:11px;font-weight:400}.check-label input{flex:0 0 20px;width:20px;height:20px;margin:4px 0 0;accent-color:var(--green)}.agreement-links{display:flex;flex-wrap:wrap;gap:8px 24px}.agreement-links a{padding:7px 0;text-underline-offset:4px}.notice{border-left:4px solid var(--gold);background:#fffaf0}.notice h2{font-size:19px}.notice p{font-size:15px}#human-check{border-color:var(--gold)}dialog{width:min(600px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;color:var(--ink);background:white;border:1px solid var(--line);border-top:5px solid var(--gold);border-radius:12px;padding:28px;box-shadow:0 20px 80px #0b1f3760}dialog::backdrop{background:#0b1f37b3}dialog p{overflow-wrap:anywhere}input:focus,textarea:focus,button:focus-visible,a:focus-visible,.language-control select:focus-visible{outline-color:#ba913f}button,.action{min-height:44px}#turnstile-widget{min-height:70px;width:100%;overflow:hidden}@media(max-width:600px){header{padding:21px 20px}section{padding:20px 16px}.brand{font-size:23px}.brand span{margin-left:8px}h1{font-size:27px}.stats{grid-template-columns:1fr}.stats article{display:flex;align-items:center;gap:16px}.stats strong{min-width:2ch;font-size:28px}.stats span{font-size:15px}.agreement-links{display:grid;gap:2px}dialog{padding:22px 18px}dialog .actions button{width:100%}.check-label input{flex-basis:20px}.actions{gap:10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

header .brand{color:#fff;text-decoration:none;display:inline-flex;align-items:center;flex-wrap:wrap;min-height:44px}header .brand:hover{text-decoration:underline;text-underline-offset:5px}.header-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px 20px}.home-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid #a8bacd;border-radius:7px;color:#fff;font-size:15px;font-weight:600;line-height:1.4;text-decoration:none;white-space:nowrap}.home-link:hover{background:#294863;border-color:#fff}header a:focus-visible{outline:3px solid #f0c777;outline-offset:4px}@media(max-width:600px){.header-actions{width:100%;justify-content:space-between;gap:12px}.home-link{padding:8px 12px}}

/* A card action has its own solid surface; header navigation stays separate. */
.learning-entry-link,.learning-entry-link:visited{display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;background:#17324f;color:#fff;border-color:#17324f;white-space:normal;text-align:center}
.learning-entry-link:hover{background:#244a6c;color:#fff;border-color:#244a6c}
.learning-entry-link:active{background:#10283f;color:#fff;border-color:#10283f}
.learning-entry-link:focus-visible{outline:3px solid #174d80;outline-offset:3px}

.transfer-disclosure{border-left:3px solid #b38b4d;background:#f4f6f8;padding:16px 20px;margin:16px 0}.transfer-disclosure h3{margin-top:0}#google{white-space:normal;max-width:100%;min-height:44px}#login .actions{margin-bottom:16px}

/* Google official HTML-button artwork; local inline SVG, no extra request. */
#google.google-signin{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:11px 16px;background:#fff;color:#1f1f1f;border:1px solid #747775;border-radius:4px;font-family:Arial,"Microsoft YaHei",sans-serif;font-size:14px;font-weight:500;line-height:20px;letter-spacing:.25px;box-shadow:none;text-align:center;transition:background-color .15s,border-color .15s}
#google.google-signin .google-mark{display:block;width:20px;height:20px;flex:0 0 20px}
#google.google-signin>span{min-width:0;overflow-wrap:anywhere}
#google.google-signin:not(:disabled):hover{background:#f8faff;border-color:#626665;box-shadow:0 1px 2px #0002}
#google.google-signin:not(:disabled):active{background:#e8edf6}
#google.google-signin:focus-visible{outline:3px solid #174d80;outline-offset:3px}
#google.google-signin:disabled{background:#f5f5f5;color:#727575;border-color:#c4c7c5;box-shadow:none}
#google.google-signin:disabled .google-mark{opacity:.38}
@media(max-width:600px){#google.google-signin{width:100%;padding:11px 12px}}
@media(prefers-reduced-motion:reduce){#google.google-signin{transition:none}}

/* Focused member entry; account and teaching workspaces retain their layout. */
header{padding:16px max(24px,calc((100vw - 1120px)/2));border-bottom:0}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:24px}
header .brand{letter-spacing:.015em;font-family:Georgia,"Times New Roman",serif;font-size:27px}
header .brand span{font-family:system-ui,"Microsoft YaHei",sans-serif;font-size:13px;font-weight:400}
header .home-link{border-color:#50677f;font-size:13px;min-height:40px;padding:8px 12px}
header .language-control{display:flex;align-items:center;gap:10px;margin:0;font-size:13px;font-weight:400}
header .language-control select{max-width:110px;background:#17324f;color:#fff;border:1px solid #50677f;border-radius:6px;min-height:40px;padding:6px;font:inherit}
main{max-width:1120px;padding:26px 24px}
#status{margin:0 0 20px;padding:9px 12px;font-size:13px;background:#eaf0f5;border-left:2px solid #b58a42;border-radius:0 5px 5px 0}
.auth-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;align-items:start;padding:18px 0 48px}
.auth-copy{padding:24px 0}
.auth-copy>.eyebrow{font-size:11px;letter-spacing:.16em;margin-bottom:24px}
.auth-copy h1{font-family:Georgia,"Songti SC","SimSun",serif;font-weight:500;font-size:42px;line-height:1.35;max-width:10em;letter-spacing:-.025em;margin:0 0 20px;text-wrap:balance}
.welcome-summary{max-width:28em;font-size:16px;line-height:1.8;color:var(--muted)}
.member-benefits{list-style:none;margin:36px 0 30px;padding:0;display:grid;gap:23px}
.member-benefits li{display:flex;gap:18px}
.benefit-number{flex:0 0 26px;color:#887044;font-size:12px;line-height:26px;font-variant-numeric:tabular-nums}
.member-benefits h2{font-size:16px;font-weight:650;margin:0 0 4px}
.member-benefits p{font-size:14px;line-height:1.6;color:var(--muted);margin:0}
.auth-panel{min-width:0;background:#fff;border:1px solid #dce2e7;border-radius:16px;padding:30px 32px;box-shadow:0 10px 36px #17324f07}
.auth-heading{margin-bottom:22px}
.auth-heading .eyebrow{font-size:10px;letter-spacing:.12em;color:#766341;margin:0 0 10px}
.auth-heading h2{font-size:25px;line-height:1.35;margin:0 0 8px;letter-spacing:-.02em}
.auth-heading>p:last-child{font-size:14px;color:var(--muted);margin:0}
.auth-panel section{padding:0;border:0;border-radius:0;background:transparent;margin:0}
#agreements-info{font-size:13px;line-height:1.75;color:#526375;margin:14px 0 8px}
.auth-panel .agreement-links{display:flex;gap:6px 18px;font-size:13px}
.auth-panel .agreement-links a{padding:0;text-underline-offset:3px}
.transfer-disclosure{margin:13px 0 0;padding:0;background:none;border:0;font-size:13px;color:#526375}
.transfer-summary{line-height:1.75;margin:0 0 4px}
.consent-details{margin:4px 0 12px}
.consent-details>summary{color:#174d80;min-height:36px;padding:7px 0;font-size:12px}
.consent-details[open]{padding-bottom:8px}
.consent-details p{font-size:13px;line-height:1.75}
#consent-public-resources{font-size:12px;text-underline-offset:3px}
.auth-action-note{font-size:12px;color:#526375;margin:16px 0 0;line-height:1.6}
#login .actions{margin:12px 0}
#google.google-signin{width:100%;min-height:50px;padding:13px 16px;border-radius:6px;letter-spacing:0}
.email-options{margin-top:18px;padding-top:8px;border-top:1px solid var(--line)}
.email-options>summary{padding:12px 0;color:var(--ink);font-weight:600;font-size:14px;min-height:44px}
summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px}
summary::-webkit-details-marker{display:none}
summary::after{content:'+';font-size:18px;font-weight:400;margin-left:auto;flex:none}
details[open]>summary::after{content:'−'}
summary:focus-visible{outline:3px solid #174d80;outline-offset:3px;border-radius:4px}
#login-form{padding-top:14px}
#login-form label{font-size:13px;color:#42586f}
#login-form input{min-height:46px;border-color:#c9d2dc;font-size:15px;border-radius:6px}
#login-form .actions{display:grid;grid-template-columns:1fr;gap:10px}
#login-form button{width:100%;line-height:1.6;font-size:13px}
#login #reset{font-size:13px;padding:6px 0;min-height:36px;width:auto}
#login .muted{font-size:12px;line-height:1.6}
.service-details{border-top:1px solid var(--line);font-size:13px;color:var(--muted);margin-top:30px;padding-top:8px}
.service-details>summary{padding:9px 0;min-height:40px}
.service-details section{padding:0;background:none;border:0;margin:14px 0 0}
.service-details section h2{font-size:14px}
.service-details section p,.service-details #intro{font-size:13px;line-height:1.7}
.region-details{font-size:12px;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:12px;color:#526375}
.region-details>summary{min-height:36px;padding:4px 0}
.region-details #region-notice{margin:8px 0}
.region-details #region-notice h2{display:none}
.region-details #region-notice p{font-size:12px;line-height:1.7}
.region-details[data-blocked="true"]{padding:12px;background:#fff5e8;border:1px solid #cfa970;border-radius:6px;color:#68420e}
#human-check{margin-top:18px;padding:16px;background:#f4f6f8;border:1px solid #dce2e7;border-radius:8px}
#human-check h2{font-size:16px}
#human-check p{font-size:13px}
.auth-layout[data-signed-in="true"]{display:block;padding:0}
.auth-layout[data-signed-in="true"] .auth-panel{margin-bottom:22px}
footer{border-top:1px solid var(--line);padding:22px 0;font-size:12px;color:#6a7785}
@media(max-width:800px){
.auth-layout{grid-template-columns:1fr;gap:24px;padding:0 0 30px}
.auth-panel{grid-row:1;width:100%;max-width:560px;justify-self:center}
.auth-copy{padding:0;max-width:560px;justify-self:center;width:100%}
.auth-copy>.eyebrow,.auth-copy h1,.welcome-summary{display:none}
.member-benefits{margin:8px 0 24px;gap:18px}
.service-details{margin-top:24px}
}
@media(max-width:480px){
header{padding:12px 16px}
.header-row{flex-wrap:wrap;gap:10px}
header .brand{font-size:24px}
header .brand span{font-size:12px;margin-left:10px}
.header-actions{width:100%;gap:8px;justify-content:space-between}
main{padding:18px 14px}
#status{margin-bottom:16px;font-size:12px}
.auth-panel{padding:24px 20px;border-radius:12px}
.auth-heading h2{font-size:23px}
#google.google-signin{font-size:13px;padding:12px;line-height:1.55}
}

.auth-panel #login{margin-bottom:22px}
.auth-panel .region-details{border-top:1px solid var(--line);border-bottom:0;padding-top:12px;margin-bottom:4px}
.auth-panel .auth-action-note{margin:12px 0 0;font-size:11px}
#agreements-info{margin-top:6px}
.auth-panel #login .email-options{margin-top:14px;padding-top:0}

#login .auth-action-note{font-size:14px;line-height:1.7;margin:0 0 10px;color:#526375}
#login .agreement-links{font-size:14px;margin-bottom:18px}
.transfer-disclosure,.transfer-summary,.consent-details p,#agreements-info{font-size:14px;line-height:1.7}
.consent-details>summary,#consent-public-resources{font-size:13px}
#status{position:sticky;top:12px;z-index:3}

/* Signed-in overview: compact identity, two useful destinations, then question work. */
#account{padding:20px 26px;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;margin-bottom:24px}
#account .section-head{display:flex;align-items:center;gap:20px}
#account h2{font-size:14px;color:var(--muted);font-weight:500;margin-bottom:4px}
#account-label{font-size:15px;margin:0;overflow-wrap:anywhere}
#account #logout{flex:none;font-size:13px}
#member{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
#member>section{margin:0;padding:26px;min-width:0}
#member h2{font-size:21px;line-height:1.4;margin-bottom:12px}
#member>section>p{font-size:14px;color:var(--muted);line-height:1.7}
#member-learning-card,#member-balance-card{align-self:stretch}
#member-learning-card{border-top:3px solid #17324f;display:flex;flex-direction:column;align-items:flex-start}
#member-learning-card p{margin-bottom:24px}
#member-learning-card .learning-entry-link{margin-top:auto}
#member-balance-card .section-head{display:flex;align-items:center;gap:12px}
#member-balance-card .section-head h2{margin:0}
#member-balance-card #refresh{font-size:13px;padding:8px 12px;min-height:40px}
#member-balance-card .stats{display:flex;flex-wrap:wrap;gap:14px;margin:20px 0 12px}
#member-balance-card .stats article{display:flex;align-items:center;gap:12px;padding:0;background:transparent;flex:1;min-width:110px}
#member-balance-card .stats strong{font-size:34px;line-height:1.2}
#member-balance-card .stats span{font-size:13px;line-height:1.5;max-width:10em}
#member-balance-card #free-only-info{font-size:13px;color:var(--muted);margin:12px 0 0}
#member-question-card label{font-size:14px}
#member-question-card input,#member-question-card textarea{border-color:#c9d2dc;font-size:15px}
#member-history-card #questions>p{font-size:14px;color:var(--muted)}
#member-history-card article{padding:18px;margin:16px 0;font-size:14px}
#refund-section{grid-column:1 / -1}
#member{margin-bottom:26px}
@media(max-width:700px){#member{grid-template-columns:1fr;gap:18px}#member>section{padding:22px}#account{padding:8px 4px 20px}#account .section-head{align-items:flex-start;flex-wrap:wrap}#member h2{font-size:20px}}

.quota-rules:not(:has(#free-only-info:not([hidden]))){display:none}.quota-rules{margin-top:8px;font-size:13px;color:var(--muted)}.quota-rules>summary{min-height:40px;color:#174d80;max-width:100%}.quota-rules #free-only-info{margin-top:4px}

#member-balance-card #refresh{flex-shrink:0;white-space:nowrap;overflow-wrap:normal}
