/* UI v2 mobile system. Native links, forms and disclosures remain the no-script fallback. */
.ui-mobile-v2 [hidden] { display: none !important; }
.ui-mobile-v2 .mobile-account { max-width: 48rem; padding-block: 1rem 2rem; }
.mobile-account section { display: grid; gap: 0; min-width: 0; }
.mobile-account h2 { margin: 0; font: 500 1.25rem/1.3 var(--serif); }
.mobile-account p { margin: 0; color: var(--muted); overflow-wrap: anywhere; }
.mobile-account-identity { display: grid; grid-template-columns: 56px minmax(0,1fr); align-items: center; gap: .875rem; }
.mobile-account-identity > div { display: grid; gap: .2rem; min-width: 0; }
.mobile-account-identity h2 { overflow-wrap: anywhere; }
.mobile-account-identity p { font-size: .8125rem; }
.mobile-account-identity small { color: var(--quiet); font-size: .75rem; }
.mobile-account-avatar { width: 56px; height: 56px; display: grid; place-items: center; border-radius: 50%; color: #17140a; background: linear-gradient(135deg,#f2d16b,#9c7a26); font: 700 1.5rem/1 var(--serif); }
.mobile-account-verified { color: var(--success); }
.mobile-account section > h2 { margin: 0 0 .625rem; color: var(--gold-light); font: 750 .6875rem/1.4 var(--sans); letter-spacing: .14em; text-transform: uppercase; }
.mobile-account .row, .mobile-account-setting { min-height: 52px; margin: 0; border: 1px solid var(--border-soft); border-radius: 0; background: var(--bg-elevated); box-shadow: none; }
.mobile-account .row { grid-template-columns: minmax(0,1fr) 20px; padding: .5rem .875rem; gap: .5rem; }
.mobile-account .row-title { font-size: .9375rem; font-weight: 400; }
.mobile-account .row-media { display: none; }
.mobile-account section > h2 + :is(.row,.mobile-account-setting) { border-radius: 14px 14px 0 0; }
.mobile-account section > :is(.row,.mobile-account-setting):last-child { border-radius: 0 0 14px 14px; }
.mobile-account section > h2 + :is(.row,.mobile-account-setting):last-child { border-radius: 14px; }
.mobile-account :is(.row,.mobile-account-setting) + :is(.row,.mobile-account-setting) { border-top: 0; }
.mobile-account-setting > summary { display: flex; align-items: center; gap: .625rem; min-height: 51px; padding: .5rem .875rem; list-style: none; cursor: pointer; }
.mobile-account-setting > summary::-webkit-details-marker { display: none; }
.mobile-account-setting > summary > :first-child { flex: 1; }
.mobile-account-setting > summary small { color: var(--muted); font-size: .8125rem; }
.mobile-account-setting > summary > :last-child { color: var(--quiet); }
.mobile-account-setting[open] > summary > :last-child { transform: rotate(90deg); }
.mobile-account-setting > :not(summary) { margin: 0 .875rem .875rem; }
.mobile-account-setting > p { font-size: .8125rem; }
.mobile-account-setting .button-row { display: grid; }
.mobile-account > form .danger { min-height: 48px; color: var(--danger); border-color: var(--danger); background: transparent; }
.mobile-language-form { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; padding-block: .5rem; }
.mobile-language-form select { flex: 1; min-width: 8rem; min-height: var(--tap); }
.mobile-sheet-heading { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.mobile-sheet-heading h2 { margin: 0; font: 500 1.5rem/1.3 var(--serif); }
.mobile-menu-sheet .more-navigation-panel { position: static; display: grid; width: auto; max-width: none; padding: .5rem 0; border: 0; box-shadow: none; background: transparent; }
.mobile-menu-sheet .navigation-group a { min-height: 52px; display: flex; align-items: center; }
.mobile-menu-sheet .navigation-tools { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .5rem; }
.mobile-menu-sheet .navigation-tools .navigation-group-title { grid-column: 1/-1; }
.mobile-menu-sheet .navigation-tools a { flex-direction: column; justify-content: center; gap: .4rem; min-height: 80px; padding: .6rem .35rem; border: 1px solid var(--border-soft); border-radius: 12px; background: var(--surface); text-align: center; font-size: .75rem; }
.navigation-tool-icon { display: none; }
.mobile-menu-sheet .navigation-tool-icon { display: block; color: var(--gold-light); font-size: 1.375rem; }
.mobile-menu-identity { display: grid; grid-template-columns: 44px minmax(0,1fr) auto; align-items: center; gap: .75rem; margin: .25rem 0 .75rem; padding: .75rem; border: 1px solid var(--border-soft); border-radius: 14px; background: var(--bg-elevated); color: var(--text); text-decoration: none; overflow-wrap: anywhere; }
.mobile-menu-identity .mobile-account-avatar { width: 44px; height: 44px; font-size: 1.25rem; }
.mobile-menu-identity strong, .mobile-menu-identity small { display: block; }
.mobile-menu-identity strong { font: 600 1.125rem/1.4 var(--serif); }
.mobile-menu-identity small { color: var(--muted); font-size: .75rem; }
.mobile-menu-sheet .language-switcher { position: static; }
.mobile-menu-sheet .language-switcher form { position: static; width: 100%; margin-top: .5rem; box-shadow: none; }
.mobile-menu-sheet .language-switcher summary { justify-content: start; width: 100%; }
.ui-mobile-v2 .auth-panel input:not([type="hidden"]), .ui-mobile-v2 .auth-panel .button { min-height: 52px; }
.ui-mobile-v2 .auth-panel .signup-auto-option input[type="checkbox"] { min-height: 1.4rem; }
.ui-mobile-v2 .auth-panel .eyebrow, .ui-mobile-v2 .auth-panel .auth-intro { display: none; }
.mobile-password { display: flex; gap: .4rem; align-items: center; }
.mobile-password input { min-width: 0; flex: 1; }
.mobile-password button { min-height: var(--tap); flex-shrink: 0; }
@media (max-width: 57.99rem) {
    .ui-mobile-v2:has(.task-bar) .site-header,
    .ui-mobile-v2:has(.author-editor-v2) .site-header { display: none; }
    .ui-mobile-v2 .header-inner > .desktop-nav { display: none; }
    .ui-mobile-v2 .header-inner { grid-template-columns: minmax(0,1fr) auto auto; min-height: 64px; padding-block: 0; gap: .5rem; }
    .ui-mobile-v2 .header-inner .brand { gap: .625rem; }
    .ui-mobile-v2 .header-inner .brand img { width: 36px; height: 36px; }
    .ui-mobile-v2 .header-inner .brand strong { font-size: .875rem; }
    .ui-mobile-v2 .header-inner .brand small { font-size: .5625rem; }
    .ui-mobile-v2 .header-inner:has(.header-login) > .more-navigation { display: none; }
    .ui-mobile-v2 .header-inner .header-login { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding-inline: .75rem; border: 1px solid var(--gold-dark); border-radius: 9px; color: var(--gold-light); font-size: .8125rem; font-weight: 600; text-decoration: none; }
    .ui-mobile-v2 .bottom-nav { grid-template-columns: repeat(4,minmax(0,1fr)); }
    .ui-mobile-v2:has(.analytics-consent) { padding-bottom: var(--ui-consent-height, 14rem); }
    .ui-mobile-v2 .analytics-consent { position: fixed; z-index: 35; left: 0; right: 0; bottom: calc(4.6rem + env(safe-area-inset-bottom)); width: 100%; max-width: none; margin: 0; padding: .65rem 1rem; gap: .5rem; border-radius: var(--radius) var(--radius) 0 0; background: var(--bg-elevated); box-shadow: var(--shadow); }
    .ui-mobile-v2 .analytics-consent-copy p { font-size: .8125rem; margin: .3rem 0 0; }
    .ui-mobile-v2 .analytics-consent-actions { min-width: 0; display: grid; grid-template-columns: 1fr 1fr; }
    .ui-mobile-v2 .analytics-consent-actions .button { width: 100%; min-height: var(--tap); }
    .ui-mobile-v2:has(.action-bar) .analytics-consent { bottom: calc(var(--tap-lg) + 1.1rem + env(safe-area-inset-bottom)); }
    .ui-mobile-v2 .toast-region { bottom: calc(5rem + var(--ui-consent-height, 0px) + env(safe-area-inset-bottom)); }
}
