/* Phone navigation and a common news entry point; desktop keeps its three columns. */
.mobile-topbar { display: none; }
.mobile-news-dialog { padding: 0; }
.mobile-news-dialog .dialog-heading { align-items: center; padding: 14px 20px; border-bottom: 1px solid var(--line); }
.mobile-news-dialog h2 { margin: 0; font-size: 19px; }
.mobile-news-dialog .icon-button { min-width: 44px; min-height: 44px; padding: 0; }
.mobile-news-place { padding: 8px 22px 0; margin: 0; font-size: 13px; }
.mobile-news-place a { color: var(--blue); display: inline-flex; align-items: center; min-height: 44px; }
.mobile-news-content { padding: 0 22px 24px; }
.mobile-news-content .news-heading { margin: 0 0 10px; }
.mobile-news-content .news-refresh { display: inline-flex; align-items: center; justify-content: center; width: 44px; min-height: 44px; border: 0; border-radius: 50%; background: transparent; font-size: 24px; }
.mobile-news-content .news-byline,.mobile-news-content .news-freshness { color: var(--muted); font-size: 12px; }
.mobile-news-content .news-headlines button { min-height: 44px; font-size: 15px; }
.mobile-news-content .news-excerpt { font-size: 15px; line-height: 1.8; }
.mobile-news-content .news-back,.mobile-news-content .news-read,.mobile-news-content .news-retry { display: inline-flex; align-items: center; min-height: 44px; border: 0; padding: 8px 0; background: transparent; color: var(--blue); font-size: 14px; }
.mobile-news-content .news-source-details a { display: inline-flex; align-items: center; min-height: 44px; font-size: 12px; }
.mobile-news-content .news-warning,.mobile-news-content .news-preview-note { color: var(--muted); font-size: 12px; line-height: 1.7; }
.mobile-news-dialog .news-source-details li { flex-wrap: wrap; }
@media(max-width:900px) {
  html { scroll-padding-top: 80px; scroll-padding-bottom: 100px; }
  .mobile-topbar { position: sticky; top: 0; z-index: 20; display: flex; gap: 8px; align-items: center; min-height: 62px; padding: 8px 16px; padding-top: max(8px,env(safe-area-inset-top)); border-bottom: 1px solid var(--line); background: var(--paper); }
  .mobile-brand { display: none; color: var(--ink); text-decoration: none; font-size: 18px; font-weight: 750; letter-spacing: -.6px; }
  .mobile-brand svg { width: 26px; height: 26px; flex-shrink: 0; }
  .mobile-place { display: flex; align-items: center; gap: 5px; min-width: 0; max-width: 70%; min-height: 44px; padding: 8px 10px; border: 0; border-radius: 22px; background: var(--soft); color: var(--ink); font-size: 13px; cursor: pointer; }
  #mobile-place-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .mobile-place>span:last-child { color: var(--muted); font-size: 11px; }
  .mobile-news-button { display: flex; align-items: center; justify-content: center; gap: 6px; flex-shrink: 0; min-width: 62px; min-height: 44px; margin-left: auto; padding: 8px 9px; border: 0; border-radius: 22px; background: transparent; color: var(--ink); font-size: 13px; cursor: pointer; }
  .mobile-news-button svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.7; }
  .mobile-topbar button:hover { background: var(--soft); }
  .news-mobile { display: none !important; }
  .mobile-news-dialog { width: min(560px,calc(100% - 20px)); max-height: calc(100dvh - 20px); overflow-y: auto; overscroll-behavior: contain; }
}
@media(max-width:650px) {
  body { display: block; width: 100%; max-width: none; padding-bottom: calc(72px + env(safe-area-inset-bottom)); }
  .sidebar { position: static; display: contents; width: auto; height: auto; min-height: 0; padding: 0; }
  .sidebar>.brand,.sidebar .community-picker { display: none; }
  .sidebar nav { position: fixed; inset: auto 0 0; z-index: 30; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); align-items: stretch; gap: 0; width: 100%; height: calc(68px + env(safe-area-inset-bottom)); margin: 0; padding: 4px max(4px,env(safe-area-inset-left)) calc(4px + env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-right)); border-top: 1px solid var(--line); background: var(--paper); overflow: visible; }
  .sidebar nav a { position: relative; display: flex; flex-direction: column; justify-content: center; align-items: center; flex: none; gap: 4px; width: 100%; max-width: none; min-width: 0; height: 59px; min-height: 44px; padding: 6px 1px; border-radius: 12px; text-align: center; line-height: 1.2; }
  .sidebar nav a[data-nav=saved],.sidebar nav a[data-nav=assistant] { display: none; }
  .sidebar nav a .nav-label { display: block; width: auto; font-size: 10px; line-height: 1.2; letter-spacing: 0; }
  .sidebar nav a .nav-icon,.sidebar nav a svg.nav-icon { display: inline-flex; width: 23px; height: 23px; flex: 0 0 23px; }
  .sidebar nav a.active { background: var(--soft); }
  .sidebar nav a.active::after { display: none; }
  .workspace { width: 100%; margin: 0; min-height: calc(100dvh - 72px); border: 0; }
  .mobile-brand { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; flex-shrink: 0; }
  .mobile-topbar { padding-left: max(12px,env(safe-area-inset-left)); padding-right: max(12px,env(safe-area-inset-right)); }
  .mobile-place { margin-left: auto; max-width: 38%; font-size: 12px; }
  .mobile-news-button { margin-left: 0; }
  main { padding-left: 18px; padding-right: 18px; }
  .toast { inset: auto 12px calc(84px + env(safe-area-inset-bottom)); max-width: none; font-size: 14px; }
  .mobile-keyboard .sidebar nav { visibility: hidden; pointer-events: none; }
  .mobile-keyboard .toast { bottom: 12px; }
  .mobile-news-dialog { width: calc(100% - 12px); max-height: calc(100dvh - 12px); }
  .mobile-news-dialog .dialog-heading { position: sticky; top: 0; z-index: 1; background: var(--paper); }
}
@media(max-height:500px) and (min-width:651px) {
  .sidebar { min-height: 0; height: 100dvh; overflow-y: auto; }
  .sidebar .brand { padding-bottom: 10px; }
  .sidebar nav { gap: 1px; }
  .sidebar nav a { min-height: 44px; padding-top: 10px; padding-bottom: 10px; }
}
