/* Nihongo Lab — static SEO pages (reuse app.css tokens) */
body.seo main{padding-bottom:40px}
.snav{display:flex;gap:4px;flex:1;justify-content:center;flex-wrap:wrap}
.snav a{color:var(--sub);text-decoration:none;font-size:14px;padding:6px 10px;border-radius:999px}
.snav a:hover{background:var(--panel);color:var(--ink)}
.btn.sm{padding:8px 14px;font-size:14px}
.crumb{font-size:13px;color:var(--sub);margin:18px 0 4px}
.crumb a{color:var(--sub)}
body.seo h1{font-size:clamp(30px,4.4vw,48px);line-height:1.2;margin:6px 0 10px}
body.seo h2{margin:30px 0 12px}
.cta{margin:18px 0}
.ktab{border-collapse:separate;border-spacing:6px;margin:6px -6px}
.ktab td,.ktab th{background:var(--panel);border:1px solid var(--line);border-radius:12px;text-align:center;min-width:64px;padding:8px 6px}
.ktab td:empty{background:none;border:0}
.ktab .sk{display:block;font-family:var(--jp);font-weight:800;font-size:30px;color:var(--ink)}
.ktab .sk.kt2{color:var(--kata)}
.sr{font-family:var(--serif);color:var(--rmj);font-size:17px;letter-spacing:.03em}
.sh{font-family:var(--jp);font-weight:700;color:var(--hira)}
.sj{font-family:var(--jp);font-weight:800;font-size:20px;color:var(--ink)}
.sj.big{font-size:30px}
.vtab{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.vtab th{background:var(--soft);text-align:left;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--gold);padding:10px 12px}
.vtab td{padding:9px 12px;border-top:1px solid var(--line);vertical-align:top}
.glist li,.links li{margin:6px 0;line-height:1.55}
.links.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px 18px;padding-left:18px}
.sex{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px 16px;margin:8px 0}
.sex p{margin:2px 0}
.gs2{font-size:18px;color:var(--mean);font-weight:500}
.wgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.wgrid .w{display:flex;flex-direction:column;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px 6px}
.wgrid .ic{font-size:34px}
.pn{display:flex;justify-content:space-between;gap:12px;margin-top:20px}
@media (max-width:760px){.snav{display:none}.ktab td{min-width:52px}.ktab .sk{font-size:24px}.vtab td,.vtab th{padding:7px 8px;font-size:14px}.vtab{display:block;overflow-x:auto}}
.hvc{font-family:var(--serif);font-weight:600;letter-spacing:.06em;color:var(--red)}
.ktab .sk{white-space:nowrap}
