        body { font-family: 'Inter', system-ui, -apple-system, sans-serif; transition: background-color 0.3s, color 0.3s; overflow-x: hidden; }        .glass-card { background: rgba(30, 41, 59, 0.7); backdrop-filter: blur(12px); border: 1px solid rgba(255, 255, 255, 0.08); transition: background 0.3s, border-color 0.3s; }        .accent-gradient { background: linear-gradient(135deg, #6366f1 0%, #3b82f6 100%); }
        body.light-mode { background-color: #f8fafc !important; color: #0f172a !important; }        body.light-mode header, body.light-mode #top-cashflow-banner { background-color: rgba(255, 255, 255, 0.96) !important; border-color: #e2e8f0 !important; }        body.light-mode aside { background-color: #f1f5f9 !important; border-color: #e2e8f0 !important; }        body.light-mode .glass-card { background: rgba(255, 255, 255, 0.92) !important; border-color: #e2e8f0 !important; box-shadow: 0 4px 20px -2px rgba(0,0,0,0.06) !important; }        body.light-mode input, body.light-mode select, body.light-mode textarea { background-color: #ffffff !important; border-color: #cbd5e1 !important; color: #0f172a !important; }        body.light-mode .bg-slate-900, body.light-mode .bg-slate-950, body.light-mode .bg-slate-900\/80, body.light-mode .bg-slate-900\/60 { background-color: #f8fafc !important; border-color: #e2e8f0 !important; color: #0f172a !important; }        body.light-mode .bg-slate-800 { background-color: #e2e8f0 !important; color: #1e293b !important; border-color: #cbd5e1 !important; }        body.light-mode .text-white { color: #0f172a !important; }        body.light-mode .text-slate-400, body.light-mode .text-slate-300 { color: #475569 !important; }        body.light-mode .border-slate-800, body.light-mode .border-slate-700 { border-color: #e2e8f0 !important; } body.light-mode #top-title { background-image: none !important; -webkit-text-fill-color: #0f172a !important; color: #0f172a !important; } body.light-mode .text-slate-500 { color: #64748b !important; } body.light-mode .hover\:bg-slate-800:hover, body.light-mode .hover\:bg-slate-700:hover { background-color: #e2e8f0 !important; color: #0f172a !important; } body.light-mode .hover\:text-white:hover { color: #0f172a !important; } body.light-mode ::placeholder { color: #94a3b8 !important; opacity: 1 !important; }
        /* Kompaktnější ikony kroků v levém sloupci. */
        aside .tab-btn > div:first-child { width: 26px; height: 26px; font-size: 12px; }
        /* Na nízkých obrazovkách schovat popisky kroků, ať je celý průběh analýzy vidět bez rolování. */
        @media (max-height: 700px) { aside .krok-popis { display: none; } }
        /* Popisky na barevných plochách v Představení činnosti zůstávají bílé i ve světlém režimu. */
        .intro-chip, body.light-mode .intro-chip { color: #ffffff !important; }
        /* Světlý režim – dorovnání kontrastu u tmavých ploch s průhledností */
        body.light-mode .bg-slate-700, body.light-mode .bg-slate-600,
        body.light-mode .bg-slate-800\/50, body.light-mode .bg-slate-800\/80,
        body.light-mode .bg-slate-900\/40, body.light-mode .bg-slate-900\/50,
        body.light-mode .bg-slate-900\/70, body.light-mode .bg-slate-900\/90, body.light-mode .bg-slate-900\/95,
        body.light-mode .bg-slate-950\/70, body.light-mode .bg-slate-950\/80,
        body.light-mode .bg-slate-950\/85 {
            background-color: #eef2f7 !important; border-color: #dbe3ec !important; color: #0f172a !important;
        }
        /* barevné popisky musí na světlém podkladu ztmavnout */
        body.light-mode .text-indigo-400, body.light-mode .text-indigo-300, body.light-mode .text-indigo-200 { color: #4338ca !important; }
        body.light-mode .text-emerald-400, body.light-mode .text-emerald-300 { color: #047857 !important; }
        body.light-mode .text-rose-400, body.light-mode .text-rose-300, body.light-mode .text-rose-200, body.light-mode .text-rose-500 { color: #be123c !important; }
        body.light-mode .text-amber-400, body.light-mode .text-amber-300 { color: #b45309 !important; }
        body.light-mode .text-sky-400, body.light-mode .text-sky-300 { color: #0369a1 !important; }
        body.light-mode .text-slate-200, body.light-mode .text-slate-100 { color: #1e293b !important; }
        body.light-mode .text-slate-600 { color: #475569 !important; }
        body.light-mode .text-emerald-500\/80 { color: #047857 !important; }
        body.light-mode .text-amber-400\/90, body.light-mode .text-amber-500\/70 { color: #b45309 !important; }
        /* tmavé barevné panely dostanou ve světlém režimu jemný tón */
        body.light-mode .bg-indigo-900, body.light-mode .bg-indigo-900\/80, body.light-mode .bg-indigo-950\/40 {
            background-color: #eef0fe !important; border-color: #c7cdf7 !important;
        }
        body.light-mode .bg-emerald-900\/80, body.light-mode .bg-emerald-950\/40, body.light-mode .bg-emerald-950\/60 {
            background-color: #e7f7f0 !important; border-color: #b6e5d2 !important;
        }
        body.light-mode .bg-rose-900, body.light-mode .bg-rose-900\/80, body.light-mode .bg-rose-950\/40 {
            background-color: #fdeaee !important; border-color: #f6c2ce !important;
        }
        body.light-mode .bg-sky-950\/60 { background-color: #e6f2fb !important; border-color: #b6dcf3 !important; }
        body.light-mode .border-indigo-800\/40 { border-color: #c7cdf7 !important; }
        body.light-mode .border-emerald-800\/50 { border-color: #b6e5d2 !important; }
        body.light-mode .border-sky-800\/50 { border-color: #b6dcf3 !important; }
        /* plná barevná tlačítka si nechávají bílý text */
        body.light-mode [class~="bg-indigo-600"], body.light-mode [class~="bg-indigo-500"],
        body.light-mode [class~="bg-emerald-600"], body.light-mode [class~="bg-emerald-500"],
        body.light-mode [class~="bg-rose-600"], body.light-mode [class~="bg-rose-500"],
        body.light-mode [class~="bg-amber-600"], body.light-mode [class~="bg-amber-500"],
        body.light-mode [class~="bg-sky-600"], body.light-mode .accent-gradient,
        body.light-mode [class~="bg-indigo-600"] *, body.light-mode [class~="bg-indigo-500"] *,
        body.light-mode [class~="bg-emerald-600"] *, body.light-mode [class~="bg-emerald-500"] *,
        body.light-mode [class~="bg-rose-600"] *, body.light-mode [class~="bg-amber-600"] *,
        body.light-mode .accent-gradient * { color: #ffffff !important; }
        .template-paper {            background-color: #ffffff;            color: #111827;            font-family: 'Inter', system-ui, sans-serif;            box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.3);        }        .dotted-input {            border: none;            border-bottom: 1.5px dotted #94a3b8;            background: transparent;            outline: none;            color: #0f172a;            font-weight: 500;        }        .dotted-input:focus {            border-bottom: 1.5px solid #2563eb;        }        .pdf-exporting .no-print { display: none !important; }
        .pdf-only { display: none !important; }
        .pdf-exporting .pdf-only { display: inline !important; }
        .pdf-exporting .pdf-hidden { display: none !important; }
        .navrh-risk-row.drag-over { outline: 2px dashed #6366f1; outline-offset: 2px; border-radius: 6px; }
        .navrh-risk-row.dragging { opacity: 0.35; }
        .navrh-drag-handle { cursor: grab; }
        .navrh-drag-handle:active { cursor: grabbing; }                .letter-body-textarea { border: none; outline: none; background: transparent; resize: vertical; line-height: 1.7; font-family: inherit; color: #0f172a; padding: 2px 0; }        .letter-body-textarea:focus { outline: 1px dashed #94a3b8; outline-offset: 2px; }        input[type="date"] { color-scheme: dark; }        body.light-mode input[type="date"] { color-scheme: light; }    

/* Na telefonu se řada ovládacích tlačítek nevejde vedle loga – zalomí se pod něj. */
@media (max-width: 639px) {
    header { flex-wrap: wrap; gap: 0.5rem; padding-left: 0.75rem !important; padding-right: 0.75rem !important; }
    header .header-actions { width: 100%; justify-content: flex-start; overflow-x: auto; scrollbar-width: none; }
    header .header-actions::-webkit-scrollbar { display: none; }
}
