.learning-page { --accent:var(--type-color-accent); --ink:var(--type-color-heading); --soft:#f6f8f9; --green:var(--type-color-success); --article-size:var(--type-size-article-normal); }
.learning-page[data-article-font="small"] { --article-size:var(--type-size-article-small); }
.learning-page[data-article-font="large"] { --article-size:var(--type-size-article-large); }
.learning-page .learning-layout, .learning-page .learning-bar, .learning-page #learning-dialog, .learning-page #learning-toast { font-size:var(--type-size-body); line-height:var(--type-line-body); color:var(--type-color-body); }
.learning-page button { color:inherit; }
.learning-page .learning-bar { border-bottom:1px solid var(--line); background:#fbfcfc; }
.learning-page .learning-bar-inner { display:flex; align-items:center; gap:36px; min-height:68px; }
.learning-page .learning-title { display:flex; align-items:center; gap:9px; flex:none; font-size:var(--type-size-section); font-weight:var(--type-weight-bold); }
.learning-page .preview-label { border:1px solid #d8dfe2; border-radius:4px; padding:2px 5px; font-size:var(--type-size-meta); color:var(--type-color-muted); font-weight:var(--type-weight-medium); }
.learning-page .learning-nav, .learning-page .personal-nav { display:flex; align-items:stretch; gap:26px; font-size:var(--type-size-control); font-weight:var(--type-weight-medium); }
.learning-page .personal-nav { margin-left:auto; gap:20px; color:var(--type-color-muted); }
.learning-page .learning-nav a, .learning-page .personal-nav a { display:inline-flex; align-items:center; gap:5px; min-height:68px; border-bottom:2px solid transparent; white-space:nowrap; }
.learning-page .learning-nav a[aria-current], .learning-page .personal-nav a[aria-current] { color:var(--accent); border-bottom-color:var(--accent); font-weight:var(--type-weight-semibold); }
.learning-page #saved-count:not(:empty) { font-size:var(--type-size-meta); color:var(--type-color-muted); }
.learning-page .learning-layout { display:grid; grid-template-columns:200px minmax(0,1fr); gap:36px; min-height:calc(100vh - 270px); padding-block:30px 48px; }
.learning-page .learning-sidebar { align-self:start; position:sticky; top:24px; }
.learning-page .sidebar-label { padding:0 12px 12px; font-size:var(--type-size-meta); font-weight:var(--type-weight-semibold); color:var(--type-color-muted); }
.learning-page #category-nav { display:grid; gap:3px; }
.learning-page #category-nav a { display:flex; align-items:center; gap:10px; min-height:43px; padding:10px 12px; border-radius:5px; font-size:var(--type-size-control); font-weight:var(--type-weight-medium); }
.learning-page #category-nav a span { margin-left:auto; color:var(--type-color-muted); font-size:var(--type-size-meta); }
.learning-page #category-nav a:hover { background:#f3f5f6; }
.learning-page #category-nav a[aria-current] { background:#fceeea; color:var(--type-color-accent); font-weight:var(--type-weight-semibold); }
.learning-page #category-nav .icon { width:18px; height:18px; opacity:.7; }
.learning-page .sidebar-help { margin-top:28px; padding:21px 12px 0; border-top:1px solid var(--line); }
.learning-page .sidebar-help strong { font-size:var(--type-size-body); }
.learning-page .sidebar-help p { margin:8px 0 10px; color:var(--type-color-muted); font-size:var(--type-size-meta); line-height:var(--type-line-body); }
.learning-page .support-link { display:inline-flex; align-items:center; gap:8px; color:var(--type-color-accent); font-size:var(--type-size-meta); }
.learning-page .local-records { padding:24px 12px 0; color:var(--type-color-muted); font-size:var(--type-size-meta); line-height:var(--type-line-body); }
.learning-page .learning-content { min-width:0; }
.learning-page .guide-search { display:flex; gap:10px; margin-bottom:28px; }
.learning-page .search-input { flex:1; min-width:0; display:flex; align-items:center; gap:12px; height:48px; padding:0 15px; border:1px solid #dce1e5; border-radius:7px; background:#fff; }
.learning-page .search-input:focus-within { outline:2px solid #ac4336; outline-offset:2px; }
.learning-page .search-input .icon { opacity:.55; }
.learning-page .search-input input { width:100%; min-width:0; height:100%; border:0; background:transparent; color:var(--ink); font-size:var(--type-size-control); }
.learning-page .search-input input:focus-visible { outline:0; }
.learning-page .learn-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:40px; padding:9px 16px; border:1px solid #dce1e5; border-radius:6px; background:#fff; font-size:var(--type-size-control); font-weight:var(--type-weight-medium); line-height:var(--type-line-body); }
.learning-page .learn-button:hover { border-color:#adb8c0; background:#f7f9fa; }
.learning-page .learn-button.primary { border-color:var(--ink); color:var(--type-color-inverse); background:var(--ink); }
.learning-page .learn-button.primary:hover { background:#3e4651; }
.learning-page .learn-button.primary .icon { filter:invert(1); }
.learning-page .learn-button:disabled { cursor:default; opacity:.55; }
.learning-page .learn-button[aria-pressed="true"] { border-color:#d0e2db; background:#eaf4ef; color:var(--type-color-success); }
.learning-page .icon-button { display:inline-grid; place-items:center; flex:none; width:36px; height:36px; padding:7px; border:1px solid #dfe4e7; border-radius:5px; background:#fff; }
.learning-page .icon-button:hover { background:#f3f6f7; }
.learning-page .mobile-category { display:none; }
.learning-page #learning-main:focus { outline:none; }
.learning-page .view-header { display:flex; justify-content:space-between; align-items:start; gap:18px; margin-bottom:22px; }
.learning-page h1 { font-size:var(--type-size-page); font-weight:var(--type-weight-bold); line-height:var(--type-line-title); color:var(--type-color-heading); overflow-wrap:anywhere; }
.learning-page .view-lead { margin-top:7px; color:var(--type-color-muted); font-size:var(--type-size-body); line-height:var(--type-line-body); }
.learning-page .eyebrow { display:flex; align-items:center; gap:8px; margin-bottom:8px; color:var(--type-color-muted); font-size:var(--type-size-meta); }
.learning-page .eyebrow::before { content:""; width:15px; height:2px; background:#c94d3e; }
.learning-page .home-intro { padding-bottom:25px; border-bottom:1px solid var(--line); }
.learning-page .quick-links { display:flex; flex-wrap:wrap; gap:10px 20px; margin-top:15px; color:var(--type-color-muted); font-size:var(--type-size-meta); }
.learning-page .quick-links a { color:var(--type-color-accent); text-decoration:underline; text-decoration-color:#e7c5bd; text-underline-offset:4px; }
.learning-page .learning-section { margin-top:28px; }
.learning-page .section-top { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:15px; }
.learning-page .section-top h2 { font-size:var(--type-size-section); font-weight:var(--type-weight-semibold); line-height:var(--type-line-title); color:var(--type-color-heading); }
.learning-page .minor-link { display:inline-flex; align-items:center; gap:6px; color:var(--type-color-muted); font-size:var(--type-size-meta); flex:none; }
.learning-page .minor-link:hover { color:var(--accent); }
.learning-page .path-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.learning-page .path-card { display:flex; flex-direction:column; min-width:0; padding:20px; border:1px solid #e1e6e8; border-radius:8px; transition:border-color .15s; background:#fff; }
.learning-page .path-card:hover { border-color:#a9b9be; }
.learning-page .path-card .path-symbol { display:grid; place-items:center; width:36px; height:36px; margin-bottom:15px; border-radius:7px; background:#edf4f1; }
.learning-page .path-card:nth-child(2) .path-symbol { background:#fcf0eb; }
.learning-page .path-card:nth-child(3) .path-symbol { background:#eef1f8; }
.learning-page .path-card h3 { font-size:var(--type-size-card); font-weight:var(--type-weight-semibold); line-height:var(--type-line-title); color:var(--type-color-heading); }
.learning-page .path-card p { min-height:44px; margin-top:8px; color:var(--type-color-muted); font-size:var(--type-size-meta); line-height:var(--type-line-body); }
.learning-page .path-bottom { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:18px; color:var(--type-color-muted); font-size:var(--type-size-meta); }
.learning-page .progress-line { overflow:hidden; height:3px; margin-top:10px; border-radius:3px; background:#eef2f3; }
.learning-page .progress-line span { display:block; height:100%; background:#448e76; }
.learning-page .guide-list { border-top:1px solid var(--line); }
.learning-page .guide-row { display:flex; align-items:center; gap:16px; min-height:98px; padding:18px 2px; border-bottom:1px solid var(--line); }
.learning-page .guide-row > a { flex:1; min-width:0; }
.learning-page .guide-row > a:hover h3 { color:var(--type-color-accent); }
.learning-page .guide-row h3 { font-size:var(--type-size-card); font-weight:var(--type-weight-semibold); line-height:var(--type-line-title); color:var(--type-color-heading); overflow-wrap:anywhere; }
.learning-page .guide-row p { margin:5px 0 8px; color:var(--type-color-muted); font-size:var(--type-size-meta); line-height:var(--type-line-body); }
.learning-page .row-meta { display:flex; align-items:center; flex-wrap:wrap; gap:8px; color:var(--type-color-muted); font-size:var(--type-size-meta); line-height:var(--type-line-body); }
.learning-page .row-category { padding:1px 5px; border-radius:3px; color:var(--type-color-muted); background:#f0f4f5; }
.learning-page .read-label { color:var(--green); }
.learning-page .guide-row > .icon { width:16px; height:16px; opacity:.4; }
.learning-page .row-number { flex:none; display:grid; place-items:center; width:28px; height:28px; align-self:start; margin-top:3px; border:1px solid #e1e6e8; border-radius:50%; color:var(--type-color-muted); font-size:var(--type-size-meta); }
.learning-page .row-number.done { background:#edf6f0; border-color:#cfdfd6; color:var(--type-color-success); }
.learning-page .faq-grid { display:grid; grid-template-columns:1fr 1fr; column-gap:28px; border-top:1px solid var(--line); }
.learning-page .faq-item { border-bottom:1px solid var(--line); }
.learning-page .faq-item summary { padding:17px 2px; cursor:pointer; font-size:var(--type-size-body); font-weight:var(--type-weight-medium); line-height:var(--type-line-body); }
.learning-page .faq-item[open] summary { color:var(--type-color-accent); }
.learning-page .faq-answer { padding:0 4px 17px; color:var(--type-color-muted); font-size:var(--type-size-body); line-height:var(--type-line-reading); }
.learning-page .faq-answer .minor-link { margin-top:10px; color:var(--type-color-accent); }
.learning-page .catalog-tools { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:16px; font-size:var(--type-size-meta); color:var(--type-color-muted); }
.learning-page .catalog-tools label { display:inline-flex; align-items:center; gap:8px; }
.learning-page .catalog-tools label:first-of-type { margin-left:auto; }
.learning-page select { max-width:100%; min-height:36px; border:1px solid #dce1e5; border-radius:5px; padding:5px 25px 5px 10px; background:#fff; color:var(--type-color-body); font-size:var(--type-size-control); }
.learning-page .empty-state { padding:48px 20px; border-block:1px solid var(--line); text-align:center; color:var(--type-color-muted); line-height:var(--type-line-reading); }
.learning-page .empty-state .icon { width:32px; height:32px; margin:0 auto 16px; opacity:.45; }
.learning-page .empty-state strong { display:block; margin-bottom:8px; color:var(--type-color-body); font-size:var(--type-size-section); }
.learning-page .empty-state .learn-button { margin-top:16px; }
.learning-page .breadcrumbs { display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin-bottom:22px; font-size:var(--type-size-meta); color:var(--type-color-muted); }
.learning-page .breadcrumbs a:hover { text-decoration:underline; }
.learning-page .breadcrumbs .icon { width:12px; height:12px; opacity:.5; }
.learning-page .article-heading { max-width:800px; }
.learning-page .article-heading .row-meta { margin-top:13px; }
.learning-page .article-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding-block:18px; border-bottom:1px solid var(--line); margin-bottom:26px; }
.learning-page .font-control { display:flex; align-items:center; margin-left:auto; }
.learning-page .font-control select { width:110px; height:36px; border-radius:0 5px 5px 0; }
.learning-page .font-control > span { display:grid; place-items:center; height:36px; padding:0 8px; border:1px solid #dce1e5; border-right:0; border-radius:5px 0 0 5px; }
.learning-page .article-layout { display:grid; grid-template-columns:minmax(0,1fr) 158px; gap:36px; }
.learning-page .article-body { min-width:0; color:var(--type-color-body); font-size:var(--article-size); line-height:var(--type-line-reading); overflow-wrap:anywhere; }
.learning-page .article-body section { margin-bottom:28px; scroll-margin-top:24px; }
.learning-page .article-body h2 { margin:0 0 14px; color:var(--type-color-heading); font-size:var(--type-size-section); font-weight:var(--type-weight-semibold); line-height:var(--type-line-title); }
.learning-page .article-body ul, .learning-page .article-body ol { padding-left:23px; margin:0; }
.learning-page .article-body li { margin-bottom:12px; padding-left:3px; }
.learning-page .article-body li::marker { color:var(--type-color-muted); }
.learning-page .article-body ol li::marker { color:var(--type-color-accent); font-weight:var(--type-weight-semibold); }
.learning-page .article-body p { margin-block:12px; }
.learning-page .table-scroll { overflow-x:auto; max-width:100%; margin-block:16px; }
.learning-page table { width:100%; border-collapse:collapse; font-size:var(--type-size-body); line-height:var(--type-line-body); }
.learning-page th, .learning-page td { padding:10px 12px; text-align:left; border-bottom:1px solid #e0e6e9; }
.learning-page th { background:#f4f7f8; color:var(--type-color-muted); font-size:var(--type-size-meta); }
.learning-page .article-toc { position:sticky; top:24px; align-self:start; min-width:0; border-left:1px solid var(--line); padding-left:18px; font-size:var(--type-size-meta); color:var(--type-color-muted); }
.learning-page .article-toc summary { margin:0 0 12px; color:var(--type-color-body); font-weight:var(--type-weight-semibold); cursor:pointer; list-style:disclosure-closed; }
.learning-page .article-toc[open] summary { list-style:disclosure-open; }
.learning-page .article-toc summary::-webkit-details-marker { display:none; }
.learning-page .article-toc nav { display:grid; gap:4px; }
.learning-page .article-toc a { padding:5px 0; line-height:var(--type-line-body); }
.learning-page .article-toc a[aria-current] { color:var(--type-color-accent); font-weight:var(--type-weight-semibold); }
.learning-page .article-toc a:hover { color:var(--type-color-accent); }
.learning-page .article-action { padding:22px 0; border-block:1px solid var(--line); display:flex; flex-wrap:wrap; gap:16px; align-items:center; justify-content:space-between; }
.learning-page .article-action .read-action { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.learning-page .article-action p { color:var(--type-color-muted); font-size:var(--type-size-meta); }
.learning-page .article-action p a { color:var(--type-color-accent); text-decoration:underline; }
.learning-page .related-guides { padding-top:24px; }
.learning-page .related-guides h2 { font-size:var(--type-size-section); font-weight:var(--type-weight-semibold); line-height:var(--type-line-title); color:var(--type-color-heading); margin-bottom:12px; }
.learning-page .related-links { display:flex; flex-wrap:wrap; gap:10px 25px; color:var(--type-color-muted); font-size:var(--type-size-meta); line-height:var(--type-line-body); }
.learning-page .related-links a:hover { color:var(--accent); text-decoration:underline; }
.learning-page .article-pagination { display:grid; grid-template-columns:1fr 1fr; gap:20px; border-top:1px solid var(--line); padding-top:20px; margin-top:24px; }
.learning-page .article-pagination a { min-width:0; font-size:var(--type-size-body); line-height:var(--type-line-reading); overflow-wrap:anywhere; }
.learning-page .article-pagination a:last-child { text-align:right; }
.learning-page .article-pagination span { display:block; color:var(--type-color-muted); font-size:var(--type-size-meta); }
.learning-page #learning-toast { position:fixed; z-index:40; left:50%; bottom:28px; transform:translateX(-50%); width:max-content; max-width:calc(100% - 32px); padding:12px 18px; background:#263239; color:var(--type-color-inverse); border-radius:6px; box-shadow:0 4px 16px #1c303224; font-size:var(--type-size-body); line-height:var(--type-line-body); }
.learning-page #learning-dialog { position:fixed; width:min(440px,calc(100% - 32px)); border:1px solid #dce1e5; border-radius:8px; padding:30px 24px 24px; box-shadow:0 16px 64px #172e3e24; color:var(--type-color-body); background:#fff; }
.learning-page #learning-dialog::backdrop { background:#1a293c66; }
.learning-page .dialog-close { position:absolute; right:10px; top:10px; border:0; }
.learning-page #dialog-title { margin:0 26px 14px 0; font-size:var(--type-size-section); line-height:var(--type-line-body); }
.learning-page #dialog-content p { font-size:var(--type-size-body); line-height:var(--type-line-body); color:var(--type-color-muted); }
.learning-page .dialog-actions { display:flex; justify-content:end; flex-wrap:wrap; gap:10px; margin-top:24px; }
.learning-page .copy-field { display:block; width:100%; margin-top:15px; padding:10px; border:1px solid #dce1e5; border-radius:5px; font-size:var(--type-size-control); }
@media (min-width:1500px) {
  .learning-page .learning-layout { grid-template-columns:215px minmax(0,1fr); gap:48px; }
}
@media (max-width:1100px) {
  .learning-page .learning-layout { grid-template-columns:175px minmax(0,1fr); gap:25px; }
  .learning-page .learning-bar-inner { gap:24px; }
  .learning-page .learning-nav { gap:20px; }
  .learning-page .personal-nav { gap:16px; }
  .learning-page .path-card { padding:16px; }
  .learning-page .article-layout { grid-template-columns:minmax(0,1fr); }
  .learning-page .article-toc { position:static; grid-row:1; border:0; padding:12px 0; border-block:1px solid var(--line); }
  .learning-page .article-toc summary { cursor:pointer; pointer-events:auto; margin:0; list-style:disclosure-closed; }
  .learning-page .article-toc[open] summary { margin-bottom:8px; list-style:disclosure-open; }
  .learning-page .article-toc nav { grid-template-columns:1fr 1fr; column-gap:15px; }
  .learning-page .article-layout { gap:25px; }
}
@media (max-width:760px) {
  .learning-page .learning-bar-inner { flex-wrap:wrap; gap:0 20px; padding-top:14px; }
  .learning-page .learning-title { width:100%; font-size:var(--type-size-section); margin-bottom:4px; }
  .learning-page .learning-nav { gap:18px; }
  .learning-page .learning-nav a, .learning-page .personal-nav a { min-height:46px; }
  .learning-page .personal-nav { gap:16px; }
  .learning-page .learning-layout { display:block; padding-block:22px 36px; }
  .learning-page .learning-sidebar { display:none; }
  .learning-page .mobile-category { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:24px; padding-bottom:16px; border-bottom:1px solid var(--line); color:var(--type-color-muted); font-size:var(--type-size-meta); }
  .learning-page .mobile-category select { width:160px; }
  .learning-page .guide-search { margin-bottom:16px; gap:8px; }
  .learning-page .search-input { gap:8px; padding-inline:10px; }
  .learning-page .guide-search .learn-button { padding-inline:16px; }
  .learning-page h1 { font-size:var(--type-size-page); }
  .learning-page .view-lead { font-size:var(--type-size-body); }
  .learning-page .path-grid { grid-template-columns:1fr; gap:0; border-top:1px solid var(--line); }
  .learning-page .path-card { border:0; border-bottom:1px solid var(--line); border-radius:0; padding:18px 0; display:grid; grid-template-columns:36px 1fr auto; gap:0 14px; align-items:center; }
  .learning-page .path-card .path-symbol { grid-row:1/3; margin:0; }
  .learning-page .path-card h3 { grid-column:2; font-size:var(--type-size-card); }
  .learning-page .path-card p { grid-column:2; font-size:var(--type-size-meta); min-height:0; margin-top:5px; }
  .learning-page .path-bottom { grid-column:3; grid-row:1/3; margin:0; gap:8px; font-size:var(--type-size-meta); }
  .learning-page .path-bottom .icon { width:16px; height:16px; }
  .learning-page .progress-line { display:none; }
  .learning-page .faq-grid { grid-template-columns:1fr; }
  .learning-page .section-top h2 { font-size:var(--type-size-section); }
  .learning-page .catalog-tools { gap:10px; }
  .learning-page .catalog-tools label { flex:1; }
  .learning-page .catalog-tools label:first-of-type { margin-left:0; }
  .learning-page .catalog-tools label select { flex:1; }
  .learning-page .catalog-tools > span { width:100%; }
  .learning-page .guide-row { gap:12px; padding-block:16px; }
  .learning-page .view-header { flex-wrap:wrap; margin-bottom:20px; }
  .learning-page .article-heading h1 { font-size:var(--type-size-page); }
  .learning-page .article-toolbar { gap:7px; }
  .learning-page .article-toolbar .learn-button { padding-inline:12px; }
  .learning-page .font-control { margin-left:0; }
  .learning-page .article-body { font-size:var(--article-size); }
  .learning-page .article-body h2 { font-size:var(--type-size-section); }
  .learning-page .article-action { align-items:stretch; }
  .learning-page .article-pagination { gap:18px; }
}
@media (max-width:400px) {
  .learning-page .learning-bar-inner { gap:0 15px; }
  .learning-page .learning-nav { gap:15px; }
  .learning-page .personal-nav { gap:12px; }
  .learning-page .path-card { gap:0 10px; grid-template-columns:32px 1fr auto; }
  .learning-page .path-card .path-symbol { width:32px; height:32px; }
  .learning-page .path-bottom .icon { display:none; }
  .learning-page .learning-title { margin-bottom:0; }
  .learning-page .personal-nav { margin-left:0; }
}
@media (prefers-reduced-motion:reduce) {
  .learning-page * { scroll-behavior:auto !important; transition:none !important; }
}
@media print {
  .learning-page .site-header, .learning-page .learning-bar, .learning-page .learning-sidebar,
  .learning-page .guide-search, .learning-page .mobile-category, .learning-page .site-footer,
  .learning-page .breadcrumbs, .learning-page .article-toolbar, .learning-page .article-toc,
  .learning-page .article-action, .learning-page .related-guides, .learning-page .article-pagination,
  .learning-page #learning-toast, .learning-page dialog { display:none !important; }
  .learning-page .wrap { width:100%; }
  .learning-page .learning-layout, .learning-page .article-layout { display:block; padding:0; }
  .learning-page .article-body { font-size:12pt; color:#000; }
  .learning-page h1 { font-size:22pt; }
  .learning-page .article-heading { margin-bottom:30px; }
  .learning-page h2 { break-after:avoid; }
  .learning-page tr { break-inside:avoid; }
  .learning-page .table-scroll { overflow:visible; }
}
