.tng-workbench { font-size:1rem; line-height:1.6; color:#352529; padding-bottom:2rem; }
.tng-workbench h2 { font-size:1.55rem; margin:.15rem 0; letter-spacing:-.02em; }
.tng-workbench h3 { font-size:1.1rem; margin:0 0 .7rem; }
.tng-title { display:flex; justify-content:space-between; align-items:center; gap:.8rem; flex-wrap:wrap; }
.tng-eyebrow { font-size:.875rem; color:#a5253b; letter-spacing:.12em; }
.tng-status { padding:.25rem .65rem; border:1px solid #d9bb7d; background:#fff9ea; border-radius:999px; font-size:.875rem; color:#684a12; white-space:nowrap; }
.tng-note { background:#fff0f1; border-left:3px solid #b12d42; padding:.8rem 1rem; border-radius:0 .7rem .7rem 0; margin:1rem 0; font-size:.875rem; color:#7c2737; }
.tng-toolbar { display:flex; flex-wrap:wrap; gap:.6rem; margin:.8rem 0; }
.tng-toolbar .btn { flex:1; min-width:8rem; }
.tng-card { background:#fff; border:1px solid #e7d9d3; border-radius:1rem; padding:1rem; margin:1rem 0; box-shadow:0 4px 18px #50152806; }
.tng-card summary { cursor:pointer; font-weight:650; }
.tng-card summary span { float:right; color:#a5253b; }
.tng-form,.tng-run-picker { display:grid; gap:.8rem; }
.tng-workbench label { display:grid; gap:.3rem; font-size:.875rem; }
.tng-workbench input:not([type=checkbox]),.tng-workbench select,.tng-workbench textarea { width:100%; min-width:0; border:1px solid #d7c7c2; background:#fffefa; color:#352529; border-radius:.6rem; padding:.65rem .75rem; font:inherit; font-size:1rem; }
.tng-workbench input:focus-visible,.tng-workbench textarea:focus-visible,.tng-workbench select:focus-visible { outline:3px solid #bd6c7c; outline-offset:2px; }
.tng-workbench textarea { resize:vertical; min-height:9rem; }
.tng-workbench .hint { font-size:.875rem; color:#755f61; line-height:1.6; }
.tng-id { font-size:.8rem; font-family:monospace; overflow-wrap:anywhere; color:#806e70; }
.tng-steps { display:flex; gap:.5rem; flex-wrap:wrap; margin:1rem 0; }
.tng-steps span { background:#f3eeee; color:#756367; padding:.4rem .6rem; border-radius:.4rem; font-size:.875rem; }
.tng-steps .is-done { background:#f8e1e4; color:#8c1f32; }
.tng-participants,.tng-outcomes { display:grid; gap:.5rem; }
.tng-participants>div,.tng-outcomes>div { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.5rem; padding:.65rem 0; border-bottom:1px solid #eee5df; }
.tng-participants span { font-size:.875rem; }
.tng-upload { border:1px dashed #b28c52; background:#fffcf5; border-radius:.7rem; padding:1rem; }
.tng-upload input { background:transparent!important; border:0!important; padding:0!important; }
.tng-binding,.tng-record { border-top:1px solid #e8dbd5; padding:1rem 0; display:grid; gap:.5rem; }
.tng-binding small { color:#806e70; font-size:.8rem; }
.tng-checks { display:flex; gap:1.2rem; }
.tng-workbench .tng-check,.tng-checks label { display:flex; align-items:flex-start; gap:.5rem; }
.tng-workbench input[type=checkbox] { width:1.1rem; height:1.1rem; margin:.25rem 0 0; accent-color:#a5253b; flex:none; }
.tng-errors { border:1px solid #e4a6ad; color:#92283a; background:#fff2f3; padding:.75rem; border-radius:.6rem; font-size:.875rem; }
.tng-errors p { margin:.2rem 0; }
.tng-feedback { color:#8d2638; white-space:pre-wrap; font-size:.875rem; }
.tng-positive { color:#267257; }.tng-negative { color:#a32640; }
.tng-source-image { max-width:100%; max-height:65vh; object-fit:contain; display:block; margin:.75rem auto; }
.tng-workbench pre { font-size:.8rem; white-space:pre-wrap; overflow-wrap:anywhere; }
.tng-workbench [disabled] { opacity:.5; cursor:not-allowed; }
.tng-workbench .btn { min-height:44px; }
@media (max-width:360px) { .tng-card { padding:.8rem; }.tng-outcomes>div { flex-direction:column; } }

/* Room-specific receipt trail; reuse the operations desk palette and density. */
.tng-flow-live { border-color:var(--desk-line,#e7d9d3); box-shadow:none; }
.tng-flow-live h3 { font-size:1.375rem; font-weight:650; margin:4px 0 0; }
.tng-flow-controls details { margin-top:16px; }
.tng-flow-controls details form { margin-top:16px; max-width:560px; }
.tng-flow-track { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; list-style:none; padding:0; margin:24px 0; }
.tng-flow-track li { display:grid; gap:8px; color:var(--desk-secondary,#755f61); font-size:.875rem; border-top:2px solid var(--desk-line,#e7d9d3); padding-top:12px; }
.tng-flow-track li>span { font-variant-numeric:tabular-nums; font-weight:650; }
.tng-flow-track .is-done { border-color:var(--desk-gold,#91682a); }
.tng-flow-track .is-current { color:var(--desk-red,#a5253b); border-color:var(--desk-red,#a5253b); font-weight:650; }
.tng-flow-facts { display:flex; flex-wrap:wrap; gap:24px; padding:16px; background:var(--desk-canvas,#f6f7f9); border-radius:8px; }
.tng-flow-facts>div { display:grid; gap:4px; flex:1; min-width:120px; }
.tng-flow-facts span { font-size:.875rem; color:var(--desk-secondary,#755f61); }
.tng-flow-facts b { font-weight:600; font-variant-numeric:tabular-nums; }
.tng-flow-people { margin:16px 0 24px; }
.tng-flow-people>div { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 0; border-bottom:1px solid var(--desk-line,#e7d9d3); font-variant-numeric:tabular-nums; }
.tng-flow-people small { display:block; color:var(--desk-secondary,#755f61); font-size:.875rem; margin-top:4px; }
.tng-flow-wait { color:var(--desk-gold,#91682a); font-size:.875rem; }
.tng-flow-jobs p { font-size:.875rem; display:flex; gap:8px; flex-wrap:wrap; }
.tng-flow-jobs p>span { margin-left:auto; color:var(--desk-secondary,#755f61); }
.tng-flow-events { list-style:none; padding:0; margin:24px 0 16px; display:grid; gap:12px; }
.tng-flow-events li { display:grid; grid-template-columns:72px minmax(0,1fr); gap:12px; font-size:.875rem; }
.tng-flow-events time { color:var(--desk-secondary,#755f61); font-variant-numeric:tabular-nums; }
.tng-device-code { max-width:420px; margin:16px 0; }
.tng-device-code input { font-family:ui-monospace,monospace!important; letter-spacing:.16em; font-size:1.5rem!important; font-weight:650; }
.tng-device-guide { padding-left:24px; font-size:.875rem; display:grid; gap:8px; color:var(--desk-secondary,#755f61); }
.tng-device-row { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; padding:16px 0; border-top:1px solid var(--desk-line,#e7d9d3); }
.tng-device-row small { display:block; font-size:.875rem; color:var(--desk-secondary,#755f61); margin-top:4px; }
@media(max-width:620px) { .tng-flow-track { grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:16px; }.tng-flow-facts { gap:16px; }.tng-flow-events li { grid-template-columns:1fr; gap:4px; } }
