/* /css/icc.layout.css — ICC Layout (3-panel cockpit invariant)
   LOCKED: Dark cockpit | 5 surfaces | radius family | spacing grid
*/

/* App shell */
.icc-app{
  min-height:100vh;
  display:grid;
  grid-template-rows:auto 1fr;
}

/* Main area (under header) */
.icc-main{
  min-height:0;
}

/* Header bar mount */
.icc-topbar{
  background:linear-gradient(180deg, rgba(255,255,255,.04), transparent);
  border-bottom:1px solid var(--icc-border);
  padding:var(--icc-s-16);
}

/* 3-panel cockpit grid */
.icc-cockpit{
  display:grid;
  grid-template-columns: 320px 1fr 440px;
  gap:var(--icc-s-16);
  padding:var(--icc-s-16);
  align-items:stretch;
  min-height:0;
}

/* Panels */
.icc-panel{
  background:var(--icc-panel);
  border:1px solid var(--icc-border);
  border-radius:var(--icc-r-22);
  box-shadow:var(--icc-shadow-1);
  min-height:0; /* enables internal scroll */
  overflow:hidden;
  display:flex;
  flex-direction:column;
}

/* Panel sections */
.icc-panel__hd{
  padding:var(--icc-s-16);
  border-bottom:1px solid var(--icc-border);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--icc-s-16);
}

.icc-panel__bd{
  padding:var(--icc-s-16);
  min-height:0;
  flex:1; /* key: allows icc-scroll inside to work reliably */
}

.icc-panel__ft{
  padding:var(--icc-s-16);
  border-top:1px solid var(--icc-border);
}

/* Cards inside panels */
.icc-card{
  background:var(--icc-card);
  border:1px solid var(--icc-border);
  border-radius:var(--icc-r-18);
  box-shadow:0 10px 28px rgba(0,0,0,.25);
}

.icc-card--p16{padding:var(--icc-s-16);}
.icc-card--p24{padding:var(--icc-s-24);}

/* Responsive collapse */
@media (max-width: 1200px){
  .icc-cockpit{grid-template-columns: 320px 1fr;}
  .icc-right{display:none;}
}

@media (max-width: 900px){
  .icc-cockpit{grid-template-columns: 1fr;}
  .icc-left{order:1;}
  .icc-mid{order:2;}
  .icc-right{display:none;}
}