.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.secondary {background:#fff;color:#263a3c;border:1px solid #c7d3d8;}
.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;}
.private-content-reader{max-width:900px;margin:0 auto;padding:clamp(24px,5vw,54px);border:1px solid #d9dfe4;border-top:6px solid #32c936;border-radius:8px;background:#fff;box-shadow:0 16px 42px rgba(23,33,76,.08)}
.private-content-reader h2{margin:8px 0 12px;color:#17214c;font-size:clamp(2rem,4vw,3.4rem);line-height:1.08}
.private-content-reader .meta{color:#168126;font-size:13px;font-weight:800;text-transform:uppercase}
.private-content-intro{color:#166f89;font-size:1.15rem;line-height:1.55}
.private-content-reader .managed-text{margin-top:28px;padding-top:24px;border-top:1px solid #d9dfe4}
.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;}
.account-login-page {display:grid;grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);gap:clamp(34px,6vw,72px);align-items:center;max-width:1180px;margin:0 auto;padding:clamp(42px,7vw,82px) 24px;min-height:68vh;}
.account-login-photo {margin:0;}
.account-login-photo img {display:block;width:100%;height:auto;border-radius:18px 50px 18px 50px;box-shadow:0 18px 48px rgba(23,33,76,.12);}
.account-login-photo figcaption {margin-top:12px;color:#6d7890;font-size:14px;line-height:1.5;}
.account-login-card {padding:clamp(28px,4vw,44px);border:1px solid rgba(23,33,76,.13);border-top:6px solid #32c936;border-radius:10px;background:#fff;box-shadow:0 16px 40px rgba(23,33,76,.09);}
.account-login-card h1 {margin:0 0 12px;color:#17214c;font-family:"Nunito","Segoe UI",system-ui,sans-serif;font-size:clamp(2.4rem,4.5vw,4rem);line-height:1.02;}
.account-login-card .account-intro {margin-bottom:20px;color:#166f89;}
.account-login-note {margin:0 0 24px;padding:16px 18px;border-left:5px solid #17acd3;border-radius:5px;background:#eefaff;}
.account-login-note strong {color:#17214c;}
.account-login-note p {margin:5px 0 0;font-size:14px;line-height:1.5;}
.account-login-card .account-form {max-width:none;}
.account-login-card .account-button {width:100%;justify-self:stretch;}
.account-login-links {display:flex;justify-content:space-between;gap:18px;align-items:center;border-top:1px solid #d9dfe4;padding-top:18px;font-size:14px;}
.account-login-links p {margin:0;}
.mail-page {max-width:1180px;}
.mail-toolbar {display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0 16px;border-top:1px solid #d9dfe4;border-bottom:1px solid #d9dfe4;padding:14px 0;}
.mail-toolbar>div {display:flex;gap:10px;flex-wrap:wrap;}
.mail-layout {display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:18px;align-items:start;}
.mail-list {border:1px solid #d2dde2;border-radius:8px;background:#fff;overflow:hidden;}
.mail-item {display:grid;gap:5px;width:100%;border:0;border-bottom:1px solid #e3ebee;background:#fff;text-align:left;padding:14px 16px;cursor:pointer;color:#263a3c;}
.mail-item:last-child {border-bottom:0;}
.mail-item:hover,.mail-item.is-active {background:#eefaff;}
.mail-item strong {font-size:16px;line-height:1.35;color:#17214e;}
.mail-item span,.mail-item time {font-size:13px;line-height:1.35;color:#52626c;overflow-wrap:anywhere;}
.mail-detail {min-height:360px;border:1px solid #d2dde2;border-radius:8px;background:#fff;padding:22px;overflow-wrap:anywhere;}
.mail-detail h2 {font-size:25px;margin:0 0 14px;color:#17214e;}
.mail-meta {display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 12px;margin:0 0 20px;padding-bottom:18px;border-bottom:1px solid #e0e8ec;}
.mail-meta dt {font-weight:700;color:#52626c;}
.mail-meta dd {margin:0;}
.mail-body {white-space:pre-wrap;font-family:inherit;font-size:16px;line-height:1.65;color:#263a3c;}
@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;}}
@media(max-width:860px) {.account-login-page{grid-template-columns:1fr;max-width:680px;}.account-login-photo{order:-1;}}
@media(max-width:640px) {
  .account-page{padding:28px 14px 44px;}
  .account-page h1{font-size:2.25rem;line-height:1.05;}
  .account-page h2{font-size:1.55rem;}
  .account-form{gap:16px;}
  .account-form fieldset{padding-top:16px;}
  .account-field input,.account-field select{min-height:50px;font-size:16px;}
  .account-types label{padding:15px;}
  .account-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:22px;}
  .account-nav a,.account-nav button{display:flex;min-height:44px;align-items:center;justify-content:center;text-align:center;}
  .account-button{width:100%;min-height:50px;}
  .account-login-page{gap:24px;padding:20px 14px 42px;}
  .account-login-photo img{border-radius:8px 24px 8px 24px;}
  .account-login-photo figcaption{margin-top:8px;font-size:12.5px;}
  .account-login-card{padding:22px 18px;border-radius:8px;}
  .account-login-card h1{font-size:2.35rem;}
  .account-login-note{padding:14px;margin-bottom:20px;}
  .account-login-links{display:grid;gap:10px;}
}
@media(max-width:860px) {.mail-layout{grid-template-columns:1fr;}.mail-toolbar{align-items:flex-start;flex-direction:column;}.mail-detail{min-height:260px;}}
