/* ============ MEME DESK - additions on top of report.css ============ */
.intro--tight{ padding-bottom:clamp(20px,3vw,30px); }

.studio{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr); gap:clamp(18px,3vw,32px); align-items:start; }
@media (max-width:900px){ .studio{ grid-template-columns:1fr; } }

.stage{
  background:var(--paper); border:2px solid var(--ink); border-radius:5px;
  box-shadow:10px 12px 0 rgba(0,0,0,.35);
  padding:clamp(14px,2vw,22px); display:flex; align-items:center; justify-content:center;
  position:sticky; top:16px;
}
@media (max-width:900px){ .stage{ position:static; } }
#canvas{ max-width:100%; height:auto; display:block; border-radius:2px; }

.panelctl{ display:flex; flex-direction:column; gap:clamp(16px,2vw,22px); }
.ctl{ background:rgba(0,0,0,.26); border:1px solid rgba(255,255,255,.18); border-radius:4px; padding:16px 18px; }
.ctl--row{ padding:12px 18px; }
.ctl__h{
  margin:0 0 12px; font-family:var(--mono); font-size:.64rem; font-weight:600;
  letter-spacing:.18em; text-transform:uppercase; color:var(--caution);
}
.ctl__hint{ color:var(--steel); letter-spacing:.06em; text-transform:none; font-weight:400; margin-left:6px; }

.thumbs{ display:grid; grid-template-columns:repeat(auto-fill,minmax(78px,1fr)); gap:8px; }
.thumb{
  background:rgba(255,255,255,.05); border:2px solid transparent; border-radius:3px;
  padding:4px; cursor:pointer; display:flex; flex-direction:column; gap:4px; align-items:center;
  transition:border-color .15s, background .15s;
}
.thumb img{ width:100%; height:56px; object-fit:cover; border-radius:2px; display:block; }
.thumb span{ font-family:var(--mono); font-size:.52rem; letter-spacing:.06em; color:#9FBBD6; text-align:center; line-height:1.2; }
.thumb:hover{ background:rgba(255,255,255,.1); }
.thumb[aria-selected="true"]{ border-color:var(--caution); background:rgba(240,192,32,.12); }
.thumb[aria-selected="true"] span{ color:var(--caution); }

.field{ display:block; margin-bottom:12px; }
.field:last-child{ margin-bottom:0; }
.field span{
  display:block; font-family:var(--mono); font-size:.58rem; letter-spacing:.14em;
  text-transform:uppercase; color:#8FB6D8; margin-bottom:5px;
}
.field input{
  width:100%; padding:10px 12px; font-family:var(--body); font-size:.92rem;
  background:rgba(0,0,0,.35); color:var(--paper);
  border:1.5px solid rgba(255,255,255,.24); border-radius:3px;
}
.field input:focus{ outline:2px solid var(--caution); outline-offset:1px; border-color:var(--caution); }

.chips{ display:flex; flex-wrap:wrap; gap:7px; }
.chip{
  font-family:var(--body); font-size:.76rem; padding:6px 10px; cursor:pointer;
  background:rgba(255,255,255,.07); color:#C7DAEA;
  border:1px solid rgba(255,255,255,.2); border-radius:999px;
  transition:background .15s, color .15s, border-color .15s;
}
.chip:hover{ background:var(--caution); color:var(--ink); border-color:var(--caution); }

.toggle{ display:flex; align-items:center; gap:10px; font-size:.86rem; color:#C7DAEA; cursor:pointer; }
.toggle input{ width:16px; height:16px; accent-color:var(--caution); }

.actions{ display:flex; flex-wrap:wrap; gap:10px; }
.actions .btn{ padding:12px 20px; font-size:1rem; }

.notes{ margin-top:clamp(30px,5vw,48px); }
.notes__h{
  margin:0 0 14px; font-family:var(--sign); font-weight:800; text-transform:uppercase;
  font-size:1.5rem; color:var(--caution);
}
.notes ul{ margin:0; padding-left:20px; color:#A8C3DC; font-size:.92rem; display:flex; flex-direction:column; gap:8px; }
.notes strong{ color:var(--paper); }
