/* =======================================================
   Header & Pills – elegant minimal v2
   (glassy pills, hairline borders, subtle shadows)
   ======================================================= */

/* Local tokens for this file */
:root{
  --hdr-height: 100px;
  --pill-h: 38px;
  --pill-px: 14px;
  --pill-gap: 10px;

  --hairline: rgba(255,255,255,.08);
  --hairline-strong: rgba(255,255,255,.12);

  --pill-bg-1: rgba(255,255,255,.06);
  --pill-bg-2: rgba(255,255,255,.02);

  --pill-shadow: 0 6px 16px rgba(0,0,0,.20);
  --pill-shadow-hover: 0 10px 24px rgba(0,0,0,.26);

  --focus-ring: 0 0 0 2px rgba(16,185,129,.35);
}

/* Yleinen runko */
body{
  background-color: var(--primary-bg);
  font-family: 'Inter', sans-serif;
}

/* Yläosa */
#top-block{
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: var(--hdr-height);
  background-color: var(--primary-bg);
  z-index: 10000;

  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* Ohut linja yläosan alle */
.header-line{
  position: fixed;
  top: var(--hdr-height); left: 0;
  width: 100%; height: .5px;
  background-color: var(--line-color);
  z-index: 4000000;
}

/* Logo vasemmalle – glassy kapseli ilman hoveria */
#logo-container{
  position: fixed;
  top: 35px; left: 30px;
  z-index: 1220000;
  display: inline-flex; align-items: center; justify-content: center;
  padding: 8px 10px;
}
#logo{ height: 26px; }

/* Oikean reunan painikkeet */
#header-right{
  position: fixed;
  top: 30px; right: 35px;
  z-index: 9999;
  display: flex;
  align-items: center;
  gap: 5px;
}

/* Yhteinen pillityyli (button + anchor) */
.view-toggle-button,
#toggle-company-info .user-pill,
#back-link.pill{
  -webkit-tap-highlight-color: transparent;
  display: inline-flex; align-items: center; justify-content: center;
  gap: var(--pill-gap);
  height: var(--pill-h);
  padding: 0 var(--pill-px);
  border: 0; border-radius: 9999px;
  font-size: 14px; font-weight: 500; letter-spacing: -.01em; line-height: 1;
  cursor: pointer; text-decoration: none;
  color: var(--white);
  background: linear-gradient(180deg, var(--pill-bg-1), var(--pill-bg-2));
  box-shadow: inset 0 0 0 1px var(--hairline), var(--pill-shadow);
  transition: transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease;
  will-change: transform, box-shadow;
}
.view-toggle-button:hover,
#toggle-company-info .user-pill:hover,
#back-link.pill:hover{
  transform: translateY(-.5px);
  background: linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
  box-shadow: inset 0 0 0 1px var(--hairline-strong), var(--pill-shadow-hover), 0 0 24px rgba(16,185,129,.10);
}
.view-toggle-button:active,
#toggle-company-info .user-pill:active,
#back-link.pill:active{ transform: translateY(.5px); }
.view-toggle-button:focus-visible,
#toggle-company-info .user-pill:focus-visible,
#back-link.pill:focus-visible{
  outline: none;
  box-shadow: inset 0 0 0 1px var(--hairline-strong), var(--pill-shadow), var(--focus-ring);
}

/* Chat-nappi (hillitty gradient) */
.view-toggle-button i{ font-size: 18px; opacity:.9; line-height:0; }

/* Käyttäjähallinta – ikoni + org-nimi pillerissä */
#toggle-company-info{ display: flex; align-items: center; }
#toggle-company-info .user-pill{ border: 0; } /* reunaviiva tulee yhteisestä tyylistä */
#toggle-company-info .user-pill i{
  font-size: 16px; color: var(--white); opacity:.9; line-height:0;
}
#toggle-company-info .user-pill .org-name{
  font-size: 13px; font-weight: 500;
  color: var(--white); opacity:.95;
  max-width: 28ch;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

/* Mobiili: näytetään vain ikoni */
@media (max-width: 900px){
  #toggle-company-info .user-pill{ padding: 0 10px; width: var(--pill-h); }
  #toggle-company-info .user-pill .org-name{ display: none; }
}

/* Mahd. lisälinkin tyyli logon vieressä */
#logo + span{
  font-family: 'Inter', sans-serif;
  font-weight: 800;
  color: var(--text-primary);
  position: relative;
  top: -5px; left: -7px;
}

/* Yleiset utilit */
.hidden{ display: none !important; }
.visible{ display: block !important; }

/* ----------------------------------------------------
   Back-link: container
   ---------------------------------------------------- */
#back-link-container{
  position: fixed;
  top: 40px; left: 70px;
  z-index: 1000;
  pointer-events: none; /* container ei estä klikkauksia, ankkurit hoitavat sen */
}

/* ----------------------------------------------------
   Yleinen ankku-asettelu
   ---------------------------------------------------- */
#back-link-container a{
  pointer-events: auto;
  text-decoration: none;
  display: inline-flex; align-items: center;
  gap: 10px;
  font-family: 'Inter', sans-serif;
  font-size: 14px; line-height: 1;
  color: var(--white);
  transition: transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease;
  will-change: transform, box-shadow;
}

/* ----------------------------------------------------
   1) Pill (sama lasimainen tyyli)
   ---------------------------------------------------- */
#back-link.pill{ /* perusmalli tulee yhteisestä .pill-tyylistä */
  padding: 0 var(--pill-px);
}
#back-link.pill i{ font-size: 16px; line-height:0; }
#back-link.pill:where(a:only-child){
  padding-left: 12px; padding-right: 12px;
}

/* ----------------------------------------------------
   2) Circle (pyöreä ikonipainike) — valinnainen alternativa
   ---------------------------------------------------- */
#back-link.circle{
  padding: 10px 12px;
  border-radius: 50%;
  border: 1px solid var(--hairline);
  background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));
  box-shadow: 0 6px 18px rgba(0,0,0,.22);
}
#back-link.circle:hover{
  transform: translateY(-.5px) scale(1.02);
  border-color: var(--hairline-strong);
  box-shadow: 0 10px 26px rgba(0,0,0,.30);
}
#back-link.circle i{ font-size: 18px; line-height:0; }

/* ----------------------------------------------------
   3) Flat ghost (hillitty, reunallinen) — valinnainen alternativa
   ---------------------------------------------------- */
#back-link.flat{
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid var(--hairline);
  background: transparent;
  box-shadow: none;
  color: var(--text-primary, var(--white));
}
#back-link.flat:hover{
  transform: translateY(-.5px);
  background: rgba(255,255,255,.02);
  box-shadow: 0 6px 16px rgba(0,0,0,.18);
}

/* ----------------------------------------------------
   Responsiivinen siirto mobiilissa
   ---------------------------------------------------- */
@media (max-width: 900px){
  #back-link-container{ top: 18px; left: 12px; }
}

/* Liikkeen vähennys – saavutettavuus */
@media (prefers-reduced-motion: reduce){
  .view-toggle-button,
  #toggle-company-info .user-pill,
  #back-link.pill,
  #back-link.circle,
  #back-link.flat{
    transition: none;
  }
}
