


/* ------------------------------------- Begin "List of contents" ------------------------------------- */



/*
  1. .btn-numusic
  2. article
  3. body html
  4. category
  5. comments-page
  6. flags
  7. Formatowanie tekstu
  8. go_premium_btn
  9. header
  10. img video audio
  11. nu_buttons
  12. p h2
  13. pagination
  14. post-actions   action-btn
  15. section
  16. select languages
  17. show more less
  18. unmute
  19. rwd
  20. popup
*/


/* -------------------------------------- End "List of contents" -------------------------------------- */




/* --------------------------------------- Begin ".btn-numusic" --------------------------------------- */

.btn-numusic-container {
  padding: 20px;
}



.btn-numusic {
  display: block;
  margin: 0 auto;
  max-width: 500px;
  font-size: 23px;
  line-height: 1;
  font-weight: 600;
  text-decoration: none;
  padding: 20px;
  border-radius: 9999px;
  border: 3px solid var(--gold);
  background: #fff;
  color: var(--gold);
  text-align: center;
}

.btn-numusic:hover {
  color: #fff;
    background: var(--gold) url('pasek.svg') center / cover no-repeat;
  
  color: #fff;
}


/* ---------------------------------------- End ".btn-numusic" ---------------------------------------- */




/* ------------------------------------------ Begin "article" ----------------------------------------- */

article {
  padding: 100px 0; 
}


/* ------------------------------------------- End "article" ------------------------------------------ */




/* ----------------------------------------- Begin "body html" ---------------------------------------- */

html {
  margin: 0;
  padding: 0;
  background-color: #fff;
}

body {
  margin: 0;
  padding: 1px 0;
  background-color: #f5f5f5;

  font-size:18px;
  font-family: 'Nunito Sans', sans-serif;
  line-height: 1.5;
  color: #444;

}

a {
  text-decoration: none;
  color: rgba(168,113,25,1);
}

a:hover {
  text-decoration: underline; 
}


/* ------------------------------------------ End "body html" ----------------------------------------- */




/* ----------------------------------------- Begin "category" ----------------------------------------- */


:root
{
  /* 
    Zmienna na złoty — łatwo zmienisz odcień w jednym miejscu.
    Wartość #C9A227 to przyjemny, ciepły złoty; możesz podmienić na #d4af37 (metaliczny gold).
  */
  --gold: #C9A227;
}

.category
{
  /* Usuwamy domyślne wcięcia listy i ustawiamy flexbox do wyśrodkowania elementów */
  margin: 0;
  padding: 8px;
  list-style: none;

  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;

  /* Równy odstęp między "przyciskami" w nowoczesny sposób */
  gap: 8px;
}

.category li
{
  /* Trzymamy li jako "pojemnik" bez dodatkowych marginesów */
  margin: 0;
  padding: 0;
}

.category a
{
  /* Mały, kompaktowy rozmiar przycisku */
  display: inline-block;
  font-size: 14px;
  line-height: 1; /* ciasno, by wizualnie były "malutkie" */
  font-weight: 600;
  text-decoration: none;

  /* Wnętrze i promień — "pigułka" */
  padding: 6px 10px;
  border-radius: 9999px;

  /* Złota ramka 3px, białe wypełnienie, złoty tekst */
  border: 3px solid var(--gold);
  background: #fff;
  color: var(--gold);

  /* Gładkie przejścia stanów */
  transition: background-color 120ms ease, color 120ms ease, box-shadow 120ms ease, transform 60ms ease;
}

.category a:hover
{
  /* Delikatne podbicie tła przy hoverze, by "zareagował", ale został pusty */
  background: rgba(201, 162, 39, 0.08);
}

.category a:active
{
  /* Lekki efekt "kliknięcia" */
  transform: translateY(1px);
}

.category a:focus-visible
{
  /* Wyraźny obrys dla użytkowników klawiatury ponad złotą ramką */
  outline: none;
  box-shadow: 0 0 0 3px rgba(201, 162, 39, 0.35);
}

/* 
  Stan aktywny:
  - Możesz go nadać klasą .active (jak w Twoim HTML) lub semantycznie przez aria-current="page".
  - Wypełnienie złotem, tekst biały, by mocno się odróżniał.
*/
.category a.active,
.category a[aria-current="page"]
{
  background: var(--gold);
  color: #fff;
}

