/* CARDIOLINK_VNEXT_MOBILE_CLEANUP_B7D */

body{
  overflow-x:hidden;
}

/* Hoofdheader rustiger */
.top{
  gap:10px;
}
.top-title{
  font-size:18px;
}
.top .status{
  font-size:12px;
  max-width:520px;
}

/* Exportknoppen minder dominant: op mobiel alleen Outputpaneel tonen */
.top-actions{
  align-items:center;
}
.top-actions button{
  white-space:nowrap;
}
@media(max-width:820px){
  .top{
    align-items:flex-start;
    padding:14px;
  }
  .top-actions{
    flex-direction:column;
    align-items:stretch;
    gap:7px;
    max-width:190px;
  }
  .top-actions button:not(#b4OutputPanelBtn){
    display:none !important;
  }
  #b4OutputPanelBtn{
    display:block !important;
  }
}

/* Titel/lege hero compacter */
.empty{
  margin:42px auto;
  padding:0 18px;
}
.empty h1{
  font-size:clamp(24px,7vw,38px);
  line-height:1.1;
}
.empty p{
  font-size:clamp(16px,4.5vw,22px);
  line-height:1.25;
}
@media(max-width:820px){
  .empty{
    margin:48px auto 28px;
  }
}

/* Sidebar als echte mobiele drawer */
.side-close{
  display:none;
  position:absolute;
  top:12px;
  right:12px;
  width:42px;
  height:42px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#0b1220;
  color:var(--text);
  font-size:22px;
  cursor:pointer;
  z-index:14;
}
.side-backdrop{
  display:none;
}
@media(max-width:820px){
  .side{
    display:block;
    position:fixed;
    inset:0 auto 0 0;
    width:min(88vw,430px);
    transform:translateX(-105%);
    transition:transform .18s ease;
    z-index:13;
    box-shadow:20px 0 60px rgba(0,0,0,.55);
  }
  .side.mobile-open{
    transform:translateX(0);
  }
  .side-close{
    display:block;
  }
  .side .brand{
    padding-right:48px;
  }
  .side-backdrop{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.42);
    z-index:12;
  }
  .side-backdrop.open{
    display:block;
  }
}

/* Navigatie eenvoudiger */
.nav button{
  font-size:16px;
  padding:12px 14px;
}
.section h3{
  margin-top:2px;
}

/* Composer mobiel veel bruikbaarder */
.composer-wrap{
  padding:12px;
}
.intake-bar{
  gap:8px;
}
@media(max-width:820px){
  .intake-bar{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  #intakePlus{
    grid-column:1 / 2;
  }
  #llmSelect{
    grid-column:2 / 3;
  }
  #taskModeSelect{
    grid-column:1 / 3;
  }
  .composer{
    grid-template-columns:1fr auto;
    align-items:center;
  }
  .composer #plusBtn{
    display:none !important;
  }
  textarea#prompt{
    min-height:58px;
    border-radius:20px;
    font-size:16px;
  }
  .send{
    height:58px;
    border-radius:18px;
    font-size:16px;
  }
  .composer-wrap > div[style*="display:flex"]{
    margin-top:10px !important;
  }
  #micBtn{
    width:54px;
    height:54px;
  }
}

/* Technische/previewtekst minder prominent */
.badge.warn{
  opacity:.9;
}
.top .status{
  color:var(--muted);
}

/* Centrale statuskaart */
.central-health{
  border:1px solid var(--line);
  background:#0b1220;
  border-radius:14px;
  padding:10px 12px;
  margin:8px 0;
  color:var(--muted);
  font-size:13px;
}
.central-health strong{
  color:var(--text);
}
.central-health .ok{
  color:#86efac;
}
.central-health .warn{
  color:#fcd34d;
}
.central-health .bad{
  color:#fca5a5;
}
