.log-filters { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; }
.ops-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; margin: 0 0 1rem; }
.ops-summary dt { color: var(--text-muted); font-size: .85rem; }
.ops-summary dd { margin: .4rem 0 0; font-size: 1.7rem; font-weight: 600; }
[data-operations] > .form-help { margin: .9rem 0; font-size: .8rem; line-height: 1.5; }
.ops-row { display: grid; grid-template-columns: 7rem minmax(0,1fr) auto; gap: 1rem; align-items: center; padding: 1rem 0; border-top: 1px solid var(--line); }
.ops-copy { display: grid; gap: .35rem; overflow-wrap: anywhere; }
.ops-copy small { color: var(--text-muted); }
.ops-worker-warning { padding: .8rem 1rem; border: 1px solid var(--line); border-radius: 8px; color: #ffda8b; background: #59421c; }
@media(max-width: 850px) { .ops-summary { grid-template-columns: repeat(2,minmax(0,1fr)); } .ops-row { grid-template-columns: minmax(0,1fr) auto; } .ops-row > .log-level { grid-column: 1/-1; justify-self: start; } }
@media(max-width: 480px) { .ops-summary { grid-template-columns: 1fr; } }
.log-filters label, .connection-form label { display: grid; gap: .4rem; color: var(--text-muted); font-size: .85rem; }
.log-search { grid-column: span 2; }
.log-filters input, .log-filters select, .connection-form input, .connection-form select { width: 100%; min-width: 0; padding: .7rem; color: var(--text); background: var(--surface-muted); border: 1px solid var(--line); border-radius: 8px; font: inherit; }
.log-filter-actions { display: flex; gap: .5rem; align-items: end; }
.log-row { display: flex; align-items: center; gap: .8rem; border-bottom: 1px solid var(--line); padding: .8rem 0; }
.log-row input { width: 18px; height: 18px; accent-color: var(--blue); }
.log-row-open { display: grid; grid-template-columns: 7rem minmax(0,1fr) auto 1rem; gap: 1rem; align-items: center; width: 100%; background: transparent; border: 0; color: var(--text); text-align: left; cursor: pointer; }
.log-row-open strong { display: block; overflow-wrap: anywhere; }
.log-row-open small, .log-row-open time { color: var(--text-muted); font-size: .8rem; }
.log-level { padding: .3rem .5rem; border-radius: 6px; font-size: .8rem; background: var(--surface-muted); }
.log-level-error { color: #ff8d95; background: #5a202b; }
.log-level-warning { color: #ffda8b; background: #59421c; }
.log-dialog { width: min(620px,90vw); max-height: 85vh; overflow: auto; background: var(--surface); color: var(--text); border: 1px solid var(--line); border-radius: 14px; padding: 1.5rem; }
.log-dialog::backdrop { background: #0009; }
[data-transfer-dialog] .checkbox-label { display: flex; align-items: flex-start; gap: .6rem; margin: 1rem 0; }
[data-transfer-dialog] .checkbox-label input { width: 20px; height: 20px; flex: 0 0 20px; margin: .2rem 0 0; accent-color: var(--blue); }
.transfer-list { margin-top: 1rem; }
.transfer-item { border-top: 1px solid var(--line); padding: .9rem 0; }
.transfer-item summary { display: flex; flex-wrap: wrap; gap: .8rem; align-items: center; cursor: pointer; }
.transfer-body { padding: .4rem 0; }
.transfer-body .form-help { display: block; overflow-wrap: anywhere; margin-top: .75rem; }
[data-transfer-dialog] label { display: grid; gap: .5rem; }
[data-transfer-dialog] input { width: 100%; box-sizing: border-box; padding: .75rem; background: var(--surface-muted); color: var(--text); border: 1px solid var(--line); border-radius: 8px; font: inherit; }
.log-details > div { display: grid; grid-template-columns: 7rem minmax(0,1fr); gap: 1rem; padding: .6rem 0; border-bottom: 1px solid var(--line); }
.log-details dt { color: var(--text-muted); }
.log-details dd { margin: 0; overflow-wrap: anywhere; }
.connection-panel { margin-bottom: 1.2rem; }
.connection-form { display: grid; gap: .8rem; margin-top: 1rem; }
.connection-form .form-grid { align-items: end; }
[data-schedule-form] label > span { display: flex; align-items: flex-start; gap: .6rem; color: var(--text); }
[data-schedule-form] input[type=checkbox] { width: 20px; height: 20px; flex: 0 0 20px; margin: 0; accent-color: var(--blue); }
.connection-status { margin: .8rem 0; }
.customer-context { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem 42px; background: var(--surface); border-bottom: 1px solid var(--line); }
.customer-context > div:first-child { display: grid; gap: .3rem; min-width: 0; }
.customer-context strong { font-size: 1.15rem; overflow-wrap: anywhere; }
.customer-context-label, .customer-context small { color: var(--text-muted); font-size: .85rem; }
.customer-context-actions { display: flex; align-items: center; gap: .7rem; flex-wrap: wrap; }
.customer-context-actions button { white-space: nowrap; }
.integration-status { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; padding: 1.1rem; margin: 0 0 1.5rem; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); }
.integration-status dt { color: var(--text-muted); font-size: .85rem; margin-bottom: .4rem; }
.integration-status dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.access-notice { display: grid; gap: 1rem; justify-items: start; }
.access-notice [role=status]:empty { display: none; }
.integration-nav .nav-state { white-space: nowrap; }
.zettle-workspace { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.2rem; }
.zettle-workspace .connection-panel { margin-bottom: 0; }
.zettle-workspace details, .zettle-extra-accounts { margin-top: 1rem; }
.zettle-workspace summary, .zettle-extra-accounts summary { cursor: pointer; padding: .5rem 0; }
.zettle-workspace p { margin-block: .8rem; }
.zettle-identity { overflow-wrap: anywhere; color: var(--text-muted); }
.zettle-date-row { display: flex; align-items: end; gap: 1rem; flex-wrap: wrap; }
.zettle-booking-notice, .zettle-issues { padding: 1rem; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-muted); }
.zettle-issues ul { padding-left: 1.3rem; }
.zettle-issues li { margin-block: .5rem; }
.zettle-totals { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; margin-block: 1.5rem; }
.zettle-totals dt { color: var(--text-muted); font-size: .85rem; }
.zettle-totals dd { margin: .35rem 0 0; font-weight: 600; }
.zettle-table-scroll { max-width: 100%; overflow-x: auto; margin-block: 1.5rem; }
.zettle-table { width: 100%; border-collapse: collapse; text-align: left; font-size: .85rem; }
.zettle-table caption { text-align: left; font-weight: 600; margin-bottom: .6rem; }
.zettle-table th, .zettle-table td { padding: .6rem; border-bottom: 1px solid var(--line); }
.zettle-table td { white-space: nowrap; }
.zettle-voucher-table tbody td:first-child { white-space: normal; overflow-wrap: anywhere; min-width: 14ch; width: 46%; }
.zettle-table tfoot { font-weight: 600; background: var(--surface-muted); }
@media(max-width: 720px) {
  .zettle-voucher-table, .zettle-voucher-table caption, .zettle-voucher-table tbody, .zettle-voucher-table tfoot { display: block; }
  .zettle-voucher-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .zettle-voucher-table tr { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding-block: .65rem; border-bottom: 1px solid var(--line); }
  .zettle-voucher-table th, .zettle-voucher-table td { padding: .3rem; min-width: 0; border: 0; white-space: normal; overflow-wrap: anywhere; }
  .zettle-voucher-table tbody td:first-child { grid-column: 1 / -1; width: auto; min-width: 0; font-weight: 600; }
  .zettle-voucher-table [data-label]::before { content: attr(data-label); display: block; margin-bottom: .3rem; color: var(--text-muted); font-size: .75rem; font-weight: 400; }
  .zettle-voucher-table tfoot tr { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zettle-voucher-table tfoot th, .zettle-voucher-table tfoot [colspan] { grid-column: 1 / -1; }
}
.zettle-counts { display: flex; flex-wrap: wrap; gap: .7rem 1.5rem; margin: 1rem 0; font-size: .85rem; }
.zettle-counts > div { display: flex; align-items: baseline; gap: .4rem; }
.zettle-counts dt { color: var(--text-muted); }
.zettle-counts dd { margin: 0; font-weight: 600; order: -1; }
.zettle-workspace [role=status]:empty { display: none; }
@media(max-width: 720px) { .zettle-totals { grid-template-columns: repeat(2,minmax(0,1fr)); } .zettle-date-row { align-items: stretch; flex-direction: column; } }
@media(max-width: 980px) { .customer-context { padding-inline: 24px; } }
@media(max-width: 720px) { .customer-context { padding: 1rem; flex-wrap: wrap; } .integration-status { grid-template-columns: 1fr; } }
:root[data-theme="dark"] .status-success { color: #84d8ae; }
:root[data-theme="dark"] input[type="date"] { color-scheme: dark; }
@media(max-width: 720px) { .primary-nav .nav-item:not(.integration-nav) { display: flex; flex: 0 0 auto; width: auto; } .primary-nav { flex-wrap: wrap; overflow: visible; } }
@media(max-width: 850px) { .log-filters { grid-template-columns: repeat(2,minmax(0,1fr)); } .log-row-open { grid-template-columns: 1fr; gap: .35rem; } .log-row-open > span:last-child { display: none; } }
@media(max-width: 480px) { .log-filters { grid-template-columns: 1fr; } .log-search { grid-column: auto; } }
/* Acceptance reports inherit the same light/dark tokens as the admin UI. */
[data-endurance-content] { display: grid; gap: 1rem; }
[data-endurance-badge] { margin-left: auto; color: var(--text); font-size: .72em; }
.endurance-comparison { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.5rem; }
.endurance-voucher { padding: 1rem 0; border-bottom: 1px solid var(--line); }
.endurance-voucher summary { cursor: pointer; font-weight: 600; }
.endurance-lines>div,.endurance-event { display: grid; gap: .4rem; padding: .85rem 0; border-bottom: 1px solid var(--line); overflow-wrap: anywhere; }
[data-endurance] select { background: var(--surface-muted); color: var(--text); border: 1px solid var(--line); border-radius: 8px; padding: .7rem; font: inherit; margin-left: .5rem; }
.endurance-event pre { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 20rem; overflow: auto; }
.endurance-error { border-left: 4px solid #d97745; padding-left: 1rem; }
.endurance-events { max-height: 36rem; overflow-y: auto; margin-top: 1rem; }
.endurance-event { grid-template-columns: minmax(10rem,1fr) minmax(0,2fr); padding: .65rem .5rem; }
.endurance-event time,.endurance-event small { color: var(--text-muted); font-size: .85em; }
.endurance-event details { grid-column: 1/-1; }
[data-endurance] progress { width: min(24rem,100%); display: block; margin: .6rem 0; accent-color: var(--blue); }
@media(max-width:760px){ .endurance-comparison {grid-template-columns:1fr;} }
@media(max-width:480px){ .endurance-event {grid-template-columns:1fr;} }
