/* PAGE — kolumna main na 100%; nagłówki, opis, listy podstron itd. na max var(--layout-max) */
#page{position:relative;margin:0 auto 30px;padding:0;text-align:left;width:100%;max-width:none;}
#page:after{content:"";display:table;clear:both;}

/* Treść (w tym .product-layout): max --layout-max; wyjątki: galerie/slidery obrazów bezpośrednio w #page (pełna szerokość kolumny) */
#page > *:not(ul[class^="images-"]):not(div[class^="images-slider"]):not(div[class^="images-"]){
  max-width:var(--layout-max);
  margin-left:auto;
  margin-right:auto;
  padding-left:var(--layout-pad-x);
  padding-right:var(--layout-pad-x);
  box-sizing:border-box;
  width:100%;
}
#page > ul[class^="images-"],
#page > div[class^="images-slider"],
#page > div[class^="images-"]{
  max-width:none;
  margin-left:0;
  margin-right:0;
  padding-left:0;
  padding-right:0;
  width:100%;
}
#page h1, .heading-1{margin:.8em 0 .4em;color:var(--color-secondary);font-size:clamp(1.5rem, 3vw, 1.8rem);font-weight:600;letter-spacing:-0.03em;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#page .msg.error h1, #page .msg.error .heading-1{margin-top:.4em;color:#fff;}
#page .msg.error.panel h1{margin:0;font-size:1rem;}

body.home #page h1{display:none;}
body:not(.is-product) #page h1,
body:not(.is-product) .heading-1{white-space:normal;overflow:visible;text-overflow:clip;}

