 /* =======================================================
       PORTAL TOPBAR
    ======================================================= */
  :root{
          --portal:#2aa8ff;
      --journal:#b96bff;
      --science:#2fafff;
      --open:#47c67d;
      --fun:#ddd84c;
 }
    .portal-shell{
      padding:18px;
            background:
        radial-gradient(circle at right, rgba(42,168,255,.06), transparent 28%),
        linear-gradient(180deg, rgba(255,255,255,.015), rgba(255,255,255,0));
        padding-bottom:0px;
    }

    .portal-topbar{
      border-radius:24px;
      overflow:hidden;
      
    }

    .portal-topbar__row{
      display:grid;
      align-items:center;
      gap:14px;
      padding:14px 16px;
    }

    .portal-topbar__row--main{
      grid-template-columns:auto minmax(340px,1fr) auto;

    }

    .portal-topbar__row--sub{
      grid-template-columns:auto 1fr auto;
      background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01));
    }

    .brand{
      display:flex;
      align-items:center;
      gap:14px;
      min-width:0;
    }

    .brand a {
       color:#fff !important;
    }

    .brand__icon{
      width:44px;
      height:44px;
      border-radius:14px;
      display:grid;
      place-items:center;
      font-size:1.2rem;
      color:#fff !important;
      flex:0 0 auto;
    }

    .brand__text{
      display:flex;
      flex-direction:column;
      min-width:0;
    }

    .brand__eyebrow{
      font-size:.64rem;
      text-transform:uppercase;
      letter-spacing:.18em;
      color:var(--muted-2);
      line-height:1.1;
    }

    .brand__name{
      font-size:1rem;
      font-weight:800;
      color:var(--white);
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
    }

    .logo-img-new {
width: 40px;
height: 40px;
margin-right: 10px;
}

    .primary-nav{
      padding: 6px 14px; /* klidně 6px 14px */
      gap:16px;
      min-width:0;
      flex-wrap:wrap;
      margin-left:-20px;
    }

    .primary-nav{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
}

    .primary-nav__link{
      display:inline-flex;
      align-items:center;
      gap:8px;
      height:40px;
      padding:0 14px;
      border-radius:12px;
      border:1px solid transparent;
      color:var(--muted);
      text-decoration:none;
      white-space:nowrap;
      transition:.2s ease;
      background:transparent;
    }

    .primary-nav__link:hover{
      color:var(--white);
      background:rgba(255,255,255,.05);
      border-color:rgba(255,255,255,.06);
    }

    .primary-nav__link.is-active{
      color:var(--white);
      background:rgba(255,255,255,.08);
      border-color:rgba(255,255,255,.10);
    }

    .top-actions{
      display:flex;
      align-items:center;
      gap:8px;
      justify-content:flex-end;
      flex-wrap:wrap;
    }

.topbar-cmdk{
    display:inline-flex;
    align-items:center;
    gap:10px;
    height:42px;
    padding:0 14px;
    font: inherit;


    border-radius:14px;



    cursor:pointer;
    transition:all .18s ease;
    backdrop-filter:blur(10px);
}

/* hover = jemné zvýraznění */
.topbar-cmdk:hover{
    background:rgba(255,255,255,0.09);
    border-color:rgba(255,255,255,0.18);
    color:#ffffff;
}

/* ikona */
.topbar-cmdk i{
    font-size:18px;
}

/* Ctrl+K */
.topbar-cmdk__hint{
    font-size:14px;
    letter-spacing:.05em;
    background:none !important;

}