/* 
  Drobny polishing: jeśli aktywny jest też :hover, zostawiamy spójne wypełnienie
  i dokładamy subtelną poświatę, by sygnalizować interakcję.
*/
.category a.active:hover,
.category a[aria-current="page"]:hover
{
  box-shadow: 0 0 0 3px rgba(201, 162, 39, 0.25) inset, 0 0 0 2px rgba(201, 162, 39, 0.2);
}

/* 
  Opcjonalnie: jeżeli chcesz, by "malutkie" były jeszcze ciaśniejsze na bardzo małych ekranach,
  można minimalnie zmniejszyć padding.
*/
@media (max-width: 360px)
{
  .category a
  {
    padding: 5px 8px;
    font-size: 11px;
  }
}



/* ------------------------------------------ End "category" ------------------------------------------ */




/* --------------------------------------- Begin "comments-page" -------------------------------------- */

/* 
  Główny kontener komentarzy – ma wypełnić .popup-content.
  box-sizing: border-box – żeby padding/liczenie szerokości działało poprawnie.
*/
.comments-popup
{
  flex: 1 1 auto;
  min-height: 0;           /* KLUCZ: pozwól dzieciom mieć scroll */
  width: 100%;
  padding: 6px;
  border: 1px solid #e6e6e6;
  background: #fff;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 6px 24px rgba(0,0,0,0.08);
  position: relative;
  overflow: visible;       /* pozwól liście narysować pasek przewijania */
  box-sizing: border-box;  /* ✅ poprawka */
}

/* Wiersz 1: nagłówek – zawsze cały */
.comments-popup__header
{
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 48px 10px 10px; /* bufor po prawej na X */
  border-bottom: 1px solid #f0f0f0;
  z-index: 1; /* niżej niż X */
}

.comments-popup__title
{
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
}

/* Kontener na wiersz 2 i 3 – wypełnia resztę */
.comments-popup__grid
{
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 10px;
}

/* Wiersz 2: LISTA — jedyny pionowy scroll */
.comments-popup__list
{
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: scroll;
  scrollbar-gutter: stable both-edges;
  padding: 0 8px 0 4px;
  margin-right: 0;
  background-clip: border-box;
}

.comments-popup__list::-webkit-scrollbar
{
  width: 12px;
}

.comments-popup__list::-webkit-scrollbar-thumb
{
  background: #c9c9c9;
  border-radius: 6px;
}

.comments-popup__list::-webkit-scrollbar-track
{
  background: transparent;
}

@supports (scrollbar-width: thin)
{
  .comments-popup__list
  {
    scrollbar-width: auto;
    scrollbar-color: #bfbfbf transparent;
  }
}

/* Wiersz 3: COMPOSER */
.comments-popup__composer
{
  flex: 0 0 auto;
  border-top: 1px solid #f3f3f3;
  padding: 8px 10px 10px 10px;
  background: #fff;
}

/* ====== LISTA KOMENTARZY ====== */

.comments       { display: block; }

.comment
{
  border: 1px solid #eee;
  background: #fff;
  border-radius: 10px;
  padding: 12px 14px;
  margin: 10px 0;
  box-shadow: 0 1px 2px rgba(0,0,0,0.03);
}

.comment--reply
{
  margin-left: 28px;
  background: #fcfdff;
}

/* Soft-deleted */
.comment--deleted .comment__content
{
  font-style: italic;
  color: #8a8a8a;
}

.comment--deleted .comment__actions
{
  display: none;
}

.comment__meta
{
  display: flex;
  gap: 10px;
  align-items: baseline;
  margin-bottom: 6px;
  flex-wrap: wrap;
}

.comment__author  { font-weight: 600; }

.comment__date
{
  font-size: 12px;
  color: #7a7a7a;
}

.comment__content
{
  line-height: 1.55;
  white-space: pre-wrap;
  margin-bottom: 8px;
}

.comment__actions
{
  display: flex;
  gap: 12px;
  align-items: center;
}

/* Like – ikony tylko w CSS */
.comment__like
{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #eee;
  background: #fafafa;
  border-radius: 20px;
  padding: 6px 10px;
  font-size: 14px;
  cursor: pointer;
}

