/* ============================================================
   NÁJMY V KAPSE — VZHLED B „TMAVÝ VELÍN“
   Jediný zdroj pravdy pro barvy, písmo, mezery, zaoblení a stíny.

   Pravidla:
   - Každá hodnota je zapsaná JEN TADY. Jinde se používá var(--nvk-…).
   - Žádné !important.
   - Aplikace je jen v tmavém režimu. Portály a veřejné stránky
     (viz LEGACY_THEME_PATHS v ThemeContext.tsx) redesign zatím neřeší.
   ============================================================ */


/* ------------------------------------------------------------
   1) ŠEDÁ ŠKÁLA (základ všech neutrálních barev)
   Formát: R G B bez čárek — Tailwind (tailwind.config.js) z nich
   skládá třídy gray-* / slate-* včetně průhlednosti (bg-gray-800/50).

   :root      = původní hodnoty Tailwindu → světlé stránky beze změny
   html.dark  = vzhled B; světlost odstínů je zachovaná, aby se
                neporušil kontrast tam, kde ve starém kódu chybí dark: varianta
   ------------------------------------------------------------ */
:root {
  --nvk-gray-50: 249 250 251;
  --nvk-gray-100: 243 244 246;
  --nvk-gray-200: 229 231 235;
  --nvk-gray-300: 209 213 219;
  --nvk-gray-400: 156 163 175;
  --nvk-gray-500: 107 114 128;
  --nvk-gray-600: 75 85 99;
  --nvk-gray-700: 55 65 81;
  --nvk-gray-750: 30 36 48;
  --nvk-gray-800: 31 41 55;
  --nvk-gray-900: 17 24 39;
  --nvk-gray-950: 3 7 18;

  --nvk-slate-50: 248 250 252;
  --nvk-slate-100: 241 245 249;
  --nvk-slate-200: 226 232 240;
  --nvk-slate-300: 203 213 225;
  --nvk-slate-400: 148 163 184;
  --nvk-slate-500: 100 116 139;
  --nvk-slate-600: 71 85 105;
  --nvk-slate-700: 51 65 85;
  --nvk-slate-800: 30 41 59;
  --nvk-slate-900: 15 23 42;
  --nvk-slate-950: 2 6 23;
}

html.dark {
  /* Prohlížeč kreslí vlastní prvky (ikonka a okno kalendáře u polí
     s datem, posuvníky, automatické doplnění) tmavě – jinak je
     ikonka kalendáře černá na tmavém poli. */
  color-scheme: dark;

  --nvk-gray-50: 243 245 248;   /* #F3F5F8 */
  --nvk-gray-100: 231 235 240;  /* #E7EBF0 */
  --nvk-gray-200: 213 219 227;  /* #D5DBE3 */
  --nvk-gray-300: 193 201 211;  /* #C1C9D3 */
  --nvk-gray-400: 154 164 178;  /* #9AA4B2 */
  --nvk-gray-500: 125 135 150;  /* #7D8796 */
  --nvk-gray-600: 58 67 80;     /* #3A4350 */
  --nvk-gray-700: 38 45 56;     /* #262D38 */
  --nvk-gray-750: 26 32 41;     /* #1A2029 */
  --nvk-gray-800: 20 25 32;     /* #141920 */
  --nvk-gray-900: 13 16 21;     /* #0D1015 */
  --nvk-gray-950: 8 10 14;      /* #080A0E */

  /* slate = stejné tóny jako gray (B nerozlišuje dvě šedé) */
  --nvk-slate-50: var(--nvk-gray-50);
  --nvk-slate-100: var(--nvk-gray-100);
  --nvk-slate-200: var(--nvk-gray-200);
  --nvk-slate-300: var(--nvk-gray-300);
  --nvk-slate-400: var(--nvk-gray-400);
  --nvk-slate-500: var(--nvk-gray-500);
  --nvk-slate-600: var(--nvk-gray-600);
  --nvk-slate-700: var(--nvk-gray-700);
  --nvk-slate-800: var(--nvk-gray-800);
  --nvk-slate-900: var(--nvk-gray-900);
  --nvk-slate-950: var(--nvk-gray-950);
}

/* 🔒 Veřejné stránky + portály — původní šedá i ve chvíli, kdy je html.dark
   (stránky si dark samy odebírají, tohle kryje okamžik před tím) */
html.dark:has(body.public-page),
html.dark:has(body.portal-page),
html.dark:has(body.owner-portal-page) {
  --nvk-gray-50: 249 250 251;
  --nvk-gray-100: 243 244 246;
  --nvk-gray-200: 229 231 235;
  --nvk-gray-300: 209 213 219;
  --nvk-gray-400: 156 163 175;
  --nvk-gray-500: 107 114 128;
  --nvk-gray-600: 75 85 99;
  --nvk-gray-700: 55 65 81;
  --nvk-gray-750: 30 36 48;
  --nvk-gray-800: 31 41 55;
  --nvk-gray-900: 17 24 39;
  --nvk-gray-950: 3 7 18;

  --nvk-slate-50: 248 250 252;
  --nvk-slate-100: 241 245 249;
  --nvk-slate-200: 226 232 240;
  --nvk-slate-300: 203 213 225;
  --nvk-slate-400: 148 163 184;
  --nvk-slate-500: 100 116 139;
  --nvk-slate-600: 71 85 105;
  --nvk-slate-700: 51 65 85;
  --nvk-slate-800: 30 41 59;
  --nvk-slate-900: 15 23 42;
  --nvk-slate-950: 2 6 23;

  color-scheme: light;
}


