/* Yellow ERP v51.765: vista de Letreros basada en tokens del Cotizador. */
.sign-preview-module{margin:16px 0;padding:20px;border-radius:var(--q-radius-card,16px);box-shadow:none;min-width:0}
.sign-preview-head{margin:0 0 16px}.sign-preview-kicker{font-size:11px;letter-spacing:.07em;font-weight:800;color:var(--q-muted,#777)}
.sign-preview-head h2{font-size:20px;line-height:1.2;margin:5px 0 7px;font-weight:850}.sign-preview-head p{font-size:13px;line-height:1.45;color:var(--q-muted,#777);margin:0}
.sign-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}
.sign-preview-grid label,.sign-preview-upload{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:13px;line-height:1.3;font-weight:750}
.sign-preview-grid input,.sign-preview-grid select,.sign-preview-upload input{box-sizing:border-box;display:block;width:100%;max-width:100%;min-width:0;height:48px;min-height:48px;margin:0;padding:0 14px;border:1px solid var(--q-line,#ddd);border-radius:var(--q-radius-control,12px);background:var(--q-white,#fff);color:var(--q-black,#111);font:600 14px/1.25 inherit;box-shadow:none;outline:0;text-overflow:ellipsis}
.sign-preview-grid select{padding-right:30px;font-size:13px}.sign-preview-grid :is(input,select):focus{border-color:var(--q-muted,#999);box-shadow:none;outline:0}
.sign-preview-upload{margin:14px 0;padding:12px;border:1px dashed var(--q-line,#ddd);border-radius:12px}.sign-preview-upload input{height:auto;min-height:48px;padding:10px}.sign-preview-upload small{font-size:11px;line-height:1.4;color:var(--q-muted,#777);font-weight:400}
.sign-preview-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0 10px}.sign-preview-mode button{min-width:0;min-height:46px;padding:10px 8px;border:1px solid var(--q-line,#ddd);border-radius:var(--q-radius-control,12px);background:var(--q-white,#fff);color:var(--q-black,#111);font-size:13px;font-weight:750}.sign-preview-mode button.is-active{background:var(--q-yellow,#ffcc00);color:var(--q-black,#111);border-color:transparent}
.sign-preview-canvas-wrap{background:var(--q-soft,#f3f3f3);border:1px solid var(--q-line,#ddd);border-radius:12px;overflow:hidden}.sign-preview-canvas-wrap canvas{display:block;width:100%;height:auto}.sign-preview-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.sign-preview-metrics>div{background:var(--q-soft,#f4f4f4);padding:11px 8px;border-radius:9px;min-width:0}.sign-preview-metrics small{display:block;font-size:10px;color:var(--q-muted,#777);margin-bottom:4px}.sign-preview-metrics b{font-size:13px;overflow-wrap:anywhere}.sign-preview-warning{font-size:11px;color:var(--q-muted,#777);line-height:1.5;margin:12px 0}.sign-preview-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sign-preview-actions button{min-height:48px;padding:10px;border-radius:var(--q-radius-control,12px);font-size:13px;font-weight:750}.sign-preview-actions .yds-button-main{background:var(--q-yellow,#ffcc00);color:var(--q-black,#111);border:0}
@media(max-width:380px){.sign-preview-grid{grid-template-columns:1fr}.sign-preview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
