/* Integration overrides. Upstream map/data styles remain separately pinned. */
:root[data-ground][lang] { --fs:1rem; }
:root[data-ground="night"][lang] {
  color-scheme:dark;
  --bg:#08192D; --surf:#13283B; --surf2:#1B3349; --surf3:#29445C;
  --ink:#E4ECEF; --ink2:#C2D0D6; --ink3:#AFBEC6; --head:#E4B9D8;
  --ruri:#99C9ED; --hanada:#99C9ED; --sumire:#D6B9E6;
  --plum:#E4B9D8; --budou:#D6B9E6; --tobi:#D4B49F; --tokiwa:#9FD0B4;
  --red:#F0B2AB; --seiji:#AAD1CE; --accent:#E4B9D8;
  --land:#29445C; --coast:#C2D0D6; --bd:#AFBEC6;
  --line:rgba(194,208,214,.25); --line2:rgba(194,208,214,.4);
}
:root[data-ground="paper"][lang], :root[data-ground="dusk"][lang] {
  color-scheme:light; --ink3:#53676E;
}
html body { font-size:var(--fs); line-height:1.65; }
html body .prose, html body .hint p, html body .notes p { font-size:1rem; }
html body .tag, html[lang] body .tag { font-size:.8125rem; letter-spacing:.065em; }
html body .seg button, html body .rowsw, html body .pill,
html body .chipbtn, html body .search input, html body .res button,
html body .sel, html body .chips, html body .kv, html body .subline,
html body .nick { font-size:.875rem; }
html body .mini, html body .res .k, html body .zlevel,
html body .strip .v, html body .gmx { font-size:.8125rem; }
html body .strip { flex-wrap:wrap; overflow:visible; mask-image:none; -webkit-mask-image:none; }
/* Preserve readable text at enlarged browser font settings, including mobile. */
html body .strip > div { max-width:100%; }
html body .strip .v { white-space:normal; overflow-wrap:anywhere; }
html body .seg { flex-wrap:wrap; }
html body .seg button { flex:1 1 auto; }
html body .iconbtn { min-width:2.5rem; min-height:2.5rem; }
html body .zoomstack button { min-width:2.25rem; min-height:2.25rem; }
html body :focus-visible { outline-color:var(--accent); }
html body .rd-b .prose, html body .notes p { max-width:70ch; }
@media(max-width:560px) {
  html body .strip { gap:.5rem 1rem; }
  html body .pop { max-width:calc(100vw - 2.5rem); }
  html body .seg button { padding:.45rem .25rem; }
}