/* lehký glow při focus */
.topbar-cmdk:focus-visible{
    outline:none;
    box-shadow:0 0 0 2px rgba(120,160,255,0.25);
}

    .btn,
    .icon-btn,
    .world-chip{
      border:0;
      outline:0;
      font:inherit;
      color:var(--text);
    }

    .btn{
      height:42px;
      padding:0 14px;
      border-radius:13px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.03);
      color:var(--muted);
      display:inline-flex;
      align-items:center;
      gap:8px;
      cursor:pointer;
      white-space:nowrap;
      transition:.2s ease;
    }

    .btn:hover{
      color:var(--white);
      background:rgba(255,255,255,.06);
      border-color:rgba(255,255,255,.10);
    }

    .btn--account{
      color:var(--white);
      background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.05));
      border-color:rgba(255,255,255,.15);
    }

    .icon-btn{
      width:42px;
      height:42px;
      border-radius:13px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.03);
      color:var(--muted);
      display:grid;
      place-items:center;
      cursor:pointer;
      transition:.2s ease;
    }

    .icon-btn:hover{
      color:var(--white);
      background:rgba(255,255,255,.06);
      border-color:rgba(255,255,255,.10);
    }

    .avatar{
      width:42px;
      height:42px;
      border-radius:14px;
      display:grid;
      place-items:center;
      font-weight:800;
      color:#fff;
      border:1px solid rgba(255,255,255,.14);
      background:linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.04));
    }

    .sub-left,
    .sub-center,
    .sub-right{
      display:flex;
      align-items:center;
      gap:10px;
      min-width:0;
      flex-wrap:wrap;
    }

    .sub-center{
      justify-content:center;
    }

    .sub-right{
      justify-content:flex-end;
    }

    .crumb{
      font-size:.92rem;
      color:var(--muted);
      white-space:nowrap;
    }

    .crumb strong{
      color:var(--white);
    }

    .badge{
      height:32px;
      padding:0 12px;
      border-radius:999px;
      display:inline-flex;
      align-items:center;
      gap:8px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.03);
      color:var(--muted);
      font-size:.84rem;
      white-space:nowrap;
    }

    .badge--portal{
       color:var(--color-primary);
      background:rgba(42,168,255,.10);
      border-color:rgba(42,168,255,.22);
    }

    .world-switch{
      display:flex;
      align-items:center;
      gap:8px;
      flex-wrap:wrap;
      justify-content:center;
    }

    .world-switch__label{
      color:var(--muted-2);
      font-size:.73rem;
      text-transform:uppercase;
      letter-spacing:.14em;
      margin-right:2px;
    }

    .world-chip{
      height:36px;
      padding:0 14px;
      border-radius:11px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      text-decoration:none;
      font-weight:700;
      font-size:.88rem;
      white-space:nowrap;
      border:1px solid transparent;
      transition:.2s ease;
    }

    .world-chip:hover{
      transform:translateY(-1px);
      filter:brightness(1.05);
    }

    .world-chip--journal{
      color:var(--color-primary);
      background:rgba(185,107,255,.15);
      border-color:rgba(185,107,255,.26);
    }

    .world-chip--science{
      color:var(--color-primary);
      background:rgba(47,175,255,.15);
      border-color:rgba(47,175,255,.26);
    }

    .world-chip--open{
      color:var(--color-primary) !important;
      background:rgba(71,198,125,.15);
      border-color:rgba(71,198,125,.26);
    }

    .world-chip--fun{
      color:var(--color-primary) !important;
      background:rgba(221,216,76,.15);
      border-color:rgba(221,216,76,.26);
    }

    .green {
    color: #22c55e; /* moderní čistá zelená */
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* jemná záře */
.green::after {
    content: "";
    position: absolute;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(34, 197, 94, 0.35);
    filter: blur(6px);
    z-index: -1;
}

/* pulzování = živý systém */
.green i {
    animation: pulse-green 2s infinite;
}

@keyframes pulse-green {
    0% {
        transform: scale(1);
        text-shadow: 0 0 0 rgba(34, 197, 94, 0.6);
    }
    50% {
        transform: scale(1.1);
        text-shadow: 0 0 10px rgba(34, 197, 94, 0.9);
    }
    100% {
        transform: scale(1);
        text-shadow: 0 0 0 rgba(34, 197, 94, 0.6);
    }
}

    .badge--journal{
      color:#f5dcff;
      background:rgba(185,107,255,.10);
      border-color:rgba(185,107,255,.22);
    }

    .badge--science{
      color:#def4ff;
      background:rgba(47,175,255,.10);
      border-color:rgba(47,175,255,.22);
    }

    .badge--open{
      color:#e1f9ea;
      background:rgba(71,198,125,.10);
      border-color:rgba(71,198,125,.22);
    }

    .badge--fun{
      color:#fffdd8;
      background:rgba(221,216,76,.10);
      border-color:rgba(221,216,76,.22);
    }