/* PAGE - BREADCRUMB (navigation path) */
.breadcrumb{
  display:block;
  margin-bottom:1em;
  text-align:left;
}
.breadcrumb ol{list-style:none;margin:0;padding:0;}
.breadcrumb li{display:inline-block;}
.breadcrumb li:not(:first-child)::before{content:"\203A";display:inline-block;padding:0 .5em;color:#86868b;font-weight:bold;}
.breadcrumb a{color:var(--color-secondary-light);text-decoration:none;transition:color 0.2s;}
.breadcrumb a:hover{color:var(--color-link);}

/* Breadcrumb w listach produktów */
.page .breadcrumb{
  padding:0;
  background:none;
  border-radius:0;
  text-align:center;
}
.page .breadcrumb li{color:#86868b;}
.page .breadcrumb a{color:#86868b;}
.page .breadcrumb a:hover{color:var(--color-link);}

/* PAGE CONTENT (także .content__body — opis po edycji inline z admina) */
#page div.content{padding-top:1em;line-height:1.5em;}
#page div.content > ul:not([class*="images-"]), #page div.content > ol,
#page div.content .content__body > ul:not([class*="images-"]), #page div.content .content__body > ol{padding:0 0 0 2em;}
/* #page div.content > ul:after, #page div.content > ol:after{content:"";display:table;clear:both;} */ /* Uncomment if necessary */
#page div.content > ul:not([class*="images-"]) li, #page div.content > ol li,
#page div.content .content__body > ul:not([class*="images-"]) li, #page div.content .content__body > ol li{margin:.5em 0;padding:0;}
#page div.content > h2, #page div.content > h3,
#page div.content .content__body > h2, #page div.content .content__body > h3{font-size:1.5rem;line-height:2em;font-weight:normal;}
#page div.content > h3, #page div.content .content__body > h3{font-size:1.25rem;}
#page div.content > p, #page div.content .content__body > p{padding-bottom:1em;}

#page > time{color:#6e6e6e;}
@media screen and (min-width:960px){
  #page > time{position:absolute;top:2.5rem;right:0;}
}


/* PAGES FEATURES */
.features{width:100%;margin:1rem 0;border-collapse:collapse;border:1px solid var(--color-divider);font-size:1em;}
.features caption{padding:10px 12px;background:var(--color-white);color:var(--color-secondary);border:1px solid var(--color-divider);border-radius:var(--radius-sm) var(--radius-sm) 0 0;text-align:center;font-weight:600;}
.features tbody tr > *{padding:6px 9px;background:#fff;font-weight:normal;text-align:left;}
.features tbody tr:nth-child(even) > *{background:#fafafa;}
body.is-product .features tbody tr > *,
body.is-product .features tbody tr:nth-child(even) > *{background:#fff;}
body.is-product .features tbody td{color:var(--color-secondary);}

/* TAGS */
ul.tags{clear:both;display:flex;flex-wrap:wrap;align-items:center;padding:1rem 0;list-style:none;}
.tags li{display:inline-block;}
.tags a{display:inline-flex;margin:2px 5px;padding:2px 8px;border:1px solid var(--color-divider);}
.tags a:hover{color:var(--color-primary);border-color:var(--color-primary);}
.tags li.head a{margin:0;padding-left:0;border:0;}
.tags .icon{width:.875rem;fill:var(--color-primary);margin-right:.75em;}


/* COMMENTS */
#comments{clear:both;padding:1.5rem 0;}
#comments h2{padding-bottom:1rem;color:var(--color-secondary);font-size:1.375rem;font-weight:600;border-bottom:1px solid var(--color-divider);}
#comments article{width:100%;margin:1rem 0;padding-bottom:1rem;border-bottom:1px solid #eff0f3;}
#comments article.comment--has-rating{display:flex;gap:1rem;align-items:flex-start;}
#comments .comment-rating-col{flex:0 0 auto;padding-top:.15rem;}
#comments .comment-body{flex:1 1 0;min-width:0;}
/* Gwiazdki statyczne (wyświetlanie komentarza) */
.comment-stars{display:inline-flex;gap:.1rem;}
.comment-star{width:1.1rem;height:1.1rem;fill:var(--color-divider);}
.comment-star--on{fill:#f5a623;}
/* Średnia w nagłówku komentarzy */
.comments-avg-rating{display:inline-flex;align-items:center;gap:.4rem;margin-left:.75rem;font-size:.875rem;font-weight:400;color:var(--color-secondary-light);vertical-align:middle;}
.comments-avg-rating__text{font-size:.8rem;}
/* Selektor gwiazdek w formularzu */
.comment-stars-input{display:inline-flex;gap:.25rem;cursor:pointer;}
.comment-star-label{display:inline-block;line-height:1;}
.comment-star-label input[type=radio]{position:absolute;opacity:0;width:0;height:0;}
.comment-star-label .comment-star{width:1.75rem;height:1.75rem;fill:#ddd;transition:fill .15s;}
.comment-star-label--on .comment-star,
.comment-star-label--hover .comment-star{fill:#f5a623;}
.comment-rating-hint{display:inline-block;margin-left:.6rem;font-size:.85rem;color:var(--color-secondary-light);vertical-align:middle;}
#comments header{margin-bottom:.5rem;}
#comments h3{display:inline-block;font-size:1rem;color:#111;}
#comments time{float:right;color:#888;font-size:0.875rem;}
#comments p{font-size:0.875rem;line-height:1.5em;}
#comments .msg{margin:2rem 0 3rem;}
@media screen and (max-width:1023px){
  #comments .msg{background-image:none;}
}
#comments-form legend{padding-bottom:1.5rem;font-size:1.25rem;color:var(--color-secondary);font-weight:600;}
.comments-count{display:block;padding:0.3em 0;color:#6e6e6e;}


/* PAGE MODIFICATION DATE AND AUTHOR */ 
.modify-info{clear:both;padding-top:10px;list-style:none;font-size:0.875em;}
.modify-info li{padding:5px 0;}
.modify-info .value{font-weight:bold;}


/* ASK ABOUT LINK - redirects to contact panel */
#ask-about-link a{display:inline-flex;margin:.8em 0;color:var(--color-primary);font-weight:500;}
#ask-about-link .icon{fill:var(--color-primary);margin-right:.5em;}
#ask-about-link a:hover{color:var(--color-dark);}
#ask-about-link a:hover .icon{fill:var(--color-dark);}

/* Formularz odstąpienia od umowy */
/* Wiersze z dwoma polami obok siebie (desktop); na mobile pełna szerokość */
.withdrawal-row{display:flex;flex-wrap:wrap;gap:1rem 2rem;}
.withdrawal-row .withdrawal-field{flex:1 1 40%;min-width:0;}
.withdrawal-row .withdrawal-field dt{margin:0;}
.withdrawal-row .withdrawal-field dd{margin:0 0 1rem;}
.withdrawal-row .withdrawal-field input{width:100%;box-sizing:border-box;}
@media screen and (max-width:600px){
  .withdrawal-row{display:block;}
  .withdrawal-row .withdrawal-field{flex:none;width:100%;}
}
.withdrawal-products{position:relative;}
.withdrawal-products__search{display:flex;gap:.5rem;}
.withdrawal-products__search input{flex:1 1 auto;min-width:0;}
.withdrawal-products__add{flex:0 0 auto;padding:.5rem 1rem;cursor:pointer;border:1px solid var(--color-divider);background:var(--color-primary);color:#fff;border-radius:4px;}
.withdrawal-products__add:hover{background:var(--color-dark);}
.withdrawal-products__suggest{list-style:none;margin:.25rem 0 0;padding:0;border:1px solid var(--color-divider);background:#fff;position:absolute;z-index:20;left:0;right:0;max-height:240px;overflow:auto;box-shadow:0 4px 12px rgba(0,0,0,.12);}
.withdrawal-products__suggest li{padding:.5rem .75rem;cursor:pointer;}
.withdrawal-products__suggest li:hover{background:#f2f4f7;}
.withdrawal-products__list{list-style:none;margin:.5rem 0 0;padding:0;}
.withdrawal-products__item{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;margin-bottom:.35rem;background:#f5f7fa;border:1px solid var(--color-divider);border-radius:4px;}
.withdrawal-products__name{flex:1 1 auto;word-break:break-word;}
.withdrawal-products__remove{flex:0 0 auto;border:none;background:transparent;color:#c0392b;cursor:pointer;font-size:.85rem;}
.withdrawal-products__remove:hover{text-decoration:underline;}
.withdrawal-products__hint{display:block;margin-top:.5rem;color:#6e6e6e;font-size:.8rem;line-height:1.4;}
/* Oznaczenia pól: wymagane (czerwone) / opcjonalne (szare) */
.withdrawal-panel dt label span{font-weight:600;color:#c0392b;font-size:.85em;}
.withdrawal-panel dt label span.opt{font-weight:400;color:#888;}

/* Zgoda — duży zielony przycisk z białym tekstem (jak buttony) */
.withdrawal-consent{margin-top:1rem;}
.withdrawal-consent__btn{
  display:flex;align-items:center;gap:.75rem;
  padding:1rem 1.25rem;cursor:pointer;
  background:#1e8e3e;color:#fff;border-radius:6px;
  border:2px solid #1e8e3e;
  font-weight:600;line-height:1.35;
  transition:background .15s,box-shadow .15s;
  box-shadow:0 2px 6px rgba(30,142,62,.25);
}
.withdrawal-consent__btn:hover{background:#187233;border-color:#187233;}
.withdrawal-consent__btn input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;}
.withdrawal-consent__check{
  flex:0 0 auto;width:1.5rem;height:1.5rem;fill:#fff;
  border:2px solid #fff;border-radius:4px;padding:1px;
  background:transparent;transition:opacity .12s;
}
/* domyślnie pusty kwadrat — ukrywamy znacznik wyboru (ptaszek) */
.withdrawal-consent__check path{opacity:0;transition:opacity .12s;}
.withdrawal-consent__text{flex:1 1 auto;color:#fff;}
.withdrawal-consent__text strong{font-weight:700;opacity:.9;}
/* stan zaznaczony — pokazujemy ptaszek dopiero po zaznaczeniu */
.withdrawal-consent__btn:has(input:checked){background:#146c2e;border-color:#0e561f;box-shadow:0 2px 10px rgba(20,108,46,.4);}
.withdrawal-consent__btn:has(input:checked) .withdrawal-consent__check{background:rgba(255,255,255,.18);}
.withdrawal-consent__btn:has(input:checked) .withdrawal-consent__check path{opacity:1;}
/* fokus klawiaturą */
.withdrawal-consent__btn:focus-within{outline:3px solid rgba(30,142,62,.45);outline-offset:2px;}
.foot-withdrawal{margin:.5rem 0;}
.foot-withdrawal a{text-decoration:underline;}
