.account-page {max-width:1040px;margin:0 auto;padding:44px 24px 72px;min-height:65vh;}
.account-page h1 {font-size:36px;line-height:1.2;margin:0 0 12px;letter-spacing:0;}
.account-page h2 {font-size:24px;line-height:1.3;letter-spacing:0;}
.account-page h3 {font-size:21px;line-height:1.3;letter-spacing:0;}
.account-intro {font-size:18px;max-width:680px;margin-bottom:24px;}
.account-page a {text-decoration:underline;text-underline-offset:4px;}
.account-form {max-width:760px;display:grid;gap:20px;}
.account-form-narrow {max-width:480px;}
.account-form fieldset {min-width:0;border:0;border-top:1px solid #d9dfe4;margin:0;padding:20px 0 0;}
.account-form legend {font-size:18px;font-weight:700;padding:0 12px 0 0;color:#263a3c;}
.account-field {display:grid;gap:7px;font-weight:600;min-width:0;margin-bottom:12px;}
.account-field input,.account-field select {width:100%;min-width:0;padding:11px 12px;border:1px solid #89969f;border-radius:6px;background:#fff;color:#263a3c;min-height:48px;}
.account-field input:focus,.account-field select:focus {outline:2px solid #17acd3;outline-offset:2px;}
.account-types {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.account-types label {display:flex;align-items:flex-start;gap:10px;padding:16px 12px;border:1px solid #becbd1;border-radius:8px;background:#fff;cursor:pointer;}
.account-types label:has(:checked) {border-color:#228d2b;box-shadow:inset 0 0 0 1px #228d2b;background:#f0fbef;}
.account-types strong,.account-types small {display:block;}
.account-types small {font-size:14px;font-weight:400;line-height:1.5;margin-top:8px;}
.account-form input[type="radio"],.account-form input[type="checkbox"] {width:18px;height:18px;flex-shrink:0;accent-color:#237b2c;margin:4px 0 0;}
.account-check,.account-ages label {display:flex;gap:10px;align-items:flex-start;}
.account-ages {display:flex;gap:12px;flex-wrap:wrap;padding-bottom:20px!important;}
.account-ages legend span {font-weight:400;font-size:14px;}
.account-fields {display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.account-note {font-size:14px;line-height:1.6;color:#52626c;}
.account-notice {border-left:4px solid #17acd3;background:#eefaff;padding:14px 18px;max-width:760px;margin:0 0 28px;}
.account-button {background:#237b2c;color:#fff;border:0;border-radius:6px;padding:12px 22px;font-weight:700;cursor:pointer;justify-self:start;min-height:46px;}
.account-button:disabled {opacity:.55;cursor:not-allowed;}
.account-message {margin:0;color:#237b2c;}
.account-message:empty {display:none;}
.account-message.is-error {color:#a92349;}
.account-nav {display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid #c9d5d9;padding:12px 0;margin:16px 0 28px;}
.account-nav a,.account-nav button {padding:9px 14px;border:0;border-radius:6px;background:transparent;color:#35435f;font:inherit;cursor:pointer;text-decoration:none;}
.account-nav a[aria-current="page"] {background:#eefaff;color:#16637a;font-weight:700;}
.account-nav button {margin-left:auto;}
.account-resources {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0 36px;}
.account-resources>a {display:block;border:1px solid #cdd9df;border-top:4px solid #17acd3;border-radius:8px;padding:20px;background:#fff;text-decoration:none;}
.account-resources>a:nth-child(2) {border-top-color:#f031a0;}
.account-resources>a:hover {border-color:#237b2c;}
.account-profile-summary,.account-danger {border-top:1px solid #d9dfe4;padding-top:24px;margin-top:32px;}
.account-danger summary {color:#a92349;cursor:pointer;}
.account-danger .account-button {background:#a92349;}
.account-danger form {padding-top:20px;}
.account-links {display:flex;gap:20px;flex-wrap:wrap;}
.account-page [hidden] {display:none!important;}
@media(max-width:760px) {.account-types{grid-template-columns:1fr;}.account-page h1{font-size:30px;}.account-resources,.account-fields{grid-template-columns:1fr;}.account-page{padding:28px 20px 48px;}.account-nav a,.account-nav button{padding:8px;}.account-nav button{margin-left:0;}}
