/* Authored area shell; scoped opt-in, existing pages remain unchanged. */
.mt-area-page { --mt-area-green:var(--mtn-green,#215c52); }
.mt-area-fallback { background:var(--mt-area-green); color:#fff; padding-block:clamp(2rem,5vw,4rem); }
.mt-area-fallback h1 { color:inherit; margin:0 0 1rem; font-size:clamp(2rem,4vw,3.5rem); line-height:1.12; }
.mt-area-fallback p { color:inherit; margin:0; max-width:65ch; }
.mt-area-page > .mt-hero .mt-hero__title { color:#fff; }
.mt-area-page > .mt-hero .mt-hero__inner { max-width:var(--mtn-content-width,1180px); margin-inline:auto; }
.mt-area-tools { background:var(--mt-surface-content,#fffefa); border-bottom:1px solid var(--mtn-border,#d9e3df); }
.mt-area-tools > .mtn-container { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem 1rem; padding-block:.5rem; }
.mt-area-tools .mtn-media-filter-dock, .mt-area-tools .mtn-events-toolbar { flex:1 1 100%; display:flex; align-items:center; flex-wrap:wrap; gap:1rem; margin:0; padding:0; border:0; border-radius:0; box-shadow:none; background:transparent; }
.mt-area-tools .mtn-media-search { flex:1 1 20rem; min-width:0; max-width:28rem; }
.mt-area-tools .mtn-media-search input { min-width:0; width:100%; }
.mt-area-tools .mtn-media-count { margin-inline-start:auto; }
.mt-area-personal-link { margin-inline-start:auto; color:var(--mtn-green,#215c52); text-underline-offset:.2em; }
.mt-area-content { padding-block:2rem; }
.mt-area-content > :first-child, .mt-area-content .mt-programs, .mt-area-content .mtn-media-page, .mt-area-content .mtn-events { margin-block-start:0; padding-block-start:0; }
/* Restore the incumbent right account rail; public filter bands remain unchanged. */
.mt-area-account-layout { display:grid; grid-template-columns:minmax(0,1fr) 14rem; gap:1.5rem; align-items:start; }
.mt-area-account-body { grid-column:1; grid-row:1; min-width:0; }
.mt-area-account-sidebar { --mt-area-sticky-top:calc(var(--mt-area-member-navigation-height,70px) + 1rem); grid-column:2; grid-row:1; align-self:start; position:sticky; top:var(--mt-area-sticky-top); max-height:calc(100dvh - var(--mt-area-sticky-top) - 1rem); overflow:auto; }
.mt-area-account-mobile { display:none; }
.mt-area-account-nav { display:flex; flex-direction:column; gap:.3rem; width:100%; }
.mt-area-account-nav a { display:flex; align-items:center; min-height:44px; padding:.7rem .85rem; border-radius:.6rem; color:var(--mtn-green,#215c52); text-decoration:none; overflow-wrap:anywhere; }
.mt-area-account-nav a:not([aria-current="page"]):hover { background:#edf4ef; }
.mt-area-account-nav a[aria-current="page"] { background:var(--mtn-green,#215c52); color:#fff; font-weight:700; }
@media (min-width:992px) {
  .mt-area-account-sidebar { --mt-area-sticky-top:calc(var(--mtn-header-height,77px) + var(--mt-area-member-navigation-height,70px) + 1rem); }
}
@media (max-width:850px) {
  .mt-area-account-layout { display:flex; flex-direction:column; gap:1rem; }
  .mt-area-account-sidebar { position:static; width:100%; max-height:none; overflow:visible; }
  .mt-area-account-body { width:100%; }
  .mt-area-account-desktop { display:none; }
  .mt-area-account-mobile { display:block; }
  .mt-area-account-mobile > summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:48px; padding:.75rem 1rem; color:var(--mtn-green,#215c52); background:var(--mtn-soft,#edf4ef); border:1px solid var(--mtn-border,#d9e3df); border-radius:.6rem; font-weight:600; cursor:pointer; list-style:none; }
  .mt-area-account-mobile > summary::-webkit-details-marker { display:none; }
  .mt-area-account-mobile > summary::marker { content:""; }
  .mt-area-account-mobile > summary:hover { background:#e5efea; }
  .mt-area-account-mobile > summary:focus-visible { outline:3px solid var(--mtn-green,#205d51); outline-offset:3px; }
  .mt-area-account-toggle { display:flex; align-items:center; gap:.5rem; font-size:.875rem; font-weight:400; }
  .mt-area-account-toggle-close { display:none; }
  .mt-area-account-mobile[open] .mt-area-account-toggle-open { display:none; }
  .mt-area-account-mobile[open] .mt-area-account-toggle-close { display:inline; }
  .mt-area-account-chevron { flex:none; }
  .mt-area-account-mobile[open] .mt-area-account-chevron { transform:rotate(180deg); }
  .mt-area-account-mobile .mt-area-account-nav { padding-block:.5rem; }
}
.mt-area-page--account .mt-member-account-layout { display:block; }
.mt-area-page--account .mt-member-account-content { min-width:0; width:100%; }
.mt-area-page--account .mt-member-area-panel, .mt-area-page--account .mt-member-shell { margin:0; padding:0; background:transparent; box-shadow:none; border:0; }
.mt-area-page--account .mt-shop-page-header:has(> .mt-shop-page-header__back:only-child) { justify-content:flex-end; margin-block:0 1rem; }
@media (max-width:600px) {
  .mt-area-tools > .mtn-container { gap:.75rem; }
  .mt-area-tools .mtn-media-search { max-width:none; flex-basis:100%; }
  .mt-area-personal-link { margin-inline-start:0; }
}


.mt-area-tools .mtn-events-toolbar { min-width:0; }
.mt-area-tools .mtn-events-toolbar form { display:flex; flex-wrap:wrap; gap:.5rem; min-width:0; max-width:100%; }
.mt-area-tools .mtn-events-range { max-width:100%; }

/* Public/account-specific legacy main paddings must not separate the hero from the header. */
#mtn-main.mt-area-page { max-width:none; width:100%; margin-block-start:0; padding-block-start:0; padding-inline:0; }

/* Match the member-area hero alignment on phones; retain all desktop choices. */
@media (max-width:767.98px) {
  .mt-area-fallback { text-align:center; }
  .mt-area-fallback p { margin-inline:auto; }
  .mt-area-page > .mt-hero .mt-hero__inner { justify-items:center; text-align:center; }
  .mt-area-page > .mt-hero .mt-hero__content { text-align:center; margin-inline:auto; }
  .mt-area-page > .mt-hero .mt-hero__divider, .mt-area-page > .mt-hero .mt-hero__text { margin-inline:auto; }
  .mt-area-page > .mt-hero .mt-hero__actions { justify-content:center; }
  .mt-area-page > .mt-hero .mt-hero__module-zone--right { justify-self:center; }
}

/* Native order documents keep their content, without the account page frame. */
@media print {
  .mt-area-page--account:has(.mt-hikashop-view--order-detail) > :is(.mt-hero,.mt-area-fallback,.mt-overview-nav),
  .mt-area-page--account:has(.mt-hikashop-view--order-detail) .mt-area-account-sidebar { display:none!important; }
  .mt-area-page--account:has(.mt-hikashop-view--order-detail) .mt-area-account-layout { display:block!important; margin:0!important; padding:0!important; }
  .mt-area-page--account:has(.mt-hikashop-view--order-detail) .mt-area-account-body { width:100%!important; margin:0!important; padding:0!important; }
}
