/* Ficha de turno · huso automático. Un CTA ≥44 px. Sin selects de zona. */
#otHub{--ot-ink:#241f24;--ot-muted:#746e76;--ot-line:#e3dedb;--ot-gap:8px;color:var(--ot-ink);max-width:560px}
#otHub *{box-sizing:border-box}
#otHub button,#otHub input,#otHub select,#otHub a{font:inherit}
#otHub a:focus-visible,#otHub button:focus-visible,#otHub input:focus-visible{outline:3px solid #247b9c;outline-offset:2px}
.ot-ficha{display:grid;grid-template-columns:1fr 1fr;gap:var(--ot-gap);padding:12px;background:#fff;border:1px solid var(--ot-line);border-radius:10px}
.ot-ficha .wide{grid-column:1/-1}
.ot-ficha label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;color:#746e76}
.ot-ficha input{min-height:44px;padding:10px 12px;border:1px solid #d5cfd0;border-radius:8px;background:#fff;font:inherit;font-weight:500;text-transform:none;letter-spacing:0;color:var(--ot-ink)}
.ot-ficha input[readonly]{background:#f6f3f2;color:#2c262c}
.ot-deriv{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:var(--ot-gap);align-items:center;min-height:44px}
.ot-chip{height:44px;min-height:44px;min-width:44px;padding:0 14px;border-radius:999px;border:1px solid #d5cfd0;background:#f6f3f2;color:#2c262c;font-weight:600;font-size:13px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.ot-chip.sin{background:#fff8e8;border-color:#ead8a6}
.ot-cta{grid-column:1/-1;min-height:44px;height:44px;padding:0 18px;border:0;border-radius:10px;background:#1e7a6b;color:#fff;font-weight:700;font-size:15px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.ot-cta:disabled{opacity:.5;cursor:wait}
.ot-cta:focus-visible{outline:3px solid #247b9c;outline-offset:2px}
.ot-meta{margin:0 0 10px;font-size:12px;color:var(--ot-muted)}
.ot-empty,.ot-error{padding:20px 12px;text-align:center;background:#fff;border:1px solid var(--ot-line);border-radius:10px}
.ot-error{background:#fff0f0;border-color:#ebc1c7;color:#8c1830}
.ot-toast{position:fixed;right:16px;bottom:16px;z-index:90;min-height:44px;padding:10px 16px;border-radius:10px;background:#1e7a6b;color:#fff;font-weight:700;font-size:13px}
.ot-toast.bad{background:#8f1630}
@media(max-width:800px){
  #otHub{max-width:none}
  .ot-ficha{grid-template-columns:1fr}
}
