/* Paint the full installed-app viewport, including Android's gesture area. */
html:root { --dcc-page-bg:#ffffff; background:var(--dcc-page-bg); color-scheme:light; }
html.darkmode { --dcc-page-bg:#151515; color-scheme:dark; }
html.darkmode[data-theme-device="mobile"] { --dcc-page-bg:#121212; }
html { --dcc-safe-bottom:env(safe-area-max-inset-bottom, env(safe-area-inset-bottom, 0px)); }
body:not(.reader-original-preview) { background-color:var(--dcc-page-bg); min-height:100vh; min-height:100dvh; box-sizing:border-box; }
.darkmode body:not(.reader-original-preview) { background-color:var(--dcc-page-bg); }
@media (display-mode:standalone) {
  body:not(.reader-original-preview) { padding-bottom:var(--dcc-safe-bottom); }
  .reader-tools { bottom:max(12px, env(safe-area-max-inset-bottom, env(safe-area-inset-bottom, 0px))); }
}
html[data-pwa="true"] body:not(.reader-original-preview) { padding-bottom:var(--dcc-safe-bottom); }
/* Original DC header control: 11px icon/text, 18px line, no boxed moon button. */
.darkmodebox.site-theme-control { position:relative; float:right; margin:8px 0 0; padding:0; }
.site-theme-control .darkonoff { display:inline-flex; align-items:center; gap:4px; color:#555; font:11px/18px Arial,"Malgun Gothic",sans-serif; margin-left:10px; padding:0; border:0; border-radius:0; background:transparent; cursor:pointer; }
.darkmode .site-theme-control .darkonoff { color:#999; }
.site-theme-control .icon_tdark { display:inline-block; flex:none; width:11px; height:11px; background:url('/static/img/sp/sp_img.png') no-repeat -255px -844px; }
.darkmode .site-theme-control .icon_tdark { background-image:url('/static/img/sp/sp_img_dark.png'); }
.site-theme-control .darkonoff:focus-visible { outline:2px solid #59659f; outline-offset:4px; }
body > .site-theme-control { float:none; display:flex; justify-content:flex-end; max-width:1160px; margin:12px auto 0; padding:0 12px; }
.main-header .site-theme-control { position:absolute; right:0; top:12px; margin:0; }
.page_head:has(.site-theme-control) > .reader-refresh-toggle { right:86px; }
.page_head:has(.site-theme-control):has(.reader-refresh-toggle) h2 { max-width:calc(100% - 214px); }
@media (max-width:600px) { .main-header .site-theme-control { top:4px; right:12px; } }
.gall-tit-box .site-theme-control { position:absolute; top:8px; right:8px; margin:0; }
.gall-tit-box:has(.site-theme-control) .gall-tit { padding-right:85px; }
.dc-rich-content { overflow-wrap:anywhere; max-width:100%; }
.dc-rich-content table { border-collapse:collapse; max-width:100%; }
.dc-rich-content td, .dc-rich-content th { overflow-wrap:anywhere; }
.dc-rich-content pre { white-space:pre-wrap; }
.dc-rich-content ul { list-style:disc; padding-left:1.5em; }
.dc-rich-content ol { list-style:decimal; padding-left:1.5em; }
.dc-rich-content blockquote { border-left:3px solid #aaa; padding-left:1em; margin:1em 0; }
.dc-rich-content .dccon-group { display:inline-flex; vertical-align:top; }
.dc-rich-content { overflow-x:auto; }
.dc-rich-content h1, .dc-rich-content h2, .dc-rich-content h3, .dc-rich-content h4 { font-weight:bold; margin:.67em 0; }
.dc-rich-content h1 { font-size:2em; }
.dc-rich-content h2 { font-size:1.5em; }
.dc-rich-content h3 { font-size:1.17em; }
.community_body a.lnk, .community_cmt_txt a.lnk { color:#0066cc; text-decoration:underline; overflow-wrap:anywhere; }
.darkmode .community_body a.lnk, .darkmode .community_cmt_txt a.lnk { color:#88b8ff; }
