/* Synaria unified theme + topbar (final) */
:root {
  --sy-topbar-h: 36px;
  --sy-header-h: 84px;
  --sy-scroll-offset: calc(var(--sy-topbar-h) + var(--sy-header-h) + 8px);

  /* --- HLAVNÍ DIVIZE --- */
  --syn-business-primary: #F37335;
  --syn-business-gradient: linear-gradient(135deg, #FDC830 0%, #F37335 100%);

  --syn-npo-primary: #FF5E62;
  --syn-npo-gradient: linear-gradient(135deg, #FF9966 0%, #FF5E62 100%);

  --syn-edu-primary: #1D976C;
  --syn-edu-gradient: linear-gradient(135deg, #93F9B9 0%, #1D976C 100%);

  --syn-web-primary: #0072FF;
  --syn-web-gradient: linear-gradient(135deg, #00C6FF 0%, #0072FF 100%);

  /* --- PLATFORMA --- */
  --syn-online-primary: #8E2DE2;
  --syn-online-gradient: linear-gradient(135deg, #8E2DE2 0%, #4A00E0 100%);

  --syn-cloud-primary: #4e54c8;
  --syn-cloud-gradient: linear-gradient(135deg, #8f94fb 0%, #4e54c8 100%);

  --syn-info-primary: #cb2d3e;
  --syn-info-gradient: linear-gradient(135deg, #ef473a 0%, #cb2d3e 100%);

  /* --- KORPORÁT --- */
  --syn-corp-dark: #0f172a;

  /* --- Pastel background tint per division (fallback) --- */
  --syn-bg-tint: rgba(255, 94, 98, 0.08);
  --syn-bg-tint-strong: rgba(255, 94, 98, 0.14);
}

/* Anchor offset for fixed topbar + header */
html { scroll-padding-top: var(--sy-scroll-offset); }
*[id] { scroll-margin-top: var(--sy-scroll-offset); }

/* Active division mapping */
html[data-syn="npo"] {
  --syn-primary: var(--syn-npo-primary);
  --syn-gradient: var(--syn-npo-gradient);
  --syn-primary-hover: #e44c50;
  --syn-bg-tint: rgba(255, 94, 98, 0.08);
  --syn-bg-tint-strong: rgba(255, 94, 98, 0.14);
}
html[data-syn="edu"] {
  --syn-primary: var(--syn-edu-primary);
  --syn-gradient: var(--syn-edu-gradient);
  --syn-primary-hover: #167a58;
  --syn-bg-tint: rgba(29, 151, 108, 0.08);
  --syn-bg-tint-strong: rgba(29, 151, 108, 0.14);
}
html[data-syn="web"] {
  --syn-primary: var(--syn-web-primary);
  --syn-gradient: var(--syn-web-gradient);
  --syn-primary-hover: #005bd1;
  --syn-bg-tint: rgba(0, 114, 255, 0.08);
  --syn-bg-tint-strong: rgba(0, 114, 255, 0.14);
}
html[data-syn="business"] {
  --syn-primary: var(--syn-business-primary);
  --syn-gradient: var(--syn-business-gradient);
  --syn-primary-hover: #d85f2b;
  --syn-bg-tint: rgba(243, 115, 53, 0.08);
  --syn-bg-tint-strong: rgba(243, 115, 53, 0.14);
}

/* Corporate: keep dark UI, but primary must be visible (icons, links) */
html[data-syn="corp"] {
  --syn-primary: #38bdf8;
  --syn-gradient: linear-gradient(135deg, #38bdf8 0%, #0ea5e9 100%);
  --syn-primary-hover: #0ea5e9;
  --syn-bg-tint: rgba(56, 189, 248, 0.08);
  --syn-bg-tint-strong: rgba(56, 189, 248, 0.14);
}

/* Fallback */
:root { --syn-primary: var(--syn-npo-primary); --syn-gradient: var(--syn-npo-gradient); --syn-primary-hover: #e44c50; }

/* Top black bar */
.sy-topbar {
  position: fixed;
  top: 0; left: 0; right: 0;
  height: var(--sy-topbar-h);
  background: var(--syn-corp-dark);
  color: #fff;
  z-index: 1060;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.sy-topbar .container {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.sy-topbar .sy-topbar-left {
  font-size: .85rem;
  font-weight: 700;
  opacity: .92;
  white-space: nowrap;
  color: rgba(255,255,255,.92);
  text-decoration: none;
}
.sy-topbar .sy-topbar-left:hover { color: #fff; text-decoration: underline; }
.sy-topbar .sy-topbar-right { display:flex; align-items:center; gap:10px; min-width: 0; }
.sy-topbar .sy-topbar-label { font-size: .85rem; font-weight: 600; opacity: .85; white-space: nowrap; }
.sy-topbar .sy-topbar-nav {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.sy-topbar .sy-topbar-nav::-webkit-scrollbar { display:none; }
.sy-topbar .sy-topbar-nav { scrollbar-width:none; }

.sy-topbar a {
  color: rgba(255,255,255,.92);
  text-decoration: none;
  font-size: .85rem;
  font-weight: 600;
  white-space: nowrap;
}
.sy-topbar a:hover { color: #fff; text-decoration: underline; }

.sy-topbar .sy-topbar-nav a.is-active{
  color: #fff;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
}

/* Push main header below topbar */
.fixed-top.sy-main-header { top: var(--sy-topbar-h); }

/* Safe logo sizing (prevents “rozjeté” loga) */
.sy-brand-logo, .nav-logo { height: 48px; width: auto; display: block; }
.navbar-brand { display: flex; align-items: center; }

/* Make buttons follow active theme */
.btn-theme, .btn-primary, .btn-primary-custom, .btn-edu-primary, .btn-sw-primary {
  background: var(--syn-gradient) !important;
  border: none !important;
  color: #fff !important;
}
.btn-theme:hover, .btn-primary:hover, .btn-primary-custom:hover, .btn-edu-primary:hover, .btn-sw-primary:hover {
  filter: brightness(0.98);
  transform: translateY(-1px);
}
a.link-theme, .text-theme { color: var(--syn-primary) !important; }

/* Bootstrap overrides to prevent “miš-maš” */
.text-primary { color: var(--syn-primary) !important; }
.bg-primary { background: var(--syn-primary) !important; }
.border-primary { border-color: var(--syn-primary) !important; }

.btn-outline-primary {
  color: var(--syn-primary) !important;
  border-color: var(--syn-primary) !important;
}
.btn-outline-primary:hover {
  background: var(--syn-primary) !important;
  border-color: var(--syn-primary) !important;
  color: #fff !important;
}

/* Pastel section helpers */
.sy-bg-tint{background:var(--syn-bg-tint)!important;}
.sy-bg-tint-strong{background:var(--syn-bg-tint-strong)!important;}
.sy-bg-tint-gradient{background:linear-gradient(180deg,var(--syn-bg-tint-strong) 0%, rgba(255,255,255,0) 70%)!important;}

/* Mobile: 2 rows in topbar (requested) */
@media (max-width: 575.98px){
  :root{ --sy-topbar-h: 72px; --sy-header-h: 74px; }

  .sy-topbar .container{
    flex-wrap: wrap;
    align-content: center;
    justify-content: flex-start;
  }
  .sy-topbar .sy-topbar-left{
    flex: 0 0 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 4px;
  }
  .sy-topbar .sy-topbar-right{
    flex: 0 0 100%;
    justify-content: flex-start;
  }
  .sy-topbar .sy-topbar-label{ display:none; }
  .sy-topbar .sy-topbar-nav{
    overflow: visible;
    flex-wrap: wrap;
    gap: 8px 10px;
  }
  .sy-topbar a{ font-size: .78rem; }
}

/* Prevent Bootstrap green from leaking into brand UI */
.text-success{color: var(--syn-primary) !important;}
