a.brand{text-decoration:none;color:inherit}
.login-card input[readonly]{background:#f1f6fa;color:#61788e;cursor:default}
.forgot-password-link{display:inline-block;margin-top:2px;color:#1d5f9b;font-size:12px;font-weight:800;text-decoration:none}
.forgot-password-link:hover,.action-return:hover{text-decoration:underline}
.primary:disabled{opacity:.62;cursor:not-allowed}
.account-success{background:#eaf7ef;color:#236948;border:1px solid #cce8d8;border-radius:10px;padding:10px 12px;margin-top:10px;font-size:12px;line-height:1.45}
.account-security-head{margin-bottom:24px}
.account-security-card{width:min(520px,100%);margin:0 auto}
.account-security-actions{display:flex;gap:10px;align-items:center;margin-top:20px}
.account-security-actions .primary{width:auto;flex:1 1 auto;margin-top:0}
.secondary-action{height:50px;border:1px solid #cbdce8;border-radius:12px;padding:0 14px;background:#fff;color:#365b7d;font-weight:800;cursor:pointer;white-space:nowrap}
.account-action-layout{grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);min-height:calc(100vh - 98px)}
.action-copy{margin:0;color:#61788e;font-size:14px;line-height:1.6}
.action-status{background:#eaf7ef;color:#236948;border:1px solid #cce8d8;border-radius:10px;padding:10px 12px;margin-top:10px;font-size:12px;line-height:1.45}
.action-return{display:block;margin-top:18px;color:#1d5f9b;font-size:12px;font-weight:800;text-decoration:none}
@media(max-width:850px){.account-action-layout{grid-template-columns:1fr}.account-security-actions{align-items:stretch;flex-direction:column}.secondary-action{width:100%}}

/* Customer self-service account page. This stays scoped to the portal account UI. */
.account-chip{position:relative;padding:4px;background:#fff}
.account-chip .account-menu-trigger{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:#365b7d;border-radius:999px;padding:7px 10px;cursor:pointer;font:inherit;white-space:nowrap}
.account-chip .account-menu-trigger:hover,.account-chip .account-menu-trigger[aria-expanded="true"]{background:#edf4f9}
.account-menu-caret{font-size:15px;line-height:1;transform:translateY(-1px)}
.account-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:5;min-width:190px;padding:6px;background:#fff;border:1px solid #d7e4ee;border-radius:12px;box-shadow:0 14px 34px rgba(37,74,105,.18)}
.account-chip .account-menu button{display:block;width:100%;border:0;border-radius:8px;background:transparent;color:#365b7d;padding:9px 10px;text-align:left;font:inherit;font-weight:750;cursor:pointer}
.account-chip .account-menu button:hover{background:#edf4f9}
.account-view{max-width:980px;margin:0 auto;padding-bottom:24px}
.account-security-head{margin-bottom:24px}
.account-loading{max-width:680px;margin:0 auto;padding:18px;text-align:center;color:#61788e;font-size:14px}
.account-load-error{max-width:680px;margin:0 auto}
.account-content{display:grid;gap:18px}
.account-access-notice{border:1px solid #efc9ac;background:#fff5ed;color:#895032;border-radius:12px;padding:13px 15px;font-size:13px;line-height:1.5}
.account-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.account-panel{background:rgba(255,255,255,.95);border:1px solid #d8e5ef;border-radius:18px;padding:22px;box-shadow:0 14px 38px rgba(42,77,108,.08)}
.account-panel h2{margin:0;color:#173c60;font-size:19px}
.account-panel p{margin:6px 0 0;color:#61788e;font-size:13px;line-height:1.5}
.account-panel-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.account-status-pill{flex:0 0 auto;border-radius:999px;background:#eaf4fb;color:#1d5f9b;padding:5px 9px;font-size:11px;font-weight:850}
.account-plan-name{font-size:17px!important;font-weight:800;color:#173c60!important}
.account-products{min-height:20px}
.account-details{display:grid;gap:12px;margin:20px 0 0}
.account-details div{display:grid;gap:3px}
.account-details dt{color:#7890a5;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.account-details dd{margin:0;color:#284b6b;font-size:14px;overflow-wrap:anywhere}
.account-subscription-details{grid-template-columns:repeat(2,minmax(0,1fr))}
.account-subscription-details .account-remaining-row{grid-column:1 / -1}
.account-subscription-panel[data-warning-level="notice"]{border-color:#d6d39e;background:#fffef1}
.account-subscription-panel[data-warning-level="warning"]{border-color:#e9c38a;background:#fff9ed}
.account-subscription-panel[data-warning-level="strong"]{border-color:#edb284;background:#fff4ec}
.account-subscription-panel[data-warning-level="urgent"]{border-color:#e29172;background:#fff0eb}
.account-subscription-panel[data-warning-level="expired"]{border-color:#e5a6a6;background:#fff1f1}
.account-security-title-row{align-items:center}
.account-password-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;border-top:1px solid #e3edf4;padding-top:18px}
.account-password-form label{display:grid;gap:7px;color:#557089;font-size:12px;font-weight:800}
.account-password-form input{height:46px;border:1px solid #cbdce8;border-radius:10px;padding:0 12px;background:#fbfdff;color:#0c2743;font:inherit}
.account-password-form .error{grid-column:1 / -1;margin:0}
.account-security-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:10px;align-items:center;margin:0}
.account-security-actions .primary{width:auto;min-width:230px;margin:0}
.account-devices-panel .account-panel-title-row{margin-bottom:14px}
.account-device-list{list-style:none;margin:0;padding:0;border-top:1px solid #e3edf4}
.account-device{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #e3edf4}
.account-device-details{display:grid;gap:4px;min-width:0}
.account-device-details strong{font-size:14px;color:#284b6b;overflow-wrap:anywhere}
.account-device-details span{font-size:12px;color:#71889d;overflow-wrap:anywhere}
.account-device.is-revoked{opacity:.63}
.account-device-revoke{flex:0 0 auto;border:1px solid #e2b7aa;border-radius:9px;background:#fff7f3;color:#9b482f;padding:8px 10px;font:inherit;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}
.account-device-revoke:disabled{opacity:.6;cursor:not-allowed}
.account-empty{margin:0!important;padding:14px 0;color:#71889d}
.account-return-row{display:flex;justify-content:center;margin-top:2px}
@media(max-width:850px){.account-summary-grid{grid-template-columns:1fr}.account-password-form{grid-template-columns:1fr}.account-security-title-row{align-items:flex-start;flex-direction:column}.account-security-actions{align-items:stretch;flex-direction:column}.account-security-actions .primary{width:100%}.account-device{align-items:flex-start;flex-direction:column}.account-device-revoke{width:100%}}
