/* Tema comună ICC „Astro” pentru aplicațiile din familia Oferte (Oferte, Cash Flow, RSVTI, Subcontractori) · v1.1.0 · 25.10.2026
   Originalul e în apps-instalcorp/tema-icc-app.css; copie identică în fiecare din cele patru aplicații.
   Se încarcă DUPĂ style.css: traduce numele vechi de culori (navy, bg, card…) în culorile din tema-icc.css.
   Prefixul :root:not(#icc) doar câștigă prioritatea față de regulile din style.css, fără !important.
   Documentele (oferte, contracte, foi de lucru, PDF, tipăriri) NU se schimbă: rămân albe, cu fontul și culorile lor. */

:root:not(#icc) {
  --navy: var(--brand); --navy-2: var(--brand-bright); --navy-hover: var(--brand-deep);
  --bg: var(--ink); --card: var(--panel); --card-hover: var(--panel-2); --topbar-bg: var(--head-bg);
  --line-light: color-mix(in oklab, var(--fg) 5%, var(--panel));
  --text: var(--fg); --muted: var(--fg-2); --placeholder: var(--fg-3);
  --green: var(--ok); --red: var(--err); --amber: var(--wip); --blue: var(--info); --purple: var(--brand-text);
  --green-bg: color-mix(in oklab, var(--ok) 15%, transparent);
  --red-bg: color-mix(in oklab, var(--err) 15%, transparent);
  --amber-bg: color-mix(in oklab, var(--wip) 15%, transparent);
  --blue-bg: color-mix(in oklab, var(--info) 15%, transparent);
  --purple-bg: color-mix(in oklab, var(--brand) 15%, transparent);
  --teal-bg: color-mix(in oklab, var(--teal) 15%, transparent);
  --gray-bg: color-mix(in oklab, var(--gray) 14%, transparent);
  --input-focus-ring: color-mix(in oklab, var(--brand) 25%, transparent);
  --shadow-sm: var(--sh-1); --shadow-md: var(--sh-2); --shadow-lg: var(--sh-3); --shadow-modal: var(--sh-4);
}
/* numele comune cu tema (line, teal, gray) primesc valorile direct, ca să nu rămână cele din style.css */
:root:not(#icc)[data-theme="dark"] {
  color-scheme: dark;
  --line: #ffffff14; --teal: #2dd4bf; --gray: #a0a0b4;
  --input-bg: #0e0e16; --input-border: #ffffff24;
}
:root:not(#icc)[data-theme="light"] {
  color-scheme: light;
  --line: #1a14321a; --teal: #0f766e; --gray: #4a4660;
  --input-bg: #fbfaff; --input-border: #1a14322e;
}

