/* R4600: kompaktowy panel + przywrócony pełny obszar planszy i stabilny grid. */
/* NIE usuwamy lokalnego topu z siatki. Site-integration-v6 trzyma go jako zerowy,
   niewidoczny pierwszy wiersz. display:none przesuwał nagłówek i planszę o jeden
   wiersz, przez co duży minmax(0,1fr) zostawał pusty. */
body.pz-game-page .pz-top{display:flex!important;height:0!important;min-height:0!important;max-height:0!important;padding:0!important;margin:0!important;border:0!important;overflow:hidden!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}
body.pz-game-page .site-game-theme-switch{display:none!important}
body.pz-game-page .pz-control-panel{gap:5px!important;overflow:visible!important}
body.pz-game-page .pz-control-panel>.pz-panel{padding:6px!important;border-radius:11px!important;box-shadow:none!important}

/* Plansza zawsze dostaje cały trzeci wiersz siatki. */
body.pz-game-page :is(.pz-uk-layout,.pz-demontaz-layout,.pz-od-layout,.pz-sp-layout,.pz-mem-layout){height:100%!important;min-height:0!important}
body.pz-game-page :is(.pz-uk-board-wrap,.pz-demontaz-board-wrap,.pz-od-board-wrap,.pz-sp-board-wrap,.pz-mem-board-wrap){width:100%!important;height:100%!important;min-width:0!important;min-height:0!important}
body.pz-game-page :is(.pz-uk-stage,.pz-demontaz-stage,.pz-od-stage,.pz-sp-stage,.pz-mem-stage){flex:0 0 auto!important}