.comment__like:hover  { background: #f2f2f2; }

.comment__like-icon
{
  width: 18px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  display: inline-block;
}

.comment__like .comment__like-icon
{
  background-image: url('/user/public/template/comment/heart-outline.png');
}

.comment__like.is-liked .comment__like-icon
{
  background-image: url('/user/public/template/comment/heart.png');
}

.comment__like-count { font-weight: 600; }

.comment__reply,
.comment__remove
{
  border: 1px solid #eee;
  background: #fff;
  border-radius: 6px;
  padding: 6px 10px;
  font-size: 13px;
  cursor: pointer;
}

.comment__reply:hover,
.comment__remove:hover
{
  background: #f7f7f7;
}

.comment__login-hint
{
  margin-left: auto;
  font-size: 12px;
  color: #2f7cff;
  text-decoration: underline;
}

/* ====== COMPOSER ====== */

.emoji-bar
{
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 8px;
}

.emoji-bar--center { justify-content: center; }

.emoji-btn
{
  border: 1px solid #eee;
  background: #fff;
  border-radius: 8px;
  padding: 4px 6px;
  line-height: 1;
  cursor: pointer;
}

.emoji-btn:hover { background: #f9f9f9; }

.chat-write
{
  display: flex;
  width: 100%;
  margin-top: 5px;
  box-sizing: border-box;
  align-items: stretch;
  gap: 8px;
}

.chat-text
{
  flex: 1 1 auto;
  min-height: 44px;
  max-height: 180px;
  overflow-y: auto;
  padding: 8px 10px;
  border: 2px solid #ddd;
  border-radius: 10px;
  box-shadow: none;
  font: inherit;
}

.chat-text.is-empty:before
{
  content: attr(placeholder);
  color: #9aa3ab;
  pointer-events: none;
}

.chat-text:focus
{
  border-color: rgb(0,191,255);
  background-color: rgba(0,191,255,0.08);
  outline: none;
}

.chat-button
{
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  border: 2px solid #ddd;
  background-repeat: no-repeat;
  background-size: 60%;
  background-position: center;
  background-image: url('/user/public/template/comment/send-message.svg');
  cursor: pointer;
}

.chat-button:hover { background-color: #eee; }

/* Baner „odpowiadasz do …” */
.reply-banner
{
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 10px;
  border: 1px dashed #cfe2ff;
  background: #f5f9ff;
  color: #234a84;
  border-radius: 8px;
  margin-bottom: 8px;
  font-size: 14px;
}

.reply-banner__close
{
  border: none;
  background: transparent;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  color: #234a84;
}



/* Delikatne podświetlenie świeżo dodanego komentarza */
.comment--flash
{
  background-color: #e9f9ec; /* lekka, zielonkawa */
  transition: background-color 600ms ease;
}


/* Płynne zwijanie elementu przy usuwaniu */
.comment.is-collapsing
{
  transition: height 250ms ease, padding-top 250ms ease, padding-bottom 250ms ease,
              margin-top 250ms ease, margin-bottom 250ms ease, opacity 200ms ease;
  overflow: hidden;
  opacity: 0.0;
}

/* Delikatny flash po soft-delete (opcjonalnie) */
.comment--deleted.comment--flash
{
  background-color: #f3f6fa;
  transition: background-color 800ms ease;
}



/* ---------------------------------------- End "comments-page" --------------------------------------- */




/* ------------------------------------------- Begin "flags" ------------------------------------------ */

.flag-pl {
  background-image: url('img_flags/pl.jpg'); 
}
.flag-en {
  background-image: url('img_flags/en.jpg'); 
}
.flag-de {
  background-image: url('img_flags/de.jpg'); 
}
.flag-fr {
  background-image: url('img_flags/fr.jpg'); 
}
.flag-es {
  background-image: url('img_flags/es.jpg'); 
}
.flag-it {
  background-image: url('img_flags/it.jpg'); 
}
.flag-pt {
  background-image: url('img_flags/pt.jpg'); 
}
.flag-ru {
  background-image: url('img_flags/ru.jpg'); 
}
.flag-no {
  background-image: url('img_flags/no.jpg'); 
}
.flag-nl {
  background-image: url('img_flags/nl.jpg'); 
}
.flag-el {
  background-image: url('img_flags/el.jpg'); 
}
.flag-tr {
  background-image: url('img_flags/tr.jpg'); 
}
.flag-ar {
  background-image: url('img_flags/ar.jpg'); 
}
.flag-ja {
  background-image: url('img_flags/ja.jpg'); 
}
.flag-uk {
  background-image: url('img_flags/uk.jpg'); 
}
.flag-cs {
  background-image: url('img_flags/cs.jpg'); 
}
.flag-sv {
  background-image: url('img_flags/sv.jpg'); 
}
.flag-fi {
  background-image: url('img_flags/fi.jpg'); 
}
.flag-hr {
  background-image: url('img_flags/hr.jpg'); 
}
.flag-sk {
  background-image: url('img_flags/sk.jpg'); 
}
.flag-hi {
  background-image: url('img_flags/hi.jpg'); 
}
.flag-bg {
  background-image: url('img_flags/bg.jpg'); 
}
.flag-da {
  background-image: url('img_flags/da.jpg'); 
}
.flag-en-us {
  background-image: url('img_flags/en-us.jpg'); 
}
.flag-pt-br {
  background-image: url('img_flags/pt-br.jpg'); 
}


/* -------------------------------------------- End "flags" ------------------------------------------- */




/* ------------------------------------ Begin "Formatowanie tekstu" ----------------------------------- */

.AlignLeft {
  text-align: left;
}

.AlignCenter {
  text-align: center;
}

.AlignRight {
  text-align: right;
}

.AlignJustify {
  text-align: justify;
}

.center {
  text-align: center; 
}


.animate {
  animation-name: fadeInDown;
  animation-duration: 0.5s;  
}

section p {
 	margin: 20px auto; 
}


section .gold {

color: rgba(255,240,169,1);
background: linear-gradient(90deg, rgb(237, 214, 107) 0%, rgba(168,113,25,1) 33%, rgba(255,235,154,1) 46%, rgba(176,125,39,1) 57%, rgba(186,138,52,1) 64%, rgba(190,143,57,1) 72%, rgba(242,205,120,1) 100%);
  background-size: auto;
  background-clip: border-box;
background-size: 100%;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}


section  h2 {
 color: rgba(255,240,169,1);
background: linear-gradient(90deg, rgb(237, 214, 107) 0%, rgba(168,113,25,1) 33%, rgba(255,235,154,1) 46%, rgba(176,125,39,1) 57%, rgba(186,138,52,1) 64%, rgba(190,143,57,1) 72%, rgba(242,205,120,1) 100%);
  background-size: auto;
  background-clip: border-box;
background-size: 100%;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent; 
}


section  p.grey-box {
  background: #eee;
  border-radius: 15px;
  padding: 20px 40px;
}


section p.gold-box {
background: linear-gradient(90deg, rgba(255,240,169,1) 0%, rgba(168,113,25,1) 33%, rgba(255,235,154,1) 46%, rgba(176,125,39,1) 57%, rgba(186,138,52,1) 64%, rgba(190,143,57,1) 72%, rgba(242,205,120,1) 100%);
  border-radius: 15px;
  padding: 20px 40px;
}





section ul,

section ol {
  margin: 20px auto; 
  padding: 0;
}


section  li { 
  margin: 10px 0;
  padding: 0 0 0 50px;
  list-style: none;
  background-image: url('nulina-favicon.svg');
  background-size: 32px;
  background-repeat: no-repeat;
  background-position: left 2px;
  box-sizing: border-box;

}





section  .li-margin li {
  margin: 30px 0; 
}


section  blockquote {
  margin: 20px auto; 
  border-left: 5px solid #ddd;
  padding: 15px 0 15px 25px;
  box-sizing: border-box;
  font-style: italic;
  color: #999;
}




section  hr {
  border: none;
  height: 200px;
  width: 100%;
  background-repeat: no-repeat;
  background-size: 200px;
  background-position: center;
  background-image: url('https://nulina.life/user/public/template/serce.png');
  margin: 20px auto;
}




section  .add_icon {
   padding-top: 84px;
  background-repeat: no-repeat;
  background-size: 64px;
  background-position: center 20px;
  background-image: url('nulina-favicon.svg');
} 






article 
section ul,
article 
section  ol {
  margin: 20px auto; 
  padding: 0;
}

article 
section li { 
  margin: 10px 0;
  padding: 0 0 0 50px;
  list-style: none;
  background-image: url('nulina-favicon.svg');
  background-size: 24px;
  background-repeat: no-repeat;
  background-position: left 2px;
  box-sizing: border-box;

}






/* ------------------------------------- End "Formatowanie tekstu" ------------------------------------ */




/* -------------------------------------- Begin "go_premium_btn" -------------------------------------- */

.go_premium_btn {
  text-align: center;
  display: block;
  padding: 20px;
  font-weight: bold;
  margin: 20px 0;
  border-radius: 9999px;
  border: 3px solid var(--gold);
  background: #fff;
  color: var(--gold);
}

.go_premium_btn:hover {
  text-decoration: none;
    background: var(--gold) url('pasek.svg') center / cover no-repeat;
  
  color: #fff;
}


/* --------------------------------------- End "go_premium_btn" --------------------------------------- */




/* ------------------------------------------ Begin "header" ------------------------------------------ */

header {
  width: 100%;


  background: #fff;

background-image: url('https://nulina.life/user/public/template/pasek.svg');
background-repeat: no-repeat;
background-position: bottom;  
background-size: 100% 5px;
}


header
{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  transition: transform 0.7s; /* płynne przesuwanie */
  padding: 10px;
  box-sizing: border-box;
}

header.is-hidden
{
  transform: translateY(calc(-100% - 40px));
}


header > div
{
  display: flex;              /* Ustawienie flexboxa */
  justify-content: space-between; /* Elementy na dwóch końcach */
  align-items: center;        /* Wyrównanie w pionie */
  padding: 10px;         /* Odstępy wewnętrzne dla estetyki */
  background-color: #fff;     /* Możesz zmienić tło nagłówka */
box-sizing: border-box;
}



header > div > div
{
  display: flex;              /* Ustawienie flexboxa */
  justify-content: space-between; /* Elementy na dwóch końcach */
  align-items: center;        /* Wyrównanie w pionie */
  padding: 0 10px;         /* Odstępy wewnętrzne dla estetyki */
  background-color: #fff;     /* Możesz zmienić tło nagłówka */
box-sizing: border-box;
}

.opne-languages-box {
  
  width: 50px;
  height: 50px;
  line-height: 50px;
  box-sizing: border-box;
  
  

  display: block;
  font-size: 18px;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center;
  color: rgb(201, 162, 39);
  
  
  background-image: url('nu/2.png');
  background-size: 50px 50px;
  background-position: center;
  background-repeat: no-repeat;
  
}

.opne-languages-box:hover {
  text-decoration: none;
}

header a {
  margin: 0 20px;  
}

header img
{
  height: 50px; 
  display: block;
}


@media only screen and (max-width: 600px) {
	header img {
       height: 30px;     
  }
  
header {
  padding: 10px 0;  
}
  
header a {
  margin: 0 5px;  
}
  
header > div
{
  padding: 10px 0;
}



header > div > div
{
  padding: 0;
}
  
  
  
  
.opne-languages-box {
  width: 30px;
  height: 30px;
  background-size: 30px 30px;  
  line-height: 30px;
  font-size: 14px;
}  
  
  
  
  
}




/* ------------------------------------------- End "header" ------------------------------------------- */




/* -------------------------------------- Begin "img video audio" ------------------------------------- */

article img,
article video {
  max-width: 100%;
  max-height: 100vh;
  display: block;
  margin: 0 auto;
}

article audio {
  width: 100%;
  margin: 10px 0 0 0;
}


/* --------------------------------------- End "img video audio" -------------------------------------- */




/* ---------------------------------------- Begin "nu_buttons" ---------------------------------------- */

.nu_buttons {
  position: fixed;
  left: 20px;
  bottom: 10px;
  display: block;
}



.nuporta_button {
  background: #fff;
  display: block;
  padding: 10px;
  border-radius: 30px;
  border: 3px solid rgb(203,138,151);
  margin: 10px 0;
}

.nuporta_button img {
  display: block;
  height: 40px;
}

@media only screen and (max-width: 600px) {
  .nuporta_button img {
    height: 25px;
  }
}


/* ----------------------------------------- End "nu_buttons" ----------------------------------------- */




/* ------------------------------------------- Begin "p h2" ------------------------------------------- */

p {
  font-size: 18px;
  margin: 10px 0;
}

h2 {
  font-size: 23px; 
  margin: 20px 0 0 0;
}


article a


{
  word-break: break-word;  /* stara metoda */
  overflow-wrap: break-word; /* nowa, lepsza */
}


/* -------------------------------------------- End "p h2" -------------------------------------------- */




/* ---------------------------------------- Begin "pagination" ---------------------------------------- */

/* 
  Główne opakowanie paginacji 
  - centrowanie wewnątrz kontenera
  - ograniczenie szerokości do 1200 px
  - automatyczne łamanie linii, gdy zabraknie miejsca
*/
.pagination
{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px; /* odstęp między kółkami */
  max-width: 1200px;
  margin: 20px auto; /* centrowanie i oddech od innych elementów */
  padding: 0;
  list-style: none;
}

/* 
  Każdy link paginacji jako kółko 
  - bazujemy na stylu z .opne-languages-box
*/
.pagination li a
{
  width: 50px;
  height: 50px;
  line-height: 46px; /* pionowe wycentrowanie tekstu w kółku */
  border: 3px solid rgb(201, 162, 39);
  border-radius: 50%; /* kółko */
  display: inline-block;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  color: rgb(201, 162, 39);
  text-decoration: none;
  transition: all 0.3s ease; /* płynna animacja hovera */
  box-sizing: border-box;
}

/* 
  Efekt hover 
  - zmiana tła i koloru tekstu
*/
.pagination li a:hover
{
  background: rgb(201, 162, 39);
  color: #fff;
}

/* 
  Styl dla aktywnego elementu paginacji 
  - taki sam efekt jak hover, ale na stałe
*/
.pagination li a.active
{
  background: rgb(201, 162, 39);
  color: #fff;
  cursor: default;
}



/* ----------------------------------------- End "pagination" ----------------------------------------- */




/* --------------------------------- Begin "post-actions   action-btn" -------------------------------- */

:root
{
  --gold: #C9A227;
}

.post-actions
{
  margin-top: 20px;
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 768px)
{
  .post-actions
  {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 400px)
{
  .post-actions
  {
    grid-template-columns: 1fr;
  }
}

.action-btn
{
  /* Pozycjonowanie potrzebne dla pseudo-elementów */
  position: relative;
  overflow: hidden;

  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;

  width: 100%;

  font-size: 14px;
  line-height: 1;
  font-weight: 600;
  text-decoration: none;

  padding: 10px 12px;
  border-radius: 9999px;

  border: 3px solid var(--gold);
  background: #fff;
  color: var(--gold);
  box-sizing: border-box;
  cursor: pointer;
  transition: color 120ms ease, box-shadow 120ms ease, transform 60ms ease;
}

/* Warstwa tła "pasek" – nie koliduje z ikoną */
.action-btn::after
{
  content: "";
  position: absolute;
  inset: 0;
  background: url('pasek.svg') center / cover no-repeat;
  opacity: 0;
  transition: opacity 120ms ease;
  pointer-events: none; /* nie blokuje kliknięć */
  z-index: 0;
}

/* Treść przycisku nad warstwą tła */
.action-btn > *
{
  position: relative;
  z-index: 1;
}

.action-btn-like
{
  padding-left: 48px; /* miejsce na ikonę */
}

/* Ikona "like" */
.action-btn-like::before
{
  content: "";
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  background: url('numusic_like.svg') center / contain no-repeat;
  z-index: 1;
  pointer-events: none;
}

/* ===============================
   HOVER – tylko tam, gdzie jest myszka
   =============================== */
@media (hover: hover) and (pointer: fine)
{
  .action-btn:hover::after
  {
    opacity: 1;
  }

  .action-btn:hover
  {
    color: #fff;
  }

  .action-btn:hover .count
  {
    color: #fff;
  }

  .action-btn.active:hover,
  .action-btn[aria-pressed="true"]:hover
  {
    box-shadow: 0 0 0 3px rgba(201, 162, 39, 0.25) inset,
                0 0 0 2px rgba(201, 162, 39, 0.2);
  }
}

/* ===============================
   ACTIVE – zawsze działa (desktop + mobile)
   =============================== */
.action-btn:active::after,
.action-btn.active::after,
.action-btn[aria-pressed="true"]::after,
.action-btn[aria-current="page"]::after
{
  opacity: 1;
}

.action-btn:active,
.action-btn.active,
.action-btn[aria-pressed="true"],
.action-btn[aria-current="page"]
{
  color: #fff;
}

.action-btn:active
{
  transform: translateY(1px);
}

.action-btn:focus-visible
{
  outline: none;
  box-shadow: 0 0 0 3px rgba(201, 162, 39, 0.35);
}

.action-btn.active .count,
.action-btn[aria-pressed="true"] .count
{
  color: #fff;
}

/* Disabled */
.action-btn[disabled],
.action-btn[aria-disabled="true"]
{
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}

@media (prefers-reduced-motion: reduce)
{
  .action-btn
  {
    transition: none;
  }

  .action-btn::after
  {
    transition: none;
  }
}

.action-btn .count
{
  font-weight: 600;
  color: var(--gold);
  min-width: 2ch;
  text-align: right;
}

/* Share button widoczny tylko na mobile */
[data-share]
{
  display: none;
}

@media (max-width: 768px)
{
  [data-share]
  {
    display: inline-flex;
  }
}



/* ---------------------------------- End "post-actions   action-btn" --------------------------------- */




/* ------------------------------------------ Begin "section" ----------------------------------------- */

section {
  max-width: 800px;

  background: #fff;
  border-radius: 10px;
  margin: 20px auto;
  padding: 20px;
}


/* ------------------------------------------- End "section" ------------------------------------------ */




/* ------------------------------------- Begin "select languages" ------------------------------------- */

#languages-box {
  display: none;
    width: 100%;
  height: 100%;
  position: fixed;
  z-index: 1001;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;  
}

#languages-box > div {
  cursor: pointer;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.4);
  backdrop-filter: blur(4px);
  display: flex;
  justify-content: center;  
  align-items: flex-start;
  position: relative;
  overflow: auto;
}


#languages-box ul {
  max-width: 900px;
  margin: 0;
  padding: 150px 0 90px 0;
  display: flex;  
  flex-wrap: wrap;
  width: 100%;
  
  background-repeat: no-repeat;
  background-size: 100px;
  background-position: center 25px;
  background-image: url('glob-white.svg');  
}


