.editorial-page { padding-bottom:0; --mobile-nav-height:0px; }
.policy-page h2 { margin-top:28px; font-size:18px; }
.editorial-header { position:sticky; top:0; z-index:20; border-bottom:1px solid var(--line); background:var(--surface); }
.editorial-header-inner { min-height:76px; display:flex; flex-wrap:wrap; align-items:center; gap:14px 24px; padding-block:12px; }
.editorial-nav { display:flex; flex-wrap:wrap; gap:8px 22px; margin-left:auto; font-size:13px; font-weight:600; }
.editorial-nav a { display:inline-flex; align-items:center; min-height:40px; }
.editorial-main { padding-block:30px 64px; }
.breadcrumbs { color:var(--muted); font-size:13px; margin-bottom:28px; }
.breadcrumbs ol { display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:0; list-style:none; }
.breadcrumbs li:not(:last-child)::after { content:"/"; margin-left:8px; color:var(--muted); }
.content-heading h1 { font-size:clamp(29px,4vw,42px); letter-spacing:-1.2px; line-height:1.3; margin:8px 0 16px; }
.content-heading>p:not(.eyebrow) { max-width:850px; color:var(--muted); line-height:1.85; }
.content-notice { margin:24px 0; padding:18px 20px; border:1px solid var(--line); border-left:4px solid var(--primary); border-radius:12px; background:var(--primary-soft); color:var(--text); font-size:14px; line-height:1.8; }
.content-filters { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,260px) auto; align-items:end; gap:16px; padding:20px; border:1px solid var(--line); border-radius:16px; background:var(--surface); }
.content-filters .field { min-width:0; margin:0; }
.content-filters input,.content-filters select { width:100%; min-height:46px; background:var(--bg); }
.content-filters button { min-height:46px; }
.content-count { color:var(--muted); font-size:13px; margin-block:22px 16px; }
.guide-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.guide-card { display:flex; flex-direction:column; align-items:start; min-width:0; padding:26px; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); }
.content-category { color:var(--primary); font-size:12px; font-weight:700; }
.guide-card h2 { margin:12px 0; font-size:21px; line-height:1.5; letter-spacing:-.4px; }
.guide-card p { color:var(--muted); font-size:14px; margin:0 0 20px; }
.guide-card-bottom { display:flex; flex-wrap:wrap; justify-content:space-between; gap:14px; width:100%; margin-top:auto; font-size:12px; }
.guide-card-bottom time { color:var(--muted); }
.guide-card-bottom a,.guide-card h2 a:hover { color:var(--primary); }
.content-layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; align-items:start; gap:34px; }
.content-article { min-width:0; padding:32px; background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); }
.article-meta { font-size:12px; }
.article-lead { font-size:16px; }
.article-toc { margin-block:28px; padding:20px; border:1px solid var(--line); border-radius:12px; background:var(--bg); }
.article-toc h2 { font-size:16px; margin:0 0 10px; }
.article-toc ol { padding-left:22px; margin:0; }
.article-toc li { padding-block:5px; }
.content-article a { color:var(--primary); text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.article-section { padding-top:14px; margin-top:20px; scroll-margin-top:110px; }
.article-section h2 { margin:0 0 16px; font-size:24px; letter-spacing:-.5px; line-height:1.45; }
.article-section h3 { font-size:18px; margin:24px 0 12px; }
.article-section p,.article-section li { line-height:1.95; }
.article-section p { margin-block:12px; }
.article-section ul,.article-section ol { padding-left:24px; }
.article-section li { margin-block:8px; }
.article-section table { width:100%; border-collapse:collapse; font-size:14px; table-layout:fixed; }
.article-section th,.article-section td { text-align:left; border:1px solid var(--line); padding:10px; overflow-wrap:anywhere; }
.article-section th { background:var(--surface-soft); }
.article-section code { white-space:normal; overflow-wrap:anywhere; }
.article-section .formula,.article-section .formula-box { padding:18px; background:var(--surface-soft); border-radius:10px; overflow-wrap:anywhere; }
.article-correction { margin-top:34px; padding-top:18px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; }
.article-sidebar { position:sticky; top:100px; min-width:0; display:grid; gap:18px; }
.content-tools { padding:24px; border:1px solid var(--line); border-radius:16px; background:var(--surface); margin-top:24px; }
.article-sidebar .content-tools { margin-top:0; }
.content-tools h2 { font-size:18px; margin:0 0 16px; }
.content-tools p { color:var(--muted); }
.content-tools .button { white-space:normal; line-height:1.6; text-align:center; margin:4px 8px 4px 0; }
.content-tools ul { padding-left:18px; margin:0; }
.content-tools li { margin-block:12px; }
.content-tools a:not(.button) { color:var(--primary); }
.editorial-footer-links { display:flex; flex-wrap:wrap; gap:12px 24px; }
.editorial-footer-links a { display:flex; align-items:center; min-height:40px; font-size:13px; }
.editorial-footer-note { padding-bottom:20px; font-size:12px; line-height:1.85; }
.guide-preview { grid-column:1/-1; margin-top:8px; }
.guide-preview h3 { font-size:18px; margin:0 0 18px; }
.guide-preview-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.guide-preview-links a { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px 18px; min-height:64px; border:1px solid var(--line); border-radius:12px; background:var(--surface); font-size:14px; }
.guide-preview-links a:hover { color:var(--primary); border-color:var(--primary); }
.tool-reading-note { margin:16px 0 24px; padding:16px 20px; border:1px solid var(--line); border-radius:12px; background:var(--surface); font-size:13px; line-height:1.85; }
.tool-reading-note summary { cursor:pointer; color:var(--text); font-weight:600; }
.tool-reading-note p { margin:12px 0 0; color:var(--muted); }
.tool-reading-note a { color:var(--primary); text-decoration:underline; text-underline-offset:3px; }
@media(max-width:960px) { .content-layout { grid-template-columns:minmax(0,1fr); } .article-sidebar { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:640px) {
  .editorial-header-inner { gap:8px 12px; } .editorial-header .brand { flex:1; } .editorial-nav { order:3; width:100%; margin-left:0; gap:8px 24px; }
  .editorial-main { padding-top:20px; } .content-filters,.guide-list,.guide-preview-links,.article-sidebar { grid-template-columns:minmax(0,1fr); }
  .content-article { padding:22px 18px; } .guide-card { padding:22px; } .content-heading h1 { letter-spacing:-.8px; }
  .content-notice { padding:16px; } .article-section h2 { font-size:22px; } .article-section { scroll-margin-top:150px; }
}
