/* Shared layout resilience across public, member and console templates. */
@media screen {
  .mp-main,.member-main,.console-main,.tool-layout>section,.tool-notes {min-width:0}
  main :is(p,li,dd,h1,h2,h3,summary), .seo-breadcrumb {overflow-wrap:anywhere}
  main :is(input,select,textarea), main fieldset {min-width:0;max-width:100%;box-sizing:border-box}
  main :is(img,video) {max-width:100%;height:auto}
  main pre {max-width:100%;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}
  .seo-breadcrumb {display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px;line-height:1.7;margin-bottom:24px}
  .seo-breadcrumb a {display:inline-flex;align-items:center;min-height:36px}
  .tool-public-guide {margin:24px 0;padding:18px;border-block:1px solid #c9c6bb;line-height:1.8}
  .tool-public-guide summary {cursor:pointer;min-height:32px;font-weight:600}
  .tool-public-guide li {margin-block:8px}
  :is(.tool-table-wrap,.table-wrap,.table-scroll) {max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
  :where(a,button,input,select,textarea,summary):focus-visible {outline:3px solid #b49565;outline-offset:3px}
}
@media screen and (max-width:600px) {
  main :is(input:not([type=checkbox]):not([type=radio]),select,textarea) {font-size:16px}
  main :is(button,summary),.mp-links a {min-height:44px}
  .mp-main,.member-main {padding-inline:max(16px,env(safe-area-inset-left))}
  .mp-menu {max-width:calc(100vw - 32px);box-sizing:border-box}
  .tool-public-guide {padding-inline:12px}
  .tool-public-guide h2 {font-size:22px}
}