@media only screen and (min-width: 750px) {
  
#languages-box > div:after {
  content: "";
  position: absolute;
  width: 50px;
  height: 50px;
  top: 20px;
  right: 20px;
  z-index: 3000;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-image: url('close-white.svg');
}
  
  


}

#languages-box li {
  margin: 0;
  padding: 10px;
  width: 50%;
  box-sizing: border-box;  
  list-style: none;
}

#languages-box a {
  display: block;
  background-color: #fff;
  border-radius: 15px;
  padding: 15px 15px 15px 150px;
  box-sizing: border-box;
  width: 100%;
  height: 80px;
  line-height: 25px;
  font-weight: bold;
  color: #222;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: left center;
  font-size: 25px;
  transition: padding 1s;
  position: relative;
    overflow: hidden;
}

#languages-box a span {
  font-size: 16px;
  font-weight: normal;
}
  
#languages-box a:after {
 content: "";
  position: absolute;
  top: -60px;
  left: -55px;
  height: 200px;
  width: 200px;
  box-sizing: border-box;  
  display: block;
  border-radius: 300px;
  border: 20px solid #fff;
  
  /*
-webkit-box-shadow: 0px 0px 24px 0px rgba(66, 68, 90, 0.4);
-moz-box-shadow: 0px 0px 24px 0px rgba(66, 68, 90, 0.4);
box-shadow: 0px 0px 24px 0px rgba(66, 68, 90, 0.4);  */
  
}