/* bază: fontul portalului, fundalul pe html, ca gridul de sus să se vadă prin pagină */
html:not(#icc) { background: var(--bg); font-family: var(--f-sans); }
html:not(#icc) body { background: transparent; font-family: var(--f-sans); -webkit-font-smoothing: antialiased; }
:root:not(#icc) a { color: var(--brand-text); }
:root:not(#icc) a:hover { color: var(--fg); }
:root:not(#icc) :focus-visible { outline-color: var(--accent); }
:root:not(#icc) td.num, :root:not(#icc) .num { font-variant-numeric: tabular-nums; }

/* antetul: translucid, ca în portal */
:root:not(#icc) .topbar {
  color: var(--fg); box-shadow: none; border-bottom: 1px solid var(--line); gap: 12px;
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
}
:root:not(#icc) .topbar .brand { color: var(--fg); white-space: nowrap; flex: none; }
:root:not(#icc) .topbar .brand img { height: 26px; background: transparent; border-radius: 0; padding: 0; }
:root:not(#icc) .topbar .user { color: var(--fg-2); gap: 10px; }

/* butoanele din antet: carduri mici ca butoanele aplicațiilor din portal; conturul luminos la mouse vine din tema-icc.css */
:root:not(#icc) .topbar nav { gap: 6px; margin-left: 8px; }
:root:not(#icc) .topbar nav a, :root:not(#icc) .topbar .btn {
  display: inline-flex; align-items: center; gap: 6px; white-space: nowrap;
  padding: 7px 12px; border-radius: 10px; font-size: 13.5px; font-weight: 600; line-height: 1.2;
  background: var(--panel); border: 1px solid var(--line); color: var(--fg-2); box-shadow: none;
  transition: transform .45s var(--ease), border-color .3s, background-color .3s, box-shadow .45s var(--ease), color .2s;
}
:root:not(#icc) .topbar nav a:hover, :root:not(#icc) .topbar nav a:focus-visible,
:root:not(#icc) .topbar .btn:hover:not(:disabled), :root:not(#icc) .topbar .btn:focus-visible {
  transform: translateY(-2px); background: var(--panel-2); color: var(--fg); filter: none;
  border-color: color-mix(in oklab, var(--brand) 45%, var(--line-2));
  box-shadow: 0 10px 24px -14px color-mix(in oklab, var(--brand) 70%, transparent);
}
/* pagina pe care ești: marcată cu violet */
:root:not(#icc) .topbar nav a.active {
  color: var(--fg); background: color-mix(in oklab, var(--brand) 16%, var(--panel));
  border-color: color-mix(in oklab, var(--brand) 50%, var(--line-2));
}
:root:not(#icc) .topbar nav a.ext { color: var(--fg-3); }
:root:not(#icc) .theme-toggle {
  background: var(--panel); border: 1px solid var(--line); color: var(--fg-2); width: 34px; height: 34px; font-size: 15px; flex: none;
  transition: transform .45s var(--ease), border-color .3s, background-color .3s, color .2s;
}
:root:not(#icc) .theme-toggle:hover, :root:not(#icc) .theme-toggle:focus-visible {
  color: var(--fg); background: var(--panel-2); transform: translateY(-2px);
  border-color: color-mix(in oklab, var(--brand) 55%, var(--line-2));
}
:root:not(#icc) .menu-btn { border-color: var(--line-2); background: transparent; color: var(--fg); }
:root:not(#icc) .menu-btn:hover { background: color-mix(in oklab, var(--brand) 14%, transparent); }
:root:not(#icc) .topbar.open .user { border-top-color: var(--line); }
:root:not(#icc) .task-w { background: color-mix(in oklab, var(--fg) 12%, transparent); color: var(--fg); }
:root:not(#icc) .task-w.new { background: var(--err); color: #fff; }
:root:not(#icc) .topbar .btn.topadd { background: color-mix(in oklab, var(--brand) 12%, var(--panel)); border-color: color-mix(in oklab, var(--brand) 40%, var(--line-2)); color: var(--fg); }
:root:not(#icc) .topbar .btn.topadd.in { background: color-mix(in oklab, var(--ok) 10%, var(--panel)); border-color: color-mix(in oklab, var(--ok) 50%, var(--line-2)); }
:root:not(#icc) .topbar .btn.topadd:hover:not(:disabled) { background: color-mix(in oklab, var(--brand) 20%, var(--panel)); }

/* laptopuri: antetul se strânge ca să încapă pe un rând (numele utilizatorului se ascunde, apoi textul de lângă siglă) */
@media (min-width: 1101px) and (max-width: 1500px) {
  :root:not(#icc) .topbar { gap: 10px; padding-inline: 16px; }
  :root:not(#icc) .topbar nav { gap: 4px; margin-left: 4px; }
  :root:not(#icc) .topbar nav a, :root:not(#icc) .topbar .btn { padding: 6px 10px; font-size: 13px; }
  :root:not(#icc) .topbar .who { display: none; }
}
@media (min-width: 1101px) and (max-width: 1300px) {
  :root:not(#icc) .topbar .brand { font-size: 0; gap: 0; }
  :root:not(#icc) .topbar nav a, :root:not(#icc) .topbar .btn { padding: 6px 8px; font-size: 12.5px; }
}
@media (max-width: 1100px) {
  :root:not(#icc) .topbar.open { background: var(--panel); }
  :root:not(#icc) .topbar.open nav { margin: 8px 0 0; }
  :root:not(#icc) .topbar.open nav a { padding: 12px 16px; font-size: 16px; background: var(--panel-2); }
  :root:not(#icc) .topbar nav a:hover, :root:not(#icc) .topbar .btn:hover:not(:disabled) { transform: none; }
}
:root:not(#icc) .bulk { background: color-mix(in oklab, var(--brand) 14%, var(--panel)); color: var(--fg); border: 1px solid color-mix(in oklab, var(--brand) 40%, transparent); }
:root:not(#icc) .bulk .btn.ghost { color: var(--fg-2); }
:root:not(#icc) .bulk .btn.ghost:hover { background: color-mix(in oklab, var(--brand) 14%, transparent); color: var(--fg); }

/* butonul principal: degradeul violet → cyan din portal, în ambele variante */
:root:not(#icc) .btn.primary {
  background: linear-gradient(90deg, var(--brand), color-mix(in oklab, var(--brand) 40%, var(--accent)));
  border-color: transparent; color: #fff;
  box-shadow: 0 8px 24px -12px color-mix(in oklab, var(--brand) 80%, transparent);
}
:root:not(#icc) .btn.primary:hover:not(:disabled) {
  background: linear-gradient(90deg, var(--brand), color-mix(in oklab, var(--brand) 40%, var(--accent)));
  border-color: transparent; filter: brightness(1.08); transform: translateY(-1px);
}
:root:not(#icc) .chip.on, :root:not(#icc) .cav, :root:not(#icc) .mt-seg button.on, :root:not(#icc) .icon.pm-btn.on {
  background: var(--brand); border-color: var(--brand); color: #fff;
}
:root:not(#icc) .seg button.on { color: var(--brand-text); }
:root:not(#icc) .folders button.on span { background: color-mix(in oklab, var(--brand) 18%, transparent); color: var(--brand-text); }
:root:not(#icc) .modal-bg { background: color-mix(in oklab, var(--ink) 65%, transparent); }

/* documentele rămân cum erau: albe, cu fontul lor */
.c-paper { font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif; }

/* la tipărire: exact culorile și fontul de dinainte de temă */
@media print {
  :root:not(#icc), :root:not(#icc)[data-theme] {
    color-scheme: light;
    --navy: #1F3864; --navy-2: #2c4a80; --navy-hover: #172a4d;
    --bg: #f3f6f9; --card: #ffffff; --card-hover: #fcfdfd; --topbar-bg: #1F3864;
    --line: #e2e8f0; --line-light: #f1f5f9;
    --text: #0f172a; --muted: #64748b; --placeholder: #94a3b8;
    --green: #15803d; --red: #b91c1c; --amber: #b45309; --blue: #1d4ed8; --purple: #6d28d9; --teal: #0f766e; --gray: #475569;
    --green-bg: #dcfce7; --red-bg: #fee2e2; --amber-bg: #fef3c7; --blue-bg: #dbeafe; --purple-bg: #ede9fe; --teal-bg: #ccfbf1; --gray-bg: #f1f5f9;
    --input-bg: #ffffff; --input-border: #cbd5e1;
  }
  html:not(#icc), html:not(#icc) body { font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif; background: #fff; }
  .icc-grid { display: none; }
}
