.okk-register-page { display: grid; grid-template-columns: minmax(0,1fr); gap: 16px; min-width: 0; }
.okk-register-page > [aria-busy] { min-width: 0; }
.okk-register-page .page-head { margin-bottom: 0; }
.okk-register-head-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.okk-register-head-controls input { padding: 9px 12px; min-height: 39px; border: 1px solid var(--border); border-radius: 8px; background: var(--card); color: var(--ink); font: inherit; font-size: 12px; }
.okk-register-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.okk-register-summary article { display: grid; gap: 8px; padding: 18px; border: 1px solid var(--border); border-radius: 12px; background: var(--card); }
.okk-register-summary small { color: var(--muted); font-size: 11px; }
.okk-register-summary strong { color: var(--ink); font-size: 24px; font-weight: 800; font-variant-numeric: tabular-nums; }
.okk-register-summary span { color: var(--muted); font-size: 10px; line-height: 1.5; }
.okk-register-tabs, .okk-register-source-tabs { display: flex; flex-wrap: wrap; gap: 6px; }
.okk-register-tabs { padding: 5px; border: 1px solid var(--border); border-radius: 10px; background: var(--card); width: fit-content; max-width: 100%; }
.okk-register-tabs button, .okk-register-source-tabs button { padding: 9px 13px; border: 1px solid transparent; border-radius: 7px; background: transparent; color: var(--muted); font: inherit; font-size: 12px; font-weight: 650; cursor: pointer; }
.okk-register-tabs button.is-active, .okk-register-source-tabs button.is-active { background: color-mix(in srgb,var(--warning) 11%,var(--card)); color: var(--ink); border-color: color-mix(in srgb,var(--warning) 30%,var(--border)); }
.okk-register-panel { padding: 18px; min-width: 0; }
.okk-register-panel h2 { margin: 0 0 14px; font-size: 16px; }
.okk-register-filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0; align-items: center; }
.okk-register-filters > label:first-child { flex: 1 1 250px; }
.okk-register-filters input:not([type=checkbox]) { width: 100%; min-height: 38px; padding: 9px 11px; border: 1px solid var(--border); border-radius: 7px; background: var(--v-input,var(--card)); color: var(--ink); font: inherit; font-size: 12px; }
.okk-register-archive-filter { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 11px; }
.okk-register-table-scroll { width: 100%; overflow-x: auto; }
.okk-register-table { width: 100%; border-collapse: collapse; color: var(--ink); }
.okk-register-table :is(th,td) { padding: 11px 12px; border-bottom: 1px solid var(--border); text-align: left; font-size: 12px; vertical-align: middle; }
.okk-register-table th { color: var(--muted); font-size: 10px; font-weight: 700; }
.okk-register-table td { overflow-wrap: anywhere; }
.okk-register-money { font-weight: 750; font-variant-numeric: tabular-nums; white-space: nowrap; }
.okk-register-row-comment { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; max-width: 240px; overflow: hidden; white-space: pre-wrap; color: var(--muted); font-size: 11px; line-height: 1.5; }
.okk-register-page .secondary-button, .okk-register-page .primary-button { min-height: 34px; padding: 7px 11px; font-size: 11px; }
.okk-register-row-actions { width: 170px; white-space: nowrap; }
.okk-register-row-actions .text-button { margin-left: 6px; font-size: 10px; }
.okk-register-pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 12px; color: var(--muted); font-size: 11px; }
.okk-register-pagination > div { display: flex; gap: 6px; }
.okk-register-section-head { display: flex; flex-wrap: wrap; align-items: start; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
.okk-register-section-head h2 { margin-bottom: 0; }
.okk-register-help { margin: 10px 0 0; color: var(--muted); font-size: 11px; line-height: 1.6; }
.okk-register-source-cards { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.okk-register-source-cards article { display: grid; gap: 10px; padding: 14px; border: 1px solid var(--border); border-radius: 10px; }
.okk-register-source-cards article > div { display: grid; gap: 4px; }
.okk-register-source-cards small { font-size: 10px; color: var(--muted); overflow-wrap: anywhere; }
.okk-register-source-cards b { font-size: 21px; font-variant-numeric: tabular-nums; }
.okk-register-source-cards dl { display: grid; gap: 6px; margin: 0; font-size: 10px; }
.okk-register-source-cards dl > div { display: flex; justify-content: space-between; gap: 8px; }
.okk-register-source-cards dt { color: var(--muted); }
.okk-register-source-cards dd { margin: 0; font-variant-numeric: tabular-nums; white-space: nowrap; }
.okk-register-period-notes { margin: 0; color: var(--ink); font-size: 12px; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }
.okk-register-error { padding: 12px 14px; border: 1px solid var(--danger); border-radius: 8px; color: var(--danger); background: var(--danger-soft); font-size: 12px; }
.okk-register-error button { margin-left: 8px; color: inherit; background: transparent; border: 0; text-decoration: underline; cursor: pointer; }
.okk-register-dialog { width: min(640px,calc(100vw - 32px)); max-height: calc(100dvh - 40px); overflow: auto; padding: 22px; border: 1px solid var(--border); border-radius: 14px; background: var(--card); color: var(--ink); box-shadow: var(--shadow); }
.okk-register-dialog::backdrop { background: rgb(0 0 0 / 50%); }
.okk-register-dialog header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.okk-register-dialog h2 { margin: 5px 0 0; font-size: 21px; }
.okk-register-dialog form { display: grid; gap: 16px; }
.okk-register-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.okk-register-form-full { grid-column: 1 / -1; }
.okk-register-dialog label { display: grid; gap: 7px; min-width: 0; font-size: 12px; }
.okk-register-dialog :is(input:not([type=checkbox]),select,textarea) { width: 100%; min-width: 0; padding: 10px 11px; border: 1px solid var(--border); border-radius: 7px; background: var(--v-input,var(--card)); color: var(--ink); font: inherit; font-size: 13px; }
.okk-register-dialog textarea { resize: vertical; line-height: 1.6; }
.okk-register-dialog .okk-register-check { display: flex; align-items: center; gap: 8px; }
.okk-register-dialog footer { display: flex; justify-content: flex-end; gap: 8px; padding-top: 12px; border-top: 1px solid var(--border); }
.okk-register-dialog .secondary-button,.okk-register-dialog .primary-button { min-height: 38px; padding: 9px 13px; font-size: 12px; }
.okk-register-settings-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.okk-register-settings-grid fieldset { display: grid; gap: 10px; min-width: 0; padding: 12px; border: 1px solid var(--border); border-radius: 8px; }
.okk-register-settings-grid legend { padding: 0 5px; font-size: 13px; font-weight: 750; }
.okk-register-editor-error { color: var(--danger); font-size: 12px; line-height: 1.5; }
.okk-register-editor-conflict { padding: 12px; border: 1px solid var(--warning); border-radius: 8px; background: color-mix(in srgb,var(--warning) 8%,var(--card)); font-size: 12px; line-height: 1.5; }
.okk-register-editor-conflict p { margin: 0 0 10px; }
.okk-register-page :is(button,input):focus-visible,.okk-register-dialog :is(button,input,textarea,select):focus-visible { outline: 2px solid var(--warning); outline-offset: 2px; }
/* The source workbook uses five adjacent three-column registers and a calculation sidebar. */
.okk-register-worksheet { --okk-sheet-blue: #cdddf6; --okk-sheet-pink: #ead2df; --okk-sheet-green: #dbead2; --okk-sheet-yellow: #fff3cf; --okk-sheet-grid: #d3d6dc; --okk-sheet-paper: #fff; --okk-sheet-ink: #202936; container: okk-worksheet / inline-size; padding: 12px; }
[data-theme=dark] .okk-register-worksheet { --okk-sheet-blue: #2d4666; --okk-sheet-pink: #4b354b; --okk-sheet-green: #304b37; --okk-sheet-yellow: #493f27; --okk-sheet-grid: #455062; --okk-sheet-paper: #202832; --okk-sheet-ink: #eef2f6; }
.okk-sheet-hint { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 18px; margin: 0 0 10px; color: var(--muted); font-size: 11px; }
.okk-sheet-hint span { overflow-wrap: anywhere; }
.okk-register-worksheet .okk-register-filters { gap: 6px; margin: 10px 0; }
.okk-register-worksheet .okk-register-source-tabs { gap: 4px; }
.okk-register-worksheet .okk-register-source-tabs button { padding: 7px 10px; }
/* Source registers flow with the page: there is no nested vertical wheel region. */
.okk-sheet-scroll { width: 100%; min-width: 0; overflow: visible; background: var(--card); color: var(--okk-sheet-ink); }
.okk-sheet-scroll:focus-visible { outline: 2px solid var(--warning); outline-offset: 2px; }
.okk-sheet-board { display: grid; grid-template-columns: minmax(0,1fr); align-items: start; gap: 12px; min-width: 0; width: 100%; }
.okk-sheet-board.is-single-source .okk-sheet-scroll { max-width: 520px; }
.okk-sheet-grid { display: grid; grid-template-columns: minmax(0,1fr); align-items: start; gap: 24px 20px; min-width: 0; }
/* Separate the sources with space and soft header accents, without card frames. */
.okk-sheet-source { --okk-source-accent: #547da0; --okk-source-tint: color-mix(in srgb,var(--okk-source-accent) 14%,var(--okk-sheet-paper)); --okk-source-frame: color-mix(in srgb,var(--okk-source-accent) 42%,var(--okk-sheet-grid)); width: 100%; min-width: 0; table-layout: fixed; border-collapse: separate; border-spacing: 0; border: 0; border-radius: 0; background: var(--okk-sheet-paper); color: var(--okk-sheet-ink); font-size: 13px; }
.okk-sheet-source[data-source="zero"] { --okk-source-accent: #7b8290; }
.okk-sheet-source[data-source="ilya"] { --okk-source-accent: #8b719d; }
.okk-sheet-source[data-source="andrey"] { --okk-source-accent: #588773; }
.okk-sheet-source[data-source="nikita"] { --okk-source-accent: #ab8252; }
[data-theme=dark] .okk-sheet-source { --okk-source-accent: #94b3d6; }
[data-theme=dark] .okk-sheet-source[data-source="zero"] { --okk-source-accent: #aab2bd; }
[data-theme=dark] .okk-sheet-source[data-source="ilya"] { --okk-source-accent: #c1a1d7; }
[data-theme=dark] .okk-sheet-source[data-source="andrey"] { --okk-source-accent: #95c2ae; }
[data-theme=dark] .okk-sheet-source[data-source="nikita"] { --okk-source-accent: #d0b188; }
.okk-sheet-id-col { width: 42%; }
.okk-sheet-amount-col { width: 30%; }
.okk-sheet-source :is(th,td) { padding: 9px 8px; border-right: 0; border-bottom: 1px solid var(--okk-sheet-grid); background: var(--okk-sheet-paper); line-height: 1.45; overflow-wrap: anywhere; vertical-align: top; }
.okk-sheet-source tr > :last-child { border-right: 0; }
.okk-sheet-source tfoot tr:last-child td { border-bottom: 0; }
.okk-sheet-source thead th { text-align: left; color: var(--muted); font-size: 11px; font-weight: 650; }
.okk-sheet-source .okk-sheet-source-title th { background: var(--okk-source-tint); border-top: 3px solid var(--okk-source-accent); border-bottom-color: var(--okk-source-frame); padding: 12px; color: var(--okk-sheet-ink); font-size: 19px; font-weight: 750; }
.okk-sheet-source-title th > div { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.okk-sheet-source-title small { display: block; margin-bottom: 2px; color: var(--muted); font-size: 10px; font-weight: 500; }
.okk-sheet-source-title button { flex: 0 0 34px; width: 34px; height: 34px; padding: 0; border: 1px solid color-mix(in srgb,var(--okk-sheet-ink) 25%,transparent); border-radius: 7px; color: inherit; background: transparent; font-size: 20px; cursor: pointer; }
.okk-sheet-source tbody td { white-space: normal; }
.okk-sheet-source tbody .okk-sheet-author { color: var(--ink); font-size: 12px; }
.okk-sheet-source .okk-sheet-number { text-align: right; font-size: 12px; font-weight: 650; font-variant-numeric: tabular-nums; white-space: nowrap; }
.okk-sheet-entry-id { display: flex; align-items: center; gap: 2px; }
.okk-sheet-edit { display: inline-flex; align-items: center; min-width: 0; border: 0; padding: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; overflow-wrap: anywhere; }
.okk-sheet-edit strong { min-width: 0; font-size: 14px; font-weight: 700; white-space: normal; }
.okk-sheet-edit:hover { text-decoration: underline; }
.okk-sheet-review-description { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; margin: 5px 0 0; color: var(--ink); font-size: 12px; line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; }
.okk-sheet-archive { flex: 0 0 17px; padding: 0; width: 17px; height: 22px; border: 0; background: transparent; color: var(--muted); opacity: .35; cursor: pointer; }
.okk-sheet-entry-id:hover .okk-sheet-archive,.okk-sheet-archive:focus-visible { opacity: 1; color: var(--danger); }
.okk-sheet-source tbody tr[data-entry-id]:hover td { background: color-mix(in srgb,var(--okk-source-accent) 8%,var(--okk-sheet-paper)); }
.okk-sheet-source .is-archived { color: var(--muted); }
.okk-sheet-source .okk-sheet-source-total :is(th,td) { background: var(--okk-source-tint); border-top: 1px solid var(--okk-source-frame); font-weight: 700; height: 32px; }
.okk-sheet-source-total th { text-align: left; font-size: 10px; }
.okk-sheet-source-pager { display: flex; justify-content: space-between; align-items: center; gap: 4px; color: var(--muted); font-size: 10px; min-height: 30px; }
.okk-sheet-source-pager > div { display: flex; gap: 4px; }
.okk-sheet-source-pager button { border: 1px solid var(--okk-sheet-grid); border-radius: 3px; padding: 3px 7px; color: inherit; background: var(--okk-sheet-paper); cursor: pointer; }
.okk-register-statistics { display: grid; grid-template-columns: minmax(0,1fr); gap: 18px; padding: 0; }
.okk-register-scope-note { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.okk-register-scroll-hint { display: none; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.okk-register-table-scroll:focus-visible { outline: 2px solid var(--warning); outline-offset: 2px; }
.okk-sheet-sidebar { display: grid; grid-template-columns: minmax(0,1fr); align-items: start; gap: 16px; min-width: 0; }
.okk-sheet-stat-block { min-width: 0; max-width: 100%; padding: 16px; border: 1px solid var(--border); border-radius: 12px; background: var(--card); }
.okk-sheet-stat-block > .okk-register-table-scroll { min-width: 0; }
.okk-register-worksheet .okk-sheet-section-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 30px; margin: 0 0 12px; padding: 0; color: var(--ink); font-size: 15px; font-weight: 750; text-align: left; }
.okk-sheet-section-title > span { flex: 1; }
.okk-sheet-section-title button { flex-shrink: 0; min-height: 30px; padding: 5px 8px; border: 1px solid var(--border); border-radius: 6px; background: var(--card); color: var(--ink); font: inherit; font-size: 11px; cursor: pointer; }
.okk-sheet-summary-table { width: 100%; table-layout: fixed; border-collapse: collapse; color: var(--okk-sheet-ink); font-size: 12px; }
.okk-sheet-summary-table :is(th,td) { padding: 8px; border-bottom: 1px solid var(--border); overflow-wrap: anywhere; line-height: 1.5; vertical-align: middle; }
.okk-sheet-summary-table thead th { background: color-mix(in srgb,var(--okk-sheet-blue) 40%,var(--card)); color: var(--muted); font-size: 11px; font-weight: 700; text-align: left; }
.okk-sheet-summary-table tbody th { font-weight: 400; text-align: left; }
.okk-sheet-summary-table td { text-align: right; font-variant-numeric: tabular-nums; }
.okk-sheet-secondary { display: block; margin-top: 2px; color: var(--muted); font-size: 10px; font-weight: 400; line-height: 1.35; white-space: normal; }
.okk-sheet-statistics thead th:nth-child(n+3) { background: var(--okk-sheet-green); }
.okk-sheet-authors { margin-top: 0; }
.okk-sheet-summary-table .okk-sheet-input { background: var(--okk-sheet-yellow); }
.okk-sheet-topups tbody { background: color-mix(in srgb,var(--okk-sheet-yellow) 35%,var(--okk-sheet-paper)); }
.okk-sheet-topups thead th:nth-child(1) { width: 17%; }
.okk-sheet-topups thead th:nth-child(2) { width: 19%; }
.okk-sheet-topups thead th:nth-child(3) { width: 20%; }
.okk-sheet-topups thead th:nth-child(4) { width: 32%; }
.okk-sheet-topups thead th:nth-child(5) { width: 12%; }
.okk-sheet-summary-table .okk-sheet-comment { text-align: left; white-space: pre-wrap; }
.okk-sheet-check { color: var(--success); font-weight: 800; font-size: 16px; }
.okk-sheet-summary-table .okk-sheet-empty { text-align: center; color: var(--muted); }
.okk-sheet-note { margin: 5px 0 0; color: var(--muted); font-size: 11px; line-height: 1.45; }
.okk-sheet-sidebar > .okk-sheet-note { grid-column: 1 / -1; }
.okk-sheet-all-topups { display: block; margin: 7px 0 0 auto; padding: 2px 0; border: 0; background: transparent; color: var(--warning); font: inherit; font-size: 11px; cursor: pointer; }
.okk-sheet-notes { padding: 0; margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 13px; line-height: 1.7; }
.okk-register-author-help { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
@container okk-worksheet (min-width:700px) {
  .okk-sheet-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .okk-sheet-sidebar { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .okk-sheet-stat-block:is([data-stat="stats"],[data-stat="balances"],[data-stat="payouts"],[data-stat="topups"],[data-stat="notes"]) { grid-column: span 2; }
}
@container okk-worksheet (min-width:1080px) {
  .okk-sheet-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
.okk-sheet-board.is-single-source .okk-sheet-grid { grid-template-columns: minmax(0,1fr); }
@media(max-width:1000px) { .okk-register-summary,.okk-register-source-cards { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) {
  .okk-register-scroll-hint { display: block; }
  .okk-register-page { gap: 12px; }
  .okk-register-head-controls { width: 100%; }
  .okk-register-summary { gap: 8px; }
  .okk-register-summary article { padding: 12px; }
  .okk-register-summary strong { font-size: 20px; }
  .okk-register-panel { padding: 14px; }
  .okk-register-tabs { width: 100%; }
  .okk-register-tabs button { flex: 1 1 auto; padding: 9px; font-size: 11px; }
  .okk-register-source-tabs button { padding: 8px 10px; }
  .okk-register-table :is(thead,th) { display: none; }
  .okk-register-table :is(tbody,tr,td) { display: block; }
  .okk-register-table tr { padding: 10px; margin-bottom: 10px; border: 1px solid var(--border); border-radius: 8px; }
  .okk-register-table td { display: flex; justify-content: space-between; gap: 12px; padding: 7px 0; border: 0; text-align: right; }
  .okk-register-table td::before { content: attr(data-label); color: var(--muted); font-size: 10px; white-space: nowrap; }
  .okk-register-table .okk-register-row-actions { justify-content: flex-end; width: auto; flex-wrap: wrap; }
  .okk-register-table td[colspan] { display: block; text-align: center; }
  .okk-register-row-comment { max-width: 190px; text-align: right; }
  .okk-register-source-cards { grid-template-columns: 1fr; }
  .okk-register-dialog { padding: 16px; }
  .okk-register-form-grid,.okk-register-settings-grid { grid-template-columns: 1fr; }
  .okk-register-dialog :is(button) { min-height: 38px; }
  .okk-register-worksheet { padding: 10px; }
  .okk-sheet-board { gap: 10px; }
  .okk-sheet-board.is-single-source .okk-sheet-scroll { max-width: none; }
  .okk-sheet-sidebar { gap: 10px; }
  .okk-sheet-stat-block { padding: 12px; }
  .okk-sheet-stat-block .okk-sheet-summary-table :is(th,td) { padding: 7px 5px; font-size: 11px; }
  .okk-sheet-summary-table { min-width: 340px; }
  .okk-sheet-topups,.okk-sheet-balances { min-width: 560px; }
  .okk-sheet-source tbody td { padding: 10px 6px; }
  .okk-sheet-edit { min-height: 32px; }
  .okk-sheet-archive { width: 25px; height: 32px; flex-basis: 25px; opacity: .65; }
  .okk-sheet-source-title button,.okk-sheet-source-pager button,.okk-sheet-section-title button { min-width: 36px; min-height: 36px; }
}