/* Cztery najważniejsze statystyki zawsze na wierzchu. */
.pz-control-stats{display:grid!important;gap:4px!important}
.pz-control-stats__primary,.pz-control-stats__extra{display:grid!important;grid-template-columns:1fr 1fr!important;gap:4px!important}
.pz-control-stats__primary>div,.pz-control-stats__extra>div{min-width:0!important;margin:0!important;padding:4px 5px!important;border-radius:7px!important}
.pz-control-stats__primary span,.pz-control-stats__extra span{font-size:6px!important;line-height:1.1!important;white-space:normal!important}
.pz-control-stats__primary b,.pz-control-stats__extra b{font-size:10px!important;line-height:1.05!important;margin-top:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

/* Native details zastępują osobne ciężkie sekcje. */
.pz-control-details{min-width:0}
.pz-control-details>summary{list-style:none;cursor:pointer;min-height:25px;display:flex;align-items:center;justify-content:space-between;gap:7px;padding:4px 7px;border:1px solid rgba(255,90,0,.20);border-radius:8px;background:#fff8f3;color:#a9440c;font-size:7px;line-height:1;font-weight:900;letter-spacing:.025em;user-select:none}
.pz-control-details>summary::-webkit-details-marker{display:none}
.pz-control-details>summary::after{content:"+";display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:rgba(255,90,0,.10);font-size:11px;line-height:1}
.pz-control-details[open]>summary::after{content:"−"}
.pz-control-details__body{margin-top:4px}
.pz-control-details--stats .pz-control-details__body{padding-top:1px}

/* Ustawienia są stale dostępne na większym ekranie, ale mają jeden wspólny rytm. */
.pz-control-settings>summary{display:none}
details.pz-control-settings:not([open])>.pz-control-details__body{display:grid!important}
.pz-control-settings__body{gap:4px!important}
.pz-control-settings__body label{display:grid!important;gap:2px!important;margin:0!important}
.pz-control-settings__body label>span,.pz-control-source>span,.pz-control-sound>span{font-size:6px!important;text-transform:uppercase!important;letter-spacing:.075em!important;font-weight:900!important;color:#78828e!important}
.pz-control-settings__body select{width:100%!important;height:27px!important;min-height:27px!important;padding:3px 6px!important;border-radius:7px!important;font-size:8px!important;font-weight:800!important}
.pz-control-source,.pz-control-sound{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:5px!important;min-height:22px!important}
.pz-control-source b{font-size:8px!important;max-width:62%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pz-control-sound button{min-height:22px!important;height:22px!important;padding:2px 6px!important;border-radius:7px!important;font-size:7px!important}

/* Akcje: Start, szybkie przyciski, reszta schowana. */
.pz-control-actions{display:grid!important;gap:4px!important}
.pz-control-start{width:100%!important;min-height:34px!important;padding:5px 8px!important;font-size:13px!important;border-radius:10px!important}
.pz-control-actions__quick{display:grid!important;grid-template-columns:1fr 1fr!important;gap:4px!important}
.pz-control-actions__quick>.pz-btn{min-height:25px!important;padding:3px 5px!important;font-size:7px!important;border-radius:8px!important}
.pz-control-actions__quick>.pz-btn:last-child:nth-child(3){grid-column:1/-1}
.pz-control-more__body{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.pz-control-more__body>.pz-btn,.pz-control-more__body>.pz-custom-photo-block>.pz-btn{width:100%!important;min-height:26px!important;padding:4px 5px!important;font-size:7px!important;border-radius:8px!important}
.pz-control-more__body>.pz-custom-photo-block{grid-column:1/-1;display:grid!important;gap:3px!important}
.pz-control-more__body .pz-local-photo-note{display:none!important}
.pz-control-readmore{display:flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important}
.pz-download-ready{display:grid!important;gap:2px!important}
.pz-download-ready>[hidden]{display:none!important}
.pz-download-ready .pz-download-puzzle:not([hidden]){width:100%!important;min-height:27px!important;font-size:7px!important}
.pz-download-ready .pz-download-note:not([hidden]){font-size:6px!important;line-height:1.25!important}

/* Komunikat ma być małym kafelkiem statusu, nie czwartym dużym panelem. */
body.pz-game-page .pz-control-message{padding:0!important;border:0!important;background:transparent!important;min-height:0!important;flex:0 0 auto!important;overflow:visible!important}
body.pz-game-page .pz-control-message .pz-result-box{height:auto!important;min-height:28px!important;max-height:42px!important;overflow:auto!important;margin:0!important;padding:6px 7px!important;border:1px solid rgba(255,90,0,.20)!important;border-radius:9px!important;background:#fff8f3!important;color:#6e3a1c!important;font-size:7px!important;line-height:1.35!important}

html[data-theme="dark"] .pz-control-details>summary{background:#2b201a;border-color:#603a25;color:#ffb080}
html[data-theme="dark"] .pz-control-details>summary::after{background:rgba(255,128,57,.13)}
html[data-theme="dark"] .pz-control-settings__body label>span,
html[data-theme="dark"] .pz-control-source>span,
html[data-theme="dark"] .pz-control-sound>span{color:#99a4af!important}
html[data-theme="dark"] body.pz-game-page .pz-control-message .pz-result-box{background:#211a16!important;border-color:#51301f!important;color:#e9edf1!important}

/* Telefon poziomo i bardzo niski ekran: boczny panel ma zostać ultra lekki. */
@media (max-width:900px), (max-height:560px) and (orientation:landscape){
  body.pz-game-page .pz-control-panel{gap:3px!important;overflow:visible!important}
  body.pz-game-page .pz-control-panel>.pz-panel{padding:3px!important;border-radius:7px!important}
  .pz-control-stats{gap:2px!important}
  .pz-control-stats__primary{gap:2px!important}
  .pz-control-stats__primary>div{padding:2px 3px!important;border-radius:5px!important}
  .pz-control-stats__primary span{font-size:4.2px!important}
  .pz-control-stats__primary b{font-size:7.2px!important;margin-top:1px!important}
  .pz-control-details>summary{min-height:20px;padding:2px 4px;border-radius:6px;font-size:5.3px}
  .pz-control-details>summary::after{width:12px;height:12px;font-size:9px}
  .pz-control-start{min-height:24px!important;padding:2px 4px!important;font-size:8px!important;border-radius:7px!important}
  .pz-control-actions__quick{gap:2px!important}
  .pz-control-actions__quick>.pz-btn{min-height:19px!important;padding:2px!important;font-size:5px!important;border-radius:6px!important}
  body.pz-game-page .pz-control-message .pz-result-box{min-height:22px!important;max-height:30px!important;padding:3px 4px!important;font-size:5px!important;border-radius:6px!important}

  /* Ustawienia zwijają się do jednego przycisku. */
  .pz-control-settings>summary{display:flex!important}
  details.pz-control-settings:not([open])>.pz-control-details__body{display:none!important}

  /* Po otwarciu szczegóły są lekkim panelem nad planszą, a nie kolejnym słupkiem. */
  .pz-control-details[open]::before{content:"";position:fixed;inset:0;z-index:11980;background:rgba(12,15,18,.48);backdrop-filter:blur(2px)}
  .pz-control-details[open]>.pz-control-details__body{position:fixed!important;z-index:11990;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;width:min(360px,calc(100vw - 26px))!important;max-height:calc(100dvh - 28px)!important;overflow:auto!important;margin:0!important;padding:12px!important;border:1px solid #e0e4e8!important;border-radius:14px!important;background:#fff!important;box-shadow:0 22px 70px rgba(0,0,0,.34)!important}
  .pz-control-details[open]>summary{position:fixed;z-index:12000;right:calc(50% - min(180px,calc((100vw - 26px)/2)) + 8px);top:calc(50% - min(220px,calc((100dvh - 28px)/2)) + 8px);width:26px;min-height:26px;padding:0;color:transparent;border-color:#ddd;background:#fff;box-shadow:0 3px 14px rgba(0,0,0,.16)}
  .pz-control-details[open]>summary::before{content:"×";position:absolute;inset:0;display:grid;place-items:center;color:#151922;font-size:18px;line-height:1}
  .pz-control-details[open]>summary::after{display:none}
  .pz-control-details--stats[open] .pz-control-stats__extra{grid-template-columns:1fr 1fr!important;gap:6px!important}
  .pz-control-details--stats[open] .pz-control-stats__extra>div{padding:7px!important}
  .pz-control-details--stats[open] .pz-control-stats__extra span{font-size:8px!important}
  .pz-control-details--stats[open] .pz-control-stats__extra b{font-size:13px!important}
  .pz-control-details--settings[open] .pz-control-settings__body{display:grid!important;gap:9px!important}
  .pz-control-details--settings[open] .pz-control-settings__body label>span,.pz-control-details--settings[open] .pz-control-source>span,.pz-control-details--settings[open] .pz-control-sound>span{font-size:8px!important}
  .pz-control-details--settings[open] .pz-control-settings__body select{height:36px!important;font-size:11px!important}
  .pz-control-details--settings[open] .pz-control-sound button{height:32px!important;font-size:9px!important}
  .pz-control-details--more[open] .pz-control-more__body{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
  .pz-control-details--more[open] .pz-control-more__body>.pz-btn,.pz-control-details--more[open] .pz-custom-photo-block>.pz-btn{min-height:36px!important;font-size:10px!important}
  html[data-theme="dark"] .pz-control-details[open]>.pz-control-details__body{background:#171b20!important;border-color:#30363f!important;color:#f2f4f7!important}
  html[data-theme="dark"] .pz-control-details[open]>summary{background:#20252b;border-color:#3b424b}
  html[data-theme="dark"] .pz-control-details[open]>summary::before{color:#fff}
}

/* Bardzo wąski telefon w poziomie. */
@media (max-width:720px) and (orientation:landscape){
  .pz-control-details--stats>summary{font-size:4.8px}
  .pz-control-message{display:block!important}
}

/* R4700: panel sterowania większy i czytelniejszy bez zmniejszania logiki planszy. */

/* Desktop: około 50% szerszy panel niż poprzedni kompaktowy wariant. */
@media (min-width:1201px) and (min-height:561px){
  body.pz-game-page :is(.pz-uk-layout,.pz-demontaz-layout,.pz-od-layout,.pz-sp-layout,.pz-mem-layout){
    grid-template-columns:312px minmax(0,1fr)!important;
    gap:10px!important;
  }
  body.pz-game-page .pz-control-panel{gap:7px!important}
  body.pz-game-page .pz-control-panel>.pz-panel{padding:8px!important;border-radius:12px!important}

  .pz-control-stats{gap:5px!important}
  .pz-control-stats__primary,.pz-control-stats__extra{gap:5px!important}
  .pz-control-stats__primary>div,.pz-control-stats__extra>div{padding:6px 8px!important;border-radius:8px!important}
  .pz-control-stats__primary span,.pz-control-stats__extra span{font-size:7.5px!important;line-height:1.2!important}
  .pz-control-stats__primary b,.pz-control-stats__extra b{font-size:12px!important;margin-top:3px!important}

  .pz-control-details>summary{min-height:30px;padding:6px 9px;font-size:8.5px!important;border-radius:9px}
  .pz-control-details>summary::after{width:18px;height:18px;font-size:13px}
  .pz-control-details__body{margin-top:6px}

  .pz-control-settings__body{gap:6px!important}
  .pz-control-settings__body label{gap:3px!important}
  .pz-control-settings__body label>span,.pz-control-source>span,.pz-control-sound>span{font-size:7.5px!important}
  .pz-control-settings__body select{height:34px!important;min-height:34px!important;padding:5px 8px!important;font-size:10px!important;border-radius:8px!important}
  .pz-control-source,.pz-control-sound{min-height:28px!important}
  .pz-control-source b{font-size:10px!important;max-width:68%}
  .pz-control-sound button{height:28px!important;min-height:28px!important;padding:3px 8px!important;font-size:8.5px!important}

  .pz-control-actions{gap:6px!important}
  .pz-control-start{min-height:42px!important;padding:7px 10px!important;font-size:14px!important;border-radius:11px!important}
  .pz-control-actions__quick{gap:5px!important}
  .pz-control-actions__quick>.pz-btn{min-height:31px!important;padding:5px 7px!important;font-size:8.5px!important;border-radius:8px!important}
  .pz-control-more__body{gap:5px!important}
  .pz-control-more__body>.pz-btn,.pz-control-more__body>.pz-custom-photo-block>.pz-btn{min-height:32px!important;padding:5px 7px!important;font-size:8.5px!important}
  .pz-control-readmore{font-size:8.5px!important}
  .pz-download-ready .pz-download-puzzle:not([hidden]){min-height:32px!important;font-size:8.5px!important}
  .pz-download-ready .pz-download-note:not([hidden]){font-size:7.5px!important;line-height:1.35!important}

  body.pz-game-page .pz-control-message .pz-result-box{min-height:36px!important;max-height:58px!important;padding:8px 9px!important;font-size:8.5px!important;line-height:1.4!important;border-radius:9px!important}
}

/* Średni desktop / mały laptop: nadal wyraźnie szerszy niż wcześniej. */
@media (min-width:901px) and (max-width:1200px) and (min-height:561px){
  body.pz-game-page :is(.pz-uk-layout,.pz-demontaz-layout,.pz-od-layout,.pz-sp-layout,.pz-mem-layout){
    grid-template-columns:292px minmax(0,1fr)!important;
    gap:8px!important;
  }
  body.pz-game-page .pz-control-panel{gap:6px!important}
  body.pz-game-page .pz-control-panel>.pz-panel{padding:7px!important}
  .pz-control-stats__primary>div,.pz-control-stats__extra>div{padding:5px 6px!important}
  .pz-control-stats__primary span,.pz-control-stats__extra span{font-size:7px!important}
  .pz-control-stats__primary b,.pz-control-stats__extra b{font-size:11px!important}
  .pz-control-details>summary{min-height:28px;padding:5px 7px;font-size:8px!important}
  .pz-control-settings__body label>span,.pz-control-source>span,.pz-control-sound>span{font-size:7px!important}
  .pz-control-settings__body select{height:31px!important;min-height:31px!important;font-size:9.5px!important}
  .pz-control-source b{font-size:9px!important}
  .pz-control-sound button{height:26px!important;min-height:26px!important;font-size:8px!important}
  .pz-control-start{min-height:38px!important;font-size:13px!important}
  .pz-control-actions__quick>.pz-btn{min-height:28px!important;font-size:8px!important}
  .pz-control-more__body>.pz-btn,.pz-control-more__body>.pz-custom-photo-block>.pz-btn{min-height:29px!important;font-size:8px!important}
  body.pz-game-page .pz-control-message .pz-result-box{min-height:32px!important;max-height:52px!important;font-size:8px!important;line-height:1.4!important}
}

/* Telefon / niski ekran w poziomie: panel szerszy, ale nie kosztem większości planszy. */
@media (max-width:900px), (max-height:560px) and (orientation:landscape){
  body.pz-game-page :is(.pz-uk-layout,.pz-demontaz-layout,.pz-od-layout,.pz-sp-layout,.pz-mem-layout){
    grid-template-columns:192px minmax(0,1fr)!important;
    gap:5px!important;
  }
  body.pz-game-page .pz-control-panel{gap:4px!important}
  body.pz-game-page .pz-control-panel>.pz-panel{padding:4px!important}
  .pz-control-stats__primary{gap:3px!important}
  .pz-control-stats__primary>div{padding:3px 4px!important}
  .pz-control-stats__primary span{font-size:5.7px!important;line-height:1.15!important}
  .pz-control-stats__primary b{font-size:8.8px!important}
  .pz-control-details>summary{min-height:23px!important;padding:3px 5px!important;font-size:6.5px!important}
  .pz-control-start{min-height:29px!important;font-size:9.5px!important}
  .pz-control-actions__quick>.pz-btn{min-height:23px!important;padding:3px!important;font-size:6.2px!important}
  body.pz-game-page .pz-control-message .pz-result-box{min-height:26px!important;max-height:38px!important;padding:4px 5px!important;font-size:6.2px!important;line-height:1.35!important}

  /* Rozwinięte opcje mają być normalnie czytelne. */
  .pz-control-details[open]>.pz-control-details__body{width:min(430px,calc(100vw - 24px))!important;padding:15px!important}
  .pz-control-details--stats[open] .pz-control-stats__extra span{font-size:9px!important}
  .pz-control-details--stats[open] .pz-control-stats__extra b{font-size:14px!important}
  .pz-control-details--settings[open] .pz-control-settings__body label>span,
  .pz-control-details--settings[open] .pz-control-source>span,
  .pz-control-details--settings[open] .pz-control-sound>span{font-size:9px!important}
  .pz-control-details--settings[open] .pz-control-settings__body select{height:38px!important;font-size:12px!important}
  .pz-control-details--settings[open] .pz-control-source b{font-size:11px!important}
  .pz-control-details--settings[open] .pz-control-sound button{height:34px!important;font-size:10px!important}
  .pz-control-details--more[open] .pz-control-more__body>.pz-btn,
  .pz-control-details--more[open] .pz-custom-photo-block>.pz-btn{min-height:38px!important;font-size:10.5px!important}
}

/* Bardzo wąskie telefony w poziomie: odrobina kompromisu, nadal czytelniej niż r4600. */
@media (max-width:680px) and (orientation:landscape){
  body.pz-game-page :is(.pz-uk-layout,.pz-demontaz-layout,.pz-od-layout,.pz-sp-layout,.pz-mem-layout){
    grid-template-columns:174px minmax(0,1fr)!important;
  }
  .pz-control-stats__primary span{font-size:5.2px!important}
  .pz-control-stats__primary b{font-size:8px!important}
  .pz-control-details>summary{font-size:6px!important}
  .pz-control-actions__quick>.pz-btn{font-size:5.8px!important}
}


/* R5200: ikonki akcji i skrót Podkład. */
.pz-btn[data-pz-icon],.pz-control-readmore[data-pz-icon]{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;text-align:center!important}
.pz-btn[data-pz-icon]::before,.pz-control-readmore[data-pz-icon]::before{content:"";display:block;flex:0 0 auto;width:15px;height:15px;background:center/contain no-repeat var(--pz-btn-icon-url);filter:drop-shadow(0 1px 1px rgba(0,0,0,.16))}
.pz-control-start[data-pz-icon]::before{width:18px;height:18px}
.pz-btn[data-pz-icon="start"]{--pz-btn-icon-url:url("../images/shared/ui/btn-start.webp")}
.pz-btn[data-pz-icon="random-image"]{--pz-btn-icon-url:url("../images/shared/ui/btn-random-image.webp")}
.pz-btn[data-pz-icon="hint"]{--pz-btn-icon-url:url("../images/shared/ui/btn-hint.webp")}
.pz-btn[data-pz-icon="restart"]{--pz-btn-icon-url:url("../images/shared/ui/btn-restart.webp")}
.pz-btn[data-pz-icon="mat"]{--pz-btn-icon-url:url("../images/shared/ui/btn-mat.webp")}
.pz-btn[data-pz-icon="instructions"]{--pz-btn-icon-url:url("../images/shared/ui/btn-instructions.webp")}
.pz-btn[data-pz-icon="custom-photo"]{--pz-btn-icon-url:url("../images/shared/ui/btn-custom-photo.webp")}
.pz-control-readmore[data-pz-icon="readmore"]{--pz-btn-icon-url:url("../images/shared/ui/btn-readmore.webp")}
.pz-control-more__body>#pzOpenMat{order:-1}

.pz-win-result-card{display:grid;justify-items:center;gap:5px;text-align:center}
.pz-win-result-card>b,.pz-win-result-card>span,.pz-win-result-card>small,.pz-win-result-card p,.pz-win-result-card h2{margin:0}
.pz-win-rewards{display:flex;align-items:flex-end;justify-content:center;gap:7px;margin:0 0 2px}
.pz-win-reward{width:34px;height:34px;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(0,0,0,.16))}
.pz-win-reward--lg{width:54px;height:54px}
.pz-sp-result-card .pz-win-rewards,.pz-mem-result-card .pz-win-rewards{margin-bottom:8px}
.pz-sp-result-card .pz-win-reward,.pz-mem-result-card .pz-win-reward{width:30px;height:30px}
.pz-sp-result-card .pz-win-reward--lg,.pz-mem-result-card .pz-win-reward--lg{width:48px;height:48px}

/* R5210: czytelność panelu klasycznych gier. Retro pozostaje bez zmian. */
@media (min-width:1201px) and (min-height:561px){
  body.pz-game-page:not(.pz-spadajace-page) :is(.pz-uk-layout,.pz-demontaz-layout,.pz-od-layout,.pz-sp-layout,.pz-mem-layout){
    grid-template-columns:360px minmax(0,1fr)!important;
    gap:12px!important;
  }
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-panel{gap:8px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-panel>.pz-panel{padding:10px!important;border-radius:13px!important}

  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__primary,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__extra{gap:7px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__primary>div,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__extra>div{padding:8px 10px!important;border-radius:9px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__primary span,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__extra span{font-size:9.5px!important;line-height:1.2!important;letter-spacing:.04em!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__primary b,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__extra b{font-size:15px!important;line-height:1.1!important;margin-top:4px!important}

  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details>summary{min-height:36px!important;padding:8px 11px!important;font-size:10.5px!important;line-height:1.15!important;border-radius:10px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details>summary::after{width:21px!important;height:21px!important;font-size:15px!important}

  body.pz-game-page:not(.pz-spadajace-page) .pz-control-settings__body{gap:8px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-settings__body label>span,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-source>span,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-sound>span{font-size:9.5px!important;line-height:1.2!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-settings__body select{height:40px!important;min-height:40px!important;padding:7px 10px!important;font-size:12px!important;border-radius:9px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-source,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-sound{min-height:34px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-source b{font-size:11.5px!important;max-width:70%!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-sound button{height:32px!important;min-height:32px!important;padding:4px 10px!important;font-size:10px!important}

  body.pz-game-page:not(.pz-spadajace-page) .pz-control-actions{gap:7px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-start{min-height:48px!important;padding:9px 12px!important;font-size:16px!important;border-radius:12px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-actions__quick{gap:6px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-actions__quick>.pz-btn,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-more__body>.pz-btn,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-more__body>.pz-custom-photo-block>.pz-btn,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-readmore{min-height:38px!important;padding:7px 9px!important;font-size:11px!important;line-height:1.2!important;border-radius:9px!important}

  body.pz-game-page:not(.pz-spadajace-page) .pz-btn[data-pz-icon]::before,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-readmore[data-pz-icon]::before{width:23px!important;height:23px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-start[data-pz-icon]::before{width:27px!important;height:27px!important}

  body.pz-game-page:not(.pz-spadajace-page) .pz-control-message .pz-result-box{min-height:52px!important;max-height:92px!important;padding:10px 11px!important;font-size:10.5px!important;line-height:1.5!important;border-radius:10px!important;overflow:auto!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-download-ready .pz-download-puzzle:not([hidden]){min-height:38px!important;font-size:11px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-download-ready .pz-download-note:not([hidden]){font-size:9.5px!important;line-height:1.4!important}
}

/* Mały laptop / węższy desktop. */
@media (min-width:901px) and (max-width:1200px) and (min-height:561px){
  body.pz-game-page:not(.pz-spadajace-page) :is(.pz-uk-layout,.pz-demontaz-layout,.pz-od-layout,.pz-sp-layout,.pz-mem-layout){
    grid-template-columns:330px minmax(0,1fr)!important;
    gap:10px!important;
  }
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-panel>.pz-panel{padding:9px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__primary span,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__extra span{font-size:9px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__primary b,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__extra b{font-size:14px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details>summary{min-height:34px!important;font-size:10px!important;padding:7px 10px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-settings__body label>span,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-source>span,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-sound>span{font-size:9px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-settings__body select{height:38px!important;min-height:38px!important;font-size:11.5px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-start{min-height:46px!important;font-size:15px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-actions__quick>.pz-btn,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-more__body>.pz-btn,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-more__body>.pz-custom-photo-block>.pz-btn,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-readmore{min-height:36px!important;font-size:10.5px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-btn[data-pz-icon]::before,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-readmore[data-pz-icon]::before{width:21px!important;height:21px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-start[data-pz-icon]::before{width:25px!important;height:25px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-message .pz-result-box{min-height:48px!important;max-height:84px!important;padding:9px 10px!important;font-size:10px!important;line-height:1.48!important}
}

/* Telefon / niski ekran w poziomie. Panel nadal mieści się obok planszy, ale tekst nie jest mikroskopijny. */
@media (max-width:900px), (max-height:560px) and (orientation:landscape){
  body.pz-game-page:not(.pz-spadajace-page) :is(.pz-uk-layout,.pz-demontaz-layout,.pz-od-layout,.pz-sp-layout,.pz-mem-layout){
    grid-template-columns:220px minmax(0,1fr)!important;
    gap:6px!important;
  }
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-panel>.pz-panel{padding:6px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__primary span{font-size:7px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__primary b{font-size:10.5px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details>summary{min-height:27px!important;padding:4px 6px!important;font-size:7.8px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-start{min-height:34px!important;font-size:11px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-actions__quick>.pz-btn{min-height:27px!important;font-size:7.5px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-btn[data-pz-icon]::before,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-readmore[data-pz-icon]::before{width:17px!important;height:17px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-start[data-pz-icon]::before{width:20px!important;height:20px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-message .pz-result-box{min-height:34px!important;max-height:58px!important;padding:6px 7px!important;font-size:7.6px!important;line-height:1.42!important}

  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details[open]>.pz-control-details__body{width:min(500px,calc(100vw - 24px))!important;padding:17px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details--stats[open] .pz-control-stats__extra span{font-size:10px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details--stats[open] .pz-control-stats__extra b{font-size:15px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details--settings[open] .pz-control-settings__body label>span,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details--settings[open] .pz-control-source>span,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details--settings[open] .pz-control-sound>span{font-size:10px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details--settings[open] .pz-control-settings__body select{height:42px!important;font-size:13px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details--more[open] .pz-control-more__body>.pz-btn,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details--more[open] .pz-custom-photo-block>.pz-btn{min-height:42px!important;font-size:12px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details--more[open] .pz-btn[data-pz-icon]::before,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-details--more[open] .pz-control-readmore[data-pz-icon]::before{width:22px!important;height:22px!important}
}

@media (max-width:680px) and (orientation:landscape){
  body.pz-game-page:not(.pz-spadajace-page) :is(.pz-uk-layout,.pz-demontaz-layout,.pz-od-layout,.pz-sp-layout,.pz-mem-layout){grid-template-columns:200px minmax(0,1fr)!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__primary span{font-size:6.6px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-stats__primary b{font-size:10px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-actions__quick>.pz-btn{font-size:7.2px!important}
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-message .pz-result-box{font-size:7.2px!important}
}

/* R5225: po najechaniu ikona akcji rośnie do 200% bez rozsuwania panelu. */
body.pz-game-page:not(.pz-spadajace-page) .pz-btn[data-pz-icon],
body.pz-game-page:not(.pz-spadajace-page) .pz-control-readmore[data-pz-icon]{
  overflow:visible!important;
}
body.pz-game-page:not(.pz-spadajace-page) .pz-btn[data-pz-icon]::before,
body.pz-game-page:not(.pz-spadajace-page) .pz-control-readmore[data-pz-icon]::before{
  position:relative;
  z-index:2;
  transform:scale(1);
  transform-origin:center;
  transition:transform .18s cubic-bezier(.2,.8,.2,1),filter .18s ease;
  will-change:transform;
}
@media (hover:hover) and (pointer:fine){
  body.pz-game-page:not(.pz-spadajace-page) .pz-btn[data-pz-icon]:hover::before,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-readmore[data-pz-icon]:hover::before{
    transform:scale(2);
    filter:drop-shadow(0 5px 8px rgba(0,0,0,.34));
  }
}
body.pz-game-page:not(.pz-spadajace-page) .pz-btn[data-pz-icon]:focus-visible::before,
body.pz-game-page:not(.pz-spadajace-page) .pz-control-readmore[data-pz-icon]:focus-visible::before{
  transform:scale(2);
  filter:drop-shadow(0 5px 8px rgba(0,0,0,.34));
}
@media (prefers-reduced-motion:reduce){
  body.pz-game-page:not(.pz-spadajace-page) .pz-btn[data-pz-icon]::before,
  body.pz-game-page:not(.pz-spadajace-page) .pz-control-readmore[data-pz-icon]::before{
    transition:none;
  }
}


/* R5235: wybór podkładu jako pływające okno. Nie rozszerza bocznego panelu ani siatki gry. */
.pz-mat-picker-layer{
  position:fixed;
  inset:0;
  z-index:13050;
  display:grid;
  place-items:center;
  padding:16px;
  background:rgba(9,12,16,.48);
  backdrop-filter:blur(2px);
}
.pz-mat-picker{
  box-sizing:border-box;
  width:min(390px,calc(100vw - 32px));
  padding:16px;
  border:1px solid #d8dde3;
  border-radius:16px;
  background:#fff;
  color:#141922;
  box-shadow:0 24px 80px rgba(0,0,0,.32);
}
.pz-mat-picker__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:13px;
}
.pz-mat-picker__head b{font-size:16px;line-height:1.2}
.pz-mat-picker__close{
  width:34px;
  height:34px;
  flex:0 0 34px;
  border:1px solid #d8dde3;
  border-radius:10px;
  background:#f5f7f9;
  color:#1b2028;
  font:800 21px/1 Manrope,Arial,sans-serif;
  cursor:pointer;
}
.pz-mat-picker__field{display:grid;gap:7px}
.pz-mat-picker__field>span{font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#687383}
.pz-mat-picker__field select{
  width:100%;
  min-height:46px;
  padding:8px 11px;
  border:1px solid #ccd3db;
  border-radius:10px;
  background:#fff;
  color:#10151d;
  font:800 13px/1.2 Manrope,Arial,sans-serif;
}
.pz-mat-picker>small{display:block;margin-top:10px;color:#6d7785;font-size:10px;line-height:1.45}
html[data-theme="dark"] .pz-mat-picker{background:#171c22;border-color:#353d47;color:#f5f7fa}
html[data-theme="dark"] .pz-mat-picker__close{background:#232a32;border-color:#3b444f;color:#fff}
html[data-theme="dark"] .pz-mat-picker__field>span{color:#aab3bf}
html[data-theme="dark"] .pz-mat-picker__field select{background:#10151b;border-color:#404a56;color:#f5f7fa}
html[data-theme="dark"] .pz-mat-picker>small{color:#b6bec8}
@media(max-width:560px){
  .pz-mat-picker-layer{padding:10px}
  .pz-mat-picker{width:min(420px,calc(100vw - 20px));padding:14px;border-radius:14px}
  .pz-mat-picker__head b{font-size:15px}
  .pz-mat-picker__field select{min-height:44px;font-size:12px}
  .pz-mat-picker>small{font-size:9px}
}
