/* Vzhled podle schvaleneho navrhu docs/DASHBOARD_NAVRH.html (bez externich zdroju). */
:root{--od-bg:light-dark(#f5f6f8,#14181f);--od-panel:light-dark(#fff,#1b222c);--od-text:light-dark(#192331,#e7edf5);--od-muted:light-dark(#596777,#a6b3c4);--od-line:light-dark(#dfe5ec,#354052);--od-accent:light-dark(#315daa,#95b8fa);--od-soft:light-dark(#eaf0fb,#25354d);--od-warn:light-dark(#855414,#f2c379);--od-warn-bg:light-dark(#fff2db,#3b3020);--od-action:light-dark(#234b91,#b0ccff);--od-action-text:light-dark(#fff,#14233e);color-scheme:light dark}
*{box-sizing:border-box}
body{margin:0;color:var(--od-text);background:var(--od-bg);font:14px/1.5 system-ui,sans-serif}
[hidden]{display:none!important}
h2{font-size:25px;font-weight:600;line-height:1.3;margin:3px 0 0}
h3{font-size:16px;font-weight:600;margin:0 0 14px}
p{margin:12px 0}
a{color:var(--od-accent)}
code{font-size:12px}
.quiet{color:var(--od-muted)}
.small{font-size:12px}
.block{display:block}
.app-header{background:var(--od-panel);display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:18px 22px;border-bottom:1px solid var(--od-line)}
.brand{display:flex;align-items:center;gap:10px;font-weight:600}
.brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--od-action);color:var(--od-action-text)}
.demo-tag{padding:4px 9px;background:var(--od-warn-bg);color:var(--od-warn);border-radius:6px;font-size:12px;font-weight:600}
.app-layout{display:grid;grid-template-columns:200px minmax(0,1fr);min-height:calc(100vh - 67px)}
.sidebar{padding:22px 14px;background:var(--od-panel);border-right:1px solid var(--od-line)}
.firma-form{display:grid;gap:7px}
.firma-form label{font-size:12px;color:var(--od-muted)}
nav{display:grid;gap:5px;margin-top:25px}
nav a{display:flex;gap:9px;align-items:center;text-decoration:none;padding:11px;color:var(--od-muted);border-radius:8px}
nav a.selected{background:var(--od-soft);color:var(--od-accent);font-weight:600}
.sidebar-footer{border-top:1px solid var(--od-line);margin-top:40px;padding:16px 6px 0;font-size:12px}
main{min-width:0;padding:25px}
.page-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:22px}
.eyebrow{font-size:12px;color:var(--od-muted)}
.period-box{text-align:right}
label{display:grid;gap:7px;font-weight:500;min-width:0}
input,select{width:100%;min-width:0;font:inherit;color:var(--od-text);background:var(--od-panel);border:1px solid var(--od-line);border-radius:7px;padding:9px 10px}
button{font:inherit;white-space:normal;cursor:pointer}
.primary,.secondary{padding:9px 13px;border-radius:7px;font-weight:500}
.primary{background:var(--od-action);color:var(--od-action-text);border:1px solid transparent}
.secondary{background:var(--od-panel);color:var(--od-text);border:1px solid var(--od-line)}
.js .js-skryt{display:none}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:26px}
.metric{background:var(--od-panel);border:1px solid var(--od-line);border-radius:10px;padding:16px;min-width:0}
.metric-label{font-size:12px;color:var(--od-muted)}
.metric-value{font-size:28px;line-height:1.4;font-weight:600;font-variant-numeric:tabular-nums}
.metric-value.metric-unknown{font-size:18px;line-height:2.1;color:var(--od-muted)}
.metric-foot{font-size:11px;color:var(--od-muted)}
.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:13px}
.section-title h3{margin:0}
.section-title>.quiet{font-size:11px}
.mailbox-list{display:grid;gap:9px}
.mailbox{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:13px;align-items:center;background:var(--od-panel);padding:14px;border:1px solid var(--od-line);border-radius:9px}
.mailbox-name{font-weight:600;overflow-wrap:anywhere}
.mailbox-email{font-size:12px;color:var(--od-muted);overflow-wrap:anywhere}
.account-numbers{font-size:12px;text-align:right;font-variant-numeric:tabular-nums}
.status{display:inline-block;font-size:11px;padding:3px 7px;border-radius:5px;margin-top:4px}
.status.warn{color:var(--od-warn);background:var(--od-warn-bg)}
.two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:17px}
.bottom-panels{margin-top:23px}
.panel{padding:20px;background:var(--od-panel);border:1px solid var(--od-line);border-radius:10px;min-width:0}
.attention-item{padding:10px 0;border-bottom:1px solid var(--od-line)}
.attention-item:last-child{border:0}
.rule-row{display:flex;justify-content:space-between;gap:12px;padding:7px 0}
.notice{padding:11px 14px;background:var(--od-soft);color:var(--od-accent);border-radius:8px;margin-bottom:17px}
.notice.warn{background:var(--od-warn-bg);color:var(--od-warn)}
.filter-row{display:flex;align-items:end;flex-wrap:wrap;gap:14px;margin-bottom:8px}
.filter-row label{min-width:170px}
.presets{margin:0 0 20px}
.bar-row{display:grid;grid-template-columns:64px minmax(0,1fr) 34px;gap:10px;align-items:center;margin:10px 0;font-size:12px;font-variant-numeric:tabular-nums}
progress{width:100%;height:15px;border:0;border-radius:3px;background:var(--od-soft);accent-color:var(--od-accent);appearance:none}
progress::-webkit-progress-bar{background:var(--od-soft);border-radius:3px}
progress::-webkit-progress-value{background:var(--od-accent);border-radius:3px}
progress::-moz-progress-bar{background:var(--od-accent);border-radius:3px}
.category{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--od-line)}
.category b{font-weight:600;font-variant-numeric:tabular-nums}
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
th,td{text-align:right;padding:8px;border-bottom:1px solid var(--od-line)}
th:first-child{text-align:left;font-weight:500}
thead th{font-size:12px;color:var(--od-muted);font-weight:500}
.definitions summary{cursor:pointer;font-weight:600}
.definitions li{margin:8px 0}
/* Editor a rizeni rozesilani (sekce 15) */
textarea{width:100%;min-width:0;font:inherit;color:var(--od-text);background:var(--od-panel);border:1px solid var(--od-line);border-radius:7px;padding:9px 10px;resize:vertical}
input[type=radio],input[type=checkbox]{width:auto}
input[type=file]{padding:6px}
fieldset{padding:0;margin:4px 0;border:0;min-width:0}
legend{font-weight:500;margin-bottom:8px}
.editor-form{display:grid;align-content:start;gap:14px}
.editor-columns{align-items:start}
.personalization{background:var(--od-soft);padding:12px;border-radius:7px;font-size:13px}
.personalization ul{margin:8px 0 0;padding-left:18px}
.volba{display:flex;align-items:center;gap:8px;font-weight:400}
.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.days{display:flex;gap:12px;flex-wrap:wrap;margin:10px 0}
.mail-preview{margin-top:14px;padding-top:14px;border-top:1px solid var(--od-line);overflow-wrap:anywhere}
.mail-meta{font-size:11px;color:var(--od-muted);margin-bottom:16px}
.mail-html{border-left:3px solid var(--od-line);padding-left:12px}
.attachment{margin-top:18px;padding:9px;background:var(--od-bg);border-radius:6px;font-size:12px}
.preserve-lines{white-space:pre-wrap;font:inherit;font-size:12px}
.status.ok{color:var(--od-accent);background:var(--od-soft)}
/* Provoz a chyby (sekce 19) */
.status.problem{color:light-dark(#9b1c1c,#ffb4ab);background:light-dark(#fde8e8,#4a2323)}
.status.neutral{color:var(--od-muted);background:var(--od-bg)}
.job{padding:12px 0;border-bottom:1px solid var(--od-line)}
.job:last-child{border:0}
.job-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:baseline}
.mailbox.mailbox-akce{grid-template-columns:minmax(0,1fr) auto auto}
.mailbox-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.odkaz-tlacitko{text-decoration:none;display:inline-block}
.settings-form{display:grid;gap:12px}
.chraneny-blok{border-left:3px solid var(--od-accent);padding:4px 0 4px 11px}
.chraneny-blok pre{margin:4px 0 0}
/* Konverzace (sekce 23) -- text zprav jen jako prosty text */
.thread-list{display:grid;gap:8px}
.thread{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px;border:1px solid var(--od-line);border-radius:9px;text-decoration:none;color:var(--od-text);overflow-wrap:anywhere}
.thread:hover{border-color:var(--od-accent)}
.thread-side{display:grid;justify-items:end;align-content:start;gap:4px}
.zprava{margin-bottom:14px;overflow-wrap:anywhere}
.zprava-prichozi{border-left:4px solid var(--od-accent)}
.zprava-rucni{border-left:4px solid var(--od-warn)}
.zprava-chybi{border-style:dashed}
.zprava-text{font-size:13px;max-height:none}
@media(max-width:590px){.thread{grid-template-columns:1fr}.thread-side{justify-items:start}}
/* Prihlaseni a odhlaseni (sekce 17) */
.verejne{max-width:440px;margin:40px auto;padding:0 16px}
.odhlaseni{margin-left:auto;display:flex;align-items:center;gap:9px;flex-wrap:wrap}
@media(max-width:590px){.mailbox.mailbox-akce{grid-template-columns:1fr}}
@media(max-width:880px){.app-layout{grid-template-columns:165px minmax(0,1fr)}main{padding:20px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.two-column{grid-template-columns:1fr}.period-box{text-align:left}}
@media(max-width:590px){.app-layout{grid-template-columns:1fr}.sidebar{padding:13px;border-right:0;border-bottom:1px solid var(--od-line)}nav{display:flex;flex-wrap:wrap;margin-top:10px;gap:3px}nav a{padding:9px;font-size:13px}.sidebar-footer{display:none}main{padding:15px}.app-header{padding:14px;gap:7px}.brand .quiet{display:none}.panel{padding:15px}.metric{padding:12px}.filter-row label{min-width:0;width:100%}.mailbox{grid-template-columns:1fr}.account-numbers{text-align:left}}
@media(pointer:coarse){button,input,select,nav a{min-height:44px}input,select{font-size:16px}}
