/* Same navigation everywhere; mobile uses a directory and dedicated pages. */
.cabinet-layout { max-width:1120px; margin:12px auto 48px; display:grid; grid-template-columns:228px minmax(0,1fr); gap:40px; align-items:start; color:var(--text); }
.cabinet-sidebar { position:sticky; top:100px; padding-top:4px; }
.cabinet-sidebar>.account-back { margin:0 12px 16px; font-weight:600; }
.cabinet-link { display:flex; align-items:center; gap:12px; min-height:48px; box-sizing:border-box; padding:12px; color:var(--text2); text-decoration:none; border:1px solid transparent; border-radius:12px; font-size:14px; line-height:1.4; transition:background-color .16s ease-out, border-color .16s ease-out; }
.cabinet-link svg { width:21px; height:21px; flex-shrink:0; }
.cabinet-link span { min-width:0; overflow-wrap:anywhere; }
.cabinet-link:hover { color:var(--text); background:var(--surface-hover); }
.cabinet-link[aria-current="page"] { color:var(--text); background:var(--surface); border-color:var(--border-strong); font-weight:600; }
.cabinet-link[aria-current="page"] svg { color:var(--red); }
.cabinet-link:focus-visible { outline:2px solid var(--blue); outline-offset:3px; }
.cabinet-help-link { margin-top:20px; }
.cabinet-content { min-width:0; }
.cabinet-content .account-avatar img { width:100%; height:100%; border-radius:inherit; object-fit:cover; }
.cabinet-content .account-wrap,.cabinet-content .set-wrap { width:auto; max-width:none; margin:0; }
.cabinet-content .account-heading p { line-height:1.6; max-width:60ch; }
.cabinet-content .account-plans-grid { grid-template-columns:1fr; }
.cabinet-content .account-history { margin-top:0; }
.cabinet-content .set-save-bar { z-index:3; }
.cabinet-index { display:block; max-width:760px; }
.cabinet-directory { margin-top:28px; border-block:1px solid var(--border); }
.cabinet-directory .cabinet-link { min-height:64px; padding:16px 8px; border-radius:0; border-bottom:1px solid var(--border); color:var(--text); }
.cabinet-directory .cabinet-link:last-child { border-bottom:0; }
.cabinet-sidebar nav { display:grid; gap:4px; }
.account-service-section { margin-top:36px; padding-top:24px; border-top:1px solid var(--border); scroll-margin-top:110px; }
.account-service-section [id] { scroll-margin-top:110px; }
.account-operator { margin:16px 0; font-size:13px; line-height:1.6; }
.account-operator > div { display:grid; grid-template-columns:180px 1fr; gap:12px; padding:6px 0; }
.account-operator dt { color:var(--text2); }
.account-operator dd { color:var(--text); }
.account-service-section .account-legal { margin-top:0; gap:4px 24px; }
.account-service-section .account-legal a { display:inline-flex; align-items:center; min-height:44px; }
@media(max-width:480px) { .account-operator > div { grid-template-columns:1fr; gap:0; padding:8px 0; } }
@media(prefers-reduced-motion:reduce) { .cabinet-link { transition:none; } }
.cabinet-directory .cabinet-link:after { content:'›'; margin-left:auto; color:var(--text2); font-size:24px; }
@media(max-width:800px) {
  .cabinet-layout { display:block; margin-top:0; }
  .cabinet-sidebar { display:none; }
  .cabinet-content .account-heading h1 { font-size:26px; line-height:1.25; }
  .cabinet-content .set-save-bar { flex-wrap:wrap; }
  .cabinet-content .set-save-bar button { width:100%; }
}
