/* Mobile-first base already applied; refine for larger screens */
@media (min-width: 576px) {
  .main-content { padding: var(--space-6); }
  .main-content > .view { max-width: 760px; }
  .about-avatar { width: 120px; height: 120px; font-size: 2.4rem; }
}

@media (min-width: 768px) {
  .main-content > .view { max-width: 820px; }
  .task-item { padding: var(--space-4) var(--space-5); }
}

@media (min-width: 1024px) {
  .app-shell { flex-direction: row; }

  .mobile-topbar { display: none; }

  .bottom-nav {
    position: sticky;
    top: 0;
    height: 100vh;
    width: 220px;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    box-shadow: none;
    border-left: 1px solid var(--border);
    flex-shrink: 0;
    padding-bottom: 0;
  }

  .bottom-nav__brand {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: var(--space-2);
    justify-content: flex-start;
    padding: var(--space-4) var(--space-5);
    border-bottom: 1px solid var(--border);
  }
  .theme-toggle { order: 2; margin-right: auto; }

  .bottom-nav__items {
    flex: 1;
    flex-direction: column;
    padding-top: var(--space-4);
  }

  .bottom-nav__item {
    flex: none;
    flex-direction: row;
    justify-content: flex-start;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-5);
    font-size: 0.9rem;
  }

  .bottom-nav__item.fab { top: 0; order: -1; margin-bottom: var(--space-4); padding: 0 var(--space-5); }
  .bottom-nav__fab-circle { width: 44px; height: 44px; }

  .main-content { flex: 1; padding-top: var(--space-6); padding-bottom: var(--space-6); }
  .main-content > .view { max-width: 900px; }
}

@media (min-width: 1280px) {
  .main-content > .view { max-width: 960px; }
}

@media (min-width: 1600px) {
  .main-content > .view { max-width: 1080px; }
}

/* Small phones */
@media (max-width: 360px) {
  .task-item__title { font-size: 0.88rem; }
  .btn { padding: 8px 16px; font-size: 0.8rem; }
  .field-row { grid-template-columns: 1fr; gap: var(--space-4); }
  .segmented { grid-template-columns: repeat(3, 1fr); }
  .segmented__option { font-size: 0.72rem; padding: 10px 4px; }
}