#languages-box a:before {
  z-index: 2000;
 content: "";
  position: absolute;
  top: -60px;
  left: -85px;
  height: 200px;
  width: 200px;
  box-sizing: border-box;  
  display: block;
  border-radius: 300px;
  
  
-webkit-box-shadow: 0px 0px 24px 0px rgba(66, 68, 90, 0.4);
-moz-box-shadow: 0px 0px 24px 0px rgba(66, 68, 90, 0.4);
box-shadow: 0px 0px 24px 0px rgba(66, 68, 90, 0.4);  
  
}





#languages-box a:hover {
  padding-left: 180px;
  text-decoration: none;
}


@media only screen and (max-width: 970px) {
  
#languages-box ul {
  max-width: 500px; 
}

#languages-box li {
  width: 100%;
}
  
#languages-box a {
  padding: 0 15px 0 110px;
  box-sizing: border-box;
  width: 100%;
  height: 60px;
  line-height: 60px;
}
  
#languages-box a:hover {
  padding-left: 120px;
}  
  
  
  
  

#languages-box a:after {
  top: -70px;
  left: -95px;
  height: 200px;
  width: 200px;
}

#languages-box a:before {

  top: -70px;
  left: -115px;
  height: 200px;
  width: 200px;


  
}  
  
  
#languages-box > div {
  background: rgba(0,0,0,0.5);
  }
}