/* ------------------------------------------------------------
   2) VÝZNAMOVÉ BARVY (co se má používat v komponentách)
   Neutrální barvy odkazují na šedou škálu výše, ostatní mají
   hodnotu jen tady.
   ------------------------------------------------------------ */
:root {
  /* Plochy */
  --nvk-bg: rgb(var(--nvk-gray-900));            /* pozadí stránky */
  --nvk-card: rgb(var(--nvk-gray-800));          /* karta, panel */
  --nvk-raised: rgb(var(--nvk-gray-750));        /* aktivní položka, plocha nad kartou */
  --nvk-card-sunken: #11161C;                   /* hlavička tabulky, vnořený pás */
  --nvk-control: #131820;                       /* tlačítko druhé úrovně, vyhledávání */
  --nvk-input: #0F1318;                         /* formulářové pole */
  --nvk-overlay: rgba(5, 7, 10, 0.72);          /* ztmavení pod modálem */

  /* Okraje */
  --nvk-line: #1F252E;                          /* okraj karty, oddělovač řádků */
  --nvk-line-strong: rgb(var(--nvk-gray-700));   /* okraj pole a tlačítka */
  --nvk-line-max: rgb(var(--nvk-gray-600));      /* zvýrazněný okraj */

  /* Text */
  --nvk-text: rgb(var(--nvk-gray-100));          /* hlavní text */
  --nvk-text-2: #C9D1DC;                        /* vedlejší text, ikony */
  --nvk-text-muted: rgb(var(--nvk-gray-400));    /* tlumený text */
  --nvk-text-faint: rgb(var(--nvk-gray-500));    /* popisky, hlavičky sloupců */
  --nvk-text-disabled: #5F6876;                 /* neaktivní */

  /* Akcent (hlavní akce, „přišlo“, „zaplaceno“) */
  --nvk-accent: #4ADE9B;
  --nvk-accent-hover: #6BE6AE;                  /* akcent po najetí myší */
  --nvk-accent-ink: #0D1015;                    /* text NA akcentu (bílý by nebyl čitelný) */
  --nvk-accent-soft: #12301F;                   /* podklad štítku */

  /* Stavy */
  --nvk-warning: #F2B441;                       /* blíží se splatnost, čeká */
  --nvk-warning-soft: #3A2C10;
  --nvk-danger: #FF7A6B;                        /* po splatnosti, dluh, mazání */
  --nvk-danger-soft: #3A1A17;
  --nvk-danger-line: #5A2620;                   /* okraj / najetí u mazacího tlačítka */
  --nvk-info: #8FB4FF;                          /* odkazy, informace */
  --nvk-info-soft: #172338;
  --nvk-violet: #A98BFF;                        /* revize, kontroly */
  --nvk-violet-soft: #221C38;
  --nvk-neutral-soft: #1C222B;                  /* neutrální štítek */

  /* Zaměření klávesnicí */
  --nvk-focus-ring: 0 0 0 3px rgba(74, 222, 155, 0.25);


  /* --------------------------------------------------------
     3) PÍSMO
     Geist + Geist Mono (ověřeno: obsahují všechna česká písmena)
     -------------------------------------------------------- */
  --nvk-font: 'Geist', 'Segoe UI', -apple-system, BlinkMacSystemFont, sans-serif;
  --nvk-font-mono: 'Geist Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

  --nvk-text-xs: 0.75rem;     /* 12px — štítky, popisky */
  --nvk-text-sm: 0.8125rem;   /* 13px — vedlejší text */
  --nvk-text-base: 0.875rem;  /* 14px — běžný text */
  --nvk-text-md: 0.9375rem;   /* 15px — nadpis karty */
  --nvk-text-lg: 1.125rem;    /* 18px — nadpis modálu */
  --nvk-text-xl: 1.5rem;      /* 24px — nadpis stránky */
  --nvk-text-2xl: 1.875rem;   /* 30px — velké číslo */

  --nvk-weight-regular: 400;
  --nvk-weight-medium: 500;
  --nvk-weight-semibold: 600;
  --nvk-weight-bold: 700;


  /* --------------------------------------------------------
     4) MEZERY (násobky 4 px)
     -------------------------------------------------------- */
  --nvk-space-1: 0.25rem;   /* 4px */
  --nvk-space-2: 0.5rem;    /* 8px */
  --nvk-space-3: 0.75rem;   /* 12px */
  --nvk-space-4: 1rem;      /* 16px */
  --nvk-space-5: 1.25rem;   /* 20px */
  --nvk-space-6: 1.5rem;    /* 24px */
  --nvk-space-8: 2rem;      /* 32px */


  /* --------------------------------------------------------
     5) ZAOBLENÍ
     -------------------------------------------------------- */
  --nvk-radius-sm: 6px;     /* štítek */
  --nvk-radius-md: 10px;    /* tlačítko, pole */
  --nvk-radius-lg: 14px;    /* malá karta */
  --nvk-radius-xl: 18px;    /* karta, panel */
  --nvk-radius-2xl: 20px;   /* modál */
  --nvk-radius-pill: 999px; /* záložka „pilulka“ */


  /* --------------------------------------------------------
     6) STÍNY A OVLÁDÁNÍ
     -------------------------------------------------------- */
  --nvk-shadow-modal: 0 24px 64px rgba(0, 0, 0, 0.5);
  --nvk-shadow-pop: 0 8px 24px rgba(0, 0, 0, 0.35);

  --nvk-touch: 44px;        /* minimální velikost dotykového prvku (mobil) */
  --nvk-control-h: 40px;    /* výška tlačítka a pole na PC */
}
