*{box-sizing:border-box}body{font-family:Arial,Helvetica,sans-serif;margin:0;background:#f4f6f8;color:#1f2937}.topbar{background:#182235;color:white;padding:14px 24px;display:flex;justify-content:space-between;align-items:center}.brand{font-size:22px;font-weight:700}.topbar a{color:white;text-decoration:none;margin-left:18px}.container{max-width:1100px;margin:28px auto;padding:0 16px}.page-head{display:flex;justify-content:space-between;align-items:center}.card{background:white;border-radius:12px;padding:22px;box-shadow:0 4px 16px #0001}.table{width:100%;border-collapse:collapse;background:white;border-radius:12px;overflow:hidden;box-shadow:0 4px 16px #0001}.table th,.table td{padding:12px 14px;border-bottom:1px solid #e5e7eb;text-align:left}.table th{background:#eef2f7}.right{text-align:right!important}.btn{display:inline-block;padding:10px 14px;border-radius:8px;border:1px solid #cbd5e1;background:white;color:#111827;text-decoration:none;cursor:pointer}.btn.primary{background:#1d4ed8;color:white;border-color:#1d4ed8}.form label{display:block;font-weight:700;margin:12px 0 6px}.form input,.form textarea,.form select{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:8px;font-size:15px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.check{display:flex!important;gap:8px;align-items:center}.check input{width:auto}.vatbox{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:10px;margin:14px 0}.muted{color:#64748b}.ok{background:#dcfce7;padding:10px;border-radius:8px}.footer{text-align:center;color:#64748b;padding:24px}@media(max-width:700px){.grid2{grid-template-columns:1fr}.topbar{display:block}.topbar nav{margin-top:10px}.topbar a{margin:0 12px 0 0}.table{font-size:13px}}
small { display:block; color:#777; margin-top:4px; }
.purpose-box { border:1px solid #e2e2e2; border-radius:10px; padding:14px; margin:12px 0; background:#fafafa; }
.lookup-label .btn { margin-top: 6px; }
.lookup-label small { display: block; margin-top: 6px; color: #666; }
.payer-box { margin: 12px 0; }
#participantWrap small { color: #666; font-weight: normal; }
.inline-search{display:flex;gap:8px;align-items:center}.inline-search input{flex:1}.inline-search .btn{white-space:nowrap}.ares-search-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:10px;margin:10px 0}.ares-results{display:block;margin-top:10px;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:10px}.ares-results label{margin-top:0}.ares-results select{margin-bottom:8px}.ares-result{display:block;width:100%;text-align:left;background:white;border:1px solid #cbd5e1;border-radius:8px;padding:10px;cursor:pointer}.ares-result:hover{background:#eef6ff}.ares-result strong,.ares-result span,.ares-result small{display:block}.ares-result span{font-size:13px;color:#334155;margin-top:3px}
@media(max-width:700px){.inline-search{display:block}.inline-search .btn{margin-top:8px;width:100%}}

.ares-suggest{position:relative;margin-top:-4px;margin-bottom:10px;display:grid;gap:6px;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:8px;box-shadow:0 8px 24px #0002;z-index:20}
.ares-suggest[hidden]{display:none}

.ares-results select[size]{min-height:260px;max-height:260px;overflow-y:auto;}

/* ARES dropdown - v1.0.11 */
.ares-search-box{position:relative;}
.ares-dropdown{position:absolute;left:10px;right:10px;top:calc(100% - 8px);background:#fff;border:1px solid #cbd5e1;border-radius:10px;box-shadow:0 12px 28px #0003;z-index:50;overflow:hidden;}
.ares-dropdown[hidden]{display:none;}
.ares-dropdown-head{font-size:13px;font-weight:700;color:#475569;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:8px 10px;}
.ares-result-list{max-height:420px;overflow-y:auto;}
.ares-dropdown-item{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #e5e7eb;background:#fff;padding:9px 10px;cursor:pointer;font:inherit;color:#1f2937;}
.ares-dropdown-item:last-child{border-bottom:0;}
.ares-dropdown-item:hover,.ares-dropdown-item:focus{background:#eef6ff;outline:none;}
.ares-dropdown-item strong{display:block;font-size:14px;}
.ares-dropdown-item span{display:block;font-size:12px;color:#475569;margin-top:3px;line-height:1.25;}
@media(max-width:700px){.ares-dropdown{position:static;margin-top:8px;}.ares-result-list{max-height:360px;}}

/* v1.0.13 - hromadné doklady účastníků */
.errorbox{background:#fee2e2;border:1px solid #fecaca;color:#991b1b;padding:10px 12px;border-radius:8px}.okbox{border-left:5px solid #16a34a}.info-card{margin-top:16px}.table.compact th,.table.compact td{padding:8px 10px}.participants-form{margin-top:16px}.bulk-actions{display:flex;gap:8px;margin:8px 0 12px}.participants-table input[type="checkbox"]{width:auto}.amount-col{width:130px}.amount-small{max-width:120px;padding:7px!important}.participants-table td{vertical-align:middle}

/* v1.1.0 - úvodní rozcestník a upravená navigace */
.home-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.home-hero h1{margin-top:0;margin-bottom:8px}.home-hero p{margin:0;color:#475569;max-width:720px}.version-pill{white-space:nowrap;background:#eef2ff;color:#1d4ed8;border:1px solid #c7d2fe;border-radius:999px;padding:8px 12px;font-weight:700}.home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.home-card{display:block;background:white;border-radius:14px;padding:22px;text-decoration:none;color:#1f2937;box-shadow:0 4px 16px #0001;border:1px solid #e5e7eb;min-height:130px}.home-card:hover{border-color:#93c5fd;box-shadow:0 8px 24px #0002}.home-card-title{display:block;font-size:20px;font-weight:700;margin-bottom:8px;color:#111827}.home-card span:last-child{display:block;color:#475569;line-height:1.45}.muted-card{background:#f8fafc}.topbar nav{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.topbar a{margin-left:0}@media(max-width:700px){.home-hero{display:block}.version-pill{display:inline-block;margin-top:12px}.home-grid{grid-template-columns:1fr}.topbar nav{justify-content:flex-start}}

/* v1.1.1 - přihlášení a správa uživatelů */
.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#eef2f7}.login-wrap{width:100%;max-width:460px;padding:20px}.login-card h1{margin-top:0}.status-ok{display:inline-block;background:#dcfce7;color:#166534;border-radius:999px;padding:3px 8px;font-weight:700}.status-off{display:inline-block;background:#fee2e2;color:#991b1b;border-radius:999px;padding:3px 8px;font-weight:700}.topbar nav a:last-child{opacity:.9}

/* v1.1.2 - Pokladna / výčetky */
.cash-summary-box{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.cash-summary-box div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:12px}.cash-summary-box span{display:block;color:#64748b;font-size:13px;margin-bottom:6px}.cash-summary-box strong{font-size:17px}.cash-count-table input{max-width:120px;text-align:right}.cash-ok{color:#166534;font-weight:700}.cash-diff{color:#991b1b;font-weight:700}.cash-view-grid p{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:10px;margin:0}.cash-summary-table{margin:14px 0}.signature-row{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:56px}.signature-row div{border-top:1px solid #111;padding-top:8px;text-align:center}.print-card{max-width:900px;margin:0 auto}@media(max-width:700px){.cash-summary-box{grid-template-columns:1fr}.cash-count-table input{max-width:90px}}@media print{body{background:white}.topbar,.footer,.no-print{display:none!important}.container{max-width:none;margin:0;padding:0}.card,.table{box-shadow:none}.card{padding:0}.table th,.table td{border:1px solid #d1d5db}.signature-row{break-inside:avoid}}


/* v1.3.1 - přeskupené menu, dropdown navigace a dashboard */
.brand a{color:white;text-decoration:none}.topbar{align-items:stretch;gap:18px}.main-nav{display:flex;align-items:center;flex-wrap:wrap;gap:4px;justify-content:flex-end}.nav-link,.nav-trigger{display:block;color:white;text-decoration:none;background:transparent;border:0;border-radius:8px;padding:9px 10px;font:inherit;cursor:pointer}.nav-link:hover,.nav-trigger:hover,.nav-group.active>.nav-trigger,.nav-link.active{background:#25324a}.nav-group{position:relative}.nav-trigger::after{content:" ▾";font-size:12px;opacity:.75}.nav-dropdown{display:none;position:absolute;top:100%;left:0;min-width:220px;background:white;color:#1f2937;border:1px solid #dbe2ea;border-radius:10px;box-shadow:0 12px 28px #0003;padding:6px;z-index:100}.nav-dropdown-right{left:auto;right:0}.nav-dropdown a{display:block;color:#1f2937;text-decoration:none;margin:0;padding:9px 10px;border-radius:8px;white-space:nowrap}.nav-dropdown a:hover{background:#eef2f7}.nav-group:hover .nav-dropdown,.nav-group:focus-within .nav-dropdown{display:block}.dashboard-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}.stat-card{background:white;border:1px solid #e5e7eb;border-radius:14px;padding:18px;box-shadow:0 4px 16px #0001}.stat-card span{display:block;color:#64748b;margin-bottom:8px}.stat-card strong{font-size:24px;color:#111827}.stat-card small{margin-top:6px}.quick-actions{margin-bottom:18px}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-head h2{margin:0 0 12px}.plain-table{box-shadow:none;border-radius:0}.plain-table td{border-bottom:1px solid #edf1f5}.plain-table tr:last-child td{border-bottom:0}@media(max-width:900px){.topbar{display:block}.main-nav{justify-content:flex-start;margin-top:10px}.nav-dropdown{position:static;box-shadow:none;margin:4px 0 8px;background:#22304a;border-color:#33435f}.nav-dropdown a{color:white}.nav-dropdown a:hover{background:#33435f}.dashboard-stats,.dashboard-grid{grid-template-columns:1fr}}


/* v1.3.2 - přehlednější tabulka vystavených dokladů */
.receipts-table{table-layout:fixed}
.receipts-table th,.receipts-table td{vertical-align:top}
.receipts-table th:nth-child(1){width:180px}
.receipts-table th:nth-child(2){width:135px}
.receipts-table th:nth-child(3){width:170px}
.receipts-table th:nth-child(5){width:130px}
.receipts-table th:nth-child(6){width:145px}
.receipt-number-cell strong{display:block;white-space:nowrap;color:#111827}
.receipt-number-cell span{display:block;margin-top:8px;color:#334155;line-height:1.25}
.date-cell{white-space:nowrap}
.wrap-cell{white-space:normal;overflow-wrap:anywhere;word-break:normal;line-height:1.35}
.purpose-cell small{display:block;margin-top:5px;color:#64748b}
.amount-nowrap{white-space:nowrap;font-weight:700}
.actions-cell{white-space:nowrap}
.actions-cell span{color:#94a3b8;margin:0 4px}
@media(max-width:850px){.receipts-table{table-layout:auto}.receipts-table th:nth-child(n){width:auto}.actions-cell{white-space:normal}.amount-nowrap{white-space:nowrap}}


/* v1.3.3 - doladění přehledu vystavených dokladů */
.receipt-number-cell small{display:block;margin-top:5px;color:#64748b;font-size:12px;font-weight:400;line-height:1.25}
.receipt-number-cell span{display:none}
.purpose-cell small{display:none}
.receipts-table th:nth-child(6){width:155px}
.actions-cell{white-space:normal;overflow-wrap:normal;word-break:normal;line-height:1.35}
.actions-cell a{display:inline;white-space:normal}
.actions-cell span{display:inline-block;color:#94a3b8;margin:0 5px}
@media(max-width:900px){.actions-cell a{display:block}.actions-cell span{display:none}}

/* v1.3.4 - filtry v přehledu vystavených dokladů */
.receipts-filter-form{margin:12px 0 14px;padding:14px 16px}
.filter-row{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}
.filter-mode-row{align-items:center;margin-bottom:10px}
.radio-inline{display:inline-flex!important;align-items:center;gap:6px;margin:0!important;font-weight:700;white-space:nowrap}
.radio-inline input{width:auto!important;margin:0}
.filter-fields-row label{min-width:180px;flex:0 0 180px;margin:0!important}
.filter-fields-row label:first-child{flex-basis:230px}
.filter-fields-row input{margin-top:5px}
.filter-fields-row small{font-weight:400;color:#64748b;line-height:1.25}
.filter-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-left:auto}
.list-summary{display:flex;gap:14px;align-items:center;justify-content:flex-end;margin:0 0 10px;color:#475569;flex-wrap:wrap}
.list-summary span{margin-right:auto}
.list-summary strong{background:#fff;border:1px solid #e5e7eb;border-radius:999px;padding:7px 10px;color:#111827}
@media(max-width:800px){.filter-fields-row{display:block}.filter-fields-row label{display:block;min-width:0;margin-bottom:10px!important}.filter-actions{margin-left:0}.list-summary{justify-content:flex-start}.list-summary span{width:100%;margin-right:0}}

/* v1.3.5 - kompaktní filtr vystavených dokladů */
.receipts-filter-form.compact-filter{margin:12px 0 8px;padding:12px 14px;border-radius:12px}
.compact-filter-main{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.compact-filter-main label{margin:0!important;font-weight:700}
.compact-filter-main select,.compact-filter-main input{margin-top:5px;min-width:0}
.filter-mode-select{flex:0 0 190px}
.filter-field-day{flex:0 0 170px}
.filter-field-period{flex:0 0 170px}
.compact-filter .filter-actions{margin-left:auto;display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}
.quick-filter-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;font-size:13px}
.quick-filter-links a{display:inline-block;text-decoration:none;color:#1d4ed8;background:#eef2ff;border:1px solid #c7d2fe;border-radius:999px;padding:5px 9px}
.quick-filter-links a:hover{background:#dbeafe}
.compact-summary{margin:0 0 8px}
.compact-summary strong{padding:5px 9px}
.filter-field[hidden]{display:none!important}
@media(max-width:800px){.compact-filter-main{display:block}.compact-filter-main label{display:block;margin-bottom:9px!important}.compact-filter .filter-actions{margin-left:0}.quick-filter-links{margin-top:12px}.compact-summary{justify-content:flex-start}.compact-summary span{width:100%;margin-right:0}}

/* v1.3.7 - kompaktní panel stavu zpracování dokladů PPZŘ */
.ppzr-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:10px 0 16px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px}
.ppzr-status-summary{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0}
.ppzr-status-summary span{display:inline-flex;align-items:center;gap:4px;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:6px 10px;color:#111827;line-height:1.1}
.ppzr-status-summary span.done{background:#dcfce7;border-color:#bbf7d0;color:#166534}
.ppzr-status-summary span.pending{background:#fef3c7;border-color:#fde68a;color:#92400e}
.ppzr-status-summary strong{font-weight:800}
.ppzr-status-filter{display:inline-flex!important;align-items:center;gap:8px;margin:0!important;white-space:nowrap;font-weight:700;color:#334155}
.ppzr-status-filter select{width:auto;min-width:150px;margin:0;padding:7px 34px 7px 10px}
.ppzr-table th:nth-child(2){width:160px}
.ppzr-table th:nth-child(7){width:150px}
.ppzr-row-done{background:#f0fdf4}
.ppzr-row-done td{border-bottom-color:#bbf7d0!important}
.ppzr-row-pending{background:#fff}
.ppzr-row-invoice{background:#eff6ff}
.ppzr-row-invoice td{border-bottom-color:#bfdbfe!important}
.status-badge{display:inline-block;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:700;white-space:nowrap}
.status-badge.done{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}
.status-badge.pending{background:#fef3c7;color:#92400e;border:1px solid #fde68a}
.status-badge.invoice{background:#dbeafe;color:#1e40af;border:1px solid #bfdbfe}
.participant-receipt-note{display:block;margin-top:5px;line-height:1.3}
.ppzr-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.btn.warning{background:#f59e0b;color:white;border-color:#d97706}
.btn.warning:hover{background:#d97706}
@media(max-width:700px){.ppzr-toolbar{display:block}.ppzr-status-filter{margin-top:10px!important}.ppzr-status-filter select{width:100%;min-width:0}}
@media(max-width:900px){.ppzr-table th:nth-child(n){width:auto}.ppzr-actions{display:block}.ppzr-actions .btn{margin-bottom:6px}}

.status-badge.cancelled{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;margin-top:4px}
.danger-link{color:#b91c1c;font-weight:700}
.btn.danger{background:#dc2626;color:#fff;border-color:#b91c1c}
.btn.danger:hover{background:#b91c1c}
.danger-card{border-color:#fecaca;background:#fff7f7}


/* v1.3.15 - oprava vykreslení řádků PPZŘ */
.ppzr-table{border-collapse:separate;border-spacing:0;overflow:hidden}
.ppzr-table tbody tr{position:relative}
.ppzr-table tbody td{border-bottom:0!important;vertical-align:middle;background:transparent}
.ppzr-table tbody tr:not(:last-child){box-shadow:inset 0 -1px 0 #e5e7eb}
.ppzr-table tbody tr.ppzr-row-done:not(:last-child){box-shadow:inset 0 -1px 0 #bbf7d0}
.ppzr-table tbody tr.ppzr-row-invoice:not(:last-child){box-shadow:inset 0 -1px 0 #bfdbfe}
.ppzr-row-done td{background:#f0fdf4}
.ppzr-row-invoice td{background:#eff6ff}
.ppzr-row-pending td{background:#fff}
.ppzr-actions{display:table-cell!important;vertical-align:middle!important;white-space:normal}
.ppzr-actions-inner{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.ppzr-actions-inner .btn{margin:0}
@media(max-width:900px){.ppzr-actions-inner{display:block}.ppzr-actions-inner .btn{margin:0 0 6px 0}}

/* v1.3.16 - převody hotovosti */
.alert{padding:10px 12px;border-radius:10px;margin:12px 0;border:1px solid #dbe2ea;background:#f8fafc}
.alert.success{background:#dcfce7;border-color:#bbf7d0;color:#166534}
.alert.error{background:#fee2e2;border-color:#fecaca;color:#991b1b}
.page-head .actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.page-head.compact{margin-top:22px}

.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.stats-grid div{padding:12px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}.stats-grid span{display:block;font-size:.85rem;color:#6b7280}.stats-grid strong{font-size:1.1rem}.compact-filter{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.compact-filter label{margin:0}.wrap-anywhere{overflow-wrap:anywhere}.badge{display:inline-block;padding:.15rem .45rem;border-radius:999px;background:#eef2ff;font-size:.85em}

.audit-changes { display: grid; gap: .35rem; }
.audit-change { padding: .35rem .45rem; border: 1px solid #e5e7eb; border-radius: .4rem; background: #fafafa; }
.audit-json { white-space: pre-wrap; margin: 0; font-size: .85rem; }

.verify-card{max-width:760px;margin:40px auto}.verify-card .table th{width:220px}

.print-only{display:none}
@media print{
  .topbar,.no-print,.actions,.filter-form{display:none!important}
  body{background:#fff!important;color:#111!important}
  .container{max-width:none!important;margin:0!important;padding:0!important}
  .card{box-shadow:none!important;border:0!important;padding:0!important;background:#fff!important}
  .print-only{display:block!important}
  .journal-summary{margin:0 0 6mm 0!important;padding:0!important}
  .journal-print-table{width:100%;font-size:10px;border-collapse:collapse}
  .journal-print-table th,.journal-print-table td{border:1px solid #111;padding:3px 4px;vertical-align:top}
  .journal-print-table th{background:#eee!important}
}

.app-footer{max-width:1200px;margin:24px auto 0;padding:12px 16px;color:#6b7280;text-align:center;font-size:12px}@media print{.app-footer{display:none!important}}

.login-card-visual{
  max-width:720px;
  width:min(720px, calc(100vw - 32px));
  text-align:center;
}
.login-logo{
  display:block;
  width:min(520px, 100%);
  height:auto;
  margin:0 auto 18px;
  border-radius:18px;
}
.login-card-visual h1{
  margin-top:0;
}
@media (max-width:720px){
  .login-card-visual{width:calc(100vw - 24px)}
  .login-logo{width:100%}
}

/* DingoPok login blue theme v1.6.0 */
.login-page.login-blue-bg{
  min-height:100vh;
  background:
    radial-gradient(circle at 50% 18%, rgba(29,78,216,.55) 0, rgba(29,78,216,.18) 32%, transparent 60%),
    linear-gradient(135deg, #061733 0%, #08285a 48%, #031126 100%);
}
.login-page.login-light-bg{
  min-height:100vh;
  background:#f3f6fb;
}
.login-page .login-wrap{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.login-card-visual{
  overflow:hidden;
}
.login-blue-bg .login-card-visual{
  max-width:760px;
  width:min(760px, calc(100vw - 32px));
  padding:0 0 28px 0;
  border:1px solid rgba(255,255,255,.2);
  background:#fff;
  box-shadow:0 18px 50px rgba(0,0,0,.35);
}
.login-blue-bg .login-logo-blue{
  width:100%;
  max-width:none;
  display:block;
  margin:0 0 0 0;
  border-radius:0;
}
.login-blue-bg .login-card-visual h1,
.login-blue-bg .login-card-visual .muted,
.login-blue-bg .login-card-visual label,
.login-blue-bg .login-card-visual .errorbox,
.login-blue-bg .login-card-visual input,
.login-blue-bg .login-card-visual button,
.login-blue-bg .login-card-visual p{
  margin-left:28px;
  margin-right:28px;
}
.login-blue-bg .login-card-visual h1{
  margin-top:20px;
}
.login-blue-bg .login-card-visual label{
  display:block;
  text-align:left;
}
.login-blue-bg .login-card-visual input{
  width:calc(100% - 56px);
}
.login-blue-bg .login-card-visual button{
  width:calc(100% - 56px);
}
@media (max-width:720px){
  .login-page .login-wrap{padding:12px}
  .login-blue-bg .login-card-visual{width:calc(100vw - 24px)}
  .login-blue-bg .login-card-visual h1,
  .login-blue-bg .login-card-visual .muted,
  .login-blue-bg .login-card-visual label,
  .login-blue-bg .login-card-visual .errorbox,
  .login-blue-bg .login-card-visual input,
  .login-blue-bg .login-card-visual button,
  .login-blue-bg .login-card-visual p{
    margin-left:18px;
    margin-right:18px;
  }
  .login-blue-bg .login-card-visual input,
  .login-blue-bg .login-card-visual button{
    width:calc(100% - 36px);
  }
}

/* DingoPok unified login layout v1.6.0 */
.login-page{
  min-height:100vh;
}
.login-page.login-blue-bg{
  background:
    radial-gradient(circle at 50% 18%, rgba(29,78,216,.55) 0, rgba(29,78,216,.18) 32%, transparent 60%),
    linear-gradient(135deg, #061733 0%, #08285a 48%, #031126 100%);
}
.login-page.login-light-bg{
  background:#f3f6fb;
}
.login-page .login-wrap{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.login-card-unified{
  width:420px;
  max-width:calc(100vw - 32px);
  text-align:left;
  padding:0 0 22px 0;
  overflow:hidden;
  border-radius:12px;
  background:#fff;
}
.login-blue-bg .login-card-unified{
  border:1px solid rgba(255,255,255,.35);
  box-shadow:0 18px 50px rgba(0,0,0,.38);
}
.login-light-bg .login-card-unified{
  border:1px solid #e5e7eb;
  box-shadow:0 10px 28px rgba(15,23,42,.10);
}
.login-card-unified .login-logo{
  display:block;
  width:100%;
  max-width:none;
  height:auto;
  margin:0;
  border-radius:0;
}
.login-card-unified h1{
  margin:18px 28px 8px;
  text-align:center;
  font-size:24px;
  line-height:1.2;
}
.login-card-unified .muted{
  margin:0 28px 16px;
  text-align:center;
  font-size:13px;
}
.login-card-unified .errorbox{
  margin:0 28px 14px;
}
.login-card-unified label{
  display:block;
  margin:0 28px 12px;
  text-align:left;
  font-weight:600;
}
.login-card-unified input{
  width:100%;
  box-sizing:border-box;
  margin-top:6px;
}
.login-card-unified button{
  display:block;
  width:calc(100% - 56px);
  margin:14px 28px 0;
}
@media (max-width:520px){
  .login-page .login-wrap{padding:12px}
  .login-card-unified{width:100%;max-width:420px}
  .login-card-unified h1{margin-left:18px;margin-right:18px}
  .login-card-unified .muted,
  .login-card-unified .errorbox,
  .login-card-unified label{margin-left:18px;margin-right:18px}
  .login-card-unified button{width:calc(100% - 36px);margin-left:18px;margin-right:18px}
}

.brand a{
  display:flex;
  align-items:center;
  gap:8px;
}
.brand-logo{
  width:28px;
  height:28px;
  border-radius:6px;
  object-fit:cover;
  display:inline-block;
}
.app-footer{
  max-width:1200px;
  margin:24px auto 0;
  padding:12px 16px;
  color:#6b7280;
  text-align:center;
  font-size:12px;
}
@media print{
  .app-footer{display:none!important}
}

/* DingoPok login placeholders v1.6.0 */
.login-card-visual .login-input,
.login-card-unified .login-input{
  display:block;
  box-sizing:border-box;
  height:42px;
  border:1px solid #cbd5e1;
  border-radius:7px;
  background:#fff;
  padding:0 14px;
  font-size:14px;
}
.login-blue-bg .login-card-visual .login-input{
  width:calc(100% - 56px);
  margin:0 28px 12px;
}
.login-light-bg .login-card-unified .login-input,
.login-card-unified .login-input{
  width:calc(100% - 56px);
  margin:0 28px 12px;
}
.login-card-visual .login-input::placeholder,
.login-card-unified .login-input::placeholder{
  color:#64748b;
}
@media (max-width:720px){
  .login-blue-bg .login-card-visual .login-input,
  .login-light-bg .login-card-unified .login-input,
  .login-card-unified .login-input{
    width:calc(100% - 36px);
    margin-left:18px;
    margin-right:18px;
  }
}


/* DingoPok v1.6.0 - ikony v login polích */
.login-field{
  position:relative;
  width:calc(100% - 56px);
  margin:0 28px 12px;
}
.login-field .login-input{
  width:100% !important;
  margin:0 !important;
  padding-left:46px !important;
}
.login-icon{
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
  font-size:20px;
  opacity:.65;
  pointer-events:none;
}
@media (max-width:720px){
  .login-field{
    width:calc(100% - 36px);
    margin-left:18px;
    margin-right:18px;
  }
}

.account-form{max-width:760px}

.modal-backdrop{
  position:fixed;
  inset:0;
  z-index:1000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(15,23,42,.55);
}
.modal-backdrop[hidden]{display:none!important}
.modal-box{
  width:min(480px, 100%);
  border-radius:14px;
  background:#fff;
  box-shadow:0 24px 70px rgba(0,0,0,.35);
  padding:24px;
}
.modal-box h2{margin-top:0}
.modal-amount{
  padding:12px 14px;
  border-radius:10px;
  background:#eef4ff;
  color:#0f172a;
}

/* v1.7.2 - editace subjektů a účtů */
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.form-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}
@media(max-width:900px){.grid3{grid-template-columns:1fr}}

/* v1.8.12 - jednotné chybové stránky */
.error-card{max-width:760px;margin:40px auto;border-left:6px solid #1d4ed8}
.error-card h1{margin-top:6px;margin-bottom:10px}
.error-status{display:inline-block;background:#eef2ff;color:#1d4ed8;border:1px solid #c7d2fe;border-radius:999px;padding:5px 10px;font-size:13px;font-weight:700}
.error-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.error-login-card .errorbox{margin:14px 0}
.error-topbar .brand-logo{vertical-align:middle;margin-right:7px}

/* v1.8.16 - maskoti pro chybové stránky */
.error-card{max-width:860px}
.error-layout{display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:center}
.error-visual{margin:0;text-align:center}
.error-mascot{display:block;max-width:220px;width:100%;height:auto;margin:0 auto}
.error-content{min-width:0}
.error-mascot-login{max-width:190px;margin-bottom:12px}
@media(max-width:700px){.error-layout{grid-template-columns:1fr}.error-mascot{max-width:190px}}

/* DingoPok 1.11.0 – provozní přehled pokladen */
.cashbox-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:18px}
.cashbox-overview-card{border-top:5px solid #2563eb}.cashbox-overview-card.cashbox-negative{border-top-color:#dc2626}
.cashbox-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.cashbox-card-head h2{margin:0}.cashbox-state{font-size:12px;border-radius:999px;padding:4px 9px;background:#dcfce7;color:#166534}
.cashbox-balance-label{margin-top:20px;color:#64748b}.cashbox-balance{font-size:34px;font-weight:800;margin:3px 0 16px}.cashbox-negative .cashbox-balance{color:#b91c1c}
.cashbox-metrics{margin:0;display:grid;gap:8px}.cashbox-metrics div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #e5e7eb;padding:7px 0}.cashbox-metrics dt{color:#64748b}.cashbox-metrics dd{margin:0;font-weight:700;text-align:right}.cashbox-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
/* DingoPok 1.12.0 – pokladní deník */
.journal-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.journal-search{grid-column:span 2}.journal-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.journal-summary-grid div{padding:10px;border-left:4px solid #e39100}.journal-summary-grid span{display:block;color:#666;font-size:.9rem}.journal-summary-grid strong{display:block;font-size:1.25rem;margin-top:4px}.table-scroll{overflow:auto}.journal-table small,.journal-table td span{display:block}.journal-source{display:inline-block!important;padding:2px 7px;border-radius:10px;background:#eee;font-size:.82rem;white-space:nowrap}.source-receipt_income{background:#dff4e4}.source-receipt_expense{background:#fbe1e1}.source-transfer{background:#e0ecff}.source-closure{background:#ececec}.journal-closure-row{background:#f7f7f7;font-style:italic}.income-cell{color:#146c2e}.expense-cell{color:#a51f1f}@media(max-width:900px){.journal-filter-grid{grid-template-columns:repeat(2,1fr)}.journal-summary-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.journal-filter-grid,.journal-summary-grid{grid-template-columns:1fr}.journal-search{grid-column:auto}}

/* DingoPok 1.14.0 – výčetka jako součást průvodce uzávěrkou */
.closure-wizard{max-width:1050px;margin:0 auto}.closure-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 16px}.closure-step{border:1px solid #d6dbe3;background:#fff;color:#52606d;border-radius:10px;padding:10px;cursor:pointer;font-weight:700}.closure-step span{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e8edf3;margin-right:5px}.closure-step.active{border-color:#e39100;color:#111827;box-shadow:0 0 0 2px rgba(227,145,0,.15)}.closure-step.active span{background:#e39100;color:#fff}.closure-panel{display:none}.closure-panel.active{display:block}.closure-summary{margin:18px 0}.closure-movement-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}.closure-movement-counts div{text-align:center;padding:14px;background:#f5f7fa;border-radius:10px}.closure-movement-counts strong,.closure-movement-counts span{display:block}.closure-movement-counts strong{font-size:1.5rem}.denomination-table input{max-width:130px}.closure-comparison{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.closure-comparison>div{padding:18px;border-radius:12px;background:#f5f7fa;border-left:5px solid #94a3b8}.closure-comparison span,.closure-comparison small{display:block}.closure-comparison strong{display:block;font-size:1.5rem;margin:6px 0}.closure-comparison .difference-ok{border-left-color:#16a34a;background:#effaf2}.closure-comparison .difference-warning{border-left-color:#e39100;background:#fff8e7}.closure-comparison .difference-error{border-left-color:#dc2626;background:#fff0f0}.closure-confirmation{margin-bottom:18px}.checkbox-line{display:flex!important;align-items:flex-start;gap:9px}.checkbox-line input{width:auto;margin-top:4px}@media(max-width:760px){.closure-steps{grid-template-columns:1fr 1fr}.closure-comparison,.closure-movement-counts{grid-template-columns:1fr 1fr}}@media(max-width:480px){.closure-steps,.closure-comparison,.closure-movement-counts{grid-template-columns:1fr}}

/* DingoPok 1.14.2 – finanční pohyby vs. provozní události */
.journal-operational-row{background:#f3f5f8!important;font-style:normal;border-left:4px solid #64748b}.journal-operational-row td{color:#475569}.journal-operational-row .journal-source{background:#e2e8f0}.journal-event-icon{display:inline-block!important;margin-right:6px;font-style:normal}.journal-operational-row .income-cell,.journal-operational-row .expense-cell{color:#64748b}.journal-operational-row small{display:block;color:#64748b;margin-top:3px}

/* DingoPok 1.16.0 – účetní kontrolní report */
.control-summary{margin:18px 0}.control-section{margin:18px 0}.control-table td{vertical-align:top}.control-severity{display:inline-block;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.control-severity.error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.control-severity.warning{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.control-error-text{color:#b91c1c}.control-warning-text{color:#b45309}.control-table small{display:block;margin-top:4px}@media print{.control-section{box-shadow:none;border:1px solid #d1d5db;padding:14px}.control-summary{grid-template-columns:repeat(4,1fr)}.control-severity{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* ============================================================
   DingoPok 2.0.0 — application shell + operational dashboard
   ============================================================ */
:root{
  --dp-navy:#182235;--dp-navy-2:#22304a;--dp-bg:#f4f7fb;--dp-card:#fff;
  --dp-border:#e3e8ef;--dp-text:#172033;--dp-muted:#6b778c;--dp-blue:#2563eb;
  --dp-green:#16a34a;--dp-red:#dc2626;--dp-cyan:#0284c7;--dp-purple:#7c3aed;--dp-orange:#ea8a0a;
}
body.app-v2{background:var(--dp-bg);color:var(--dp-text)}
.app-shell{min-height:100vh}.app-sidebar{position:fixed;inset:0 auto 0 0;width:252px;background:linear-gradient(180deg,#172237 0%,#111a2b 100%);color:#fff;z-index:300;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.07);box-shadow:8px 0 30px rgba(15,23,42,.08)}
.sidebar-brand{padding:22px 20px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-brand a{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:22px;font-weight:800}.sidebar-brand img{width:30px;height:30px}.sidebar-brand small{display:block;margin:4px 0 0 40px;color:#96a5bd;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.sidebar-subject{display:block;margin:14px 12px 6px;padding:11px 12px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.055);border-radius:11px;color:#fff;text-decoration:none}.sidebar-subject span{display:block;color:#98a7bd;font-size:10px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.sidebar-subject strong{display:block;font-size:13px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-nav{padding:7px 10px 18px;overflow-y:auto;flex:1}.side-section{margin-top:11px}.side-section-label{padding:8px 10px 5px;color:#8190a8;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.095em}.side-link{display:flex;align-items:center;gap:10px;margin:2px 0;padding:9px 10px;border-radius:9px;color:#dbe4f2;text-decoration:none;font-size:13px;transition:.12s}.side-link:hover{background:rgba(255,255,255,.075);color:#fff}.side-link.active{background:#2a3b5b;color:#fff;box-shadow:inset 3px 0 0 #60a5fa}.side-icon{display:inline-grid;place-items:center;width:23px;height:23px;border-radius:6px;background:rgba(255,255,255,.07);font-size:13px;font-weight:800}.side-income .side-icon{color:#86efac}.side-expense .side-icon{color:#fda4af}.sidebar-version{padding:13px 20px;border-top:1px solid rgba(255,255,255,.08);font-size:11px;color:#7f8da3}
.app-main{min-height:100vh;margin-left:252px}.app-topbar{height:64px;background:#fff;border-bottom:1px solid var(--dp-border);display:flex;align-items:center;gap:18px;padding:0 28px;position:sticky;top:0;z-index:210}.sidebar-toggle{display:none;background:#eef2f7;border:0;border-radius:8px;width:38px;height:38px;font-size:20px;cursor:pointer}.top-context{display:flex;align-items:baseline;gap:12px;min-width:0}.top-context strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-context span{font-size:12px;color:var(--dp-muted)}.top-user{margin-left:auto;display:flex;align-items:center;gap:12px}.top-user a{text-decoration:none;color:var(--dp-text)}.top-user>a:first-child{display:flex;flex-direction:column;align-items:flex-end}.top-user span{font-size:13px;font-weight:800}.top-user small{font-size:10px;color:var(--dp-muted)}.logout-link{display:grid!important;place-items:center;width:36px;height:36px;background:#f1f4f8;border-radius:9px;font-size:18px}.app-content.container{max-width:1380px;margin:0 auto;padding:28px 30px 18px}.app-footer{margin-left:0;max-width:none;padding:14px 30px 22px}.sidebar-backdrop{display:none}

.v2-dashboard-head{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:0 0 24px}.v2-dashboard-head h1{font-size:29px;margin:1px 0 6px;letter-spacing:-.025em}.v2-dashboard-head p{margin:0;color:var(--dp-muted)}.dashboard-eyebrow{font-size:11px!important;font-weight:800;color:var(--dp-blue)!important;text-transform:uppercase;letter-spacing:.10em}.dashboard-context-card{min-width:235px;border:1px solid var(--dp-border);border-radius:13px;background:#fff;padding:13px 16px;box-shadow:0 5px 18px rgba(24,34,53,.05)}.dashboard-context-card span,.dashboard-context-card small{display:block;color:var(--dp-muted);font-size:11px}.dashboard-context-card strong{display:block;margin:4px 0;font-size:15px}
.dashboard-section{margin:0 0 25px}.dashboard-section.compact-section{margin-bottom:20px}.section-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:0 0 10px}.section-title-row h2{margin:0 0 3px;font-size:18px}.section-title-row p{margin:0;color:var(--dp-muted);font-size:12px}.section-title-row>a{font-size:12px;color:#5b21b6;text-decoration:none;font-weight:700}
.v2-quick-actions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.action-tile{position:relative;min-height:103px;padding:15px 15px 13px;border:1px solid var(--dp-border);border-radius:13px;background:#fff;text-decoration:none;color:var(--dp-text);box-shadow:0 4px 14px rgba(24,34,53,.045);transition:.15s;overflow:hidden}.action-tile:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(24,34,53,.09)}.action-tile::after{content:"";position:absolute;inset:auto 0 0;height:3px;background:#94a3b8}.action-tile.income::after{background:var(--dp-green)}.action-tile.expense::after{background:var(--dp-red)}.action-tile.transfer::after{background:var(--dp-cyan)}.action-tile.closure::after{background:var(--dp-purple)}.action-tile.journal::after{background:#475569}.action-icon{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#f2f5f9;margin-bottom:10px;font-size:18px;font-weight:800}.action-tile strong,.action-tile small{display:block}.action-tile strong{font-size:15px}.action-tile small{font-size:11px;color:var(--dp-muted);margin-top:2px}
.favorite-template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.favorite-template{display:flex;flex-direction:column;min-height:126px;padding:14px;border:1px solid var(--dp-border);border-radius:13px;background:#fff;color:var(--dp-text);text-decoration:none;box-shadow:0 3px 13px rgba(24,34,53,.04);transition:.12s}.favorite-template:hover{border-color:#a9b7cc;transform:translateY(-1px)}.favorite-template .template-type{align-self:flex-start;padding:3px 7px;border-radius:999px;background:#ecfdf3;color:#15803d;font-size:9px;font-weight:900;letter-spacing:.05em}.favorite-template.expense .template-type{background:#fff1f2;color:#be123c}.favorite-template.both .template-type{background:#eff6ff;color:#1d4ed8}.favorite-template strong{margin:9px 0 3px;font-size:15px}.favorite-template>span:not(.template-type){font-size:11px;color:var(--dp-muted)}.favorite-template b{margin-top:auto;padding-top:10px;font-size:14px}.empty-dashboard-card{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px dashed #c7d2e0;border-radius:13px;background:#fbfcfe;padding:16px 18px}.empty-dashboard-card strong,.empty-dashboard-card span{display:block}.empty-dashboard-card span{font-size:12px;color:var(--dp-muted);margin-top:3px}
.v2-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.kpi-card{border:1px solid var(--dp-border);border-radius:13px;background:#fff;padding:16px;box-shadow:0 3px 14px rgba(24,34,53,.04);border-top:3px solid #94a3b8}.kpi-card.income{border-top-color:var(--dp-green)}.kpi-card.expense{border-top-color:var(--dp-red)}.kpi-card.transfer{border-top-color:var(--dp-cyan)}.kpi-card.documents{border-top-color:#475569}.kpi-card span,.kpi-card small{display:block;color:var(--dp-muted);font-size:11px}.kpi-card strong{display:block;margin:6px 0 3px;font-size:22px}
.v2-cashbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.v2-cashbox-card{border:1px solid var(--dp-border);border-radius:14px;background:#fff;padding:16px;box-shadow:0 3px 14px rgba(24,34,53,.045)}.v2-cashbox-card.is-open{box-shadow:inset 3px 0 0 #22c55e,0 3px 14px rgba(24,34,53,.045)}.v2-cashbox-card.is-negative{box-shadow:inset 3px 0 0 var(--dp-red),0 3px 14px rgba(24,34,53,.045)}.cashbox-title{display:flex;justify-content:space-between;gap:10px}.cashbox-title strong,.cashbox-title small{display:block}.cashbox-title small{color:var(--dp-muted);font-size:10px;margin-top:3px}.cashbox-title>span{align-self:flex-start;border-radius:999px;background:#f1f5f9;color:#64748b;padding:4px 8px;font-size:9px;font-weight:800}.is-open .cashbox-title>span{background:#dcfce7;color:#15803d}.cashbox-main-balance{margin:17px 0 10px}.cashbox-main-balance small{display:block;color:var(--dp-muted);font-size:10px}.cashbox-main-balance strong{display:block;font-size:23px;margin-top:3px}.cashbox-mini-stats{display:flex;gap:14px;font-size:11px}.cashbox-mini-stats span:first-child{color:#15803d}.cashbox-mini-stats span:last-child{color:#be123c}.cashbox-meta{margin:12px 0 10px;padding-top:10px;border-top:1px solid #edf0f4;color:var(--dp-muted);font-size:10px}.cashbox-inline-actions{display:flex;gap:12px}.cashbox-inline-actions a{font-size:11px;font-weight:700;color:#1d4ed8;text-decoration:none}
.dashboard-two-columns{display:grid;grid-template-columns:1.35fr 1fr;gap:16px}.dashboard-panel{border:1px solid var(--dp-border);border-radius:14px;background:#fff;padding:16px}.activity-list{display:flex;flex-direction:column}.activity-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #eef1f5;color:var(--dp-text);text-decoration:none}.activity-row:last-child{border-bottom:0}.activity-badge{flex:0 0 46px;text-align:center;border-radius:999px;padding:4px 5px;background:#eef2f7;font-size:9px;font-weight:900}.activity-badge.income{background:#dcfce7;color:#15803d}.activity-badge.expense{background:#ffe4e6;color:#be123c}.activity-badge.transfer{background:#e0f2fe;color:#0369a1}.activity-main{min-width:0;flex:1}.activity-main strong,.activity-main small{display:block}.activity-main strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-main small{font-size:10px;color:var(--dp-muted);margin-top:2px}.activity-row>b{font-size:12px;white-space:nowrap}.warning-list{display:flex;flex-direction:column;gap:7px}.warning-row,.dashboard-ok{display:flex;gap:10px;padding:10px 11px;border-radius:10px;text-decoration:none}.warning-row.warning{background:#fff8e7;color:#7c4a00}.warning-row.error{background:#fff0f1;color:#991b1b}.warning-row>span,.dashboard-ok>span{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:50%;background:rgba(255,255,255,.7);font-weight:900}.warning-row strong,.warning-row small,.dashboard-ok strong,.dashboard-ok small{display:block}.warning-row strong,.dashboard-ok strong{font-size:11px}.warning-row small,.dashboard-ok small{font-size:10px;margin-top:2px;opacity:.82}.dashboard-ok{background:#effcf3;color:#166534}
.report-link-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.report-link-grid a{padding:13px;border:1px solid var(--dp-border);border-radius:11px;background:#fff;text-decoration:none;color:var(--dp-text)}.report-link-grid strong,.report-link-grid small{display:block}.report-link-grid strong{font-size:12px}.report-link-grid small{margin-top:3px;color:var(--dp-muted);font-size:9px;line-height:1.35}.report-link-grid a:hover{border-color:#93a6c2;background:#fbfdff}
.account-profile-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.account-profile-card h2{margin:0 0 5px}.account-profile-card p{margin:0}.favorite-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0}.favorite-setting-item{display:flex!important;align-items:center;gap:10px!important;margin:0!important;padding:10px 11px;border:1px solid var(--dp-border);border-radius:10px;background:#fafbfd}.favorite-setting-item input{width:auto!important}.favorite-setting-item span{min-width:0}.favorite-setting-item strong,.favorite-setting-item small{display:block}.favorite-setting-item strong{font-size:12px}.favorite-setting-item small{font-size:10px;color:var(--dp-muted);margin-top:2px}

@media(max-width:1180px){.v2-quick-actions{grid-template-columns:repeat(3,1fr)}.favorite-template-grid{grid-template-columns:repeat(3,1fr)}.v2-cashbox-grid{grid-template-columns:repeat(2,1fr)}.report-link-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.app-sidebar{transform:translateX(-100%);transition:.18s}.app-main{margin-left:0}.app-footer{margin-left:0}.sidebar-toggle{display:block}.sidebar-mobile-open .app-sidebar{transform:translateX(0)}.sidebar-mobile-open .sidebar-backdrop{display:block;position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:280}.app-topbar{padding:0 15px}.app-content.container{padding:20px 15px}.v2-dashboard-head{align-items:flex-start}.dashboard-two-columns{grid-template-columns:1fr}.v2-kpi-grid{grid-template-columns:repeat(2,1fr)}.favorite-template-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.v2-dashboard-head{display:block}.dashboard-context-card{margin-top:12px;min-width:0}.v2-quick-actions,.v2-cashbox-grid,.v2-kpi-grid,.favorite-template-grid,.report-link-grid,.favorite-settings-grid{grid-template-columns:1fr}.action-tile{min-height:82px}.section-title-row{align-items:flex-start;gap:8px;flex-wrap:wrap}.section-title-row>div{min-width:0;flex:1 1 100%}.section-title-row>a{flex:0 0 auto}.dashboard-panel{min-width:0;padding:13px}.activity-row{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px;align-items:center}.activity-badge{grid-row:1 / span 2;flex-basis:auto;width:40px}.activity-main{min-width:0}.activity-main strong{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.3}.activity-main small{overflow-wrap:anywhere;line-height:1.35}.activity-row>b{grid-column:2;justify-self:start;white-space:normal;font-size:12px}.warning-row,.dashboard-ok{min-width:0;align-items:flex-start;padding:9px}.warning-row>div,.dashboard-ok>div{min-width:0;overflow-wrap:anywhere}.warning-row small,.dashboard-ok small{line-height:1.35}.top-context span{display:none}.top-user small{display:none}.top-user span{max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-dashboard-card{display:block}.empty-dashboard-card .btn{margin-top:12px}}
@media print{.app-sidebar,.app-topbar,.sidebar-backdrop{display:none!important}.app-main,.app-footer{margin-left:0!important}.app-content.container{padding:0!important}}
.template-dual-actions{display:flex;gap:6px;margin-top:auto;padding-top:9px}.template-dual-actions a{flex:1;text-align:center;text-decoration:none;border:1px solid #cbd5e1;border-radius:7px;padding:5px 6px;font-size:10px;font-weight:800;color:#1f2937;background:#fff}.template-dual-actions a:first-child{color:#15803d;border-color:#bbf7d0;background:#f0fdf4}.template-dual-actions a:last-child{color:#be123c;border-color:#fecdd3;background:#fff1f2}
.source-opening{background:#e0f2fe!important}.journal-opening-row{background:#f0f9ff!important;border-left-color:#0284c7!important}


/* DingoPok 2.1.5 – instalační/testovací režim */
.sidebar-test-mode{margin:8px 10px 2px;padding:10px 11px;border-radius:9px;background:#7c2d12;color:#fff3e8;border:1px solid rgba(251,146,60,.45);box-shadow:inset 3px 0 0 #fb923c}
.sidebar-test-mode strong{display:block;font-size:12px;letter-spacing:.04em}.sidebar-test-mode span{display:block;margin-top:3px;font-size:10px;line-height:1.35;color:#fed7aa}
.sidebar-env-mode{margin:8px 10px 2px;padding:8px 10px;border-radius:8px;background:rgba(59,130,246,.12);border:1px solid rgba(96,165,250,.25)}
.sidebar-env-mode strong{display:block;color:#bfdbfe;font-size:11px}.sidebar-env-mode span{display:block;color:#93a4bb;font-size:10px;margin-top:2px}
.sidebar-env-label{display:inline-block;margin-top:4px;padding:2px 6px;border-radius:999px;background:rgba(96,165,250,.12);color:#93c5fd;font-weight:800;letter-spacing:.05em}
.test-mode-settings{padding:12px 14px;border-radius:10px;margin:8px 0 18px}.test-mode-settings.available{background:#fff7ed;border:1px solid #fdba74}.test-mode-settings.locked{background:#f8fafc;border:1px solid #cbd5e1}.test-mode-settings code{font-size:11px}


/* DingoPok 2.1.6 – testovací vodotisk tiskových sestav */
.test-print-watermark{
  position:fixed;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%) rotate(-32deg);
  transform-origin:center;
  z-index:99999;
  pointer-events:none;
  user-select:none;
  white-space:nowrap;
  font-family:Arial,Helvetica,sans-serif;
  font-size:48pt;
  line-height:1;
  font-weight:900;
  letter-spacing:.06em;
  color:rgba(153,27,27,.11);
  border:4px solid rgba(153,27,27,.09);
  border-radius:10px;
  padding:10mm 14mm;
  text-transform:uppercase;
  -webkit-print-color-adjust:exact;
  print-color-adjust:exact;
}
@media print{
  .test-print-watermark{
    position:fixed!important;
    display:block!important;
    color:rgba(153,27,27,.11)!important;
    border-color:rgba(153,27,27,.09)!important;
  }
}


/* DingoPok 2.1.6.2 – PPD/VPD: vodotisk bez zásahu do layoutu dokladu */
.receipt-copy{
/*  position:relative; */
  overflow:hidden;
  isolation:isolate;
}
.receipt-copy > :not(.test-print-watermark-copy){
/*  position:relative; */
  z-index:1;
}
.test-print-watermark.test-print-watermark-copy{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%) rotate(-28deg)!important;
  width:max-content;
  max-width:88%;
  z-index:5!important;
  font-size:34pt;
  padding:7mm 10mm;
}
@media print{
  .test-print-watermark.test-print-watermark-copy{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%) rotate(-28deg)!important;
  }
}


/* DingoPok 2.2.0 – Journal event documents */
.journal-event-print-page{max-width:950px;margin:0 auto;display:grid;gap:22px}
.journal-event-document{position:relative;overflow:hidden;min-height:520px;padding:28px 32px}
.journal-event-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;border-bottom:2px solid #172237;padding-bottom:14px;margin-bottom:20px}
.journal-event-head h1{margin:3px 0 0;font-size:26px}.journal-event-kicker{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#64748b}
.journal-event-reference{text-align:right;font-size:17px;white-space:nowrap}.journal-event-copy-label{font-size:10px;text-transform:uppercase;color:#64748b;margin-bottom:5px}
.journal-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin-bottom:20px}
.journal-event-grid>div{padding:9px 0;border-bottom:1px solid #e2e8f0}.journal-event-grid span{display:block;color:#64748b;font-size:11px;margin-bottom:2px}.journal-event-grid strong{display:block;font-size:14px}.journal-event-grid small{display:block;margin-top:3px;color:#475569}
.journal-event-table th{width:34%;text-align:left}.journal-event-table td{font-weight:600}
.journal-event-context,.journal-event-note{margin-top:18px;padding:13px 15px;border:1px solid #dbe3ef;background:#f8fafc;border-radius:9px}.journal-event-context h2,.journal-event-note h2{font-size:14px;margin:0 0 6px}.journal-event-context p,.journal-event-note p{margin:0}
.journal-event-signatures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px;margin-top:70px;min-height:38px}.journal-event-signatures>div{border-top:1px solid #111;text-align:center;padding-top:7px;font-size:11px}
.journal-event-footer{position:absolute;left:32px;right:32px;bottom:15px;color:#64748b;font-size:9px}
.journal-event-watermark{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%) rotate(-30deg)!important;z-index:30!important;font-size:42pt!important;max-width:90%;color:rgba(153,27,27,.10)!important;border-color:rgba(153,27,27,.08)!important}
@media(max-width:700px){.journal-event-grid{grid-template-columns:1fr}.journal-event-head{display:block}.journal-event-reference{text-align:left;margin-top:10px}.journal-event-document{padding:20px}}
@media print{
  .journal-event-print-page{display:block;max-width:none;margin:0}
  .journal-event-document{box-shadow:none!important;border:1px solid #111!important;border-radius:0!important;min-height:125mm;padding:9mm 10mm;margin:0 0 5mm 0;page-break-inside:avoid;break-inside:avoid}
  .journal-event-document+.journal-event-document{margin-top:5mm}
  .journal-event-watermark{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%) rotate(-30deg)!important}
  .journal-event-footer{left:10mm;right:10mm;bottom:4mm}
}


/* DingoPok 2.2.1 – přehlednější hlavička protokolů událostí */
.journal-event-meta{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  gap:24px;
  margin:0 0 22px;
  padding:16px 18px;
  border:1px solid #dbe3ef;
  border-radius:10px;
  background:#f8fafc;
}
.journal-event-meta-block{min-width:0}
.journal-event-meta-subject{
  padding-right:22px;
  border-right:1px solid #dbe3ef;
}
.journal-event-meta-label{
  margin-bottom:5px;
  font-size:10px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#64748b;
}
.journal-event-meta-value{
  font-size:15px;
  line-height:1.3;
  font-weight:800;
  color:#172237;
}
.journal-event-meta-sub{
  margin-top:3px;
  font-size:11px;
  line-height:1.35;
  color:#64748b;
}
.journal-event-meta-row{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:12px;
  align-items:baseline;
  padding:4px 0;
  border-bottom:1px solid #e7edf5;
}
.journal-event-meta-row:last-child{border-bottom:0}
.journal-event-meta-row span{
  font-size:11px;
  color:#64748b;
}
.journal-event-meta-row strong{
  font-size:12px;
  line-height:1.3;
  color:#172237;
}
@media(max-width:700px){
  .journal-event-meta{grid-template-columns:1fr;gap:14px}
  .journal-event-meta-subject{padding-right:0;padding-bottom:12px;border-right:0;border-bottom:1px solid #dbe3ef}
  .journal-event-meta-row{grid-template-columns:135px minmax(0,1fr)}
}
@media print{
  .journal-event-meta{
    gap:7mm;
    margin-bottom:5mm;
    padding:4mm 5mm;
    border:1px solid #999;
    border-radius:0;
    background:#fff!important;
  }
  .journal-event-meta-subject{padding-right:5mm}
  .journal-event-meta-row{grid-template-columns:38mm minmax(0,1fr);padding:1mm 0}
  .journal-event-meta-value{font-size:11pt}
  .journal-event-meta-row strong{font-size:9pt}
  .journal-event-meta-row span,.journal-event-meta-sub,.journal-event-meta-label{font-size:8pt}
}


/* DingoPok 2.2.2 – typografická optimalizace hlavičky protokolů */
.journal-event-meta{
  column-gap:30px;
}
.journal-event-meta-subject{
  padding-right:26px;
}
.journal-event-meta-label{
  margin-bottom:7px;
}
.journal-event-meta-value{
  margin-bottom:4px;
  line-height:1.35;
}
.journal-event-meta-sub{
  margin-top:2px;
  line-height:1.45;
}
.journal-event-meta-facts{
  display:table;
  width:100%;
  border-collapse:separate;
  border-spacing:0;
}
.journal-event-meta-facts .journal-event-meta-row{
  display:table-row;
}
.journal-event-meta-facts .journal-event-meta-row > span,
.journal-event-meta-facts .journal-event-meta-row > strong{
  display:table-cell;
  vertical-align:top;
  border:0;
  padding-top:4px;
  padding-bottom:4px;
}
.journal-event-meta-facts .journal-event-meta-row > span{
  width:42%;
  padding-right:22px;
  white-space:nowrap;
}
.journal-event-meta-facts .journal-event-meta-row > strong{
  width:58%;
  padding-left:0;
}
.journal-event-meta-facts .journal-event-meta-row + .journal-event-meta-row > span,
.journal-event-meta-facts .journal-event-meta-row + .journal-event-meta-row > strong{
  border-top:1px solid #e7edf5;
}
@media(max-width:700px){
  .journal-event-meta-facts .journal-event-meta-row > span{
    width:44%;
    padding-right:16px;
    white-space:normal;
  }
  .journal-event-meta-facts .journal-event-meta-row > strong{
    width:56%;
  }
}
@media print{
  .journal-event-meta{
    column-gap:8mm;
  }
  .journal-event-meta-subject{
    padding-right:6mm;
  }
  .journal-event-meta-facts .journal-event-meta-row > span,
  .journal-event-meta-facts .journal-event-meta-row > strong{
    padding-top:1.15mm;
    padding-bottom:1.15mm;
  }
  .journal-event-meta-facts .journal-event-meta-row > span{
    width:39mm;
    padding-right:5mm;
  }
  .journal-event-meta-facts .journal-event-meta-row > strong{
    width:auto;
  }
}


/* DingoPok 2.2.3 – nominály v detailu uzávěrky */
.closure-denominations-table{
  margin-top:10px;
  max-width:720px;
}
.closure-denominations-table tfoot th{
  border-top:2px solid #cbd5e1;
  font-weight:800;
}


/* DingoPok 2.2.4 – tiskové zápatí protokolů bez kolize s podpisy */
@media print{
  .journal-event-document{
    min-height:0!important;
    padding-bottom:8mm!important;
  }
  .journal-event-signatures{
    margin-top:16mm!important;
    margin-bottom:8mm!important;
    min-height:12mm;
    page-break-inside:avoid;
    break-inside:avoid;
  }
  .journal-event-footer{
    position:static!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    margin-top:5mm!important;
    padding-top:2mm!important;
    border-top:0!important;
    clear:both;
    line-height:1.25;
  }
}


/* DingoPok 2.2.5 – scrollbary sladěné s barevným schématem */

/* Firefox – výchozí světlé pracovní plochy */
html,
body,
.app-main,
.main-content,
.content,
.page-content{
  scrollbar-width:thin;
  scrollbar-color:#8da0b8 #e7edf5;
}

/* Chromium / WebKit – výchozí světlé pracovní plochy */
html::-webkit-scrollbar,
body::-webkit-scrollbar,
.app-main::-webkit-scrollbar,
.main-content::-webkit-scrollbar,
.content::-webkit-scrollbar,
.page-content::-webkit-scrollbar{
  width:11px;
  height:11px;
}
html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track,
.app-main::-webkit-scrollbar-track,
.main-content::-webkit-scrollbar-track,
.content::-webkit-scrollbar-track,
.page-content::-webkit-scrollbar-track{
  background:#e7edf5;
  border-radius:10px;
}
html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb,
.app-main::-webkit-scrollbar-thumb,
.main-content::-webkit-scrollbar-thumb,
.content::-webkit-scrollbar-thumb,
.page-content::-webkit-scrollbar-thumb{
  background:#8da0b8;
  border:2px solid #e7edf5;
  border-radius:10px;
}
html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover,
.app-main::-webkit-scrollbar-thumb:hover,
.main-content::-webkit-scrollbar-thumb:hover,
.content::-webkit-scrollbar-thumb:hover,
.page-content::-webkit-scrollbar-thumb:hover{
  background:#657b96;
}

/* Levé tmavé rozhraní – vlastní kontrastní varianta */
.app-sidebar,
.sidebar,
.sidebar-nav,
.sidebar-scroll,
.nav-scroll,
aside{
  scrollbar-width:thin;
  scrollbar-color:#5e7290 #142238;
}

.app-sidebar::-webkit-scrollbar,
.sidebar::-webkit-scrollbar,
.sidebar-nav::-webkit-scrollbar,
.sidebar-scroll::-webkit-scrollbar,
.nav-scroll::-webkit-scrollbar,
aside::-webkit-scrollbar{
  width:10px;
  height:10px;
}
.app-sidebar::-webkit-scrollbar-track,
.sidebar::-webkit-scrollbar-track,
.sidebar-nav::-webkit-scrollbar-track,
.sidebar-scroll::-webkit-scrollbar-track,
.nav-scroll::-webkit-scrollbar-track,
aside::-webkit-scrollbar-track{
  background:#142238;
  border-radius:10px;
}
.app-sidebar::-webkit-scrollbar-thumb,
.sidebar::-webkit-scrollbar-thumb,
.sidebar-nav::-webkit-scrollbar-thumb,
.sidebar-scroll::-webkit-scrollbar-thumb,
.nav-scroll::-webkit-scrollbar-thumb,
aside::-webkit-scrollbar-thumb{
  background:#5e7290;
  border:2px solid #142238;
  border-radius:10px;
}
.app-sidebar::-webkit-scrollbar-thumb:hover,
.sidebar::-webkit-scrollbar-thumb:hover,
.sidebar-nav::-webkit-scrollbar-thumb:hover,
.sidebar-scroll::-webkit-scrollbar-thumb:hover,
.nav-scroll::-webkit-scrollbar-thumb:hover,
aside::-webkit-scrollbar-thumb:hover{
  background:#7e93b1;
}
.app-sidebar::-webkit-scrollbar-corner,
.sidebar::-webkit-scrollbar-corner,
.sidebar-nav::-webkit-scrollbar-corner,
.sidebar-scroll::-webkit-scrollbar-corner,
.nav-scroll::-webkit-scrollbar-corner,
aside::-webkit-scrollbar-corner{
  background:#142238;
}

/* Scrollovatelné tabulky/karty na světlém podkladu */
.table-wrap,
.table-responsive,
.scroll-x,
.scroll-y,
.card-scroll{
  scrollbar-width:thin;
  scrollbar-color:#8da0b8 #f1f5f9;
}
.table-wrap::-webkit-scrollbar,
.table-responsive::-webkit-scrollbar,
.scroll-x::-webkit-scrollbar,
.scroll-y::-webkit-scrollbar,
.card-scroll::-webkit-scrollbar{
  width:9px;
  height:9px;
}
.table-wrap::-webkit-scrollbar-track,
.table-responsive::-webkit-scrollbar-track,
.scroll-x::-webkit-scrollbar-track,
.scroll-y::-webkit-scrollbar-track,
.card-scroll::-webkit-scrollbar-track{
  background:#f1f5f9;
  border-radius:10px;
}
.table-wrap::-webkit-scrollbar-thumb,
.table-responsive::-webkit-scrollbar-thumb,
.scroll-x::-webkit-scrollbar-thumb,
.scroll-y::-webkit-scrollbar-thumb,
.card-scroll::-webkit-scrollbar-thumb{
  background:#8da0b8;
  border:2px solid #f1f5f9;
  border-radius:10px;
}
.table-wrap::-webkit-scrollbar-thumb:hover,
.table-responsive::-webkit-scrollbar-thumb:hover,
.scroll-x::-webkit-scrollbar-thumb:hover,
.scroll-y::-webkit-scrollbar-thumb:hover,
.card-scroll::-webkit-scrollbar-thumb:hover{
  background:#657b96;
}


/* DingoPok 2.3.0 – modální Nápověda / O aplikaci */
.sidebar-support{margin-top:auto;padding:10px 10px 0;border-top:1px solid rgba(255,255,255,.08)}
.sidebar-support-btn{width:100%;border:0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}
.sidebar-support-btn:hover{background:rgba(255,255,255,.08)}
body.modal-open{overflow:hidden}
.app-modal{position:fixed;inset:0;z-index:5000;display:none;align-items:center;justify-content:center;padding:24px}
.app-modal.is-open{display:flex}
.app-modal-backdrop{position:absolute;inset:0;background:rgba(10,20,35,.58);backdrop-filter:blur(2px)}
.app-modal-dialog{position:relative;z-index:1;width:min(620px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 40px));display:flex;flex-direction:column;background:#fff;border:1px solid #d8e0eb;border-radius:16px;box-shadow:0 24px 70px rgba(15,23,42,.28);overflow:hidden}
.app-modal-dialog-lg{width:min(980px,calc(100vw - 32px))}
.app-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 16px;border-bottom:1px solid #e5ebf2;background:#fbfcfe}
.app-modal-head h2{margin:3px 0 0;font-size:24px}.app-modal-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#64748b}
.app-modal-close{width:36px;height:36px;border:1px solid #d8e0eb;border-radius:9px;background:#fff;color:#334155;font-size:24px;line-height:1;cursor:pointer}
.app-modal-close:hover{background:#f1f5f9}
.app-modal-body{padding:22px 24px;overflow:auto}
.app-modal-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-top:1px solid #e5ebf2;background:#fbfcfe}
.help-context-card{padding:18px 20px;border:1px solid #cfe0ff;border-left:4px solid #2563eb;border-radius:12px;background:#f8fbff;margin-bottom:22px}
.help-context-card h3,.help-overview h3{margin:0 0 9px;font-size:17px}.help-context-card p{margin:0 0 9px}.help-context-card ul{margin:8px 0 0;padding-left:20px}.help-context-card li{margin:5px 0}
.help-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.help-topic{padding:14px 15px;border:1px solid #e1e7ef;border-radius:10px;background:#fff}.help-topic h4{margin:0 0 6px;font-size:14px}.help-topic p{margin:0;color:#526174;font-size:12px;line-height:1.5}
.about-hero{display:flex;align-items:center;gap:18px;padding:6px 0 20px}.about-hero img{width:72px;height:72px;border-radius:14px}.about-hero strong{display:block;font-size:27px}.about-hero span,.about-hero small{display:block;color:#64748b;margin-top:2px}
.about-facts{margin:0 0 20px;border-top:1px solid #e5ebf2}.about-facts>div{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:10px 0;border-bottom:1px solid #e5ebf2}.about-facts dt{color:#64748b}.about-facts dd{margin:0;font-weight:700}.about-description{line-height:1.6;color:#475569}
@media(max-width:700px){.app-modal{padding:10px}.app-modal-dialog,.app-modal-dialog-lg{width:100%;max-height:calc(100vh - 20px)}.help-topic-grid{grid-template-columns:1fr}.app-modal-head,.app-modal-body,.app-modal-foot{padding-left:16px;padding-right:16px}.about-facts>div{grid-template-columns:110px 1fr}.app-modal-foot{align-items:flex-end}}


/* DingoPok 2.3.1 – sidebar support typography consistency */
.sidebar-support .sidebar-support-btn.side-link {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}
.sidebar-support .sidebar-support-btn.side-link > span:last-child {
  font: inherit;
  color: inherit;
}


/* DingoPok 2.3.2 – přesné sjednocení Nápověda / O aplikaci s položkami menu */
.sidebar-support{
  padding-left:10px;
  padding-right:10px;
}

.sidebar-support button.sidebar-support-btn.side-link{
  -webkit-appearance:none;
  appearance:none;
  box-sizing:border-box;
  width:100%;
  margin:0;
  border:0;
  outline:0;
  background:transparent;
  color:inherit;
  text-decoration:none;
  text-align:left;
  cursor:pointer;

  /* stejné textové metriky jako běžná položka .side-link */
  font-family:inherit;
  font-size:13px;
  font-style:normal;
  font-weight:600;
  line-height:1.2;
  letter-spacing:0;
  text-transform:none;

  /* stejné rozložení jako .side-link */
  display:flex;
  align-items:center;
  gap:10px;
  min-height:38px;
  padding:8px 10px;
  border-radius:8px;
}

.sidebar-support button.sidebar-support-btn.side-link:hover{
  background:rgba(255,255,255,.08);
}

.sidebar-support button.sidebar-support-btn.side-link .side-icon{
  flex:0 0 auto;
}

.sidebar-support button.sidebar-support-btn.side-link > span:last-child{
  display:inline;
  margin:0;
  padding:0;
  font-family:inherit;
  font-size:13px;
  font-style:normal;
  font-weight:600;
  line-height:1.2;
  letter-spacing:0;
  text-transform:none;
  color:inherit;
}


/* DingoPok 2.3.2 – finální sjednocení podpůrných položek */
.sidebar-support a.sidebar-support-btn.side-link{
  /* je to stejný element <a> jako ostatní .side-link; žádné vlastní fontové metriky */
  font:inherit;
  font-size:13px;
  font-weight:normal;
  line-height:normal;
  margin:2px 0;
  padding:9px 10px;
  border-radius:9px;
  display:flex;
  align-items:center;
  gap:10px;
  color:#dbe4f2;
  text-decoration:none;
}
.sidebar-support a.sidebar-support-btn.side-link > span:last-child{
  font:inherit;
  font-size:inherit;
  font-weight:inherit;
  line-height:inherit;
}


/* DingoPok 2.3.3 – About dialog ve stylu TachoSim */
.app-about-dialog{
  width:min(930px,calc(100vw - 42px));
  max-height:min(760px,calc(100vh - 42px));
}
.app-about-head{
  padding:16px 20px;
  color:#fff;
  background:linear-gradient(90deg,#172554 0%,#1e3a8a 58%,#3730a3 100%);
  border-bottom:0;
}
.app-about-head .app-modal-kicker{
  color:#cbd5ff;
}
.app-about-head h2{
  margin-top:2px;
  color:#fff;
}
.app-about-head .app-modal-close{
  color:#fff;
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.28);
}
.app-about-head .app-modal-close:hover{
  background:rgba(255,255,255,.16);
}
.app-about-body{
  padding:20px 22px 18px;
}
.about-showcase{
  display:grid;
  grid-template-columns:126px minmax(0,1fr);
  gap:22px;
  align-items:start;
}
.about-logo-wrap{
  width:126px;
  height:126px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.about-logo-wrap img{
  display:block;
  width:126px;
  height:126px;
  object-fit:contain;
  border-radius:16px;
}
.about-summary h3{
  margin:0;
  font-size:25px;
  line-height:1.1;
  color:#1e293b;
}
.about-subtitle{
  margin:3px 0 12px;
  color:#64748b;
  font-size:15px;
}
.about-version{
  margin:0 0 10px;
  font-size:14px;
  color:#334155;
}
.about-techline{
  display:flex;
  flex-wrap:wrap;
  gap:6px 18px;
  margin:6px 0;
  font-size:13px;
  color:#475569;
}
.about-techline span + span::before{
  content:"·";
  margin-right:18px;
  color:#94a3b8;
}
.about-copyright{
  margin:18px 0 8px;
  font-size:13px;
  color:#334155;
}
.about-description{
  margin:0;
  max-width:690px;
  color:#64748b;
  font-size:13px;
  line-height:1.55;
}
.app-about-foot{
  justify-content:flex-start;
}
.about-actions{
  display:flex;
  gap:10px;
}
@media(max-width:700px){
  .app-about-dialog{width:100%}
  .about-showcase{grid-template-columns:92px minmax(0,1fr);gap:16px}
  .about-logo-wrap,.about-logo-wrap img{width:92px;height:92px}
  .about-summary h3{font-size:21px}
  .about-techline{display:block}
  .about-techline span{display:block;margin:4px 0}
  .about-techline span + span::before{content:none}
}


/* DingoPok 2.4.0 – plnohodnotná kontextová nápověda ve stylu SimTacho */
.app-help-dialog{
  width:min(1120px,calc(100vw - 44px));
  height:min(790px,calc(100vh - 44px));
  max-height:none;
}
.app-help-head{
  flex:0 0 auto;
  color:#fff;
  background:linear-gradient(90deg,#14213d 0%,#1e3a8a 56%,#274690 100%);
  border-bottom:1px solid rgba(255,255,255,.14);
}
.app-help-head .app-modal-kicker{color:#bfdbfe}
.app-help-head h2{color:#fff}
.app-help-head .app-modal-close{
  color:#fff;
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.3);
}
.app-help-layout{
  min-height:0;
  flex:1 1 auto;
  display:grid;
  grid-template-columns:270px minmax(0,1fr);
  background:#f8fafc;
}
.app-help-nav{
  min-height:0;
  overflow:auto;
  padding:18px 14px 22px 18px;
  background:#eef4fb;
  border-right:1px solid #cbd8e8;
  scrollbar-width:thin;
  scrollbar-color:#6e86a8 #dce7f4;
}
.app-help-nav-group{margin:0 0 16px}
.app-help-nav-label{
  padding:5px 10px 6px;
  color:#235293;
  font-size:11px;
  line-height:1.2;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.app-help-nav-link{
  display:block;
  width:100%;
  margin:2px 0;
  padding:8px 11px;
  border:1px solid transparent;
  border-radius:8px;
  background:transparent;
  color:#1e293b;
  font:inherit;
  font-size:13px;
  line-height:1.25;
  text-align:left;
  cursor:pointer;
}
.app-help-nav-link:hover{
  background:#e3edf9;
  border-color:#c5d6eb;
}
.app-help-nav-link.is-active{
  color:#fff;
  background:#2458a6;
  border-color:#1d4b90;
  box-shadow:0 1px 2px rgba(15,23,42,.12);
}
.app-help-content{
  min-width:0;
  min-height:0;
  overflow:auto;
  padding:28px 34px 38px;
  background:#fff;
  scrollbar-width:thin;
  scrollbar-color:#8da0b8 #edf2f7;
}
.app-help-topic{display:none}
.app-help-topic.is-active{display:block}
.app-help-topic-head{
  margin-bottom:22px;
  padding-bottom:18px;
  border-bottom:1px solid #dbe4ef;
}
.app-help-topic-head h3{
  margin:4px 0 7px;
  color:#172237;
  font-size:28px;
  line-height:1.15;
}
.app-help-topic-head p{
  margin:0;
  max-width:760px;
  color:#526174;
  font-size:14px;
  line-height:1.55;
}
.app-help-section{
  margin:0 0 18px;
  padding:18px 20px;
  border:1px solid #d6e2ef;
  border-radius:11px;
  background:#f9fbfe;
}
.app-help-section h4{
  margin:0 0 9px;
  color:#173968;
  font-size:18px;
}
.app-help-richtext{
  color:#334155;
  font-size:13px;
  line-height:1.62;
}
.app-help-richtext p{margin:6px 0}
.app-help-richtext ul,
.app-help-richtext ol{margin:7px 0;padding-left:22px}
.app-help-richtext li{margin:5px 0}
.app-help-foot{
  flex:0 0 auto;
}
@media(max-width:800px){
  .app-help-dialog{width:100%;height:calc(100vh - 20px)}
  .app-help-layout{grid-template-columns:1fr;grid-template-rows:210px minmax(0,1fr)}
  .app-help-nav{border-right:0;border-bottom:1px solid #cbd8e8}
  .app-help-content{padding:20px}
  .app-help-topic-head h3{font-size:23px}
}


/* DingoPok 2.4.3 – barevné rozlišení finančních pohybů v Peněžním deníku */
.journal-financial-row{
  border-left:4px solid transparent;
}
.journal-income-row{
  border-left-color:#16a34a!important;
  background:#f6fcf7!important;
}
.journal-expense-row{
  border-left-color:#dc2626!important;
  background:#fff8f8!important;
}
.journal-income-row:hover{
  background:#edf9f0!important;
}
.journal-expense-row:hover{
  background:#fff0f0!important;
}
.journal-income-row .income-cell{
  color:#15803d;
  font-weight:800;
}
.journal-expense-row .expense-cell{
  color:#b91c1c;
  font-weight:800;
}

/* Provozní události si ponechávají vlastní barevný význam. */
.journal-opening-row{
  border-left-color:#0284c7!important;
}
.journal-closure-row{
  border-left-color:#64748b!important;
}

@media print{
  .journal-income-row{
    border-left:3px solid #16a34a!important;
    background:#f6fcf7!important;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
  .journal-expense-row{
    border-left:3px solid #dc2626!important;
    background:#fff8f8!important;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
}


/* DingoPok 2.4.4 – sjednocené formuláře PPD / VPD */
.receipt-form-shell{max-width:1120px;margin:0 auto}
.receipt-edit-card{padding:0!important;overflow:visible;border-radius:14px}
.receipt-form-header{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(430px,.8fr);
  gap:24px;
  align-items:start;
  padding:20px 22px 18px;
  border-radius:14px 14px 0 0;
}
.receipt-form-title h1{margin:2px 0 0;font-size:26px;line-height:1.15}
.receipt-form-kicker{display:block;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.receipt-form-header-fields{display:grid;grid-template-columns:minmax(230px,1fr) minmax(160px,.65fr);gap:16px}
.receipt-form-header-fields label{margin:0}
.receipt-form-header-fields small{font-size:9px;line-height:1.25;opacity:.72}
.receipt-form-section{
  margin:14px 18px 0;
  padding:16px 18px 18px;
  border:1px solid #dce4ee;
  border-radius:11px;
  background:#fff;
}
.receipt-section-heading{display:flex;gap:11px;align-items:flex-start;margin:0 0 13px}
.receipt-section-heading.compact{margin-bottom:9px}
.receipt-section-number{
  flex:0 0 25px;
  width:25px;height:25px;
  display:grid;place-items:center;
  border-radius:50%;
  font-size:11px;font-weight:900;
}
.receipt-section-heading h2{margin:1px 0 2px;font-size:15px;line-height:1.2}
.receipt-section-heading p{margin:0;color:#64748b;font-size:10px;line-height:1.4}
.receipt-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.receipt-fields-grid .span-2{grid-column:span 2}
.receipt-payment-grid{
  display:grid;
  grid-template-columns:minmax(220px,1.25fr) 100px minmax(150px,.8fr) minmax(150px,.8fr);
  gap:10px 12px;
}
.receipt-payment-grid label:nth-child(5),
.receipt-payment-grid label:nth-child(6){grid-column:span 2}
.receipt-payment-grid .amount-field input{font-size:18px;font-weight:800}
.receipt-party-section .ares-search-box{margin:0 0 12px;padding:11px 12px;border-radius:9px}
.receipt-party-section .inline-search{gap:8px}
.receipt-vat-section .vatbox{margin:0;padding:0;border:0;background:transparent}
.receipt-note-section textarea{width:100%}
.receipt-form-actions{display:flex;gap:8px;padding:14px 18px 18px}
.receipt-form-actions .btn.primary{font-weight:800}

/* PPD – zelené akcenty */
.receipt-form-income .receipt-form-header{
  background:linear-gradient(180deg,#54e3b2 0%,#b9f6df 48%,#f4fffa 100%);
  border-top:4px solid #10b981;
}
.receipt-form-income .receipt-form-kicker{color:#047857}
.receipt-form-income .receipt-section-number{background:#dcfce7;color:#15803d}
.receipt-form-income .receipt-form-section{border-left:4px solid #86efac}
.receipt-form-income .receipt-party-section .ares-search-box{background:#f2fcf6;border:1px solid #bbf7d0}
.receipt-form-income .amount-field input{border-color:#86efac;background:#f7fff9}
.receipt-form-income .receipt-form-actions .btn.primary{background:#16a34a;border-color:#15803d}
.receipt-form-income .receipt-form-actions .btn.primary:hover{background:#15803d}

/* VPD – červené akcenty */
.receipt-form-expense .receipt-form-header{
  background:linear-gradient(180deg,#fda4af 0%,#fecdd3 48%,#fff7f8 100%);
  border-top:4px solid #e11d48;
}
.receipt-form-expense .receipt-form-kicker{color:#be123c}
.receipt-form-expense .receipt-section-number{background:#ffe4e6;color:#be123c}
.receipt-form-expense .receipt-form-section{border-left:4px solid #fda4af}
.receipt-form-expense .receipt-party-section .ares-search-box{background:#fff7f7;border:1px solid #fecdd3}
.receipt-form-expense .amount-field input{border-color:#fda4af;background:#fffafa}
.receipt-form-expense .receipt-form-actions .btn.primary{background:#dc2626;border-color:#b91c1c}
.receipt-form-expense .receipt-form-actions .btn.primary:hover{background:#b91c1c}

@media(max-width:900px){
  .receipt-form-header{grid-template-columns:1fr}
  .receipt-payment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .receipt-payment-grid label:nth-child(5),
  .receipt-payment-grid label:nth-child(6){grid-column:auto}
}
@media(max-width:620px){
  .receipt-form-header-fields,
  .receipt-fields-grid,
  .receipt-payment-grid{grid-template-columns:1fr}
  .receipt-fields-grid .span-2{grid-column:auto}
  .receipt-form-section{margin-left:10px;margin-right:10px}
  .receipt-form-header{padding:17px 14px}
  .receipt-form-actions{padding-left:10px;padding-right:10px;flex-wrap:wrap}
}


/* DingoPok 2.4.5 – dynamický náhled čísla dokladu */
#receiptNumberPreview.number-preview-loading{
  opacity:.65;
  background-image:linear-gradient(90deg,transparent,rgba(59,130,246,.08),transparent);
}
#receiptNumberPreview.number-preview-error{
  border-color:#dc2626!important;
  background:#fff7f7!important;
}


/* DingoPok 2.4.6 – částka aktualizovaná z účelu */
#amountInput.purpose-amount-updated{
  animation:purposeAmountUpdated .7s ease-out;
}
@keyframes purposeAmountUpdated{
  0%{box-shadow:0 0 0 3px rgba(37,99,235,.20)}
  100%{box-shadow:0 0 0 0 rgba(37,99,235,0)}
}


/* DingoPok 2.4.7 – kompaktní Peněžní deník a rozšířené hledání */
.journal-table{
  width:100%;
  min-width:1040px;
  table-layout:fixed;
}
.journal-table .journal-col-date{width:120px}
.journal-table .journal-col-document{width:18%}
.journal-table .journal-col-cashbox{width:12%}
.journal-table .journal-col-description{width:auto}
.journal-table .journal-col-money{width:118px}
.journal-table .journal-col-balance{width:132px}
.journal-table .journal-col-actions{width:64px}

.journal-date-cell{
  white-space:nowrap;
  vertical-align:top;
}
.journal-date-value{
  display:block;
  margin-bottom:5px;
}
.journal-date-cell .journal-source{
  display:inline-flex;
  max-width:100%;
  font-size:9px;
  line-height:1.15;
  white-space:nowrap;
}

.journal-money-cell,
.journal-balance-cell{
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  font-variant-numeric:tabular-nums;
}
.journal-money-cell strong,
.journal-balance-cell strong{
  white-space:nowrap!important;
}
.journal-actions-head,
.journal-actions-cell{
  width:64px;
  min-width:64px;
  text-align:center!important;
  white-space:nowrap;
}
.journal-action-icons{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:3px;
}
.journal-action-icon{
  width:25px;
  height:25px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #d3dce8;
  border-radius:6px;
  color:#315b96;
  background:#fff;
  text-decoration:none!important;
  transition:background .12s ease,border-color .12s ease,color .12s ease;
}
.journal-action-icon:hover{
  background:#edf4ff;
  border-color:#9cb7df;
  color:#1d4f91;
}
.journal-action-icon svg{
  width:14px;
  height:14px;
  display:block;
  fill:currentColor;
}
.journal-expense-row .journal-action-icon,
.journal-income-row .journal-action-icon{
  background:rgba(255,255,255,.86);
}
.journal-actions-cell .journal-action-icons:has(.journal-action-icon:nth-child(3)){
  gap:2px;
}
.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

@media(max-width:1200px){
  .journal-table{min-width:980px}
  .journal-table .journal-col-document{width:17%}
  .journal-table .journal-col-cashbox{width:11%}
}
@media print{
  .journal-action-icon{
    border:0!important;
    background:transparent!important;
  }
}


/* DingoPok 2.5.0 – Zálohy k vyúčtování */
.action-tile.advance{border-color:#c7d2fe;background:linear-gradient(180deg,#eef2ff,#fff)}
.action-tile.advance .action-icon{background:#e0e7ff;color:#4338ca}
.advance-summary{margin-bottom:16px}
.advance-summary>div{border-left:4px solid #6366f1}
.advance-table .nowrap,.nowrap{white-space:nowrap}
.advance-overdue{background:#fff7ed!important;border-left:4px solid #f97316}
.advance-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}
.advance-settle-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 16px}
.advance-settle-summary .card{padding:16px;border-left:5px solid #64748b}
.advance-settle-summary span,.advance-settle-summary strong{display:block}
.advance-settle-summary strong{font-size:1.35rem;margin-top:5px}
.advance-settle-summary .advance-return{border-left-color:#16a34a;background:#f0fdf4}
.advance-settle-summary .advance-supplement{border-left-color:#dc2626;background:#fff1f2}
.advance-finalize{border-left:5px solid #4f46e5}
.advance-dashboard-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;border:1px solid #c7d2fe;border-left:5px solid #4f46e5;border-radius:12px;background:#f5f7ff}
.advance-dashboard-card.has-overdue{border-color:#fdba74;border-left-color:#f97316;background:#fff7ed}
.advance-dashboard-card span,.advance-dashboard-card strong,.advance-dashboard-card small{display:block}
.advance-dashboard-card strong{font-size:1.05rem;margin:3px 0}.advance-dashboard-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#4f46e5}
.advance-dashboard-card.has-overdue .advance-dashboard-label{color:#c2410c}
.source-advance_issue{background:#e0e7ff!important;color:#3730a3}
.source-advance_return{background:#dcfce7!important;color:#166534}
.source-advance_supplement{background:#fee2e2!important;color:#991b1b}
.icon-btn{width:28px;height:28px;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer}
.advance-print-body{background:#fff;color:#111;padding:10mm;font-family:Arial,Helvetica,sans-serif}
.advance-print-document{position:relative;max-width:190mm;margin:0 auto;border:1px solid #222;padding:10mm;min-height:235mm}
.advance-print-document header{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;border-bottom:2px solid #111;padding-bottom:4mm;margin-bottom:5mm}
.advance-print-document header h1{margin:2mm 0 0;font-size:20pt}.advance-print-document header small{display:block}
.advance-print-totals{margin-top:5mm;border-top:1px solid #999;padding-top:3mm}.advance-print-totals p{margin:1.5mm 0}
.advance-print-signatures{display:grid;grid-template-columns:1fr 1fr;gap:25mm;margin-top:25mm}
.advance-print-signatures>div{border-top:1px solid #111;text-align:center;padding-top:2mm;font-size:9pt}
@media(max-width:760px){.advance-detail-grid,.advance-settle-summary{grid-template-columns:1fr}.advance-dashboard-card{align-items:flex-start;flex-direction:column}}
@media print{.advance-print-body{padding:0}.advance-print-document{border:0;max-width:none;min-height:auto;padding:0}.advance-print-signatures{break-inside:avoid}}


/* DingoPok 2.5.1 – účely plateb ve vyúčtování záloh */
.advance-purpose-box{
  margin:12px 0;
  padding:12px 14px;
  border:1px solid #c7d2fe;
  border-left:4px solid #4f46e5;
  border-radius:9px;
  background:#f7f8ff;
}
.advance-purpose-box label{margin:0}
.advance-purpose-box small{display:block;margin-top:4px;color:#64748b}
.advance-purpose-caption{display:block;margin-top:3px;font-size:10px}


/* DingoPok 2.5.2 – detailní doklady ve vyúčtování zálohy */
.advance-item-form{padding:18px}
.advance-item-section{
  margin:13px 0 0;
  padding:15px 17px;
  border:1px solid #dbe4ef;
  border-left:4px solid #64748b;
  border-radius:10px;
  background:#fff;
}
.advance-item-section .receipt-section-heading h3{margin:1px 0 2px;font-size:15px}
.advance-item-section .grid2 .span-2{grid-column:span 2}
.advance-vat-toggle{margin-bottom:12px}
.advance-vat-fields{padding:12px;border:1px solid #dbeafe;border-radius:8px;background:#f8fbff}
.advance-items-table{min-width:980px}
.advance-items-table td small{display:block;margin-top:3px;color:#64748b;line-height:1.3}
.advance-items-table td{vertical-align:top}
.advance-print-item{margin:4mm 0;padding:3mm 0;border-top:1px solid #aaa;break-inside:avoid}
.advance-print-item-head{display:flex;justify-content:space-between;gap:10mm;margin-bottom:2mm}
.advance-print-item-table{width:100%;border-collapse:collapse}
.advance-print-item-table th{width:35mm;text-align:left;vertical-align:top;padding:1mm 2mm 1mm 0}
.advance-print-item-table td{padding:1mm 0}
@media(max-width:700px){.advance-item-section .grid2 .span-2{grid-column:auto}}


/* DingoPok 2.5.3 – filtry a záložky agendy záloh */
.advance-filter{
  display:flex;
  align-items:flex-end;
  gap:12px;
  margin:0 0 12px;
  padding:12px 14px;
  border-radius:10px;
}
.advance-filter-person{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0;
}
.advance-filter-person > span{
  font-size:12px;
  font-weight:700;
  color:#475569;
  white-space:nowrap;
}
.advance-filter-person select{
  min-width:220px;
  height:36px;
  margin:0;
}
.advance-filter-reset{
  height:36px;
  display:inline-flex;
  align-items:center;
}
.advance-tabs{
  display:inline-flex;
  align-items:center;
  gap:4px;
  margin:0 0 12px;
  padding:4px;
  border:1px solid #d7e0eb;
  border-radius:10px;
  background:#eaf0f7;
}
.advance-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 14px;
  border:1px solid transparent;
  border-radius:7px;
  color:#42526a;
  background:transparent;
  font-size:12px;
  font-weight:700;
  line-height:1;
  text-decoration:none!important;
  white-space:nowrap;
  transition:background .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease;
}
.advance-tab:hover{
  color:#1e4f91;
  background:#f7fbff;
  border-color:#c8d6e8;
}
.advance-tab.active{
  color:#fff;
  background:#2458a6;
  border-color:#1d4b90;
  box-shadow:0 1px 2px rgba(15,23,42,.14);
}
.advance-tab.active:hover{
  color:#fff;
  background:#1f4e95;
}
@media(max-width:700px){
  .advance-filter{
    align-items:stretch;
    flex-direction:column;
  }
  .advance-filter-person{
    align-items:stretch;
    flex-direction:column;
    gap:5px;
  }
  .advance-filter-person select{
    width:100%;
    min-width:0;
  }
  .advance-tabs{
    display:flex;
    width:100%;
    overflow-x:auto;
  }
  .advance-tab{
    flex:0 0 auto;
  }
}


/* DingoPok 2.5.4 – rozbalovací detail vyúčtované zálohy v Peněžním deníku */
.journal-expand-btn{
  display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;
  margin:0 5px 0 0;padding:0;border:1px solid #cbd8e8;border-radius:6px;
  background:#f4f8fd;color:#2458a6;font:700 15px/1 Arial,sans-serif;vertical-align:middle;
  cursor:pointer;
}
.journal-expand-btn:hover{background:#e8f1fc;border-color:#9eb8da}
.journal-expand-btn[aria-expanded="true"]{background:#2458a6;border-color:#2458a6;color:#fff}
.journal-advance-detail-row>td{padding:0!important;background:#f7faff;border-left:4px solid #6687f5}
.journal-advance-detail{padding:14px 16px 16px 18px}
.journal-advance-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:10px}
.journal-advance-detail-head>div{display:flex;flex-direction:column;gap:2px}
.journal-advance-detail-head span{font-size:12px;color:#64748b}
.journal-advance-detail-link{font-size:12px;font-weight:700;white-space:nowrap}
.journal-advance-items-wrap{overflow-x:auto;border:1px solid #dbe5f0;border-radius:8px;background:#fff}
.journal-advance-items{width:100%;border-collapse:collapse;font-size:12px}
.journal-advance-items th{padding:8px 9px;background:#eaf0f7;color:#334155;text-align:left;white-space:nowrap}
.journal-advance-items td{padding:8px 9px;border-top:1px solid #e4ebf3;vertical-align:top}
.journal-advance-items td small,.journal-advance-items td span{display:block;margin-top:2px;color:#64748b}
.journal-advance-items .right{text-align:right}
.journal-advance-summary{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px 22px;margin-top:10px;font-size:12px}
.journal-advance-summary span{color:#64748b}
.journal-advance-summary strong{margin-left:4px;color:#0f172a;white-space:nowrap}
@media(max-width:900px){
  .journal-advance-detail-head{flex-direction:column}
  .journal-advance-summary{justify-content:flex-start}
}
@media print{
  .journal-advance-detail-row[hidden]{display:none!important}
}


/* DingoPok 2.5.5 – bezpečné POST akce stylované jako původní textové odkazy */
.inline-form{display:inline;margin:0;padding:0}
.link-button{
  display:inline;
  margin:0;
  padding:0;
  border:0;
  background:none;
  color:var(--link,#1d4f91);
  font:inherit;
  line-height:inherit;
  text-decoration:underline;
  cursor:pointer;
}
.link-button:hover{color:#123d74}
.danger-link{color:#b91c1c}
.danger-link:hover{color:#7f1d1d}
.journal-action-post{display:inline-flex}
.journal-action-post .journal-action-icon{font:inherit;cursor:pointer}

/* 2.5.8 – Pokladní deník: provozní výchozí filtr + multiselect */
.journal-custom-dates{display:contents}.journal-custom-dates.is-hidden{display:none}.journal-period-note{margin:10px 0 0;color:#667085;font-size:.9rem}
.journal-multiselect{position:relative;min-width:0}.journal-filter-label{display:block;font-weight:600;margin-bottom:6px}.journal-multiselect-toggle{width:100%;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;background:#fff;border:1px solid #cfd4dc;border-radius:6px;padding:9px 10px;font:inherit;color:inherit;cursor:pointer}.journal-multiselect-toggle [data-summary]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-multiselect-menu{position:absolute;z-index:50;top:calc(100% + 4px);left:0;min-width:100%;width:max-content;max-width:min(360px,90vw);max-height:320px;overflow:auto;background:#fff;border:1px solid #cfd4dc;border-radius:8px;box-shadow:0 10px 28px rgba(0,0,0,.16);padding:8px}.journal-multiselect-menu>label{display:flex;align-items:flex-start;gap:8px;padding:7px 8px;margin:0;border-radius:5px;font-weight:400;cursor:pointer}.journal-multiselect-menu>label:hover{background:#f4f6f8}.journal-multiselect-menu input[type=checkbox]{margin-top:3px}.journal-multiselect-tools{display:flex;gap:6px;padding:2px 4px 7px;border-bottom:1px solid #e5e7eb;margin-bottom:4px}.journal-multiselect-tools button{border:0;background:transparent;padding:4px 6px;color:#245ca6;cursor:pointer;font:inherit;font-size:.85rem}.journal-multiselect-tools button:hover{text-decoration:underline}
@media(max-width:560px){.journal-multiselect-menu{position:fixed;left:14px;right:14px;top:auto;bottom:18px;width:auto;max-width:none;max-height:55vh;z-index:1000}.journal-multiselect-toggle{min-height:46px}}

/* DingoPok 2.5.9 – compact multiselect rows in the journal filter.
   Explicit resets are needed because the menu lives inside .form, whose generic
   input rule makes checkboxes 100% wide and gives them text-input padding. */
.journal-filter .journal-multiselect-menu > label{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:9px;
  width:100%;
  min-width:0;
  margin:0;
  padding:8px 10px;
  text-align:left;
  line-height:1.25;
  font-weight:400;
  cursor:pointer;
}
.journal-filter .journal-multiselect-menu > label > input[type="checkbox"]{
  appearance:auto;
  -webkit-appearance:checkbox;
  display:block;
  flex:0 0 16px;
  width:16px !important;
  min-width:16px;
  max-width:16px;
  height:16px;
  margin:0;
  padding:0 !important;
  border:0;
  border-radius:0;
  box-shadow:none;
  cursor:pointer;
}
.journal-filter .journal-multiselect-menu > label > span{
  display:block;
  flex:1 1 auto;
  min-width:0;
  width:auto;
  margin:0;
  padding:0;
  text-align:left;
  font-weight:400;
  overflow-wrap:normal;
  word-break:normal;
}
.journal-filter .journal-multiselect-menu{
  width:min(420px,calc(100vw - 32px));
  min-width:max(100%,280px);
  max-width:420px;
  padding:7px;
}
.journal-filter .journal-multiselect-tools{
  align-items:center;
  justify-content:flex-start;
  gap:4px;
  padding:2px 3px 7px;
}
.journal-filter .journal-multiselect-tools button{
  white-space:nowrap;
}
@media(max-width:560px){
  .journal-filter .journal-multiselect-menu{
    width:auto;
    min-width:0;
    max-width:none;
    padding:8px;
  }
  .journal-filter .journal-multiselect-menu > label{
    min-height:42px;
    padding:9px 10px;
  }
}

/* 2.5.11 – PPZŘ: ruční doplnění chybějící adresy / PSČ před vystavením dokladu */
.ppzr-editable-cell{min-width:190px}
.ppzr-postal-cell{min-width:115px;width:130px}
.ppzr-editable-cell input.ppzr-address-input,
.ppzr-editable-cell input.ppzr-postal-input{
  width:100%;
  min-width:0;
  margin:0;
  padding:8px 9px;
  line-height:1.25;
  background:#fff;
}
.ppzr-editable-cell.ppzr-missing-data{
  box-shadow:inset 0 0 0 2px #dc2626;
  background:#fff7f7!important;
}
.ppzr-editable-cell input.is-missing{
  border-color:#dc2626!important;
  outline-color:#dc2626;
  background:#fffafa;
}
.ppzr-editable-cell input.is-missing::placeholder{color:#b91c1c;opacity:.9}
.ppzr-editable-cell:focus-within.ppzr-missing-data{box-shadow:inset 0 0 0 2px #b91c1c}
@media(max-width:900px){
  .ppzr-editable-cell{min-width:170px}
  .ppzr-postal-cell{min-width:120px;width:auto}
}

/* 2.5.12 – PPZŘ: našeptávač PSČ z lokálního číselníku */
.ppzr-postal-cell{position:relative;overflow:visible}
.ppzr-postal-suggestions{
  position:absolute;
  z-index:50;
  top:calc(100% - 2px);
  left:4px;
  min-width:250px;
  max-width:min(360px,calc(100vw - 28px));
  max-height:280px;
  overflow:auto;
  padding:5px;
  background:#fff;
  border:1px solid #cbd5e1;
  border-radius:9px;
  box-shadow:0 12px 28px rgba(15,23,42,.18);
}
.ppzr-postal-suggestions[hidden]{display:none!important}
.ppzr-postal-suggestion{
  display:flex;
  align-items:baseline;
  gap:10px;
  width:100%;
  margin:0;
  padding:8px 9px;
  border:0;
  border-radius:6px;
  background:transparent;
  color:#0f172a;
  text-align:left;
  cursor:pointer;
  font:inherit;
}
.ppzr-postal-suggestion:hover,.ppzr-postal-suggestion:focus{background:#f1f5f9;outline:none}
.ppzr-postal-suggestion strong{flex:0 0 auto;white-space:nowrap}
.ppzr-postal-suggestion span{min-width:0;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:700px){
  .ppzr-postal-suggestions{left:0;min-width:min(290px,calc(100vw - 28px));max-width:calc(100vw - 28px)}
}


/* 2.5.13 – PPZŘ: rozbalovací nabídka návrhů PSČ ve stylu výsledků ARES */
.ppzr-postal-suggestions{
  padding:0;
  min-width:285px;
  max-width:min(390px,calc(100vw - 28px));
  max-height:none;
  overflow:hidden;
  border-radius:10px;
  box-shadow:0 12px 28px #0003;
}
.ppzr-postal-suggestions-head{
  font-size:13px;
  font-weight:700;
  color:#475569;
  background:#f8fafc;
  border-bottom:1px solid #e2e8f0;
  padding:8px 10px;
}
.ppzr-postal-suggestions-list{max-height:320px;overflow-y:auto}
.ppzr-postal-suggestion{
  display:block;
  width:100%;
  padding:9px 10px;
  border-radius:0;
  border-bottom:1px solid #e5e7eb;
  background:#fff;
}
.ppzr-postal-suggestion:last-child{border-bottom:0}
.ppzr-postal-suggestion:hover,.ppzr-postal-suggestion:focus{background:#eef6ff}
.ppzr-postal-suggestion strong{display:block;font-size:14px}
.ppzr-postal-suggestion span{display:block;font-size:12px;color:#475569;margin-top:3px;line-height:1.25;white-space:normal;overflow:visible;text-overflow:clip}
.ppzr-postal-suggestions-empty{padding:12px 10px;color:#64748b;font-size:13px;line-height:1.35;background:#fff}
@media(max-width:700px){
  .ppzr-postal-suggestions{min-width:min(310px,calc(100vw - 28px));max-width:calc(100vw - 28px)}
  .ppzr-postal-suggestions-list{max-height:360px}
}

/* 2.5.20 – PPZŘ: našeptávač konkrétních adres z ČÚZK/RÚIAN */
.ppzr-editable-cell{position:relative;overflow:visible}
.ppzr-address-suggestions{
  position:absolute;z-index:60;top:calc(100% - 2px);left:4px;
  min-width:420px;max-width:min(620px,calc(100vw - 28px));
  padding:0;overflow:hidden;background:#fff;border:1px solid #cbd5e1;border-radius:10px;
  box-shadow:0 12px 28px #0003;
}
.ppzr-address-suggestions[hidden]{display:none!important}
.ppzr-address-suggestions-head{font-size:13px;font-weight:700;color:#475569;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:8px 10px}
.ppzr-address-suggestions-list{max-height:340px;overflow-y:auto}
.ppzr-address-suggestion{display:block;width:100%;margin:0;padding:10px;border:0;border-bottom:1px solid #e5e7eb;border-radius:0;background:#fff;color:#0f172a;text-align:left;cursor:pointer;font:inherit}
.ppzr-address-suggestion:last-child{border-bottom:0}
.ppzr-address-suggestion:hover,.ppzr-address-suggestion:focus{background:#eef6ff;outline:none}
.ppzr-address-suggestion strong{display:block;font-size:14px;line-height:1.3;font-weight:600;white-space:normal}
.ppzr-address-suggestions-empty{padding:12px 10px;color:#64748b;font-size:13px;line-height:1.35;background:#fff}
@media(max-width:700px){.ppzr-address-suggestions{left:0;min-width:min(340px,calc(100vw - 28px));max-width:calc(100vw - 28px)}.ppzr-address-suggestions-list{max-height:360px}}

/* 2.5.21 – PPZŘ: přesné ukotvení našeptávače adres přímo pod vstupním polem */
.ppzr-address-suggest-wrap{
  position:relative;
  width:100%;
}
.ppzr-address-suggest-wrap .ppzr-address-suggestions{
  top:calc(100% + 4px);
  left:0;
  min-width:max(100%,420px);
  transform:none;
}
@media(max-width:700px){
  .ppzr-address-suggest-wrap .ppzr-address-suggestions{
    top:calc(100% + 4px);
    left:0;
    min-width:100%;
    width:min(520px,calc(100vw - 28px));
    max-width:calc(100vw - 28px);
  }
}


/* 2.5.22 – PPZŘ: přesné ukotvení našeptávače PSČ přímo pod vstupním polem */
.ppzr-postal-suggest-wrap{
  position:relative;
  width:100%;
}
.ppzr-postal-suggest-wrap .ppzr-postal-suggestions{
  top:calc(100% + 4px);
  left:0;
  min-width:max(100%,285px);
  transform:none;
}
@media(max-width:700px){
  .ppzr-postal-suggest-wrap .ppzr-postal-suggestions{
    top:calc(100% + 4px);
    left:0;
    min-width:100%;
    width:min(390px,calc(100vw - 28px));
    max-width:calc(100vw - 28px);
  }
}

/* 2.5.23 – obecný našeptávač adres ČÚZK/RÚIAN pro PPD/VPD */
.address-autocomplete-wrap{position:relative;display:block;width:100%}
.address-autocomplete-wrap>input{width:100%}
.address-autocomplete-menu{position:absolute;left:0;top:calc(100% + 4px);z-index:1200;min-width:100%;width:max-content;max-width:min(620px,calc(100vw - 32px));border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.16);overflow:hidden}
.address-autocomplete-menu[hidden]{display:none!important}
.address-autocomplete-head{font-size:13px;font-weight:700;color:#475569;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:8px 10px}
.address-autocomplete-list{max-height:340px;overflow-y:auto}
.address-autocomplete-item{display:block;width:100%;margin:0;padding:10px 12px;border:0;border-bottom:1px solid #e5e7eb;border-radius:0;background:#fff;color:#0f172a;text-align:left;cursor:pointer;font:inherit}
.address-autocomplete-item:last-child{border-bottom:0}
.address-autocomplete-item:hover,.address-autocomplete-item:focus{background:#eef6ff;outline:none}
.address-autocomplete-item strong{display:block;font-size:14px;line-height:1.35;font-weight:600;white-space:normal}
.address-autocomplete-empty{padding:12px 10px;color:#64748b;font-size:13px;line-height:1.35;background:#fff}
@media(max-width:700px){.address-autocomplete-menu{min-width:min(360px,calc(100vw - 28px));max-width:calc(100vw - 28px)}.address-autocomplete-list{max-height:360px}}

/* DingoPok 2.5.26 - obrázky integrované nápovědy */
.app-help-figure{margin:16px 0 4px}.app-help-image-button{display:block;width:100%;padding:0;border:1px solid #d8e2ef;border-radius:10px;background:#f8fafc;overflow:hidden;cursor:zoom-in;text-align:left}.app-help-image-button:hover{border-color:#93b4df;box-shadow:0 5px 18px rgba(15,23,42,.10)}.app-help-image-button img{display:block;width:100%;max-width:1100px;height:auto;margin:0 auto}.app-help-figure figcaption{margin-top:7px;color:#64748b;font-size:12px;line-height:1.45}.help-image-lightbox{position:fixed;inset:0;z-index:12000;display:none;align-items:center;justify-content:center;padding:24px}.help-image-lightbox.is-open{display:flex}.help-image-lightbox-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.82)}.help-image-lightbox-dialog{position:relative;z-index:1;max-width:min(96vw,1500px);max-height:94vh}.help-image-lightbox-dialog img{display:block;max-width:100%;max-height:90vh;width:auto;height:auto;border-radius:10px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.45)}.help-image-lightbox-close{position:absolute;z-index:2;top:-14px;right:-14px;width:38px;height:38px;border:0;border-radius:999px;background:#fff;color:#0f172a;font-size:26px;line-height:36px;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.28)}
@media(max-width:700px){.app-help-figure{margin-top:12px}.help-image-lightbox{padding:10px}.help-image-lightbox-close{top:6px;right:6px}.help-image-lightbox-dialog img{max-height:86vh}}
