/* DREAMCARS v159: unified dc-app-header shell — guest / user / admin / auth */

/* --- Core row layout: brand | meta | actions --- */
header.dc-app-header{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  grid-template-columns:unset!important;
  grid-template-rows:unset!important;
  min-height:68px!important;
  box-sizing:border-box!important;
}

header.dc-app-header .dc-header-brand{
  flex:0 0 auto!important;
  min-width:0!important;
  max-width:none!important;
}

header.dc-app-header .dc-header-meta{
  flex:1 1 auto!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}

header.dc-app-header .dc-header-meta:empty{
  display:none!important;
}

header.dc-app-header .dc-header-actions{
  flex:0 1 auto!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  overflow:hidden!important;
}

/* Reset legacy grid / column placements from site-visual.css */
header.dc-app-header .user-top-line,
header.dc-app-header .header-subscribers-count,
header.dc-app-header .header-user,
header.dc-app-header .header-push-control,
header.dc-app-header .pwa-install-btn,
header.dc-app-header .dc-header-actions > nav{
  grid-column:unset!important;
  grid-row:unset!important;
  position:relative!important;
  top:auto!important;
  bottom:auto!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  width:auto!important;
  margin:0!important;
  z-index:auto!important;
}

header.dc-app-header .user-top-line{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  min-width:0!important;
  padding:0!important;
  overflow:visible!important;
}

/* Brand — do not shrink logo */
header.dc-app-header .brand{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  flex:0 0 auto!important;
  min-width:0!important;
  max-width:none!important;
  overflow:visible!important;
  text-decoration:none!important;
}

header.dc-app-header .brand-app-icon{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  flex:0 0 auto!important;
  border-radius:12px!important;
  object-fit:contain!important;
}

header.dc-app-header .brand-text,
header.dc-app-header .brand-wordmark{
  min-width:0!important;
  max-width:none!important;
  overflow:visible!important;
}

header.dc-app-header .brand-wordmark-svg{
  display:block!important;
  height:26px!important;
  width:auto!important;
  max-width:180px!important;
}

/* Subscribers — single inline row in meta zone */
header.dc-app-header .header-subscribers-count{
  width:auto!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:600!important;
  letter-spacing:.02em!important;
  color:rgba(255,255,255,.55)!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  pointer-events:none!important;
}

/* PWA install — compact pill in actions */
header.dc-app-header .pwa-install-btn{
  box-sizing:border-box!important;
  flex:0 1 auto!important;
  min-width:0!important;
  min-height:34px!important;
  max-height:38px!important;
  margin:0!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,138,0,.42)!important;
  background:linear-gradient(135deg,rgba(255,138,0,.14),rgba(255,255,255,.04))!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  cursor:pointer!important;
}

header.dc-app-header .pwa-install-btn[hidden]{
  display:none!important;
}

header.dc-app-header .pwa-install-btn:active{
  transform:translateY(1px)!important;
}

/* User name pill in actions */
header.dc-app-header .header-user{
  display:flex!important;
  align-items:center!important;
  flex:0 1 auto!important;
  min-width:0!important;
  max-width:160px!important;
  justify-content:flex-end!important;
}

header.dc-app-header .header-user-name{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:12px!important;
  line-height:1.15!important;
  padding:7px 11px!important;
}

