/* Attendance Management System v1.0.41 | native mobile interface corrections.
   App-only selectors; never affect the administrator dashboard or the public login page.
   Core fix: logo anchor must be retained by wp_kses() in the PHP template. */
@media (max-width:899px) {
  body.att-mobile-mode .att-mobile-app,
  body.att-mobile-mode .att-mobile-app .att-mobile-shell {
    width:100% !important; max-width:100% !important; min-width:0 !important;
    box-sizing:border-box !important; overflow-x:clip !important;
    background:#f5f7f6 !important;
  }
  body.att-mobile-mode .att-mobile-app .att-mobile-brandbar {
    position:relative !important; inset:auto !important; z-index:2 !important;
    width:100% !important; min-height:108px !important; height:auto !important;
    box-sizing:border-box !important; padding:10px 16px !important;
    display:flex !important; justify-content:center !important; align-items:center !important;
    gap:0 !important; background:#fff !important; border:0 !important;
    border-bottom:1px solid #e7ede8 !important; box-shadow:0 2px 8px rgba(28,58,35,.03) !important;
  }
  body.att-mobile-mode .att-mobile-app .att-mobile-brandbar > a.att-mobile-logo {
    display:flex !important; flex:0 1 auto !important; align-items:center !important;
    justify-content:center !important; width:auto !important;
    max-width:min(320px,calc(100vw - 32px)) !important;
    max-height:96px !important; margin:0 auto !important; padding:0 !important;
    line-height:1 !important; overflow:hidden !important;
  }
  /* Direct-child img fallback covers alternate themes/older cached shortcode markup. */
  body.att-mobile-mode .att-mobile-app .att-mobile-brandbar img,
  body.att-mobile-mode .att-mobile-app .att-mobile-brandbar .att-mobile-logo img {
    display:block !important; position:static !important;
    width:auto !important; height:auto !important;
    max-width:min(320px,calc(100vw - 32px)) !important;
    max-height:94px !important;
    object-fit:contain !important; object-position:center !important;
    margin:0 auto !important; flex-shrink:1 !important;
  }
  body.att-mobile-mode .att-mobile-app .att-mobile-brandbar :is(.att-desktop-brandcopy,.att-desktop-version,.att-desktop-account) {
    display:none !important;
  }
  body.att-mobile-mode .att-mobile-app.att-mobile-screen-home .att-mobile-pagehead {
    display:none !important;
  }
  body.att-mobile-mode .att-mobile-app .att-mobile-pagehead:not(.att-mobile-screen-home) {
    width:100% !important; max-width:none !important;
    box-sizing:border-box !important; padding:15px 15px 8px !important;
    background:transparent !important; border:0 !important;
  }
  body.att-mobile-mode .att-mobile-app .att-mobile-pagehead .att-mobile-title {
    font-size:20px !important; line-height:1.32 !important;
    font-weight:600 !important; color:#203528 !important;
  }
  body.att-mobile-mode .att-mobile-app .att-mobile-body,
  body.att-mobile-mode .att-mobile-app.att-mobile-screen-home .att-mobile-body {
    width:100% !important; max-width:none !important; min-width:0 !important;
    box-sizing:border-box !important; margin:0 !important;
    padding:12px 12px calc(110px + env(safe-area-inset-bottom,0px)) !important;
    background:transparent !important;
  }
  body.att-mobile-mode .att-mobile-app.att-mobile-screen-home .att-mobile-body .ams-home-greeting {
    display:flex !important; flex-direction:column !important; justify-content:center !important;
    align-items:center !important; width:100% !important; max-width:none !important;
    min-width:0 !important; gap:3px !important;
    padding:12px 6px 17px !important; margin:0 auto 7px !important;
    box-sizing:border-box !important; border:0 !important; background:transparent !important;
    text-align:center !important; box-shadow:none !important;
  }
  body.att-mobile-mode .att-mobile-app .ams-home-greeting-line {
    font-size:14px !important; line-height:1.5 !important;
    font-weight:400 !important; color:#667a6c !important; text-align:center !important;
  }
  body.att-mobile-mode .att-mobile-app .ams-home-greeting-name {
    font-size:20px !important; line-height:1.28 !important;
    font-weight:600 !important; color:#203b2a !important;
    text-align:center !important; overflow-wrap:anywhere !important;
  }
  body.att-mobile-mode .att-mobile-app .att-desktop-home-sectiontitle {display:none !important;}
  body.att-mobile-mode .att-mobile-app.att-mobile-screen-home .att-mobile-body .att-home-card {
    display:block !important; width:100% !important; max-width:none !important;
    padding:0 !important; margin:0 !important;
    box-sizing:border-box !important; background:transparent !important;
    border:0 !important; border-radius:0 !important; box-shadow:none !important;
  }
  body.att-mobile-mode .att-mobile-app.att-mobile-screen-home .att-home-card .ams-home-actions {
    display:grid !important; grid-template-columns:minmax(0,1fr) !important;
    gap:10px !important; width:100% !important; max-width:none !important;
    min-width:0 !important; margin:0 !important; padding:0 !important;
  }
  body.att-mobile-mode .att-mobile-app.att-mobile-screen-home .att-home-card .ams-home-actions a.ams-home-main-button {
    display:grid !important; grid-template-columns:42px minmax(0,1fr) 20px !important;
    gap:12px !important; align-items:center !important;
    width:100% !important; min-width:0 !important; max-width:none !important;
    height:auto !important; min-height:70px !important; box-sizing:border-box !important;
    padding:12px 14px !important; margin:0 !important;
    text-decoration:none !important; text-align:left !important;
    color:#264730 !important; background:#fff !important;
    border:1px solid #dfe9e2 !important; border-radius:16px !important;
    box-shadow:0 3px 12px rgba(25,58,34,.045) !important;
    font-size:16px !important; font-weight:500 !important;
  }
  body.att-mobile-mode .att-mobile-app.att-mobile-screen-home .att-home-card .ams-home-actions a.ams-home-main-button .ams-home-link-icon {
    display:flex !important; align-items:center !important; justify-content:center !important;
    width:42px !important; height:42px !important; flex:0 0 42px !important;
    border-radius:12px !important; background:#edf5ed !important;
    color:#32703b !important; font-family:dashicons !important; font-size:21px !important;
  }
  body.att-mobile-mode .att-mobile-app.att-mobile-screen-home .att-home-card .ams-home-actions a.ams-home-main-button .ams-home-link-text,
  body.att-mobile-mode .att-mobile-app.att-mobile-screen-home .att-home-card .ams-home-actions a.ams-home-main-button .att-desktop-action-title {
    display:block !important; width:100% !important; min-width:0 !important;
    font-size:16px !important; line-height:1.35 !important; font-weight:500 !important;
    text-align:left !important; color:#213c2a !important;
  }
  body.att-mobile-mode .att-mobile-app.att-mobile-screen-home .att-home-card .ams-home-actions a.ams-home-main-button .att-desktop-action-note { display:none !important; }
  body.att-mobile-mode .att-mobile-app.att-mobile-screen-home .att-home-card .ams-home-actions a.ams-home-main-button .ams-home-link-arrow {
    display:block !important; justify-self:end !important; width:20px !important;
    color:#90a39a !important; font-family:dashicons !important; font-size:20px !important;
  }
  body.att-mobile-mode .att-mobile-app .att-mobile-body :is(.att-card,.att-panel):not(.att-home-card) {
    box-sizing:border-box !important; max-width:100% !important; min-width:0 !important;
    border-radius:16px !important; padding:14px !important;
  }
  body.att-mobile-mode .att-mobile-app .att-mobile-body :is(input,select,textarea) {max-width:100% !important; box-sizing:border-box !important;}
  body.att-mobile-mode .att-mobile-app .att-mobile-nav {
    box-sizing:border-box !important; max-width:100% !important; padding-bottom:env(safe-area-inset-bottom,0px) !important;
  }
  body.att-mobile-mode .att-mobile-app .att-mobile-nav a { -webkit-tap-highlight-color:transparent; }
  body.att-mobile-mode .att-mobile-app .att-mobile-nav a:focus-visible,
  body.att-mobile-mode .att-mobile-app .ams-home-main-button:focus-visible {outline:3px solid #7ba989 !important; outline-offset:2px !important;}
  html.att-dark-mode body.att-mobile-mode .att-mobile-app, html.att-dark-mode body.att-mobile-mode .att-mobile-app .att-mobile-shell { background:#152522 !important; }
  html.att-dark-mode body.att-mobile-mode .att-mobile-app .att-mobile-brandbar { background:#1d302b !important; border-color:#344b42 !important; }
  html.att-dark-mode body.att-mobile-mode .att-mobile-app .ams-home-greeting-line {color:#acc5b4 !important;}
  html.att-dark-mode body.att-mobile-mode .att-mobile-app .ams-home-greeting-name {color:#eff8ef !important;}
  html.att-dark-mode body.att-mobile-mode .att-mobile-app .att-home-card .ams-home-actions a.ams-home-main-button {background:#213a31 !important; color:#f0f7f1 !important; border-color:#3a5447 !important;}
  html.att-dark-mode body.att-mobile-mode .att-mobile-app .att-home-card .ams-home-actions a.ams-home-main-button .att-desktop-action-title {color:#f0f7f1 !important;}
  html.att-dark-mode body.att-mobile-mode .att-mobile-app .att-home-card .ams-home-actions a.ams-home-main-button .ams-home-link-icon {background:#2e5140 !important; color:#c9e5ce !important;}
}
