@media (max-width: 1024px){
  :root{
    --dashboard-card-height:196px;
    --artist-grid-min: 196px;
    --video-grid-min: 210px;
    --playlist-grid-min: 202px;
  }
  .app,
  .app.panel-open{ grid-template-columns: 1fr; }
  .app.panel-open .side-panel{ display:flex; }
  .main{ border-left:0; padding-left:0; }
  .grid2{ grid-template-columns: 1fr 1fr; }
  .grid3{ grid-template-columns: 1fr 1fr; }
  .programming-grid{ grid-template-columns: 1fr; }
  .schedule-layout{ grid-template-columns: 1fr; }
}

@media (max-width: 768px){
  :root{
    --dashboard-card-height:188px;
    --artist-grid-min: 176px;
    --video-grid-min: 188px;
    --playlist-grid-min: 180px;
  }
  .app{ grid-template-columns: 1fr; gap:14px; padding:14px; }
  .sidebar{ padding:14px; }
  .main{ padding:14px; }

  .topbar{
    flex-direction:column;
    align-items:stretch;
    gap:12px;
  }
  .page-toolbar{
    align-items:stretch;
  }
  .toolbar-left{
    width:100%;
    justify-content:flex-start;
  }
  .page-toolbar .search{
    margin-left:0;
  }
  .playlist-toolbar-actions{
    width:100%;
  }
  .actions{
    flex-direction:column;
  }
  .search{
    min-width: 0;
    width: 100%;
  }

  .grid2{ grid-template-columns: 1fr; }
  .grid3{ grid-template-columns: 1fr; }
  .schedule-calendar-head{
    flex-direction:column;
    align-items:stretch;
  }
  .schedule-calendar-actions{
    justify-content:flex-start;
  }
  .schedule-view-switch{
    width:100%;
    justify-content:flex-start;
  }
  .schedule-layout{
    grid-template-columns:1fr;
  }
  .schedule-board-week-view .schedule-board-grid-7{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .schedule-board-grid-3{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .schedule-board-day{
    min-height:100px;
  }
  .schedule-board-day.is-compact{
    min-height:78px;
  }
  .schedule-template-actions{
    width:100%;
    justify-content:flex-end;
  }
  .schedule-template-item{
    flex-direction:column;
  }
  .schedule-editor-theme-row{
    flex-direction:column;
    align-items:stretch;
  }
}

@media (max-width: 480px){
  :root{
    --dashboard-card-height:180px;
    --artist-grid-min: 152px;
    --video-grid-min: 164px;
    --playlist-grid-min: 158px;
  }
  .app{ padding:10px; gap:10px; }
  .sidebar{ padding:10px; }
  .main{ padding:10px; }

  .brand h1{ font-size:13px; }
  .brand p{ font-size:11px; }

  .title h2{ font-size:16px; }
  .title p{ font-size:12px; }

  input, select, textarea{
    font-size:16px;
  }

  .btn{ padding:8px 10px; font-size:12px; }
  .nav button{ padding:8px; font-size:12px; }

  .kebab{ width:32px; height:32px; }
  .thumb{ width:40px; height:28px; }
  .artist-filter-btn,
  .artist-create-btn{
    width:40px;
    height:40px;
    border-radius:12px;
  }

  .schedule-board-week-view .schedule-board-grid-7{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .schedule-board-grid-3{
    grid-template-columns: 1fr;
  }
  .schedule-post-card{
    padding:5px;
  }
  .schedule-board-day.is-compact{
    min-height:72px;
  }
  .schedule-post-time,
  .schedule-post-title{
    font-size:10px;
  }
  .schedule-toggle-item{
    width:100%;
    justify-content:flex-start;
  }
  .schedule-page-card{
    gap:10px;
  }

  .toast{
    font-size:15px;
    padding:12px 14px;
    right:10px;
    bottom:10px;
  }
}
