/* Code Lab: Upload your code (code-lab-upload.js, user request 2026-10-05). Shares the .lab-dialog
   base in playground.css; this file only adds the drop area and the "what will be set" summary. */
.lab-up-dialog { width: min(520px, calc(100vw - 32px)); }
.lab-up-dialog code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 0.82rem;
  background: var(--code-bg); border: 1px solid var(--border); border-radius: 6px; padding: 1px 6px; color: var(--text);
}
.lab-dialog .lab-up-drop { /* .lab-dialog: beats playground.css ".lab-dialog label { display: block }" */
  display: flex; flex-direction: column; align-items: center; gap: 4px; margin: 14px 0 0; padding: 22px 16px;
  cursor: pointer; text-align: center; border: 2px dashed var(--border); border-radius: 12px; background: var(--code-bg);
  transition: border-color 0.15s ease, background 0.15s ease;
}
.lab-up-drop:hover, .lab-up-drop.is-over, .lab-up-drop:focus-within { border-color: var(--accent); }
.lab-up-drop.is-busy { opacity: 0.65; pointer-events: none; }
.lab-up-drop input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.lab-up-drop svg { width: 30px; height: 30px; color: var(--accent); }
.lab-up-drop strong { font-size: 0.95rem; }
.lab-up-drop small { font-weight: 400; font-size: 0.8rem; color: var(--text-muted); }
.lab-up-msg { margin: 10px 0 0; font-size: 0.85rem; color: var(--text-muted); }
.lab-up-msg:empty { display: none; }
.lab-up-msg.is-err { color: #ff8a8a; }
.lab-up-list { list-style: none; margin: 14px 0 0; padding: 0; display: grid; gap: 7px; }
.lab-up-list:empty { display: none; }
.lab-up-row { display: flex; align-items: center; gap: 10px; font-size: 0.88rem; }
.lab-up-row .lab-up-k { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; flex: none; border-radius: 6px; }
.lab-up-row .lab-up-k svg { width: 14px; height: 14px; }
.lab-up-row.is-on { color: var(--text); }
.lab-up-row.is-on .lab-up-k { color: #3ddc97; }
.lab-up-row.is-off { color: var(--text-muted); }
.lab-up-row b { font-weight: 700; }
.lab-up-note { margin: 10px 0 0; font-size: 0.8rem; color: var(--text-muted); }
.lab-up-note:empty { display: none; }
