.knt-main { max-width: 1480px; margin: 0 auto; padding: clamp(1rem, 3vw, 2.5rem); }
.knt-topbar { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 2rem; border-bottom: 1px solid var(--bzl-border, #e4e7e9); }
.knt-topbar .zwh-brand { display: flex; align-items: center; gap: .7rem; }
.knt-workspace { color: var(--zuza-fg); min-width: 0; }
.knt-workspace h1 { margin: 0; font-size: clamp(1.6rem, 3vw, 2rem); }
.knt-workspace h2 { margin: 0 0 1rem; font-size: 1.15rem; }
.knt-head, .knt-actions, .knt-filters, .knt-list-row { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }
.knt-head { justify-content: space-between; margin-bottom: 1.5rem; }
.knt-head p { margin: .4rem 0 0; color: var(--zuza-muted); }
.knt-actions { margin-top: var(--biz-panel-top, 1rem); }
.knt-filters { padding: 1rem; margin-bottom: 1rem; background: var(--zuza-surface-soft); border-radius: .75rem; }
.knt-workspace label { display: grid; gap: .35rem; font-size: .875rem; font-weight: 500; }
.knt-workspace input:not([data-field-control]):not([type=checkbox]), .knt-workspace select:not([data-field-control]), .knt-workspace textarea:not([data-field-control]) { font: inherit; font-weight: 400; width: 100%; min-width: 0; padding: .65rem .75rem; border: 1px solid var(--zuza-line); border-radius: .4rem; background: var(--zuza-surface); color: var(--zuza-fg); box-sizing: border-box; }
.knt-workspace :is(button, input, select, textarea, a):focus-visible { outline: 3px solid var(--zuza-accent); outline-offset: 3px; }
.knt-workspace [disabled] { opacity: .6; cursor: default; }
.knt-workspace fieldset:disabled { opacity: 1; }
.knt-search { flex: 1; min-width: 12rem; }
.knt-list { display: grid; gap: .5rem; }
.knt-list-row { width: 100%; text-align: left; padding: 1rem; border: 1px solid var(--zuza-line); background: var(--zuza-surface); border-radius: .6rem; font: inherit; cursor: pointer; }
.knt-list-row:hover { border-color: var(--zuza-accent); background: var(--zuza-hover); }
.knt-list-row > :first-child { flex: 1; min-width: 10rem; }
.knt-list-row small { display: block; color: var(--zuza-muted); margin-top: .2rem; }
.knt-status { display: inline-block; background: var(--zuza-selected); color: var(--zuza-accent-strong); padding: .3rem .6rem; border-radius: 1rem; font-size: .8rem; }
.knt-detail-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1.5rem; align-items: start; }
.knt-card { padding: 1.25rem; border: 1px solid var(--zuza-line); border-radius: .75rem; background: var(--zuza-surface); min-width: 0; margin-bottom: 1rem; }
.knt-original { position: sticky; top: 1rem; }
.knt-original iframe { width: 100%; height: 72vh; border: 0; background: var(--zuza-surface-soft); }
.knt-original img { max-width: 100%; max-height: 72vh; object-fit: contain; }
.knt-original pre { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 70vh; overflow: auto; }
.knt-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; }
.knt-wide { grid-column: 1 / -1; }
.knt-check { display: flex !important; align-items: start; gap: .5rem; }
.knt-check input { margin-top: .25rem; }
.knt-note { padding: .8rem 1rem; border-left: 3px solid var(--zuza-accent); background: var(--zuza-selected); margin: 1rem 0; overflow-wrap: anywhere; }
.knt-error { border-color: #b53232; background: #fff1f0; color: #7f2020; }
.knt-history { padding-left: 1.3rem; color: var(--zuza-muted); }
.knt-evidence { font-size: .85rem; overflow-wrap: anywhere; }
.knt-table-wrap { overflow: auto; }
.knt-workspace table { width: 100%; border-collapse: collapse; font-size: .875rem; }
.knt-workspace th, .knt-workspace td { padding: .6rem; text-align: left; border-bottom: 1px solid var(--zuza-line); }
.knt-mobile-tabs { display: none; }
.knt-mobile-tabs [aria-pressed=true] { background: var(--zuza-selected); border-color: var(--zuza-accent); }
.knt-empty { padding: 3rem 1rem; text-align: center; border: 1px dashed var(--zuza-line); border-radius: .75rem; }
.document-scan-canvas { position: relative; margin: 1.5rem; touch-action: none; }
.document-scan-canvas canvas { display: block; width: 100%; height: auto; }
.document-scan-corner { position: absolute; transform: translate(-50%, -50%); width: 2.5rem; height: 2.5rem; border: 2px solid var(--bzl-primary, var(--zuza-accent)); border-radius: 50%; background: var(--bzl-surface, white); color: var(--bzl-text, var(--zuza-fg)); cursor: move; touch-action: none; font: inherit; }
.document-scan-preview { display: block; max-width: 100%; max-height: 75vh; object-fit: contain; }
.document-scan-pdf { display: block; width: 100%; height: 70vh; border: 1px solid var(--bzl-border, var(--zuza-line)); margin-top: 1rem; }
/* Konto keeps its existing composition when Biz switches to a compact topbar. */
@media (max-width: 980px) {
  :root[data-zuza-app-access="ready"] body.zuza-knt { --zuza-app-topbar-offset: 110px; }
  :root[data-bezel-theme-scope="zuza-app"] body.zuza-knt .zuza-app-topbar { flex-wrap: wrap; align-content: flex-start; gap: 6px; padding: 8px 12px; }
  .zuza-knt .zuza-app-topbar > .zuza-topbar-identity { flex: 0 1 auto; min-width: 0; gap: 6px; }
  .zuza-knt .zuza-app-account { position: static; flex-wrap: nowrap; justify-content: flex-end; gap: 4px; }
  .zuza-knt details.zuza-company-switch { position: absolute; left: 12px; bottom: 8px; max-width: calc((100% - 30px) / 2); text-align: left; }
  .zuza-knt .zuza-company-switch > div { right: auto; left: 0; }
}
@media (max-width: 800px) {
  .knt-detail-grid { display: block; }
  .knt-mobile-tabs { display: flex; gap: .5rem; margin-bottom: 1rem; }
  .knt-detail-grid[data-view=facts] .knt-original, .knt-detail-grid[data-view=original] .knt-facts { display: none; }
  .knt-original { position: static; }
  .knt-topbar { padding: .75rem 1rem; display: grid; grid-template-columns: minmax(0, 1fr) auto; }
  .knt-topbar nav { grid-column: 1 / -1; grid-row: 2; display: flex; justify-content: center; gap: .5rem; }
  .knt-list-row { gap: .5rem; }
  .knt-head { align-items: start; }
  .knt-card { padding: 1rem; }
}
@media (max-width: 420px) { .knt-form-grid { grid-template-columns: minmax(0, 1fr); } }
