/* Shared form layout for Chapter settings and administration. */
.workspace-intro { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 6px 0 10px; }
.workspace-eyebrow { color: var(--teal); font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.workspace-intro h2 { font-family: 'Outfit', sans-serif; font-size: clamp(24px, 2.3vw, 32px); line-height: 1.2; margin: 7px 0 9px; letter-spacing: -.025em; }
.workspace-intro p, .workspace-card-note { color: var(--muted); line-height: 1.6; margin: 0; font-size: 13px; }
.workspace-card-note { padding-bottom: 6px; }
.page-settings.active { display: flex; gap: 24px; }
.page-settings .settings-column { display: grid; grid-template-columns: minmax(280px, .8fr) minmax(380px, 1.2fr); align-items: start; gap: 24px; }
#instanceSettingsPanel, #settingsNoInstancePlaceholder { grid-column: 1 / -1; }
#instanceSettingsPanel .card-header { padding-bottom: 12px; }
#instanceSettingsPanel .card-body { padding-top: 0; }
#instanceSettingsPanel .setting-field-row { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); }
#settingsInstanceCredentialsCard .setting-field-row { grid-template-columns: minmax(0, 1fr); gap: 16px; }
.page-settings .card-header, #page-mandanten .card-header { padding: 20px 22px 16px; gap: 12px; border-top: none; color: var(--text); font-size: 15px; }
.page-settings .card, #page-mandanten .tenant-card { border-top: 1px solid var(--border); box-shadow: 0 3px 16px rgba(0,0,0,.09); }
.page-settings .card-body, #page-mandanten .tenant-card > .card-body { padding: 20px 22px 22px; display: flex; flex-direction: column; gap: 18px; }
.page-settings .setting-group label, #page-mandanten .setting-group label, #page-mandanten .form-label { text-transform: none; letter-spacing: 0; font-size: 12px; font-weight: 600; color: #c8cdd4 !important; }
.page-settings input:not([type=checkbox]), .page-settings select, #page-mandanten .form-control, #page-mandanten .setting-group input { min-height: 44px !important; }
.page-settings small, #page-mandanten .setting-group small { color: var(--muted); line-height: 1.5; }
.page-settings .setting-group, #page-mandanten .setting-group, #page-mandanten .form-group { min-width: 0; }
.page-settings .setting-block, #page-mandanten .tenant-toggle-row { margin: 0; }
.page-settings .setting-block h4 { font-size: 13px; margin: 0 0 14px; }
.page-settings .setting-toggle-row, #page-mandanten .tenant-toggle-row { border: 1px solid var(--border); border-radius: 10px; padding: 16px; gap: 18px; }
.page-settings .setting-toggle-row strong, #page-mandanten .tenant-toggle-row strong { font-size: 13px; }
.workspace-advanced { border: 1px solid var(--border); border-radius: 12px; background: rgba(255,255,255,.015); }
.workspace-advanced > summary { cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px; list-style: none; }
.workspace-advanced > summary::-webkit-details-marker { display: none; }
.workspace-advanced > summary strong { font-size: 15px; }
.workspace-advanced > summary small { display: block; margin-top: 5px; font-size: 12px; }
.workspace-advanced > summary:focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; }
.workspace-system-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 22px; padding: 0 22px 22px; align-items: start; }
.workspace-system-grid .settings-debug-column, .workspace-system-grid .settings-actions { grid-column: 1 / -1; }
.workspace-system-grid .debug-card { min-height: 0; }
.workspace-system-grid .terminal { min-height: 180px; height: 240px; }
.workspace-system-grid .settings-actions { padding: 16px 0; margin: 0; }
.workspace-system-grid .settings-actions .btn-primary { width: auto; }
.tenant-workspace { grid-template-columns: 300px minmax(0,1fr); align-items: start; gap: 28px; width: 100%; }
.tenant-directory { display: flex; flex-direction: column; gap: 20px; background: rgba(255,255,255,.025); border: 1px solid var(--border); border-radius: 12px; padding: 20px; min-width: 0; }
.tenant-directory > div:first-child { flex-wrap: wrap; gap: 10px; }
.tenant-directory h3 { font-size: 17px !important; }
.tenant-directory .card-badge { font-size: 10px; white-space: normal; }
#tenantList { display: flex; flex-direction: column; gap: 10px; }
#tenantList .proto-tenant-item { font: inherit; color: var(--text); width: 100%; text-align: left; padding: 16px; background: var(--card); border-radius: 9px; overflow: hidden; }
#tenantList .proto-tenant-item.active { background: rgba(200,16,46,.08); border-color: rgba(220,60,80,.65); }
#tenantList .proto-tenant-meta { align-items: flex-start; flex-direction: column; gap: 9px; }
#tenantList .proto-tenant-title { font-size: 14px; overflow-wrap: anywhere; line-height: 1.45; }
#tenantList .proto-tenant-subtitle { font-size: 11px; }
.tenant-empty { color: var(--muted); font-size: 13px; padding: 12px 0; line-height: 1.5; }
.tenant-detail-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; align-items: start; min-width: 0; }
#tenantActiveHeader, #tenantStatus, #tenantCredentialsCard, #tenantAccountCard, #tenantRunCard, #tenantActionsCard { grid-column: 1 / -1; }
#tenantActiveHeader { flex-wrap: wrap; gap: 12px; margin: 0 !important; padding: 2px 0 4px; }
#tenantDetailTitle { font-family: 'Outfit', sans-serif; font-size: 21px; overflow-wrap: anywhere; }
#tenantStatus:empty, #settingsInstanceStatusMsg:empty, [data-client-message]:empty { display: none; }
#tenantCredentialsCard > .card-body { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px 22px; }
#tenantCredentialsCard .workspace-card-note, #tenantCredentialsCard .btn-group-right { grid-column: 1 / -1; }
#tenantCredentialsCard .setting-group:nth-of-type(2) { grid-column: 1; grid-row: 3; }
#tenantCredentialsCard .setting-group:nth-of-type(3) { grid-column: 2; grid-row: 2; }
#tenantCredentialsCard .setting-group:nth-of-type(4) { grid-column: 2; grid-row: 3; }
#tenantCredentialsCard .btn-group-right { flex-wrap: wrap; gap: 12px; border-top: 1px solid var(--border); padding-top: 18px; margin-top: 0 !important; }
#tenantScheduleCard .tenant-two-col { gap: 12px; margin: 0 !important; padding: 16px; border: 1px solid var(--border); border-radius: 9px; }
#tenantScheduleCard .tenant-two-col:last-child { background: rgba(245,158,11,.035); }
#tenantActionsCard > .card-body { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; }
#tenantActionsCard #tenantSaveSettingsBtn { margin: 0 !important; }
.page-settings button, #page-mandanten button, .page-settings a.btn { min-height: 42px; font-family: inherit; font-size: 13px; }
.page-settings .btn-outline, #page-mandanten .btn-outline, .page-settings .btn-secondary, #page-mandanten .btn-secondary, #tenantSaveCredentialsBtn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 15px; border: 1px solid var(--border-strong); border-radius: 8px; background: rgba(255,255,255,.035); color: var(--text); font-weight: 600; text-decoration: none; cursor: pointer; }
.page-settings .btn-outline:hover, #page-mandanten .btn-outline:hover, .page-settings .btn-secondary:hover, #page-mandanten .btn-secondary:hover { background: rgba(255,255,255,.075); border-color: var(--muted2); }
#tenantSaveCredentialsBtn { background: rgba(78,205,196,.1); border-color: rgba(78,205,196,.35); color: var(--teal); }
[data-print-clients] { border: 1px solid var(--border); border-radius: 10px; padding: 16px; background: rgba(255,255,255,.025); gap: 12px !important; }
[data-print-clients] p { font-size: 12px; color: var(--muted); line-height: 1.65; margin: 0; }
[data-client-list] { overflow-wrap: anywhere; color: var(--muted); font-size: 12px; line-height: 1.6; }
.page-settings .tenant-document-row { display: grid; grid-template-columns: 1fr; gap: 8px; }
.page-settings .tenant-document-row label { min-height: 42px; padding: 10px 12px; border-radius: 8px; text-transform: none; font-size: 13px; }
.tenant-workspace:has(> .tenant-directory[hidden]) { grid-template-columns: minmax(0,1fr); }
@media (max-width: 1250px) {
    .tenant-workspace { grid-template-columns: 260px minmax(0,1fr); gap: 22px; }
    .tenant-detail-grid { grid-template-columns: minmax(0,1fr); }
    .page-settings .settings-column { grid-template-columns: minmax(0,1fr); }
    #settingsInstanceCredentialsCard .setting-field-row { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 950px) {
    .tenant-workspace { grid-template-columns: minmax(0,1fr); }
    #tenantList { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
    .workspace-system-grid { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 600px) {
    .workspace-intro { padding: 0; }
    .workspace-intro h2 { font-size: 25px; }
    .page-settings .card-header, #page-mandanten .card-header { padding: 18px; flex-wrap: wrap; }
    .page-settings .card-body, #page-mandanten .tenant-card > .card-body { padding: 18px; }
    .page-settings .settings-column { gap: 18px; }
    #instanceSettingsPanel .setting-field-row, #settingsInstanceCredentialsCard .setting-field-row,
    #tenantCredentialsCard > .card-body, #tenantActionsCard > .card-body, #tenantList { grid-template-columns: minmax(0,1fr); }
    #tenantCredentialsCard .setting-group { grid-column: auto !important; grid-row: auto !important; }
    .tenant-directory { padding: 18px; }
    .workspace-advanced > summary { padding: 18px; }
    .workspace-system-grid { padding: 0 12px 12px; }
    #tenantCredentialsCard .btn-group-right > button { flex: 1 1 180px; }
}

.page-settings.active { align-items: stretch; }
.page-settings .settings-column { grid-template-columns: minmax(0,1fr); }
#settingsInstanceCredentialsCard .card-body { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
#settingsInstanceCredentialsCard .workspace-card-note { grid-column: 1 / -1; }
#settingsInstanceCredentialsCard .setting-field-row { grid-template-columns: minmax(0,1fr); }
#settingsInstanceCredentialsCard #settingsSaveCredentialsBtn { grid-column: 1 / -1; justify-self: start; }
#settingsInstanceConfigCard .card-body { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.workspace-config-section { display: flex; flex-direction: column; min-width: 0; gap: 18px; }
.workspace-config-section > h3 { font-size: 13px; font-weight: 700; color: var(--teal); margin: 0; }
#settingsSaveInstanceBtn { grid-column: 1 / -1; }
@media(max-width:1050px){ #settingsInstanceConfigCard .card-body { grid-template-columns: minmax(0,1fr); } }
@media(max-width:600px){ #settingsInstanceCredentialsCard .card-body { grid-template-columns: minmax(0,1fr); } }

#page-mandanten #tenantCredentialsCard > .card-body { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
#page-mandanten #tenantActionsCard > .card-body { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
#tenantCredentialsCard .btn-group-right > button { width: auto; }
#tenantOutputCard [data-print-clients] > strong, #tenantOutputCard .checkbox-container { color: var(--text); }
@media(max-width:600px) {
    #page-mandanten #tenantCredentialsCard > .card-body,
    #page-mandanten #tenantActionsCard > .card-body { grid-template-columns: minmax(0,1fr); }
}

/* Overview and visitor management use the same cards and controls. */
#page-dashboard, #page-besucher { gap: 24px; }
#page-dashboard .card, #page-besucher .card { border-top: 1px solid var(--border); box-shadow: 0 3px 16px rgba(0,0,0,.09); }
#page-dashboard .card-header, #page-besucher .card-header { padding: 20px 22px 16px; color: var(--text); font-size: 15px; gap: 12px; flex-wrap: wrap; }
#page-dashboard .card-body, #page-besucher .card-body { padding: 20px 22px 22px; gap: 18px; }
#page-dashboard .dashboard-meeting { margin: 0; padding: 24px; border-radius: 12px; border: 1px solid var(--border); background: linear-gradient(100deg,rgba(78,205,196,.06),transparent),var(--card); box-shadow: none; gap: 24px; }
#page-dashboard .meeting-date-badge { width: 70px; height: 76px; border-radius: 10px; background: rgba(78,205,196,.08); border: 1px solid rgba(78,205,196,.25); color: var(--teal); box-shadow: none; }
#page-dashboard .meeting-date-badge span:first-child { font-size: 28px; }
#page-dashboard .meeting-date-badge span:last-child { font-size: 11px; margin-top: 6px; }
#page-dashboard .meeting-info, #page-dashboard .meeting-details { min-width: 0; }
#page-dashboard .meeting-details h3 { font-size: 18px; margin: 0 0 6px; }
#page-dashboard .meeting-details p { color: var(--muted); font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; margin: 0; }
#page-dashboard .kpi-row { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; margin: 0; }
#page-dashboard .kpi-card { background: var(--card); border-radius: 12px; padding: 20px; gap: 14px; align-items: flex-start; box-shadow: none; min-width: 0; }
#page-dashboard .kpi-icon { width: 38px; height: 38px; border-radius: 9px; }
#page-dashboard .kpi-icon svg { width: 20px; height: 20px; }
#page-dashboard .kpi-info { min-width: 0; }
#page-dashboard .kpi-label { text-transform: none; font-size: 12px; font-weight: 500; }
#page-dashboard .kpi-value { font-size: 15px; line-height: 1.5; margin-top: 5px; overflow-wrap: anywhere; }
#page-dashboard .dashboard-activity-grid { grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: 24px; align-items: start; }
#page-dashboard .dashboard-actions { order: -1; }
#page-dashboard .live-log-card { min-height: 0; grid-column: auto; }
#page-dashboard .live-log { min-height: 260px; height: 340px; max-height: 340px; }
#page-dashboard .skip-toggle-wrap { margin: 0 !important; padding: 16px !important; border: 1px solid var(--border) !important; background: rgba(255,255,255,.025); gap: 16px; }
#page-dashboard .skip-label strong { font-size: 13px !important; line-height: 1.5; }
#page-dashboard .skip-label small { font-size: 12px !important; line-height: 1.5; }
#actionStatus:empty { display: none; }
#page-dashboard button, #page-besucher button { min-height: 42px; font-family: inherit; font-size: 13px; }
#page-dashboard .btn-primary, #page-dashboard .btn-outline, #page-besucher .btn-load-visitors, #page-besucher .btn-danger, #page-besucher .btn-delete, #page-besucher .btn-outline { border-radius: 8px; padding: 11px 16px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; font-weight: 600; cursor: pointer; }
#page-dashboard .btn-outline, #page-besucher .btn-outline { border: 1px solid var(--border-strong); background: rgba(255,255,255,.035); color: var(--text); }
#page-dashboard #syncNowBtn, #page-dashboard #printNowBtn { font-size: 13px !important; padding: 12px 16px !important; }
#page-dashboard #printNowBtn svg { stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
#page-besucher #syncVisitorsBtn { background: var(--red); border: 1px solid var(--red); color: white; }
#page-besucher #deleteDuplicatesBtn, #page-besucher .btn-delete { background: transparent; border: 1px solid rgba(220,70,80,.3); color: #f29399; }
#page-besucher #deleteDuplicatesBtn:hover, #page-besucher .btn-delete:hover { background: rgba(220,70,80,.08); border-color: rgba(220,70,80,.6); }
#page-dashboard .btn-outline:hover, #page-besucher .btn-outline:hover { background: rgba(255,255,255,.075); }
#page-besucher .card-actions { flex-wrap: wrap; gap: 10px; }
#page-besucher .table-toolbar { flex-direction: column; align-items: stretch; gap: 22px; margin: 0 0 4px !important; }
#page-besucher .visitor-periods { display: flex; align-self: flex-start; gap: 4px; padding: 4px; border: 1px solid var(--border); border-radius: 10px; background: rgba(0,0,0,.12); max-width: 100%; }
#page-besucher .visitor-periods button { border: 0; border-radius: 7px; color: var(--muted); background: transparent; padding: 9px 16px; }
#page-besucher .visitor-periods button.active { color: var(--text); background: var(--card-soft); box-shadow: 0 1px 4px rgba(0,0,0,.15); }
#page-besucher .visitor-search-field { width: min(100%,380px); }
#page-besucher .visitor-search-field label { text-transform: none; font-size: 12px; font-weight: 600; color: #c8cdd4; }
#page-besucher .search-input { min-height: 44px; width: 100%; border-radius: 8px; }
#page-besucher .table-responsive { margin: 0; border: 1px solid var(--border); border-radius: 10px; }
#page-besucher .data-table { width: 100%; }
#page-besucher .data-table th { text-transform: none; padding: 14px 16px; font-size: 12px; font-weight: 600; background: rgba(255,255,255,.035); position: static; }
#page-besucher .data-table td { padding: 16px; font-size: 13px; vertical-align: middle; overflow-wrap: anywhere; }
#page-besucher #visitorTable td:nth-child(2), #page-besucher #visitorTable td:nth-child(3) { color: var(--text); font-weight: 600; }
#page-besucher #visitorTable td:nth-child(6) { color: var(--muted); font-size: 12px; }
#page-besucher #visitorTable td:last-child { text-align: right; }
#page-besucher .btn-delete { white-space: nowrap; }
.visitor-search-empty { padding: 20px; border: 1px dashed var(--border); border-radius: 9px; color: var(--muted); font-size: 13px; margin: 0; }
.visitor-blocklist > summary { gap: 16px; }
.visitor-blocklist > summary .card-title { font-size: 15px; color: var(--text) !important; }
.visitor-blocklist > summary::after { content: '⌄'; color: var(--muted); }
.visitor-blocklist[open] > summary::after { content: '⌃'; }
.visitor-blocklist > summary .card-badge { margin-left: auto; }
@media(max-width:1200px) {
    #page-dashboard .kpi-row { grid-template-columns: repeat(2,minmax(0,1fr)); }
    #page-dashboard .dashboard-activity-grid { grid-template-columns: minmax(0,1fr); }
}
@media(max-width:720px) {
    #page-dashboard .dashboard-meeting { align-items: stretch; flex-direction: column; padding: 20px; }
    #page-dashboard .meeting-action button { width: 100%; }
    #page-dashboard .card-header, #page-besucher .card-header { padding: 18px; }
    #page-dashboard .card-body, #page-besucher .card-body { padding: 18px; }
    #page-besucher .card-actions { width: 100%; justify-content: flex-start; }
    #page-besucher .card-body { overflow-x: visible; }
    #page-besucher .table-responsive { border: 0; border-radius: 0; overflow: visible; }
    #page-besucher .data-table, #page-besucher .data-table tbody { display: block; min-width: 0; width: 100%; }
    #page-besucher .data-table thead { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); }
    #page-besucher .data-table tbody { display: flex; flex-direction: column; gap: 14px; }
    #page-besucher .data-table tr { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; padding: 18px; border: 1px solid var(--border); border-radius: 10px; background: rgba(255,255,255,.015); }
    #page-besucher .data-table td { padding: 0; border: 0; min-width: 0; font-size: 13px; }
    #page-besucher .data-table td[data-label]::before { content: attr(data-label); display: block; color: var(--muted); font-size: 11px; font-weight: 500; margin-bottom: 5px; }
    #page-besucher #visitorTable td:first-child, #page-besucher #visitorTable td:nth-child(6), #page-besucher #visitorTable td:last-child, #page-besucher .data-table td[colspan] { grid-column: 1 / -1; }
    #page-besucher #blacklistTable td:nth-child(3), #page-besucher #blacklistTable td:last-child { grid-column: 1 / -1; }
    #page-besucher .data-table td:last-child { text-align: left !important; }
    #page-besucher .data-table td:last-child button { width: 100%; white-space: normal; }
    #page-besucher .data-table tr:hover td { background: transparent; }
    #page-besucher .data-table .empty-row { text-align: left; padding: 6px 0; }
    #page-besucher .visitor-periods { width: 100%; }
    #page-besucher .visitor-periods button { flex: 1; min-width: 0; padding: 9px 10px; }
    .visitor-blocklist > summary { flex-wrap: wrap; }
}
@media(max-width:480px) {
    #page-dashboard .kpi-row { grid-template-columns: minmax(0,1fr); gap: 12px; }
    #page-dashboard .kpi-card { padding: 18px; }
}

/* Readable, scoped logs with document scrolling and explicit load feedback. */
#page-log { gap: 24px; }
#page-log .card { border-top: 1px solid var(--border); box-shadow: 0 3px 16px rgba(0,0,0,.09); }
#page-log .card-header { padding: 20px 22px 16px; font-size: 15px; gap: 12px; flex-wrap: wrap; }
#page-log .card-body { padding: 20px 22px 22px; gap: 18px; }
.log-filter-grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(0,1fr) auto; gap: 18px; align-items: end; }
.log-search-grid { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(180px,.8fr); gap: 18px; }
#page-log .setting-group { min-width: 0; }
#page-log .setting-group label { text-transform: none; font-size: 12px; font-weight: 600; color: #c8cdd4; }
#page-log .setting-group input, #page-log .setting-group select { min-height: 44px; border-radius: 8px; }
#page-log button { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; padding: 11px 16px; border-radius: 8px; font-family: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
#page-log .btn-outline { border: 1px solid var(--border-strong); background: rgba(255,255,255,.035); color: var(--text); width: auto; }
#page-log .btn-outline:hover { background: rgba(255,255,255,.075); }
#page-log button:disabled { opacity: .45; cursor: default; }
.log-result-meta { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 10px; font-size: 12px; color: var(--muted); }
.log-feedback { margin: 0; padding: 12px 14px; border: 1px solid var(--border); background: rgba(78,205,196,.04); border-radius: 8px; font-size: 13px; color: var(--text); }
#page-log .log-viewer { height: auto; min-height: 300px; max-height: none; overflow: visible; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; margin: 0; padding: 20px; border: 1px solid var(--border); border-radius: 10px; font: 12px/1.8 Consolas, 'Courier New', monospace; color: #c4cbd5; background: #131619; }
.log-viewer-line.log-warning { color: #edc77c; }
.log-viewer-line.log-error { color: #f2939c; }
@media(max-width:950px) { .log-filter-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .log-filter-grid button { justify-self: start; } }
@media(max-width:600px) {
    #page-log .card-header, #page-log .card-body { padding: 18px; }
    .log-filter-grid, .log-search-grid { grid-template-columns: minmax(0,1fr); }
    .log-filter-grid button { width: 100%; }
    #page-log .log-viewer { padding: 14px; font-size: 11px; }
}

#page-dashboard .kpi-icon.muted { color: var(--muted); background: rgba(255,255,255,.035); border: 1px solid var(--border); }
.modal-content { border: 1px solid var(--border); border-radius: 12px; background: var(--card); max-height: calc(100dvh - 32px); overflow-y: auto; }
.modal-content button { min-height: 42px; border-radius: 8px; font-family: inherit; font-size: 13px; }
.toggle input:focus-visible + .slider { outline: 2px solid var(--teal); outline-offset: 3px; }
/* The one-time print exception is independent of the settings save form. */
.print-skip-panel { padding: 16px; margin-bottom: 18px; border: 1px solid var(--border); border-radius: 12px; }
.print-skip-panel .tenant-toggle-row { margin: 0; cursor: pointer; }
.print-skip-panel .workspace-card-note { margin: 10px 0 0; }
.print-skip-panel.is-pending { border-color: var(--orange); background: rgba(245, 158, 11, .06); }

.print-skip-panel .tenant-toggle-row { flex-wrap: wrap; }
.print-skip-panel [data-print-skip-count] { width: 100%; max-width: 280px; min-height: 42px; margin-top: 8px; padding: 10px 12px; color: var(--text); background: var(--input); border: 1px solid var(--border); border-radius: 8px; font: inherit; font-size: 13px; color-scheme: dark; }
.print-skip-panel [data-print-skip-count]:focus-visible { outline: 2px solid var(--teal); outline-offset: 2px; }
.print-skip-panel [data-print-skip-count]:disabled { opacity: .55; }
.print-skip-panel .tenant-toggle-row, #page-mandanten .print-skip-panel .tenant-toggle-row { border: 0; padding: 0; background: transparent; }
.print-skip-panel strong, #page-mandanten .print-skip-panel strong { color: var(--text); }
.page .btn-primary { background: var(--red); box-shadow: none; border-radius: 8px; font-weight: 600; }
.page .btn-primary:hover { background: var(--red2); box-shadow: none; }
