.receipt-settings-workspace { width: 100%; max-width: 1080px; height: min(720px, calc(100dvh - 160px)); min-height: 320px; margin: 0 auto; overflow: hidden; border: 1px solid var(--border); border-radius: 4px; background: var(--surface); color: var(--text); font: 400 13px/1.45 "IBM Plex Sans", "Segoe UI", sans-serif; }
.receipt-settings-workspace *, .receipt-settings-workspace *::before, .receipt-settings-workspace *::after { box-sizing: border-box; }
.receipt-settings-form { display: grid; grid-template-columns: minmax(260px, 360px) minmax(0, 1fr); grid-template-rows: minmax(0, 1fr) auto auto; height: 100%; margin: 0; }
.receipt-settings-fields { min-height: 0; min-width: 0; overflow-y: auto; overscroll-behavior: contain; padding: 25px 26px; }
.rs-field { margin-bottom: 20px; }
.rs-field:last-child { margin-bottom: 0; }
.rs-layout-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.rs-layout-pair .rs-field { margin-bottom: 20px; }
.rs-order-field { min-width: 0; margin: 23px 0 0; padding: 0; border: 0; }
.rs-order-field legend { padding: 0; color: var(--muted); font-size: 12px; }
.rs-order-list { margin: 9px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--border); }
.rs-order-list > li { display: flex; align-items: center; justify-content: space-between; min-height: 41px; gap: 10px; border-bottom: 1px solid var(--border); font-size: 12px; }
.rs-order-list > li > div { display: flex; gap: 4px; }
.receipt-settings-workspace .rs-order-list button { min-height: 29px; width: 30px; padding: 3px; font-size: 16px; line-height: 1; }
.rs-field > label { display: block; margin-bottom: 7px; color: var(--muted); font-size: 12px; }
.receipt-settings-workspace input[type="text"], .receipt-settings-workspace select, .receipt-settings-workspace textarea { width: 100%; min-height: 37px; padding: 8px 10px; border: 1px solid var(--border); border-radius: 3px; background: var(--surface-input); color: var(--text); box-shadow: none; font: inherit; font-size: 12px; }
.receipt-settings-workspace textarea { display: block; resize: vertical; min-height: 74px; max-height: 220px; }
.receipt-settings-workspace input:focus, .receipt-settings-workspace select:focus, .receipt-settings-workspace textarea:focus { outline: 1px solid var(--accent-bright); outline-offset: 1px; border-color: var(--accent-bright); }
.receipt-settings-workspace [aria-invalid="true"] { border-color: var(--red, #ee7b81); }
.receipt-settings-workspace [data-rs-error] { display: block; margin-top: 4px; color: var(--red, #ee7b81); font-size: 11px; }
.receipt-settings-workspace [data-rs-error]:empty { display: none; }
.rs-check { display: flex; align-items: center; gap: 9px; margin: 1px 0 23px; font-size: 12px; cursor: pointer; }
.rs-check input { width: 16px; height: 16px; margin: 0; accent-color: var(--accent); }
.receipt-settings-preview { display: flex; flex-direction: column; min-width: 0; min-height: 0; overflow: hidden; border-left: 1px solid var(--border); background: var(--canvas); }
.receipt-settings-preview > header { display: flex; flex: 0 0 auto; align-items: center; justify-content: space-between; padding: 13px 22px; color: var(--muted); font-size: 11px; border-bottom: 1px solid var(--border); }
.receipt-settings-preview > [data-rs-preview] { min-height: 0; overflow-y: auto; padding: 20px; scrollbar-gutter: stable; overscroll-behavior: contain; }
.receipt-settings-feedback { grid-column: 1 / -1; padding: 0 22px; font-size: 12px; }
.receipt-settings-feedback > p { margin: 0; padding: 9px 0; }
.receipt-settings-feedback > p:empty { display: none; }
.receipt-settings-feedback > p[data-error="true"] { color: var(--red, #ee7b81); }
.receipt-settings-feedback > div { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 7px 0 12px; }
.receipt-settings-feedback [hidden], .receipt-settings-footer [hidden] { display: none !important; }
.receipt-settings-footer { grid-column: 1 / -1; display: flex; align-items: center; gap: 15px; padding: 15px 22px; border-top: 1px solid var(--border); background: var(--surface); }
.receipt-settings-footer > div { display: flex; gap: 10px; margin-left: auto; }
.receipt-settings-footer a { color: var(--text); font-size: 12px; text-decoration: none; }
.receipt-settings-workspace button { min-height: 37px; padding: 8px 13px; border: 1px solid var(--border); border-radius: 3px; background: transparent; color: var(--text); box-shadow: none; font: 400 12px/1.4 "IBM Plex Sans", "Segoe UI", sans-serif; }
.receipt-settings-workspace button:hover:not(:disabled) { background: var(--surface-hover); }
.receipt-settings-workspace button.primary { background: var(--accent); border-color: var(--accent); color: var(--on-accent, #fff); }
.receipt-settings-workspace button.primary:hover:not(:disabled) { background: var(--accent); filter: brightness(1.1); }
.receipt-settings-workspace button:disabled { opacity: .45; cursor: default; }
.receipt-settings-workspace button:focus-visible, .receipt-settings-footer a:focus-visible { outline: 2px solid var(--accent-bright); outline-offset: 3px; }
:root[data-surface="pdv"] .receipt-settings-workspace { height: calc(100dvh - 160px); }
@media (max-height: 560px) { .receipt-settings-workspace, :root[data-surface="pdv"] .receipt-settings-workspace { height: calc(100dvh - 126px); min-height: 280px; } .receipt-settings-fields { padding: 17px 22px; } .receipt-settings-footer { padding-block: 10px; } .rs-field { margin-bottom: 15px; } }
@media (max-width: 700px) { .receipt-settings-form { grid-template-columns: minmax(220px, 1fr) minmax(230px, 1fr); } .receipt-settings-fields { padding-inline: 15px; } .receipt-settings-preview > [data-rs-preview] { padding: 12px; } .receipt-settings-footer { padding-inline: 15px; gap: 10px; } .receipt-settings-footer > [data-rs-discard] { padding-inline: 8px; } }
@media (max-width: 520px) { .receipt-settings-workspace { height: auto; min-height: 0; overflow: visible; } .receipt-settings-form { display: flex; flex-direction: column; } .receipt-settings-preview { height: 420px; border-left: 0; border-top: 1px solid var(--border); } .receipt-settings-footer { flex-wrap: wrap; position: sticky; bottom: 0; } .receipt-settings-footer > div { flex: 1 1 auto; justify-content: flex-end; } }
.receipt-settings-form .rs-printing { margin:0 0 20px; padding:0 0 18px; border:0; border-bottom:1px solid var(--border); }
.receipt-settings-form .rs-printing legend { padding:0 0 14px; color:var(--text); font-size:13px; font-weight:500; }
.receipt-settings-form [data-rs-printers] { justify-self:start; padding:5px 0; border:0; background:none; color:var(--accent-bright); font:inherit; font-size:11px; }
.pdv-settings-page { max-width:1080px; margin:0 auto; }
.pdv-settings-heading h1 { margin:4px 0 20px; font-size:30px; }
.pdv-settings-tabs { display:flex; align-items:center; gap:28px; margin-bottom:24px; border-bottom:1px solid var(--border); }
.pdv-settings-tabs a { display:block; padding:0 0 13px; color:var(--muted); text-decoration:none; border-bottom:2px solid transparent; font-size:13px; }
.pdv-settings-tabs a[aria-current] { color:var(--text); border-color:var(--accent-bright); }
.pdv-settings-tabs a:last-child { margin-left:auto; }
.pdv-settings-page .receipt-settings-workspace { height:auto; min-height:0; overflow:visible; background:var(--surface); }
.pdv-settings-page .receipt-settings-form { height:auto; align-items:start; }
.pdv-settings-page .receipt-settings-fields { overflow:visible; }
.pdv-settings-page .receipt-settings-preview { position:sticky; top:12px; max-height:calc(100dvh - 110px); width:100%; }
.pdv-settings-page .receipt-settings-footer { position:sticky; bottom:0; z-index:2; }
.pdv-settings-page [data-rs-printers] { display:none; }
.pdv-settings-page[data-settings-section="cupom"] .rs-printing { display:none; }
.pdv-settings-page[data-settings-section="impressao"] .receipt-settings-fields > :not(.rs-printing) { display:none; }
.pdv-settings-page[data-settings-section="impressao"] .rs-printing { margin:0; border:0; padding:0; }
@media(max-width:700px) { .pdv-settings-tabs { flex-wrap:wrap; gap:16px; } .pdv-settings-tabs a:last-child { margin-left:0; } }
