/* Training Portal v17 — production layout corrections.
   Scope: footer flow and safe shared responsiveness. Does not rewrite page-specific UI. */
html { min-height:100%; }
body.dga-lite-dashboard,
body.dga-lite-public { min-height:100vh; min-height:100dvh; }

/* Legacy style.css sets dashboard-content-wrap to height:100vh; this truncates
   short-page/footer flow and pushes the copyright into odd positions. */
body.dga-lite-dashboard .dashboard-area {
  min-height:calc(100vh - 64px);
  min-height:calc(100dvh - 64px);
  height:auto!important;
  display:flex;
  flex-direction:column;
}
body.dga-lite-dashboard .dashboard-content-wrap {
  height:auto!important;
  padding-bottom:0!important;
  min-height:calc(100vh - 64px)!important;
  min-height:calc(100dvh - 64px)!important;
  flex:1 0 auto;
  display:flex;
  flex-direction:column;
  min-width:0;
}
body.dga-lite-dashboard .dashboard-content-wrap > .container-fluid {
  display:flex;
  flex-direction:column;
  flex:1 0 auto;
  min-width:0;
  width:100%;
}
body.dga-lite-dashboard .dashboard-content-wrap main#main-content {
  flex:1 0 auto;
  min-width:0;
}
body.dga-lite-dashboard .dashboard-copyright-content {
  margin-top:auto!important;
  padding-block:18px 12px!important;
  flex:0 0 auto;
  border-top:1px solid #e1ebe5;
}
/* Public master has the footer after the server form; make the form fill spare height. */
body.dga-lite-public {
  display:flex;
  flex-direction:column;
}
body.dga-lite-public > form#form1 { flex:1 0 auto; display:flex; flex-direction:column; min-width:0; }
body.dga-lite-public > form#form1 > main#main-content { flex:1 0 auto; }
body.dga-lite-public > .footer-area { flex:0 0 auto; margin-top:auto; }
/* A prior v12 override always hid the public navigation toggle on mobile. */
@media(max-width:991px) {
  body.dga-lite-public .tp-public-menu-toggle {display:inline-flex!important;}
}
/* Real text/inputs remain RTL. Native numeric, date and time values keep LTR. */
body.dga-lite-dashboard .dashboard-content-wrap :is(.form-group,.card-body,.table-responsive) {min-width:0;}
body.dga-lite :is(input[type="number"],input[type="date"],input[type="time"],input[type="email"]) {unicode-bidi:plaintext;}
@media(max-width:575px) {
  body.dga-lite-dashboard .dashboard-copyright-content > div {text-align:right;}
  body.dga-lite-dashboard .dashboard-copyright-content .generic-list-item {justify-content:flex-start!important;}
  body.dga-lite-dashboard .dashboard-content-wrap > .container-fluid {padding-inline:12px!important;}
}

/* v18: consistent readable link typography across the public and authenticated portal.
   Preserve the 15px target despite legacy per-page 12/13/14px anchor overrides.
   Link children (icons/headings) retain their own font sizes. */
body.dga-lite a { font-size:15px !important; }
