/* Attendance Management System v1.0.29
   Desktop WordPress authentication polish + dedicated login + 1.5x phone branding.
   Not loaded on unrelated WordPress administration pages. */
@media (min-width: 769px) {
  body.login {
    background: radial-gradient(ellipse at 12% 5%,#eef6ee 0%,transparent 45%), #f3f6f4 !important;
    color:#273b2e !important;
    min-height:100vh !important;
  }
  body.login div#login {
    width:min(100%,480px) !important;
    max-width:480px !important;
    padding:clamp(44px,8vh,82px) 16px 28px !important;
    margin:0 auto !important;
    box-sizing:border-box !important;
  }
  body.login #login .att-login-pagehead {
    box-sizing:border-box !important; padding:30px 34px 22px !important;
    background:#fff !important; border:1px solid #e1eae3 !important;
    border-top:4px solid #2f6b1f !important; border-bottom:0 !important;
    border-radius:20px 20px 0 0 !important; margin:0 !important;
    box-shadow:0 14px 36px rgba(28,62,38,.075) !important;
  }
  body.login #login .att-login-brand { margin:0 0 17px !important; }
  body.login #login .att-login-brand img {
    display:block !important; width:auto !important; height:auto !important;
    max-width:min(100%,245px) !important; max-height:90px !important;
    object-fit:contain !important;
  }
  body.login #login .att-login-title { font-size:22px !important; line-height:1.3 !important; font-weight:600 !important;
    border-bottom:0 !important; padding:0 !important; color:#1c3223 !important; }
  body.login #login .att-login-sub { margin:8px auto 0 !important; font-size:14px !important; line-height:1.5 !important; text-align:center !important; max-width:330px !important; }
  body.login #login form#loginform,
  body.login #login form#lostpasswordform,
  body.login #login form#resetpassform,
  body.login #login form#registerform {
    box-sizing:border-box !important; padding:24px 34px 24px !important;
    background:#fff !important; margin:0 !important;
    border:1px solid #e1eae3 !important; border-top:1px solid #edf1ee !important;
    border-radius:0 0 20px 20px !important; box-shadow:0 15px 36px rgba(28,62,38,.075) !important;
  }
  body.login #login form label { font-size:14px !important; font-weight:500 !important; color:#304436 !important; }
  body.login #login :is(input[type=text],input[type=email],input[type=password]) {
    box-sizing:border-box !important; width:100% !important; min-height:50px !important;
    height:50px !important; padding:10px 14px !important;
    background:#fff !important; border:1px solid #d4e0d6 !important;
    border-radius:11px !important; box-shadow:none !important; font-size:16px !important;
  }
  body.login #login :is(input[type=text],input[type=email],input[type=password]):focus {
    border-color:#478b50 !important; box-shadow:0 0 0 3px rgba(47,107,31,.12) !important;
  }
  body.login #login .wp-pwd .button.wp-hide-pw {
    width:auto !important; min-width:42px !important; height:42px !important;
    top:4px !important; right:4px !important; padding:4px !important;
    border:none !important; color:#376b45 !important; background:transparent !important;
  }
  body.login #login .forgetmenot label { font-size:13px !important; font-weight:400 !important; }
  body.login #login .forgetmenot input { width:17px !important; height:17px !important; }
  body.login #login .submit .button,
  body.login #login .button.button-large:not(.wp-hide-pw) {
    width:100% !important; min-height:50px !important; height:50px !important;
    border-radius:11px !important; background:#2f6b1f !important; border-color:#2f6b1f !important;
    font-size:15px !important; font-weight:600 !important; color:#fff !important;
  }
  body.login #login #nav {
    box-sizing:border-box !important; margin:14px 0 0 !important; padding:0 !important;
    text-align:center !important;
  }
  body.login #login #nav a {
    box-sizing:border-box !important; display:inline-flex !important; align-items:center !important; justify-content:center !important;
    width:auto !important; min-height:40px !important; padding:8px 16px !important;
    border:0 !important; background:transparent !important; box-shadow:none !important;
    border-radius:9px !important; color:#2f6b1f !important; text-decoration:none !important;
    font-size:14px !important; font-weight:500 !important;
  }
  body.login #login #nav a:hover { background:#e8f0e9 !important; }
  body.login #login #backtoblog { display:none !important; }
  body.login #login :is(#login_error,.message) { box-sizing:border-box !important; margin:0 !important;
    padding:12px 18px !important; font-size:13px !important; line-height:1.55 !important;
    border-radius:0 !important; box-shadow:none !important; }
  body.login .ams-core-login-back { text-align:center; margin-top:12px; }
  /* Branded front-end Attendance Login: keep the desktop split treatment with a focused form. */
  body.ams-attendance-login-page .ams-login-panel { background:#f6f9f7 !important; padding:40px 34px !important; }
  body.ams-attendance-login-page .ams-login-form-card { box-sizing:border-box; width:min(100%,490px);
    padding:34px 38px 36px !important; border:1px solid #dfebe1 !important; border-radius:22px !important;
    background:#fff !important; box-shadow:0 18px 45px rgba(20,55,33,.075) !important; }
  body.ams-attendance-login-page .ams-login-logo { margin:0 auto 22px !important;
    object-position:center !important; max-width:min(100%,250px) !important; max-height:96px !important; }
  body.ams-attendance-login-page .ams-login-product-name { text-align:center !important; color:#2a5236 !important;
    font-size:17px !important; font-weight:600 !important; margin:0 0 5px !important; }
  body.ams-attendance-login-page .ams-login-form-card h2 { text-align:center !important; font-size:24px !important;
    font-weight:600 !important; margin:4px 0 23px !important; }
  body.ams-attendance-login-page .ams-login-forgot { display:block; text-align:center; }
}
@media (max-width: 768px) {
  /* All mobile logos are increased by approx. 1.5× from their v1.0.28 caps.
     Keep natural aspect ratios and clamp to available viewport width. */
  body.login #login .att-login-brand img {
    width:auto !important; height:auto !important; max-height:102px !important;
    max-width:min(278px,85vw) !important; object-fit:contain !important;
  }
  body.login #login .att-login-pagehead { padding-top:19px !important; }
  body.ams-attendance-login-page .ams-login-logo {
    width:auto !important; height:auto !important; max-height:102px !important;
    max-width:min(315px,85vw) !important; margin:0 auto 15px !important;
    object-fit:contain !important;
  }
}
