#tab-tool-bank .sepa-qr-shell {max-width:1100px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin-bottom:32px;text-align:left}
#tab-tool-bank .sepa-qr-shell .tool-panel {min-width:0;padding:24px;text-align:left}
.sepa-qr-shell .tool-panel-head h3 {font-size:1.35rem!important}
.sepa-qr-shell .tool-muted {margin:0 0 20px!important;max-width:none!important}
#sepa-form {display:grid;gap:14px}
#sepa-form label {display:block;font-weight:650;margin-bottom:6px;color:#22344c}
#sepa-form input,#sepa-form textarea,.sepa-copy-row input,.sepa-copy-row textarea,#sepa-manual {box-sizing:border-box;width:100%;min-width:0;border:1px solid #c6d2df;border-radius:8px;padding:11px;background:#fff;color:#172c43;font:inherit}
#sepa-form textarea,.sepa-copy-row textarea {resize:vertical}
.sepa-qr-shell small {display:block;margin-top:5px;color:#52657a;font-size:.82rem;line-height:1.4}
#sepa-form label.sepa-eea {display:flex;align-items:flex-start;gap:9px;font-size:.9rem;font-weight:400;line-height:1.45}
#sepa-form .sepa-eea input {width:18px;height:18px;flex:none;margin-top:3px;padding:0}
.sepa-qr-shell button,.sepa-qr-shell a.sepa-download {min-height:42px;padding:10px 14px;border:1px solid #b5c7d8;border-radius:8px;background:#fff;color:#183e62;font:inherit;cursor:pointer;text-decoration:none;text-align:center}
.sepa-qr-shell button:disabled {opacity:.5;cursor:default}
.sepa-qr-shell button:hover:not(:disabled),.sepa-qr-shell a:hover {background:#edf5fc}
.sepa-qr-shell :is(input,textarea,button,a):focus-visible {outline:3px solid #187cc8;outline-offset:2px}
.sepa-qr-shell [hidden] {display:none!important}
#sepa-canvas {display:block;width:min(100%,280px);height:auto;margin:0 auto;background:white;image-rendering:pixelated}
.sepa-scan {text-align:center;margin:12px 0 18px;color:#172c43}
.sepa-scan strong {display:block;font-size:1.05rem;margin-bottom:6px}
.sepa-copy-row {margin:12px 0}
.sepa-copy-row label {display:block;font-size:.85rem;font-weight:650;margin-bottom:5px;color:#445b72}
.sepa-copy-control {display:flex;align-items:start;gap:8px}
.sepa-copy-control button {flex:none;font-size:.83rem}
.sepa-actions {display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.sepa-print-data {display:none}
#sepa-status {min-height:3em;margin:15px 0 0;color:#445b72;line-height:1.45}
.sepa-position {min-width:0;margin:14px 0;padding:16px;border:1px solid #c6d2df;border-radius:10px}
.sepa-position legend {font-weight:700;padding:0 6px}
.sepa-position label {margin-top:10px}
.sepa-position button {margin-top:10px}
.sepa-row-status,.sepa-invalid-position {font-size:.85rem;line-height:1.4;color:#70412c}
.sepa-payment-card {padding:20px 0;border-top:1px solid #c6d2df}
.sepa-payment-card h4 {margin:0 0 14px;overflow-wrap:anywhere;color:#173653}
.sepa-payment-card canvas {display:block;width:min(100%,280px);height:auto;margin:0 auto;image-rendering:pixelated}
.sepa-card-value {flex:1;min-width:0;overflow-wrap:anywhere;padding:10px;border:1px solid #c6d2df;border-radius:8px;white-space:pre-wrap}
#sepa-pdf-preview {width:100%;height:480px;border:1px solid #c6d2df;margin-top:15px;border-radius:8px;background:white}
.sepa-position-input {min-width:0;border:1px solid #c6d2df;border-radius:10px;padding:14px;margin:14px 0}
.sepa-position-input h3,.sepa-position-result h3 {font-size:1.05rem;overflow-wrap:anywhere}
.sepa-position-actions {display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.sepa-position-actions button {font-size:.82rem;padding:9px}
.sepa-position-status {font-size:.85rem;line-height:1.4}
.sepa-position-status[data-state="error"] {color:#8b3629}
.sepa-position-status[data-state="valid"] {color:#28674b}
.sepa-position-result {min-width:0;border-top:1px solid #c6d2df;padding:18px 0}
.sepa-position-canvas {display:block;width:min(100%,280px);height:auto;margin:0 auto;image-rendering:pixelated}
.sepa-position-detail {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin:12px 0}
.sepa-position-label {grid-column:1/-1;font-weight:650;font-size:.85rem;color:#445b72}
.sepa-position-value {min-width:0;padding:10px;border:1px solid #c6d2df;border-radius:8px;overflow-wrap:anywhere;white-space:pre-wrap}
.sepa-position-detail button {font-size:.82rem;padding:9px}
.sepa-position-result a {display:inline-block;min-height:42px;padding:11px;border:1px solid #c6d2df;border-radius:8px;color:#173653;text-decoration:none}
@media(max-width:720px) {#tab-tool-bank .sepa-qr-shell {grid-template-columns:1fr;gap:16px}#tab-tool-bank .sepa-qr-shell .tool-panel {padding:18px}.sepa-copy-control {gap:5px}.sepa-copy-control button {padding:10px 8px}}
@media print {#sepa-result.tool-print-target canvas {width:60mm!important;height:60mm!important}.sepa-actions,.sepa-copy-row,#sepa-manual {display:none!important}.sepa-print-data {display:block!important}.sepa-print-data dt {font-weight:bold;margin-top:12px}.sepa-print-data dd {margin:4px 0;overflow-wrap:anywhere;color:#000}#sepa-result.tool-print-target {position:fixed!important}#sepa-result .sepa-scan {margin-bottom:12px}}

/* V541: the full Telefónica workflow, scoped to this tool. */
#tab-tool-bank .telefonica-qr-shell {max-width:1160px;display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);align-items:start;gap:20px;margin:0 auto 24px;text-align:left;color:#18334b}
#tab-tool-bank .telefonica-qr-shell [hidden] {display:none!important}
#tab-tool-bank .telefonica-qr-shell .tool-panel {min-width:0;padding:24px;border:1px solid #d9e3ed;border-radius:16px;box-shadow:0 4px 16px #17365308;text-align:left;overflow-wrap:anywhere}
#tab-tool-bank .bank-section-head {display:flex;align-items:center;gap:12px;margin-bottom:18px}
#tab-tool-bank .bank-section-head>div {min-width:0}
#tab-tool-bank .bank-step {display:flex;align-items:center;justify-content:center;flex:none;width:34px;height:34px;border-radius:11px;background:#e7f3f2;color:#187772;font-size:.88rem;font-weight:800}
#tab-tool-bank .bank-section-head h3 {margin:0;font-size:1.22rem;line-height:1.3;font-weight:750;color:var(--tool-primary,#183e62)}
#tab-tool-bank .bank-eyebrow {margin:0 0 4px;color:#60768b;font-size:.71rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
#tab-tool-bank .bank-intro {margin:0 0 24px;color:#526b80;font-size:.92rem;line-height:1.55}
#tab-tool-bank .telefonica-qr-shell .tool-form-grid {grid-template-columns:minmax(0,1fr);gap:20px;margin:0 0 22px}
#tab-tool-bank .telefonica-qr-shell .form-group {min-width:0;margin:0}
#tab-tool-bank .telefonica-qr-shell label {display:block;color:#28455d;font-size:.87rem;font-weight:650;text-transform:none;letter-spacing:0;margin-bottom:8px}
#tab-tool-bank .telefonica-qr-shell input {box-sizing:border-box;width:100%;min-width:0;min-height:48px;border:1px solid #bdcedd;border-radius:9px;padding:12px 14px;background:white;color:#18334b;font-size:1rem;font-weight:500}
#tab-tool-bank .telefonica-qr-shell input::placeholder {color:#8191a3;font-weight:400}
#tab-tool-bank #bank-number-hint {display:block;margin-top:7px;font-size:.76rem;line-height:1.4;color:#60768b}
#tab-tool-bank .bank-input-unit {position:relative}
#tab-tool-bank .bank-input-unit input {padding-right:40px;font-size:1.22rem;font-variant-numeric:tabular-nums}
#tab-tool-bank .bank-input-unit>span {position:absolute;right:15px;top:50%;transform:translateY(-50%);color:#60768b;font-size:1rem}
#tab-tool-bank .bank-draft-actions {display:flex;flex-wrap:wrap;gap:9px}
#tab-tool-bank .bank-draft-actions>.bank-primary,#tab-tool-bank .bank-draft-actions>.bank-secondary {width:100%}
#tab-tool-bank .bank-btn,#tab-tool-bank .bank-copy {box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;max-width:100%;min-height:44px;margin:0;padding:11px 15px;border:1px solid #c4d4e2;border-radius:9px;background:white;color:#244b6b;font:inherit;font-size:.86rem;font-weight:650;line-height:1.3;text-align:center;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s}
#tab-tool-bank .bank-primary {background:var(--tool-primary,#183e62);border-color:var(--tool-primary,#183e62);color:#fff}
#tab-tool-bank .bank-secondary {background:#f1f6fa;border-color:#cbdbe8}
#tab-tool-bank .bank-text {border-color:transparent;background:transparent;font-weight:600;padding-inline:8px;color:#526b80}
#tab-tool-bank .bank-danger {color:#a23c3c;background:transparent;border-color:transparent;font-weight:600}
#tab-tool-bank .bank-btn:hover:not(:disabled),#tab-tool-bank .bank-copy:hover:not(:disabled) {background:#e8f0f7;border-color:#97b5cc}
#tab-tool-bank .bank-primary:hover:not(:disabled) {background:var(--tool-primary-dark,#102f4c);border-color:var(--tool-primary-dark,#102f4c)}
#tab-tool-bank .bank-danger:hover:not(:disabled) {background:#fff0f0;border-color:#e8cccc}
#tab-tool-bank .bank-btn:disabled {opacity:.48;cursor:default}
#tab-tool-bank .telefonica-qr-shell :is(input,textarea,button,a,summary):focus-visible {outline:3px solid #178b93;outline-offset:3px}
#tab-tool-bank .telefonica-qr-shell input[aria-invalid="true"] {border-color:#b34a4a;background:#fffafa}
#tab-tool-bank #bank-status {margin:16px 0 0;font-size:.84rem;line-height:1.5;color:#526b80}
#tab-tool-bank #bank-status:empty {display:none}
#tab-tool-bank #bank-status[data-state="ready"] {color:#26715a}
#tab-tool-bank #bank-status[data-state="error"] {color:#a23838}
#tab-tool-bank .bank-editing {margin:0 0 18px;padding:10px 12px;border-radius:8px;background:#eaf3ff;color:#234f78;font-size:.86rem;font-weight:650}
#tab-tool-bank .bank-empty {min-height:320px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px;border:1px dashed #d5e1eb;border-radius:12px;background:#f8fafc}
#tab-tool-bank .bank-empty-symbol {display:grid;place-items:center;width:52px;height:52px;margin-bottom:18px;border:1px solid #d5e1eb;border-radius:15px;background:white;color:#4f8199;font-size:1.6rem}
#tab-tool-bank .bank-empty strong {font-size:1rem;font-weight:650}
#tab-tool-bank .bank-empty p {max-width:300px;margin:10px 0 0;color:#6c8092;font-size:.86rem;line-height:1.55}
#tab-tool-bank .bank-preview-layout {display:grid;grid-template-columns:minmax(160px,210px) minmax(0,1fr);gap:24px;align-items:start}
#tab-tool-bank #bank-qr {display:block;width:100%;height:auto;margin:0 auto;image-rendering:pixelated;background:white}
#tab-tool-bank .bank-qr-column {min-width:0}
#tab-tool-bank .telefonica-qr-shell .sepa-scan {margin:10px 0 0;text-align:center}
#tab-tool-bank .telefonica-qr-shell .sepa-scan strong {font-size:.85rem;line-height:1.4;margin:0 0 5px}
#tab-tool-bank .telefonica-qr-shell .sepa-scan small {display:block;font-size:.74rem;color:#6b7f91;line-height:1.5}
#tab-tool-bank .telefonica-qr-shell .tool-detail-list {min-width:0;display:grid;gap:0;margin:0}
#tab-tool-bank .telefonica-qr-shell .tool-detail-row {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;padding:13px 0;border:0;border-bottom:1px solid #edf1f5;border-radius:0;background:transparent;line-height:1.4}
#tab-tool-bank .telefonica-qr-shell .tool-detail-row>span {grid-column:1/-1;font-size:.73rem;color:#60768b;font-weight:600}
#tab-tool-bank .telefonica-qr-shell .tool-detail-row strong {align-self:center;min-width:0;padding:0;border:0;border-radius:0;background:transparent;font-size:.87rem;font-family:inherit;font-weight:650;overflow-wrap:anywhere;white-space:pre-wrap;color:#18334b}
#tab-tool-bank .telefonica-qr-shell .bank-preview-amount {padding-top:0}
#tab-tool-bank .telefonica-qr-shell .bank-preview-amount strong {font-size:1.7rem;font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.025em}
#tab-tool-bank .bank-copy {align-self:center;font-size:.72rem;min-height:36px;padding:7px 9px;border-color:#d8e3ed;background:#fff;color:#526b80;font-weight:600}
#tab-tool-bank .bank-preview-actions {display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:22px;padding-top:18px;border-top:1px solid #edf1f5}
#tab-tool-bank .telefonica-sheet {grid-column:1/-1}
#tab-tool-bank .bank-sheet-header {display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
#tab-tool-bank .bank-sheet-header .bank-section-head {margin:0}
#tab-tool-bank .bank-sheet-actions {display:flex;flex-wrap:wrap;gap:8px}
#tab-tool-bank .bank-sheet-hint {margin:12px 0 20px;color:#60768b;font-size:.82rem;line-height:1.5}
#tab-tool-bank .bank-sheet-empty {padding:20px;border:1px dashed #d5e1eb;border-radius:10px;background:#f8fafc;color:#6c8092;font-size:.85rem;line-height:1.5;text-align:center}
#tab-tool-bank #bank-sheet-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
#tab-tool-bank .bank-sheet-card {min-width:0;padding:18px;border:1px solid #d9e3ed;border-radius:11px;background:#fff}
#tab-tool-bank .bank-card-head {display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px}
#tab-tool-bank .bank-card-identity {min-width:0;flex:1 1 180px}
#tab-tool-bank .bank-card-index {display:block;margin-bottom:7px;color:#72869a;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
#tab-tool-bank .bank-sheet-card h4 {margin:0;color:#23445f;font-size:.91rem;line-height:1.4;overflow-wrap:anywhere;font-weight:650}
#tab-tool-bank .bank-card-amount {font-size:1.28rem;line-height:1.3;color:#173c5b;font-weight:750;font-variant-numeric:tabular-nums}
#tab-tool-bank .bank-card-actions {display:flex;gap:8px;margin:10px 0}
#tab-tool-bank .bank-card-actions .bank-btn {min-height:40px;padding:8px;font-size:.78rem}
#tab-tool-bank .bank-card-details {border-top:1px solid #edf1f5}
#tab-tool-bank .bank-card-details>summary {cursor:pointer;padding:13px 0 1px;color:#526b80;font-size:.81rem;font-weight:600;line-height:1.5}
#tab-tool-bank .bank-card-details[open]>summary {margin-bottom:18px}
#tab-tool-bank .bank-card-details .sepa-position-canvas {display:block;width:min(100%,240px);height:auto;margin:0 auto;image-rendering:pixelated;background:white}
#tab-tool-bank .bank-sheet-values {margin:18px 0 8px}
#tab-tool-bank .bank-value-row {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;padding:11px 0;border-bottom:1px solid #edf1f5}
#tab-tool-bank .bank-value-row dt {grid-column:1/-1;color:#60768b;font-size:.73rem;font-weight:600}
#tab-tool-bank .bank-value-row dd {min-width:0;align-self:center;margin:0;font-size:.86rem;overflow-wrap:anywhere;white-space:pre-wrap}
#tab-tool-bank .bank-sheet-footer {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid #edf1f5}
#tab-tool-bank .bank-sheet-footer:has(#bank-sheet-clear[hidden]) {display:none}
#tab-tool-bank #bank-sheet-count {color:#60768b;font-size:.79rem}
#tab-tool-bank .bank-sheet-card.is-editing {border-color:#7ca8ce;background:#f6faff}
#tab-tool-bank .bank-card-editing {margin:8px 0 0;color:#345e83;font-size:.8rem;line-height:1.5}
#tab-tool-bank .bank-pdf-heading {display:flex;flex-direction:column;gap:6px;margin-top:24px;padding:16px;border-radius:10px;background:#eef7f4;color:#276b56}
#tab-tool-bank .bank-pdf-heading strong {font-size:.95rem}
#tab-tool-bank .bank-pdf-heading span {font-size:.82rem;line-height:1.5}
#tab-tool-bank #bank-sheet-preview {box-sizing:border-box;width:100%;height:640px;border:1px solid #d9e3ed;border-radius:10px;margin-top:16px;background:#f8fafc}
#tab-tool-bank #bank-manual {box-sizing:border-box;grid-column:1/-1;width:100%;padding:12px;border:1px solid #b5c7d8;border-radius:8px;font:inherit}
#tab-tool-bank .telefonica-general {max-width:1160px;margin:24px auto;color:#60768b}
#tab-tool-bank .telefonica-general>summary {padding:15px 18px;border:1px solid #d9e3ed;border-radius:11px;background:white;cursor:pointer;font-size:.9rem;font-weight:600}
#tab-tool-bank .telefonica-general[open]>.sepa-qr-shell {margin-top:16px}
#tab-tool-bank .telefonica-general>summary:focus-visible {outline:3px solid #178b93;outline-offset:3px}
@media(max-width:1100px) {#tab-tool-bank .bank-preview-layout {grid-template-columns:1fr}#tab-tool-bank #bank-qr {width:min(100%,220px)}#tab-tool-bank .bank-empty {min-height:360px}}
@media(max-width:800px) {#tab-tool-bank .telefonica-qr-shell {grid-template-columns:minmax(0,1fr);gap:16px}#tab-tool-bank .telefonica-qr-shell .tool-panel {padding:20px}#tab-tool-bank .telefonica-qr-shell .tool-form-grid {grid-template-columns:minmax(0,1fr) minmax(0,.65fr)}#tab-tool-bank .bank-draft-actions>.bank-primary,#tab-tool-bank .bank-draft-actions>.bank-secondary {width:auto;flex:1 1 180px}#tab-tool-bank .bank-preview-layout {grid-template-columns:200px minmax(0,1fr)}#tab-tool-bank .bank-empty {min-height:200px}#tab-tool-bank #bank-sheet-list {grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px) {#tab-tool-bank .telefonica-qr-shell .tool-panel {padding:18px}#tab-tool-bank .bank-section-head h3 {font-size:1.1rem}#tab-tool-bank .telefonica-qr-shell .tool-form-grid {grid-template-columns:minmax(0,1fr);gap:16px}#tab-tool-bank .bank-preview-layout {grid-template-columns:minmax(0,1fr);gap:20px}#tab-tool-bank .bank-sheet-header {align-items:stretch}#tab-tool-bank .bank-sheet-actions {width:100%}#tab-tool-bank .bank-sheet-actions .bank-btn {flex:1 1 160px}#tab-tool-bank .bank-empty {min-height:180px;padding:20px 12px}#tab-tool-bank .bank-sheet-card {padding:15px}#tab-tool-bank .bank-copy {min-height:40px}#tab-tool-bank #bank-sheet-preview {height:480px}#tab-tool-bank .bank-preview-actions .bank-btn {flex:1 1 150px}}
/* The dedicated print layer is created only for an explicit print action. */
.telefonica-print-layer {display:none}
#telefonica-bank .bank-caution {margin:8px 0;color:#637b8c;font-size:.8rem;line-height:1.4}
#telefonica-bank .bank-caution p {margin:0}
#tab-tool-bank .telefonica-qr-shell .tool-detail-row {grid-template-columns:minmax(0,1fr)}
#tab-tool-bank .telefonica-qr-shell .tool-detail-row>strong {grid-column:1}
#tab-tool-bank .bank-sheet-empty {margin-top:18px}
#tab-tool-bank #bank-sheet-list {margin-top:18px}
#tab-tool-bank .bank-empty {min-height:220px}
#tab-tool-bank .bank-preview-layout {align-items:center}
/* Small local line icons retain every existing text label. */
#telefonica-bank .bank-function-icon {box-sizing:border-box;display:inline-block;width:17px;height:17px;flex:none;vertical-align:-3px;margin-right:6px;color:#247d82}
#telefonica-bank .bank-btn .bank-function-icon {margin-right:0;color:currentColor}
#telefonica-bank .bank-primary .bank-function-icon {color:currentColor}
#telefonica-bank :is(label,.tool-detail-row>span,dt) .bank-function-icon {width:15px;height:15px}
@media print {
 body.print-telefonica-mode {display:block!important;min-height:0!important;position:static!important;max-width:none!important;margin:0!important;padding:0!important;min-width:0!important;width:auto!important;height:auto!important;overflow:visible!important;background:white!important}
 body.print-telefonica-mode>:not(.telefonica-print-layer) {display:none!important}
 body.print-telefonica-mode>.telefonica-print-layer {display:block!important;position:static!important;width:180mm!important;margin:0!important;padding:0!important;visibility:visible!important}
 .telefonica-print-card {box-sizing:border-box!important;display:grid!important;grid-template-columns:minmax(0,1fr) 44mm!important;gap:10mm!important;align-items:start!important;width:180mm!important;min-height:72mm!important;height:auto!important;max-width:none!important;margin:0 0 9mm!important;padding:6mm!important;border:.25mm solid #bbb!important;background:white!important;color:#111!important;break-inside:avoid!important;page-break-inside:avoid!important;font:12pt/1.25 Arial,"Segoe UI",sans-serif!important}
 .telefonica-print-card:last-child {margin-bottom:0!important}
 .telefonica-print-values {min-width:0!important}
 .telefonica-print-label {display:flex!important;align-items:center!important;gap:1.5mm!important;margin:0 0 1mm!important;font:10.5pt/1.2 Arial,"Segoe UI",sans-serif!important;color:#444!important}
 .telefonica-print-amount {margin:0 0 4mm!important}
 .telefonica-print-amount-value {display:block!important;margin:0!important;font:700 22pt/1.2 Arial,"Segoe UI",sans-serif!important;color:#111!important;font-variant-numeric:tabular-nums!important;white-space:nowrap!important}
 .telefonica-print-row {margin:0 0 2.5mm!important;break-inside:avoid!important}
 .telefonica-print-row:last-child {margin-bottom:0!important}
 .telefonica-print-hint {margin:3mm 0 0!important;font:10pt/1.3 Arial,"Segoe UI",sans-serif!important;color:#444!important}
 .telefonica-print-value {display:block!important;margin:0!important;font:12pt/1.25 Arial,"Segoe UI",sans-serif!important;color:#111!important;overflow-wrap:anywhere!important;white-space:pre-wrap!important}
 .telefonica-print-label .bank-function-icon {display:block!important;flex:none!important;width:3.7mm!important;height:3.7mm!important;margin:0!important;color:#444!important}
 .telefonica-print-qr {display:block!important;align-self:start!important;width:44mm!important;height:44mm!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important}
}

/* Dedicated hotline printing, independent of the app layout. */
/* Append after existing print rules; shared typography also drives bon measurement. */
.hl-print-layer { display: none; }
.hl-print-layer.is-measuring {
    display: block;
    position: absolute;
    left: -10000px;
    top: 0;
    visibility: hidden;
}
.hl-print-layer .hl-print-receipt, .hl-preview-paper .tool-receipt {
    box-sizing: border-box;
    width: 76mm;
    max-width: none;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    color: #000;
    background: #fff;
    font-family: 'Courier New', Consolas, monospace;
    font-size: 10pt;
    line-height: 1.28;
    overflow-wrap: anywhere;
}
.hl-print-layer .hl-print-receipt::after, .hl-preview-paper .tool-receipt::after { display: none; }
.hl-print-layer .receipt-title, .hl-preview-paper .receipt-title { font-size: 16pt; }
.hl-print-layer .receipt-sub, .hl-preview-paper .receipt-sub { font-size: 10pt; }
.hl-print-layer .receipt-separator, .hl-preview-paper .receipt-separator,
.hl-print-layer .receipt-footer, .hl-preview-paper .receipt-footer { font-size: 8pt; }
.hl-print-layer .receipt-step { break-inside: avoid; page-break-inside: avoid; }
.hl-print-layer .receipt-step span, .hl-preview-paper .receipt-step span,
.hl-print-layer .receipt-step small, .hl-preview-paper .receipt-step small { font-size: 9pt; white-space: pre-line; }
.hl-print-layer .receipt-step strong, .hl-preview-paper .receipt-step strong { font-size: 12pt; }
.hl-print-layer .receipt-step em, .hl-preview-paper .receipt-step em { font-size: 10pt; }
.hl-print-layer .receipt-step .receipt-answer-large, .hl-preview-paper .receipt-step .receipt-answer-large { font-size: 14pt; }
.hl-print-layer[data-format="a4"] .hl-print-receipt { width: 184mm; }
.hl-print-layer[data-format="a4"] .receipt-step span,
.hl-print-layer[data-format="a4"] .receipt-step small { font-size: 10pt; }
.hl-print-layer[data-format="a4"] .receipt-step strong { font-size: 14pt; }
@media print {
    body.print-hotline-mode {
        display: block !important;
        position: static !important;
        width: auto !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
        overflow: visible !important;
    }
    body.print-hotline-mode > :not(.hl-print-layer) { display: none !important; }
    body.print-hotline-mode > .hl-print-layer {
        display: block !important;
        position: static !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
        overflow: visible !important;
    }
    body.print-hotline-mode .hl-print-receipt {
        position: static !important;
        transform: none !important;
    }
}

.hl-format-choice {display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:.85rem;color:#526b7e}.hl-format-choice select {padding:8px;border:1px solid #cddbe6;border-radius:8px;background:white;font:inherit}
.hl-preview-window {position:relative;overflow:hidden;width:100%;margin-top:16px}.hl-preview-paper {box-sizing:border-box;transform-origin:top left;width:80mm;padding:4mm 2mm;background:white;box-shadow:0 3px 15px #17344c14}.hl-preview-paper[data-format="a4"] {width:210mm;min-height:297mm;padding:12mm 13mm}.hl-preview-paper[data-format="a4"] .tool-receipt {width:184mm}.hl-preview-paper[data-format="a4"] .receipt-step :is(span,small) {font-size:10pt}.hl-preview-paper[data-format="a4"] .receipt-step strong {font-size:14pt}
/* Fixed-mm paper must not become a grid item's mobile minimum width. */
#tab-tool-hotline .tool-receipt-panel {min-width:0;max-width:100%}.hl-preview-window {min-width:0;max-width:100%}