/* -------------------------------------- End "select languages" -------------------------------------- */




/* -------------------------------------- Begin "show more less" -------------------------------------- */


.toggle {
  font-weight:bold;
  text-decoration: underline;
  cursor: pointer;
}

/* Domyślnie ukrywamy pełną treść i "Pokaż mniej" */
.full_content {
  display: none;
}
.show_less {
  display: none;
}

/* Po kliknięciu toggle dodaje klasę .expanded do <section> */
section.expanded .full_content {
  display: block;
}
section.expanded .show_more {
  display: none;
}
section.expanded .show_less {
  display: inline;
}


/* --------------------------------------- End "show more less" --------------------------------------- */




/* ------------------------------------------ Begin "unmute" ------------------------------------------ */

.unmute
{
  display: table; 

  margin: 10px auto 0 auto;
  padding: 8px 12px;
  background: rgba(0, 0, 0, 0.85);
  color: #fff;
  font: 600 14px/1 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  border-radius: 999px;
  cursor: pointer;
  user-select: none;
  text-decoration: none;
  white-space: nowrap;
}

.unmute:focus
{
  outline: 2px solid #fff;
  outline-offset: 2px;
}



/* ------------------------------------------- End "unmute" ------------------------------------------- */




/* -------------------------------------------- Begin "rwd" ------------------------------------------- */

