/* MG Print Portal V13.9 — public/auth visual parity. MG backend & branding preserved. */
:root{--dbpub-navy:#071827;--dbpub-navy2:#0b3155;--dbpub-orange:#ff8a00;--dbpub-bg:#eef4f8;--dbpub-line:#dce7ef;--dbpub-text:#10243a;--dbpub-muted:#718397}
body.api1-auth-body,body.v12-api1,body.v10-public,body.public-user-catalog{font-family:Inter,Arial,Helvetica,sans-serif!important;color:var(--dbpub-text)!important}
/* login: reference centered white card + navy/orange atmosphere */
body.api1-auth-body{min-height:100vh!important;margin:0!important;background:radial-gradient(circle at 12% 16%,rgba(13,120,185,.14),transparent 26%),linear-gradient(135deg,#061629 0 30%,#edf4f8 30% 100%)!important}
body.api1-auth-body .api1-login-layout{min-height:100vh!important;display:grid!important;place-items:center!important;padding:38px 22px!important;position:relative!important}
body.api1-auth-body .api1-login-back{position:absolute!important;left:34px!important;top:32px!important;display:flex!important;align-items:center!important;gap:10px!important;padding:10px 13px!important;border-radius:12px!important;background:#fff!important;border:1px solid var(--dbpub-line)!important;box-shadow:0 8px 24px rgba(7,24,39,.08)!important;color:#173750!important}
body.api1-auth-body .api1-login-back>span{width:30px!important;height:30px!important;border-radius:9px!important;display:grid!important;place-items:center!important;background:#102f47!important;color:#fff!important}
body.api1-auth-body .api1-login-back small{display:block!important;font-size:7px!important;color:#778a9b!important}body.api1-auth-body .api1-login-back b{display:block!important;font-size:10px!important}
body.api1-auth-body .api1-login-panel{width:min(470px,100%)!important;margin:0!important;padding:30px!important;border-radius:20px!important;background:#fff!important;border:1px solid var(--dbpub-line)!important;box-shadow:0 24px 60px rgba(3,20,39,.18)!important}
body.api1-auth-body .api1-login-visual{display:flex!important;align-items:center!important;gap:12px!important;margin-bottom:14px!important;padding-bottom:15px!important;border-bottom:1px solid #edf1f4!important}
body.api1-auth-body .api1-login-logo{width:58px!important;height:46px!important;border:1px solid #dfe8ef!important;border-radius:12px!important;background:#fff!important;display:grid!important;place-items:center!important}
body.api1-auth-body .api1-login-logo img{max-width:50px!important;max-height:38px!important;object-fit:contain!important}
body.api1-auth-body .api1-login-brand b{display:block!important;font-size:15px!important;color:#10243a!important;font-weight:900!important}body.api1-auth-body .api1-login-brand small{display:block!important;margin-top:3px!important;font-size:8px!important;color:#738699!important}
body.api1-auth-body .api1-private-badge{display:inline-flex!important;margin:3px 0 10px!important;padding:5px 8px!important;border-radius:999px!important;background:#102f47!important;color:#ffd37d!important;font-size:7px!important;font-weight:900!important;letter-spacing:.08em!important}
body.api1-auth-body .api1-login-panel h1{margin:0 0 6px!important;font-size:28px!important;line-height:1.12!important;color:#10243a!important}body.api1-auth-body .api1-login-panel>p{margin:0 0 18px!important;font-size:11px!important;line-height:1.5!important;color:#718397!important}
body.api1-auth-body .api1-role-hint{margin-bottom:12px!important;padding:9px 10px!important;border-radius:9px!important;background:#f4f8fb!important;border:1px solid #dce7ef!important;font-size:9px!important;color:#4d667a!important}
body.api1-auth-body .api1-login-panel label{display:grid!important;gap:6px!important;margin:11px 0!important;font-size:10px!important;font-weight:850!important;color:#173750!important}
body.api1-auth-body .api1-login-panel input{width:100%!important;min-height:42px!important;padding:10px 11px!important;border:1px solid #cedce7!important;border-radius:9px!important;background:#fff!important;color:#142d43!important;outline:none!important;box-shadow:none!important}
body.api1-auth-body .api1-login-panel input:focus{border-color:#58a5d6!important;box-shadow:0 0 0 3px rgba(22,135,207,.10)!important}
body.api1-auth-body .api1-login-submit{width:100%!important;min-height:42px!important;margin-top:7px!important;border:0!important;border-radius:9px!important;background:linear-gradient(135deg,#f28a18,#f6a623)!important;color:#fff!important;font-size:11px!important;font-weight:900!important;box-shadow:none!important;cursor:pointer!important}
body.api1-auth-body .api1-login-links{display:flex!important;justify-content:space-between!important;gap:10px!important;margin-top:12px!important;font-size:9px!important;font-weight:850!important}body.api1-auth-body .api1-login-links a{color:#0d78b9!important}
body.api1-auth-body .api1-auth-divider{display:flex!important;align-items:center!important;gap:10px!important;margin:17px 0 12px!important;color:#8a9aa9!important;font-size:8px!important}body.api1-auth-body .api1-auth-divider:before,body.api1-auth-body .api1-auth-divider:after{content:""!important;flex:1!important;height:1px!important;background:#e3ebf1!important}
body.api1-auth-body .api1-register-btn,body.api1-auth-body .api1-admin-link{display:flex!important;align-items:center!important;justify-content:center!important;min-height:40px!important;border-radius:9px!important;border:1px solid #d5e1e9!important;background:#f8fbfd!important;color:#173750!important;font-size:10px!important;font-weight:900!important;box-shadow:none!important}
body.api1-auth-body .api1-admin-link{margin-top:8px!important;background:transparent!important;border:0!important;color:#6d8295!important}
body.api1-auth-body .api1-login-alert{padding:9px 10px!important;border-radius:9px!important;font-size:9px!important;line-height:1.4!important}

/* Register/current simple-card page -> reference registration visual language */
body.v12-api1 .register-stage{padding:42px 22px!important;min-height:100vh!important;background:radial-gradient(circle at 12% 15%,rgba(24,111,180,.20),transparent 25%),linear-gradient(135deg,#061629 0 33%,#edf4fa 33%,#edf4fa 100%)!important}
body.v12-api1 .register-card{width:min(820px,100%)!important;max-width:820px!important;padding:34px!important;border-radius:22px!important;background:#fff!important;border:1px solid #dce7ef!important;box-shadow:0 24px 64px rgba(3,20,39,.18)!important}
body.v12-api1 .register-card .brand-mark{width:66px!important;height:52px!important;display:grid!important;place-items:center!important;background:#fff!important;border:1px solid #dce7ef!important;border-radius:12px!important;margin-bottom:14px!important}
body.v12-api1 .register-card h2{font-size:30px!important;margin:5px 0 6px!important;color:#10243a!important}body.v12-api1 .register-card>.muted{font-size:11px!important;line-height:1.55!important;color:#718397!important}
body.v12-api1 .register-card .form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px!important}body.v12-api1 .register-card .field.full{grid-column:1/-1!important}
body.v12-api1 .register-card label{font-size:10px!important;font-weight:850!important;color:#173750!important}body.v12-api1 .register-card input,body.v12-api1 .register-card select{min-height:42px!important;padding:10px 11px!important;border:1px solid #cedce7!important;border-radius:9px!important;background:#fff!important}
body.v12-api1 .register-card .btn{min-height:40px!important;border-radius:9px!important;border:1px solid #d5e1e9!important;box-shadow:none!important;font-size:10px!important;font-weight:900!important}body.v12-api1 .register-card .btn.primary{background:linear-gradient(135deg,#f28a18,#f6a623)!important;color:#fff!important;border-color:#e98816!important}

/* Forgot password uses its own split layout: re-tone to reference without changing workflow. */
body.v12-api1 .login-v55-brand{background:linear-gradient(145deg,#06172a,#0b3155)!important}body.v12-api1 .login-v55-stage{background:#edf4f8!important}body.v12-api1 .login-v55-card{border-color:#dce7ef!important;border-radius:20px!important;box-shadow:0 22px 58px rgba(7,24,39,.14)!important}body.v12-api1 .sign-btn{background:linear-gradient(135deg,#f28a18,#f6a623)!important;box-shadow:none!important}

/* Public home */
body.v10-public{min-height:100vh!important;margin:0!important;background:linear-gradient(145deg,#edf5f9,#f8fafc)!important;color:#10243a!important}
body.v10-public .v10-public-head{min-height:68px!important;padding:10px clamp(18px,4vw,58px)!important;background:#071827!important;border:0!important;box-shadow:none!important}
body.v10-public .v10-public-brand b{color:#fff!important;font-size:14px!important}body.v10-public .v10-public-brand small{color:#9eb6c9!important;font-size:8px!important}body.v10-public .v10-public-brand img{width:54px!important;height:42px!important;object-fit:contain!important}
body.v10-public .v10-public-actions>a{min-height:36px!important;padding:8px 12px!important;border-radius:8px!important;border:1px solid #31556e!important;background:#102f47!important;color:#f0f6fb!important;font-size:9px!important;font-weight:900!important}body.v10-public .v10-public-actions>a.primary{background:linear-gradient(135deg,#f28a18,#f6a623)!important;border-color:#e98816!important;color:#fff!important}
body.v10-public .v10-public-main{padding:42px clamp(18px,5vw,72px)!important}.v10-public .v10-public-hero{display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)!important;gap:28px!important;align-items:center!important;min-height:calc(100vh - 160px)!important}.v10-public .v10-public-hero h1{font-size:clamp(34px,4.7vw,68px)!important;line-height:1.02!important;color:#10243a!important;margin:12px 0 18px!important}.v10-public .v10-public-hero p{font-size:14px!important;line-height:1.7!important;color:#667c8f!important;max-width:760px!important}.v10-public .v10-public-panel{background:#fff!important;border:1px solid #dce7ef!important;border-radius:20px!important;padding:24px!important;box-shadow:0 18px 46px rgba(7,24,39,.10)!important}.v10-public .v10-public-grid a{border:1px solid #dce7ef!important;border-radius:12px!important;background:#f9fbfd!important;box-shadow:none!important}

/* Public service catalog */
body.public-user-catalog{min-height:100vh!important;margin:0!important;background:linear-gradient(145deg,#edf5f9,#f8fafc)!important}.public-user-catalog .gov-public-shell{padding:18px!important}.public-user-catalog .gov-private-banner{border-radius:10px!important;background:#071827!important;color:#fff!important;border:0!important}.public-user-catalog .user-simple-hero{border:1px solid #dce7ef!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 24px rgba(7,24,39,.06)!important;padding:20px!important}.public-user-catalog .panel{border:1px solid #dce7ef!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 24px rgba(7,24,39,.06)!important}.public-user-catalog .v715-live-service-card{border-radius:14px!important;box-shadow:none!important}.public-user-catalog .btn.primary{background:linear-gradient(135deg,#f28a18,#f6a623)!important;color:#fff!important}

@media(max-width:820px){body.api1-auth-body{background:#edf4f8!important}body.api1-auth-body .api1-login-back{position:static!important;width:min(470px,100%)!important;margin:0 auto 10px!important}body.api1-auth-body .api1-login-layout{display:block!important;padding:20px 14px!important}body.api1-auth-body .api1-login-panel{margin:auto!important}body.v12-api1 .register-card .form-grid{grid-template-columns:1fr!important}body.v12-api1 .register-card .field.full{grid-column:auto!important}.v10-public .v10-public-hero{grid-template-columns:1fr!important}.v10-public .v10-public-main{padding:24px 16px!important}}
