.account-page { max-width: 1600px; width: 100%; padding: 0 20px 40px; color: #171b2a; }
.account-page #content { min-width: 0; }
.account-page #content > h1, .account-page #content > h2:first-of-type { margin: 0 0 24px; padding: 28px; border-radius: 16px; background: linear-gradient(115deg, #f7f9fc 55%, #ffe7ed); font-size: clamp(24px, 2.3vw, 34px); font-weight: 700; color: #171b2a; }
.account-page #content > p { color: #646b7c; line-height: 1.7; margin-bottom: 24px; }
.account-page #content > form { padding: 28px; background: #fff; border: 1px solid #e7eaf1; border-radius: 16px; box-shadow: 0 4px 28px #26335308; }
.account-page fieldset + fieldset { margin-top: 28px; }
.account-page legend { padding-bottom: 14px; margin-bottom: 22px; border-color: #e7eaf1; font-size: 19px; font-weight: 600; color: #171b2a; }
.account-page .form-horizontal .form-group { margin-left: 0; margin-right: 0; margin-bottom: 20px; }
.account-page .form-horizontal .control-label { float: none; width: 100%; padding: 0 0 8px; text-align: start; }
.account-page .form-horizontal .form-group > .col-sm-10 { float: none; width: 100%; padding: 0; }
.account-page .control-label { font-size: 13px; font-weight: 600; color: #455069; }
.account-page .form-control { min-height: 46px; padding: 11px 14px; border: 1px solid #dfe4ee; border-radius: 9px; background: #fafbfe; color: #171b2a; box-shadow: none; font-size: 14px; }
.account-page textarea.form-control { min-height: 120px; resize: vertical; }
.account-page .form-control:focus { background: #fff; border-color: #0054f4; box-shadow: 0 0 0 3px #0054f41a; outline: none; }
.account-page .form-control::placeholder { color: #8991a0; }
.account-page .text-danger { color: #c52b53; margin-top: 7px; font-size: 12px; }
.account-page .has-error .form-control { border-color: #c52b53; }
.account-page input[type="checkbox"], .account-page input[type="radio"] { accent-color: #0054f4; }
.account-page .radio, .account-page .checkbox, .account-page .radio-inline { line-height: 1.6; }
.account-page .btn { min-height: 44px; border-radius: 9px; padding: 12px 22px; font-weight: 600; white-space: normal; }
.account-page .btn-primary { background: #0054f4; color: #fff; }
.account-page .btn-primary:hover, .account-page .btn-primary:focus { background: #003bd5; }
.account-page .btn-default { background: #f0f3f9; color: #455069; }
.account-page .btn-default:hover { background: #e5eaf4; }
.account-page a:focus-visible, .account-page .btn:focus-visible, .account-navigation a:focus-visible { outline: 2px solid #ff4b80; outline-offset: 3px; }
.account-page .buttons { display: flow-root; margin: 24px 0 0; padding-top: 20px; border-top: 1px solid #e7eaf1; line-height: 1.8; }
.account-page .buttons .btn { margin: 5px 0 5px 10px; }
.account-page .buttons .pull-left .btn { margin-left: 0; }
.account-page .alert { border-radius: 10px; padding: 16px 20px; }
.account-auth-grid { display: flex; align-items: stretch; }
.account-auth-grid > .col-sm-6 { display: flex; }
.account-page .account-auth-card { width: 100%; padding: 28px; border: 1px solid #e7eaf1; border-radius: 16px; background: #fff; box-shadow: 0 4px 28px #26335308; }
.account-page .account-auth-card--new { background: linear-gradient(145deg, #f7f9fc, #fff0f4); }
.account-auth-card h2 { margin: 0 0 18px; color: #171b2a; font-size: 23px; font-weight: 600; }
.account-auth-card p { color: #646b7c; line-height: 1.8; }
.account-auth-card form { margin-top: 22px; }
.account-auth-card .control-label { margin-bottom: 8px; }
.account-auth-card .form-group > a { display: inline-block; margin-top: 12px; font-size: 13px; }
.account-auth-card .btn { margin-top: 12px; }
.account-navigation { padding: 10px; border: 1px solid #e7eaf1; border-radius: 14px; background: #fff; box-shadow: 0 4px 28px #26335308; }
.account-navigation .list-group-item { border: 0; border-radius: 8px; padding: 12px 14px; margin-bottom: 3px; color: #455069; font-size: 13px; overflow-wrap: anywhere; }
.account-navigation .list-group-item:hover, .account-navigation .list-group-item:focus { color: #0054f4; background: #eff4ff; }
#account-account #content > h2:not(:first-of-type) { font-size: 21px; color: #171b2a; margin: 30px 0 16px; font-weight: 600; }
#account-account #content > .list-unstyled { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
#account-account #content > .list-unstyled a { display: flex; align-items: center; justify-content: space-between; gap: 16px; height: 100%; min-height: 64px; padding: 18px 20px; border: 1px solid #e7eaf1; border-radius: 12px; color: #455069; background: #fff; line-height: 1.5; }
#account-account #content > .list-unstyled a::after { content: '\203A'; color: #0054f4; font-size: 24px; }
#account-account #content > .list-unstyled a:hover { background: #f7f9fc; border-color: #cddaf4; color: #0054f4; }
.account-page .table-bordered { border-color: #e7eaf1; }
.account-page .table > thead > tr > td { background: #f7f9fc; color: #455069; font-weight: 600; }
@media (max-width: 991px) { .account-auth-grid { display: block; } .account-auth-grid > .col-sm-6 { float: none; width: 100%; } }
@media (max-width: 767px) {
  .account-page { padding: 0 12px 24px; }
  .account-page #content > h1, .account-page #content > h2:first-of-type { padding: 20px; margin-bottom: 18px; }
  .account-page #content > form, .account-page .account-auth-card { padding: 20px 16px; }
  .account-page .buttons .pull-left, .account-page .buttons .pull-right { float: none !important; }
  .account-page .buttons .btn { display: block; width: 100%; margin: 12px 0 0; }
  #account-account #content > .list-unstyled { grid-template-columns: 1fr; }
}