@media only screen and (max-width: 800px) {
  body {
    background: #fff; 
  }
  section {
 	margin: 3px auto;
	border-radius: 0;    
    border-bottom: 3px solid #ccc;
  }
}


/* --------------------------------------------- End "rwd" -------------------------------------------- */




/* ------------------------------------------- Begin "popup" ------------------------------------------ */

/* 
  Popup: pełnoekranowy kontener (centrowany).
  Scroll tylko wewnątrz komentarzy.
*/
.popup
{
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Półprzezroczyste tło */
.popup-background
{
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
}

/* Okno dialogowe (kolumna, bez własnego scrolla) */
.popup-box
{
  position: relative;
  width: min(90vw, 1200px);
  max-height: min(90vh, 700px);
  display: flex;
  flex-direction: column;
  background-color: #fff;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
  overflow: hidden;     /* klip dla zaokrągleń */
  min-height: 0;        /* KLUCZ: pozwól dzieciom się kurczyć */
}

/* Zawartość – kolumna; komentarze wypełnią całość */
.popup-content
{
  flex: 1 1 auto;
  display: flex;        /* dziecko (comments-popup) wypełni całość */
  flex-direction: column;
  min-height: 0;        /* KLUCZ: umożliwia scroll w potomkach */
  overflow: hidden;     /* brak scrolla na tym poziomie */
  padding: 0;
  background: transparent;
}

/* PRZYCISK ZAMYKANIA – zawsze w prawym górnym rogu */
.popup-box .close
{
  position: absolute;
  top: 12px;
  right: 12px;
  width: 32px;
  height: 32px;
  z-index: 10001;       /* ponad zawartością */
  opacity: 0.7;
  cursor: pointer;
}

.popup-box .close:hover
{
  opacity: 1;
}

.popup-box .close:before,
.popup-box .close:after
{
  position: absolute;
  left: 50%;
  top: 50%;
  content: '';
  height: 20px;
  width: 2px;
  background-color: #333;
  transform-origin: center;
  margin-left: -1px;
  margin-top: -10px;
}

.popup-box .close:before { transform: rotate(45deg); }
.popup-box .close:after  { transform: rotate(-45deg); }

@media (prefers-reduced-motion: reduce)
{
  .popup,
  .popup-box,
  .popup-background,
  .popup-content
  {
    transition: none !important;
    animation: none !important;
  }
}



/* -------------------------------------------- End "popup" ------------------------------------------- */

