:root { --learn-ink:#25362f; --learn-muted:#53655c; --learn-green:#2d614e; --learn-line:#bac8bc; }
[hidden] { display:none !important; }
.learning-page, .feedback-page, .inbox-page { color:var(--learn-ink); }
.learning-main { max-width:1080px; margin:36px auto 90px; font-family:var(--sans,system-ui,sans-serif); }
.learning-main h1 { font-family:var(--serif,Georgia,serif); font-size:clamp(30px,4vw,46px); line-height:1.35; font-weight:650; margin:12px 0 20px; letter-spacing:.01em; }
.learning-main h2 { font-size:22px; line-height:1.4; margin:30px 0 14px; }
.learning-main h3 { font-size:18px; margin:22px 0 12px; }
.learning-main p { line-height:1.85; margin:12px 0; }
.eyebrow { color:var(--learn-green); font-size:13px; letter-spacing:.08em; }
.intro-copy { max-width:720px; color:var(--learn-muted); font-size:17px; }
.learning-main .small-note, .small-note { font-size:13px; line-height:1.7; color:var(--learn-muted); }
.learning-main a { color:var(--learn-green); text-underline-offset:4px; overflow-wrap:anywhere; }
.learning-main a:focus-visible, .learning-main button:focus-visible, .learning-main input:focus-visible, .learning-main textarea:focus-visible, .learning-main select:focus-visible { outline:3px solid #315dab; outline-offset:3px; }
.learning-main .btn { display:inline-flex; min-height:44px; align-items:center; justify-content:center; gap:7px; padding:11px 20px; font:600 15px var(--sans,system-ui,sans-serif); border-radius:999px; text-decoration:none; cursor:pointer; border:1px solid var(--learn-green); color:var(--learn-green); background:transparent; }
.learning-main .btn-primary { background:var(--learn-green); color:#fff; }
.learning-main .btn:disabled { background:#e1e8df; color:#47564d; border-color:#a2b0a4; cursor:wait; }
.learning-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:24px 0; }
.learning-card { border:1px solid var(--learn-line); border-radius:18px; padding:24px; background:#fffdf8; min-width:0; }
.learning-card .card-title { display:block; font:600 23px/1.45 var(--serif,Georgia,serif); text-decoration:none; margin:10px 0; }
.learning-card .card-title:hover { text-decoration:underline; }
.learning-card p { font:14px/1.8 var(--sans,system-ui,sans-serif); color:var(--learn-muted); }
.filter-row { display:flex; flex-wrap:wrap; gap:9px; margin:24px 0; }
.filter-row button { min-height:44px; border:1px solid var(--learn-line); border-radius:999px; background:transparent; padding:8px 18px; font:inherit; color:var(--learn-ink); cursor:pointer; }
.filter-row button[aria-pressed=true] { background:var(--learn-green); border-color:var(--learn-green); color:#fff; }
.article-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(230px,1fr); gap:45px; margin-top:22px; }
.article-body { font-size:16px; }
.article-sidebar { border-left:1px solid var(--learn-line); padding-left:25px; }
.source-item { border-bottom:1px solid var(--learn-line); padding:12px 0; font-size:14px; }
.source-item p { margin:5px 0; }
.exercise-band { background:#e9efdf; border-radius:20px; padding:30px; display:flex; justify-content:space-between; align-items:center; gap:30px; margin:30px 0; }
.exercise-band h2 { margin:0 0 8px; }
.exercise-band p { margin:0; }
.form-panel { max-width:780px; background:#fffdf8; border:1px solid var(--learn-line); border-radius:22px; padding:30px; margin:26px 0; }
.learning-main label { display:block; font-weight:600; line-height:1.5; margin:20px 0 8px; }
.learning-main input:not([type=checkbox]), .learning-main textarea, .learning-main select { box-sizing:border-box; width:100%; max-width:100%; padding:12px 14px; background:#fffefa; border:1px solid #758678; border-radius:10px; font:16px/1.6 var(--sans,system-ui,sans-serif); color:var(--learn-ink); }
.learning-main input::placeholder, .learning-main textarea::placeholder { color:#627068; }
.learning-main textarea { min-height:160px; resize:vertical; }
.learning-main #practice-text { min-height:340px; }
.check-row { display:flex !important; align-items:flex-start; gap:10px; font-weight:400 !important; cursor:pointer; }
.check-row input { margin-top:5px; width:20px; height:20px; flex:none; }
.help-box { font-size:14px; line-height:1.75; padding:16px 18px; background:#eef2e8; border-radius:12px; }
.action-row { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin:20px 0 8px; }
.form-panel > .btn { margin:8px 8px 0 0; }
.status-line { min-height:25px; overflow-wrap:anywhere; color:var(--learn-green); }
.status-line.is-error { color:#9f2936; }
.receipt-box { border:1px solid #6b8574; border-radius:14px; padding:22px; background:#f0f4eb; margin-top:25px; }
.receipt-box pre, .inbox-item p { white-space:pre-wrap; overflow-wrap:anywhere; font:inherit; }
.inbox-item { padding:24px; border:1px solid var(--learn-line); border-radius:14px; margin:18px 0; background:#fffdf8; }
.inbox-item .tag { font-size:12px; padding:4px 9px; border:1px solid var(--learn-line); border-radius:7px; }
.honeypot { display:none !important; }
.learning-context { border:1px solid #b6c8bb; background:#f1f5ee; padding:12px 16px; border-radius:12px; margin:12px 0; font-size:14px; }
.learning-context button { margin-left:10px; }
.empty-state { padding:35px 0; color:var(--learn-muted); }
.quiet-footer { border-top:1px solid var(--learn-line); padding:24px 0; margin-top:45px; font:13px/1.8 var(--sans,system-ui,sans-serif); color:var(--learn-muted); }
.home-learning-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:25px; }
.home-learning-actions a { color:#285542; }
@media(max-width:900px) { .learning-grid{grid-template-columns:repeat(2,minmax(0,1fr))} .article-layout{grid-template-columns:1fr;gap:20px} .article-sidebar{border-left:0;border-top:1px solid var(--learn-line);padding:15px 0} }
@media(max-width:600px) { .learning-main{margin:22px auto 48px} .learning-grid{grid-template-columns:1fr;gap:14px} .exercise-band{display:block;padding:22px} .exercise-band .btn{margin-top:18px} .form-panel{padding:20px 17px} .learning-main h1{font-size:30px} .learning-card{padding:22px} .wrap{padding-left:20px;padding-right:20px} header.site{flex-wrap:wrap;gap:12px} nav.site{flex-wrap:wrap;gap:14px} header.site .tag{display:none} .learning-main .btn{max-width:100%;white-space:normal} }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important} }

.workspace-learning-links{max-width:1440px;margin:15px auto;padding:0 24px 20px;font:13px/1.7 system-ui,sans-serif;color:#53655c}.workspace-learning-links a{color:#2d614e}

/* 返回上一级：栏目页页头与工作台侧栏共用 */
.site-left { display:flex; align-items:center; gap:14px; min-width:0; }
.back-link { display:inline-flex; align-items:center; gap:7px; padding:8px 15px; border:1px solid var(--learn-line); border-radius:999px; background:#fffdf8; color:var(--learn-green); font:600 13px/1 var(--sans,system-ui,sans-serif); text-decoration:none; white-space:nowrap; transition:background .2s,color .2s,border-color .2s; }
.back-link:hover { background:var(--learn-green); border-color:var(--learn-green); color:#fff; }
.back-link:focus-visible { outline:3px solid #315dab; outline-offset:3px; }
.back-arrow { font-size:15px; line-height:1; }
.sidebar-back { align-self:flex-start; margin-top:-16px; }
@media(max-width:600px){ .site-left{gap:10px} .back-link{padding:8px 12px} }

/* Start choices share a baseline even when copy wraps differently. */
.start-options .learning-card { display:flex; flex-direction:column; align-items:flex-start; }
.start-options .learning-card > .btn { margin-top:auto; }
.start-options .learning-card > p:last-of-type { margin-bottom:22px; }
.start-options h2 { font-size:21px; }
.training-overview { display:flex; flex-wrap:wrap; gap:14px 28px; padding:17px 0; margin:24px 0 35px; border-top:1px solid var(--learn-line); border-bottom:1px solid var(--learn-line); font-size:14px; color:var(--learn-muted); }
.training-overview a { margin-left:auto; }
.plan-feature { display:flex; align-items:center; justify-content:space-between; gap:32px; padding:28px 32px; border-left:4px solid var(--learn-green); background:#e9efdf; border-radius:0 18px 18px 0; margin:18px 0 34px; }
.plan-feature > div { max-width:700px; }
.plan-feature h3 { font:600 30px/1.4 var(--serif,Georgia,serif); margin:8px 0; }
.plan-feature .btn, .plan-steps .btn { flex-shrink:0; }
.plan-preview { display:flex; flex-wrap:wrap; gap:12px 30px; margin:18px 0 0; padding-left:20px; font-size:14px; color:var(--learn-green); }
.training-grid { margin-top:14px; }
.training-exercise { display:flex; flex-direction:column; align-items:flex-start; }
.training-exercise h3 { font:600 24px/1.45 var(--serif,Georgia,serif); margin:4px 0 8px; }
.training-exercise > p:last-of-type { margin-bottom:24px; }
.training-exercise > .btn { margin-top:auto; }
.training-back { display:inline-flex; align-items:center; min-height:44px; }
.training-progress { max-width:780px; padding:22px; margin:24px 0; border:1px solid var(--learn-line); border-radius:18px; background:#fffdf8; }
.reading-feed { margin:30px 0 45px; }
.reading-feed .learning-grid { margin-top:18px; }
.plan-steps { list-style:none; padding:0; margin:30px 0; }
.plan-steps li { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:24px 0; border-bottom:1px solid var(--learn-line); }
.plan-steps h2 { margin:5px 0; }
.plan-steps p { max-width:650px; }
.practice-trail { border-bottom:1px solid var(--learn-line); padding-bottom:18px; margin-bottom:18px; }
.plan-trail-links { display:flex; flex-wrap:wrap; gap:8px 22px; margin-top:12px; }
.plan-trail-links a { display:inline-flex; align-items:center; min-height:44px; font-size:14px; }
.plan-trail-links a[aria-current=step] { font-weight:700; text-decoration-thickness:3px; }
@media(max-width:760px) { .plan-feature,.plan-steps li { flex-direction:column; align-items:flex-start; gap:15px; } .plan-feature{padding:22px} .training-overview a{margin-left:0;width:100%} }