/* Guest auth links in actions (not bottom nav) */
header.dc-app-header .dc-header-actions > nav:not(.admin-header-actions){
  position:static!important;
  display:flex!important;
  flex:0 1 auto!important;
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  gap:6px!important;
  align-items:center!important;
  justify-content:flex-end!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

header.dc-app-header .dc-header-actions > nav:not(.admin-header-actions) a{
  position:static!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:6px 10px!important;
  font-size:11px!important;
  font-weight:700!important;
  white-space:nowrap!important;
  text-decoration:none!important;
  border-radius:999px!important;
}

/* --- Auth role: brand-only content, dashboard shell geometry --- */
header.dc-app-header.dc-role-auth{
  justify-content:flex-start!important;
  min-height:68px!important;
}

header.dc-app-header.dc-role-auth .dc-header-brand{
  flex:0 0 auto!important;
}

header.dc-app-header.dc-role-auth .dc-header-meta,
header.dc-app-header.dc-role-auth .dc-header-actions:empty{
  display:none!important;
}

header.dc-app-header.dc-role-auth .dc-header-actions:not(:empty){
  display:none!important;
}

header.dc-app-header.dc-role-auth .brand{
  margin:0!important;
}

/* --- Admin role: preserve existing admin-header-actions layout --- */
header.dc-app-header.dc-role-admin .dc-header-meta:empty{
  display:none!important;
}

header.dc-app-header.dc-role-admin .dc-header-actions .admin-header-actions{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex:0 0 auto!important;
  gap:8px!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

/* --- Guest/user: override legacy multi-row grid from site-visual --- */
body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header,
body.user-mode:not(.auth-mode):not(.admin-mode) .wrap > header.dc-app-header{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  grid-template-columns:unset!important;
  grid-template-rows:unset!important;
  min-height:68px!important;
  max-height:none!important;
}

body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header .user-top-line,
body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header .dc-header-brand .user-top-line{
  grid-column:unset!important;
  grid-row:unset!important;
  width:auto!important;
  flex:0 0 auto!important;
  padding-right:0!important;
}

body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header .user-top-line .brand,
body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header .brand{
  flex:0 0 auto!important;
  max-width:100%!important;
  width:auto!important;
}

body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header .brand-app-icon{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  flex:0 0 40px!important;
}

/* --- Dashboard shell visual: user/auth (admin ::after from site-visual.css) --- */
html body.user-mode header.dc-app-header{
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-top:0!important;
  background:
    radial-gradient(circle at 12% 50%,rgba(255,255,255,.07),transparent 28%),
    linear-gradient(180deg,rgba(24,24,24,.96),rgba(8,8,8,.96))!important;
  box-shadow:0 18px 48px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.06)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}

html body.user-mode header.dc-app-header::after{
  content:""!important;
  position:absolute!important;
  left:18px!important;
  right:18px!important;
  bottom:0!important;
  height:1px!important;
  background:linear-gradient(90deg,rgba(255,138,0,.36),rgba(255,255,255,.08),transparent)!important;
  pointer-events:none!important;
  z-index:1!important;
}

body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header .header-subscribers-count,
body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header:has(.header-user) .header-subscribers-count{
  grid-column:unset!important;
  grid-row:unset!important;
  justify-self:unset!important;
  align-self:unset!important;
  position:relative!important;
  width:auto!important;
}

body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header .header-user,
body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header .dc-header-actions > nav,
body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header .dc-header-actions .header-user{
  grid-column:unset!important;
  grid-row:unset!important;
  justify-self:unset!important;
  width:auto!important;
  position:relative!important;
}

body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header .pwa-install-btn{
  position:relative!important;
}

/* --- Mobile guest/user/auth: dashboard flex shell (<=700px, stage-1 excludes comments-mode) --- */
@media (max-width:700px){
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header,
  html body.user-mode:not(.admin-mode):not(.comments-mode) .wrap > header.dc-app-header{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    grid-template-columns:unset!important;
    grid-template-rows:unset!important;
    min-height:68px!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding:10px 14px!important;
    border-radius:0 0 20px 20px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header::after{
    left:14px!important;
    right:14px!important;
  }

  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .dc-header-meta{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    max-width:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }

  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .header-subscribers-count{
    display:none!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header .dc-header-brand{
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:none!important;
    overflow:hidden!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header .dc-header-actions{
    flex:0 0 auto!important;
    min-width:0!important;
    max-width:42vw!important;
    overflow:hidden!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:0!important;
  }

  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .user-top-line,
  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .dc-header-brand .user-top-line{
    width:auto!important;
    max-width:100%!important;
    min-width:0!important;
    padding-right:0!important;
    overflow:hidden!important;
  }

  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .brand,
  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .user-top-line .brand{
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:none!important;
    overflow:hidden!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header .brand-app-icon,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header .user-top-line .brand-app-icon{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    flex:0 0 34px!important;
    border-radius:10px!important;
  }

  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .brand-wordmark,
  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .brand-text,
  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .user-top-line .brand-wordmark{
    min-width:0!important;
    overflow:hidden!important;
  }

  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .brand-wordmark-svg{
    display:block!important;
    height:26px!important;
    width:auto!important;
    max-width:min(56vw,180px)!important;
  }

  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .dc-header-actions > nav:not(.admin-header-actions),
  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .dc-header-actions > nav:not(.admin-header-actions){
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    height:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }

  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .pwa-install-btn,
  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .header-push-control{
    display:none!important;
  }

  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .header-user{
    display:none!important;
  }

  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .pwa-install-btn{
    box-sizing:border-box!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:132px!important;
    width:auto!important;
    min-height:34px!important;
    max-height:38px!important;
    padding:6px 10px!important;
    font-size:10px!important;
    line-height:1.1!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .header-user{
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:132px!important;
    overflow:hidden!important;
  }

  html body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode) header.dc-app-header .header-user-name{
    max-width:100%!important;
    font-size:11px!important;
    padding:6px 10px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}

@media (max-width:380px){
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header .brand-app-icon,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header .user-top-line .brand-app-icon{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
  }
}

/* --- Tablet 701–899: full-width dashboard shell (stage-1 excludes comments-mode) --- */
@media (min-width:701px) and (max-width:899px){
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header,
  html body.user-mode:not(.admin-mode):not(.comments-mode) .wrap > header.dc-app-header,
  html body.admin-mode.admin-mobile-shell header.dc-app-header,
  html body.admin-mode.admin-mobile-shell .wrap > header.dc-app-header{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    transform:none!important;
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    min-height:68px!important;
    padding:12px 18px!important;
    gap:16px!important;
    border-radius:0 0 24px 24px!important;
    box-sizing:border-box!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header .brand-app-icon,
  html body.admin-mode.admin-mobile-shell header.dc-app-header .brand-app-icon{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    flex:0 0 40px!important;
    border-radius:12px!important;
  }

  html body.user-mode.auth-mode header.dc-app-header.dc-role-auth{
    min-height:68px!important;
    padding:12px 18px!important;
    justify-content:flex-start!important;
  }

  header.dc-app-header .brand-wordmark-svg{
    height:24px!important;
    max-width:160px!important;
  }

  header.dc-app-header .pwa-install-btn{
    font-size:11px!important;
    padding:7px 12px!important;
    max-width:min(28vw,160px)!important;
  }

  header.dc-app-header .header-user{
    max-width:200px!important;
  }
}

@media (min-width:900px){
  body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header{
    display:flex!important;
    flex-direction:row!important;
    grid-template-columns:unset!important;
    grid-template-rows:unset!important;
  }

  html body.user-mode.auth-mode header.dc-app-header.dc-role-auth{
    min-height:68px!important;
    height:auto!important;
    padding:12px 18px!important;
    justify-content:flex-start!important;
  }

  header.dc-app-header{
    gap:16px!important;
    min-height:68px!important;
  }

  header.dc-app-header .brand-app-icon{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    border-radius:12px!important;
  }

  header.dc-app-header .brand-wordmark-svg{
    height:28px!important;
    max-width:220px!important;
  }

  header.dc-app-header .header-subscribers-count{
    font-size:12px!important;
  }

  header.dc-app-header .pwa-install-btn{
    font-size:13px!important;
    padding:10px 14px!important;
    max-width:none!important;
    min-height:40px!important;
  }

  header.dc-app-header .header-user{
    max-width:360px!important;
  }

  header.dc-app-header .header-user-name{
    font-size:14px!important;
    padding:10px 14px!important;
  }

  body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header .dc-header-actions > nav:not(.admin-header-actions){
    display:flex!important;
  }
}

@media (min-width:1440px){
  header.dc-app-header{
    gap:20px!important;
  }
}

/* --- Desktop shell width: match admin dashboard header geometry (>=900px) --- */
@media (min-width:900px){
  body.user-mode:not(.auth-mode):not(.admin-mode):not(.comments-mode):not(.comments-admin-user-visual) header.dc-app-header,
  body.user-mode:not(.auth-mode):not(.admin-mode) header.dc-app-header,
  body.user-mode.auth-mode header.dc-app-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    transform:none!important;
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding:12px 18px!important;
    border-radius:0 0 24px 24px!important;
    box-sizing:border-box!important;
  }

}

/* DREAMCARS v162 lock marker: 20260530_dc_app_header_v162_shell_unify */

/* --- Unified admin shell v167: ALL admin pages (dashboard, site_feed_admin, settings, …) --- */
html body.admin-mode.admin-mobile-shell{
  overflow-x:hidden!important;
}

html body.admin-mode.admin-mobile-shell .wrap{
  padding-top:calc(var(--admin-header-height,76px) + 6px + env(safe-area-inset-top,0px))!important;
}

html body.admin-mode.admin-mobile-shell .wrap > header.dc-app-header,
html body.admin-mode.admin-mobile-shell header.dc-app-header{
  position:fixed!important;
  top:env(safe-area-inset-top,0px)!important;
  left:0!important;
  right:0!important;
  transform:none!important;
  width:100%!important;
  max-width:none!important;
  min-height:68px!important;
  height:auto!important;
  margin:0!important;
  margin-left:0!important;
  margin-right:0!important;
  padding:12px 18px!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  overflow:hidden!important;
  contain:unset!important;
  border-radius:0 0 24px 24px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-top:0!important;
  border-bottom:0!important;
  background:
    radial-gradient(circle at 12% 50%,rgba(255,255,255,.07),transparent 28%),
    linear-gradient(180deg,rgba(24,24,24,.96),rgba(8,8,8,.96))!important;
  box-shadow:0 18px 48px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.06)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  z-index:5000!important;
  box-sizing:border-box!important;
}

html body.admin-mode.admin-mobile-shell .wrap > header.dc-app-header::after,
html body.admin-mode.admin-mobile-shell header.dc-app-header::after{
  content:""!important;
  position:absolute!important;
  left:18px!important;
  right:18px!important;
  bottom:0!important;
  height:1px!important;
  background:linear-gradient(90deg,rgba(255,138,0,.36),rgba(255,255,255,.08),transparent)!important;
  pointer-events:none!important;
}

html body.admin-mode.admin-mobile-shell header.dc-app-header .dc-header-brand,
html body.admin-mode.admin-mobile-shell header.dc-app-header .dc-header-actions{
  flex:0 0 auto!important;
  min-width:0!important;
}

html body.admin-mode.admin-mobile-shell header.dc-app-header .user-top-line{
  position:relative!important;
  z-index:1!important;
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}

html body.admin-mode.admin-mobile-shell header.dc-app-header .brand{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  text-decoration:none!important;
  animation:none!important;
  transform:none!important;
}

html body.admin-mode.admin-mobile-shell header.dc-app-header .brand::before{
  opacity:.36!important;
  background:radial-gradient(circle at 20% 50%,rgba(255,138,0,.18),transparent 58%)!important;
}

html body.admin-mode.admin-mobile-shell header.dc-app-header .brand-app-icon{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  aspect-ratio:1/1!important;
  flex:0 0 auto!important;
  border-radius:12px!important;
  object-fit:contain!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.10),0 10px 24px rgba(0,0,0,.34)!important;
}

html body.admin-mode.admin-mobile-shell header.dc-app-header .brand-text{
  display:inline-flex!important;
  align-items:center!important;
  gap:1px!important;
  min-width:0!important;
  max-width:calc(100vw - 150px)!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:26px!important;
  line-height:1!important;
  letter-spacing:.015em!important;
}

html body.admin-mode.admin-mobile-shell header.dc-app-header .admin-header-actions{
  position:relative!important;
  z-index:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex:0 0 auto!important;
  gap:8px!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

html body.admin-mode.admin-mobile-shell header.dc-app-header .admin-logout-link,
html body.admin-mode.admin-mobile-shell header.dc-app-header .admin-home-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:40px!important;
  height:40px!important;
  margin:0!important;
  padding:0 16px!important;
  border-radius:15px!important;
  color:#fff!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1!important;
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,255,255,.11)!important;
  box-shadow:none!important;
  transition:color .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease!important;
}

html body.admin-mode.admin-mobile-shell header.dc-app-header .admin-home-link{
  width:40px!important;
  padding:0!important;
}

html body.admin-mode.admin-mobile-shell header.dc-app-header .admin-logout-link:hover,
html body.admin-mode.admin-mobile-shell header.dc-app-header .admin-logout-link:focus-visible,
html body.admin-mode.admin-mobile-shell header.dc-app-header .admin-home-link:hover,
html body.admin-mode.admin-mobile-shell header.dc-app-header .admin-home-link:focus-visible{
  color:#ffb347!important;
  border-color:rgba(255,138,0,.48)!important;
  background:rgba(255,138,0,.08)!important;
  box-shadow:0 16px 34px rgba(255,138,0,.10)!important;
  outline:0!important;
}

@media (max-width:760px){
  html body.admin-mode.admin-mobile-shell .wrap{
    padding-top:calc(var(--admin-header-height,76px) + 6px + env(safe-area-inset-top,0px))!important;
  }

  html body.admin-mode.admin-mobile-shell .wrap > header.dc-app-header,
  html body.admin-mode.admin-mobile-shell header.dc-app-header,
  html body.admin-mode.admin-mobile-shell.mobile-admin-feed-open .wrap > header.dc-app-header,
  html body.admin-mode.admin-mobile-shell.mobile-admin-feed-open header.dc-app-header,
  html body.admin-mobile-shell.mobile-admin-feed-open header.dc-app-header{
    position:fixed!important;
    top:env(safe-area-inset-top,0px)!important;
    left:0!important;
    right:0!important;
    transform:none!important;
    width:100%!important;
    max-width:none!important;
    min-height:68px!important;
    height:auto!important;
    margin:0!important;
    padding:10px 14px!important;
    gap:10px!important;
    border-radius:0 0 20px 20px!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-top:0!important;
    border-bottom:0!important;
    background:
      radial-gradient(circle at 12% 50%,rgba(255,255,255,.07),transparent 28%),
      linear-gradient(180deg,rgba(24,24,24,.96),rgba(8,8,8,.96))!important;
    box-shadow:0 18px 48px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.06)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    contain:unset!important;
    z-index:5000!important;
  }

  html body.admin-mode.admin-mobile-shell .wrap > header.dc-app-header::after,
  html body.admin-mode.admin-mobile-shell header.dc-app-header::after,
  html body.admin-mode.admin-mobile-shell.mobile-admin-feed-open .wrap > header.dc-app-header::after,
  html body.admin-mode.admin-mobile-shell.mobile-admin-feed-open header.dc-app-header::after{
    left:14px!important;
    right:14px!important;
  }

  html body.admin-mode.admin-mobile-shell header.dc-app-header .brand{
    gap:8px!important;
  }

  html body.admin-mode.admin-mobile-shell header.dc-app-header .brand-app-icon{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    border-radius:10px!important;
  }

  html body.admin-mode.admin-mobile-shell header.dc-app-header .brand-text{
    max-width:calc(100vw - 146px)!important;
    font-size:20px!important;
  }

  html body.admin-mode.admin-mobile-shell header.dc-app-header .admin-logout-link{
    min-height:38px!important;
    height:38px!important;
    padding:0 14px!important;
    border-radius:14px!important;
    font-size:14px!important;
  }

  html body.admin-mode.admin-mobile-shell header.dc-app-header .admin-home-link{
    width:38px!important;
    min-height:38px!important;
    height:38px!important;
  }
}

@media (min-width:900px){
  html body.admin-mode.admin-mobile-shell .wrap > header.dc-app-header,
  html body.admin-mode.admin-mobile-shell header.dc-app-header{
    left:0!important;
    right:0!important;
    transform:none!important;
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }
}

/* DREAMCARS v167 lock marker: 20260530_dc_app_header_v167_admin_shell_unify */

@media (min-width:761px){
  html body.admin-mode.admin-mobile-shell .wrap > header.dc-app-header.dc-role-admin,
  html body.admin-mode.admin-mobile-shell header.dc-app-header.dc-role-admin{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    left:0!important;
    right:0!important;
    transform:none!important;
  }
}

@media (max-width:760px){
  html body.admin-mode.admin-mobile-shell.site-feed-admin-page.mobile-admin-feed-open .wrap,
  html body.admin-mode.admin-mobile-shell.mobile-admin-feed-open .wrap{
    padding-top:calc(var(--admin-header-height,76px) + 6px + env(safe-area-inset-top,0px))!important;
  }

  html body.admin-mode.admin-mobile-shell.site-feed-admin-page.mobile-admin-feed-open .wrap > header.dc-app-header.dc-role-admin,
  html body.admin-mode.admin-mobile-shell.site-feed-admin-page.mobile-admin-feed-open header.dc-app-header.dc-role-admin,
  html body.admin-mode.admin-mobile-shell.mobile-admin-feed-open .wrap > header.dc-app-header.dc-role-admin,
  html body.admin-mode.admin-mobile-shell.mobile-admin-feed-open header.dc-app-header.dc-role-admin{
    position:fixed!important;
    top:env(safe-area-inset-top,0px)!important;
    left:0!important;
    right:0!important;
    transform:none!important;
    width:100%!important;
    max-width:none!important;
    min-height:68px!important;
    height:auto!important;
    margin:0!important;
    padding:10px 14px!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    overflow:hidden!important;
    contain:unset!important;
    border-radius:0 0 20px 20px!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-top:0!important;
    border-bottom:0!important;
    background:
      radial-gradient(circle at 12% 50%,rgba(255,255,255,.07),transparent 28%),
      linear-gradient(180deg,rgba(24,24,24,.96),rgba(8,8,8,.96))!important;
    box-shadow:0 18px 48px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.06)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    z-index:5000!important;
    box-sizing:border-box!important;
  }

  html body.admin-mode.admin-mobile-shell.site-feed-admin-page.mobile-admin-feed-open .wrap > header.dc-app-header.dc-role-admin::after,
  html body.admin-mode.admin-mobile-shell.site-feed-admin-page.mobile-admin-feed-open header.dc-app-header.dc-role-admin::after,
  html body.admin-mode.admin-mobile-shell.mobile-admin-feed-open .wrap > header.dc-app-header.dc-role-admin::after,
  html body.admin-mode.admin-mobile-shell.mobile-admin-feed-open header.dc-app-header.dc-role-admin::after{
    content:""!important;
    position:absolute!important;
    left:14px!important;
    right:14px!important;
    bottom:0!important;
    height:1px!important;
    background:linear-gradient(90deg,rgba(255,138,0,.36),rgba(255,255,255,.08),transparent)!important;
    pointer-events:none!important;
  }
}

/* DREAMCARS v168 lock marker: 20260530_dc_app_header_v168_admin_width_override */

/* DREAMCARS v169 lock marker: 20260530_dc_app_header_v169_mobile_feed_admin_shell */

/* --- v170: unified admin mobile logo metrics (dashboard = contests = site_feed_admin) --- */
@media (max-width:760px){
  html body.admin-mode.admin-mobile-shell header.dc-app-header.dc-role-admin .brand{
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    min-width:0!important;
    max-width:calc(100vw - 136px)!important;
    flex:0 0 auto!important;
    flex-shrink:0!important;
    overflow:visible!important;
    transform:none!important;
  }

  html body.admin-mode.admin-mobile-shell header.dc-app-header.dc-role-admin .brand-app-icon{
    display:block!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    flex:0 0 auto!important;
    flex-shrink:0!important;
    border-radius:10px!important;
    aspect-ratio:1/1!important;
    object-fit:contain!important;
    box-shadow:0 0 0 1px rgba(255,255,255,.10),0 10px 24px rgba(0,0,0,.34)!important;
  }

  html body.admin-mode.admin-mobile-shell header.dc-app-header.dc-role-admin .brand-text{
    max-width:calc(100vw - 146px)!important;
    font-size:20px!important;
  }

  html body.admin-mode.admin-mobile-shell header.dc-app-header.dc-role-admin .brand-text.brand-wordmark{
    display:inline-flex!important;
    align-items:center!important;
    gap:1px!important;
    font-size:clamp(23px,7.25vw,29px)!important;
    letter-spacing:.005em!important;
    width:clamp(176px,46vw,184px)!important;
    min-width:clamp(176px,46vw,184px)!important;
    max-width:clamp(176px,46vw,184px)!important;
    height:auto!important;
    line-height:1!important;
    aspect-ratio:520/92!important;
    flex:0 0 auto!important;
    flex-shrink:0!important;
    overflow:visible!important;
    text-overflow:clip!important;
    transform:none!important;
    transform-origin:left center!important;
  }

  html body.admin-mode.admin-mobile-shell header.dc-app-header.dc-role-admin .brand-wordmark-svg{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:none!important;
    aspect-ratio:520/92!important;
    overflow:visible!important;
    flex:0 0 auto!important;
    flex-shrink:0!important;
    transform:translateY(1px)!important;
  }
}

/* DREAMCARS v170 lock marker: 20260530_dc_app_header_v170_admin_mobile_logo_unify */

/* --- v171: guest/user/auth mobile+PWA shell + logo (matches admin v170) --- */
@media (max-width:760px){
  html body.user-mode:not(.admin-mode):not(.comments-mode) .wrap{
    padding-top:calc(var(--admin-header-height,76px) + 6px + env(safe-area-inset-top,0px))!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) .wrap > header.dc-app-header.dc-role-guest,
  html body.user-mode:not(.admin-mode):not(.comments-mode) .wrap > header.dc-app-header.dc-role-user,
  html body.user-mode.auth-mode .wrap > header.dc-app-header.dc-role-auth,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user,
  html body.user-mode.auth-mode header.dc-app-header.dc-role-auth{
    position:fixed!important;
    top:env(safe-area-inset-top,0px)!important;
    left:0!important;
    right:0!important;
    transform:none!important;
    width:100%!important;
    max-width:none!important;
    min-height:68px!important;
    height:auto!important;
    margin:0!important;
    padding:10px 14px!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    overflow:hidden!important;
    contain:unset!important;
    border-radius:0 0 20px 20px!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-top:0!important;
    border-bottom:0!important;
    background:
      radial-gradient(circle at 12% 50%,rgba(255,255,255,.07),transparent 28%),
      linear-gradient(180deg,rgba(24,24,24,.96),rgba(8,8,8,.96))!important;
    box-shadow:0 18px 48px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.06)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    z-index:5000!important;
    box-sizing:border-box!important;
  }

  html body.user-mode.auth-mode header.dc-app-header.dc-role-auth{
    justify-content:flex-start!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) .wrap > header.dc-app-header.dc-role-guest::after,
  html body.user-mode:not(.admin-mode):not(.comments-mode) .wrap > header.dc-app-header.dc-role-user::after,
  html body.user-mode.auth-mode .wrap > header.dc-app-header.dc-role-auth::after,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest::after,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user::after,
  html body.user-mode.auth-mode header.dc-app-header.dc-role-auth::after{
    content:""!important;
    position:absolute!important;
    left:14px!important;
    right:14px!important;
    bottom:0!important;
    height:1px!important;
    background:linear-gradient(90deg,rgba(255,138,0,.36),rgba(255,255,255,.08),transparent)!important;
    pointer-events:none!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .dc-header-brand,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .dc-header-brand,
  html body.user-mode.auth-mode header.dc-app-header.dc-role-auth .dc-header-brand{
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:none!important;
    overflow:hidden!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .dc-header-meta,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .dc-header-meta,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header .dc-header-meta{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    max-width:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header .header-subscribers-count{
    display:none!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .dc-header-actions,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .dc-header-actions{
    flex:0 0 auto!important;
    min-width:0!important;
    max-width:42vw!important;
    overflow:hidden!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:6px!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header .user-top-line,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header .dc-header-brand .user-top-line,
  html body.user-mode:not(.admin-mode):not(.comments-mode).dc-pwa-standalone header.dc-app-header .user-top-line,
  html body.user-mode:not(.admin-mode):not(.comments-mode):not(.dc-pwa-standalone) header.dc-app-header .user-top-line{
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    padding-right:0!important;
    gap:8px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .brand,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .brand,
  html body.user-mode.auth-mode header.dc-app-header.dc-role-auth .brand{
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    min-width:0!important;
    max-width:calc(100vw - 136px)!important;
    flex:0 0 auto!important;
    flex-shrink:0!important;
    overflow:visible!important;
    transform:none!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .brand-app-icon,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .brand-app-icon,
  html body.user-mode.auth-mode header.dc-app-header.dc-role-auth .brand-app-icon{
    display:block!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    flex:0 0 auto!important;
    flex-shrink:0!important;
    border-radius:10px!important;
    aspect-ratio:1/1!important;
    object-fit:contain!important;
    box-shadow:0 0 0 1px rgba(255,255,255,.10),0 10px 24px rgba(0,0,0,.34)!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .brand-text,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .brand-text,
  html body.user-mode.auth-mode header.dc-app-header.dc-role-auth .brand-text{
    max-width:calc(100vw - 146px)!important;
    font-size:20px!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .brand-text.brand-wordmark,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .brand-text.brand-wordmark,
  html body.user-mode.auth-mode header.dc-app-header.dc-role-auth .brand-text.brand-wordmark{
    display:inline-flex!important;
    align-items:center!important;
    gap:1px!important;
    font-size:clamp(23px,7.25vw,29px)!important;
    letter-spacing:.005em!important;
    width:clamp(176px,46vw,184px)!important;
    min-width:clamp(176px,46vw,184px)!important;
    max-width:clamp(176px,46vw,184px)!important;
    height:auto!important;
    line-height:1!important;
    aspect-ratio:520/92!important;
    flex:0 0 auto!important;
    flex-shrink:0!important;
    overflow:visible!important;
    text-overflow:clip!important;
    transform:none!important;
    transform-origin:left center!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .brand-wordmark-svg,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .brand-wordmark-svg,
  html body.user-mode.auth-mode header.dc-app-header.dc-role-auth .brand-wordmark-svg{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:none!important;
    aspect-ratio:520/92!important;
    overflow:visible!important;
    flex:0 0 auto!important;
    flex-shrink:0!important;
    transform:translateY(1px)!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .dc-header-actions > nav:not(.admin-header-actions),
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .header-user{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    height:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .pwa-install-btn,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .header-push-control{
    display:none!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode).dc-pwa-standalone header.dc-app-header .pwa-install-btn,
  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header .pwa-install-btn[hidden]{
    display:none!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-guest .pwa-install-btn{
    box-sizing:border-box!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 1 auto!important;
    flex-shrink:1!important;
    min-width:0!important;
    max-width:132px!important;
    width:auto!important;
    min-height:34px!important;
    max-height:38px!important;
    padding:6px 10px!important;
    font-size:10px!important;
    line-height:1.1!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .header-user{
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:132px!important;
    overflow:hidden!important;
  }

  html body.user-mode:not(.admin-mode):not(.comments-mode) header.dc-app-header.dc-role-user .header-user-name{
    max-width:100%!important;
    font-size:11px!important;
    padding:6px 10px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}

/* DREAMCARS v171 lock marker: 20260530_dc_app_header_v171_user_mobile_shell */
