/* Shared page frame. Page content retains its own styles. */
body.mtm-site-page {
  margin: 0 !important;
  padding: 0 !important;
  max-width: none !important;
  min-width: 0;
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}
.mtm-site-page > [data-include*="/includes/header"],
.mtm-site-page > [data-include*="/includes/footer"] {
  width: 100%;
  margin: 0;
  padding: 0;
  flex: 0 0 auto;
}
.mtm-site-page > [data-include*="/includes/footer"] { margin-top: auto; }
.mtm-site-page > main { flex-shrink: 0; }
.mtm-site-page.page--thread .reply-form textarea {
  /* forum.css combines width:100% with padding and a border. */
  box-sizing: border-box;
  max-width: 100%;
}
.mtm-site-page > main.admin-wrap {
  box-sizing: border-box;
  min-width: 0;
  width: min(100%, 1100px);
}
.mtm-site-page > main.page-wrap {
  box-sizing: border-box;
  min-width: 0;
  width: min(100%, 1100px);
}
.mtm-site-page > main.page-wrap > .container {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
}
.mtm-site-page main.page-wrap .table-wrap {
  max-width: 100%;
  overflow-x: auto;
}
.mtm-site-page main.page-wrap #tbl,
.mtm-site-page > table.tbl:has(#modTableBody) {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
}
.mtm-site-page #force-unban { flex-wrap: wrap; }
.mtm-site-page #forceUnbanEmail {
  box-sizing: border-box;
  min-width: 0 !important;
  width: 320px;
  max-width: 100%;
}
.mtm-site-page > .login-box {
  box-sizing: border-box;
  width: min(calc(100% - 32px), 440px);
  margin: 32px auto;
}
.mtm-site-page > .login-box input { box-sizing: border-box; }
.mtm-toolkit-page main {
  box-sizing: border-box;
  min-width: 0;
  width: min(100%, 1100px);
  overflow-wrap: anywhere;
}
.mtm-toolkit-page .toolkit-utilbar { flex-wrap: wrap; }
.mtm-toolkit-page main table { width: 100%; table-layout: fixed; overflow-wrap: anywhere; }
.mtm-site-page > [data-include*="/includes/header"] {
  position: sticky;
  top: 0;
  z-index: 1100;
}
.mtm-printable-page > main,
.mtm-printable-page > #printable-status {
  box-sizing: border-box;
  width: min(100%, 872px);
  margin: 32px auto;
  padding: 0 16px;
}
.mtm-standalone-page > .container,
.mtm-standalone-page > .card {
  box-sizing: border-box;
  width: min(calc(100% - 32px), 900px);
  margin: 32px auto;
}
.mtm-standalone-page > :is(h1, form, #message, #status) {
  max-width: 680px;
  margin: 24px auto;
  padding: 0 16px;
}
.mtm-standalone-page input[type="text"] {
  box-sizing: border-box;
  min-width: 0;
  width: min(100%, 320px);
}
@media screen {
  /* Long handwritten blanks and sample requests wrap on screens; printed
     worksheet spacing retains the original document's layout. */
  .mtm-printable-page > main { overflow-wrap: anywhere; }
  .mtm-printable-page > main pre,
  .mtm-toolkit-page main pre { white-space: pre-wrap; overflow-wrap: anywhere; }
}
@media print {
  .mtm-site-page > [data-include*="/includes/header"],
  .mtm-site-page > [data-include*="/includes/footer"] { display: none !important; }
  body.mtm-site-page { min-height: 0 !important; display: block; }
  .mtm-printable-page > main { width: 100%; margin: 0; padding: 0; }
  .mtm-site-page main.page-wrap #tbl,
  .mtm-site-page > table.tbl:has(#modTableBody) { display: table; overflow: visible; }
}
