/* PRISM 1.2. Authored menu surfaces, real room galleries and quiet motion.
   Gameplay controls retain their independent layout in style.css. */
:root {
  --pr-surface: #153b40;
  --pr-surface-raised: #20474a;
  --pr-surface-soft: #1b4146;
  --pr-rim: #e0c99154;
  --pr-rim-soft: #d2e2cf24;
  --pr-paper: #f6efdc;
  --pr-stone: #0e2c33;
  --pr-noise: url("assets/etched-grain.svg");
}
:root[data-kit-motyw=jasny] {
  --pr-surface: #f1eddf;
  --pr-surface-raised: #faf7ee;
  --pr-surface-soft: #e4e6d8;
  --pr-rim: #8c784a59;
  --pr-rim-soft: #4c70613b;
  --pr-paper: #193b3d;
  --pr-stone: #d4ddce;
}
.kit-warstwa .kit-karta {
  border-color: var(--pr-rim);
  background-image: var(--pr-noise), linear-gradient(135deg, var(--pr-surface-raised), var(--pr-surface) 62%);
  background-color: var(--pr-surface);
  box-shadow: 0 28px 90px #031b2270, 0 1px 0 #fff2 inset, 0 0 0 5px #9bbdb408;
}
.kit-warstwa:not(.pr-menu-layer) .kit-karta { animation: pr-sheet-enter .22s cubic-bezier(.2,.8,.2,1) both; }
.kit-warstwa .kit-btn { font-family: inherit; }
.pr-sheet-head { align-items: center; gap: 18px; margin: 0 0 14px; }
.pr-sheet-head .kit-tytul { font-size: clamp(22px,2.5vw,31px); line-height: 1.15; font-weight: 620; letter-spacing: -.035em; }
.pr-sheet-head>[data-kit=pr-close] { border-radius: 50%; width: 44px; height: 44px; min-height: 44px; padding: 10px; background: transparent; box-shadow: none; flex: none; }
.pr-sheet-copy { line-height: 1.55; }
.pr-eyebrow { display: block; font-size: 10px; line-height: 1.4; letter-spacing: .13em; text-transform: uppercase; color: var(--pr-gold); font-weight: 650; }
.pr-world-preview { display: block; width: 100%; height: 100%; border-radius: inherit; pointer-events: none; }
.pr-preview-label { position: absolute; top: 14px; left: 14px; display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; border: 1px solid #e5dbc044; border-radius: 20px; background: #102e37cf; color: #e6ead8; font-size: 10px; font-weight: 500; line-height: 1.3; pointer-events: none; }
.pr-preview-label .pr-icon { width: 13px; height: 13px; color: #a4e7cf; }
[data-pr=preview-motion].kit-btn { position: absolute; right: 10px; top: 8px; width: 44px; height: 44px; min-height: 44px; padding: 12px; justify-content: center; border-radius: 50%; color: #eaf1df; background: #0f303bc7; border-color: #c4d1b746; box-shadow: 0 1px 0 #fff2 inset; z-index: 2; }
[data-pr=preview-motion] .pr-icon { width: 17px; height: 17px; }
.pr-stars { display: inline-flex; align-items: center; gap: 3px; color: var(--pr-gold); }
.pr-stars .pr-icon { width: 14px; height: 14px; }
.pr-stars .filled { fill: currentColor; }
.pr-stars .empty { opacity: .46; }
/* Home: a clear start action, a real world, then the three destinations. */
.pr-menu-layer.kit-warstwa { grid-template-rows: minmax(0,1fr); padding: max(20px,var(--pr-safe-top)) max(28px,var(--pr-safe-right)) max(20px,var(--pr-safe-bottom)) max(28px,var(--pr-safe-left)); background: linear-gradient(100deg,#071f2de8,#0b2939b8 60%,#173e4266); }
.pr-menu-layer.kit-warstwa .kit-karta {
  width: min(1280px,100%); min-height: 0; max-height: 890px; height: 100%; display: grid;
  grid-template-rows: auto minmax(0,1fr) auto auto; gap: 22px; padding: 0;
  border: 0; border-radius: 0; box-shadow: none; background: none; overflow: visible;
}
.pr-menu-top { min-height: 48px; }
.pr-signature { gap: 10px; color: #f2e3bf; letter-spacing: .14em; font-size: 14px; font-weight: 620; }
.pr-signature img { width: 43px; height: 43px; filter: drop-shadow(0 3px 8px #051c33); }
.pr-signature small { font-size: 10px; color: #a9c4bb; margin-top: 4px; letter-spacing: .16em; }
.pr-menu-tools { gap: 8px; }
.pr-menu-tools .kit-btn { border-radius: 13px; border-color: #d5c99c3b; background: #163a42c7!important; backdrop-filter: none; box-shadow: 0 1px 0 #cdded912 inset; }
.pr-home-main { display: grid; grid-template-columns: minmax(300px,.88fr) minmax(0,1.12fr); gap: clamp(26px,5vw,72px); min-height: 0; align-items: center; }
.pr-home-intro { width: 100%; min-width: 0; padding: 5px 0 12px; color: #f6efdc; }
.pr-home-intro .pr-menu-eyebrow { color: #dec28b; letter-spacing: .12em; font-size: 10px; margin: 0 0 15px; max-width: 100%; line-height: 1.45; }
.pr-home-title.kit-tytul { margin: 0; color: #f5edd8; font-size: clamp(58px,6.5vw,92px); font-weight: 450; line-height: .98; letter-spacing: .12em; text-shadow: 0 3px 25px #051e2844; }
.pr-home-title>span { display: block; font-size: clamp(19px,2vw,25px); font-weight: 450; letter-spacing: .035em; color: #b9d5ca; line-height: 1.35; margin-top: 11px; }
.pr-home-goal { margin: 19px 0 24px; max-width: 400px; font-size: 15px; line-height: 1.65; color: #c8dcd2; }
.pr-home-play>.kit-btn { min-height: 62px; width: min(360px,100%); justify-content: flex-start; padding: 17px 20px; border-radius: 16px; font-size: 16px; letter-spacing: .015em; }
.pr-home-play>.kit-btn>.pr-icon:last-child { margin-left: auto; width: 20px; height: 20px; }
.pr-home-play>.kit-btn>.pr-icon:first-child { width: 20px; height: 20px; }
.pr-start-context { display: flex; align-items: center; flex-wrap: wrap; gap: 5px 8px; color: #a7c6bd; font-size: 10px; line-height: 1.5; margin: 12px 0 20px; }
.pr-start-context i { width: 3px; height: 3px; background: #c0a773; border-radius: 50%; }
.pr-home-difficulty { max-width: 395px; }
.pr-home-difficulty .pr-label { color: #a7c7bd; font-size: 10px; letter-spacing: .1em; }
.pr-home-difficulty .pr-difficulties { gap: 6px; margin: 9px 0 8px; }
.pr-home-difficulty .pr-difficulties .kit-btn { min-height: 47px; background: #173b42b8!important; padding: 10px; border-radius: 12px; border-color: #bad6bd25; display: flex; flex-wrap: wrap; justify-content: center; gap: 5px 8px; font-size: 12px; }
.pr-home-difficulty .pr-difficulties .kit-btn[aria-pressed=true] { color: #f6e3b7!important; border-color: #d7be8cba; background: linear-gradient(#355a59,#25494c)!important; box-shadow: 0 1px 0 #e9cf9326 inset; }
.pr-home-difficulty .pr-difficulties small { display: flex; align-items: center; gap: 3px; font-size: 10px; color: #c7d7bd; opacity: 1; }
.pr-home-difficulty .pr-difficulties small .pr-icon { width: 11px; height: 11px; fill: currentColor; opacity: .8; }
.pr-home-difficulty .pr-difficulty-desc { margin: 0; color: #a8c9bd; font-size: 11px; line-height: 1.45; }
.pr-home-hero { position: relative; min-width: 0; border: 1px solid #e2c88d77; border-radius: 24px; padding: 7px; background: var(--pr-noise),linear-gradient(130deg,#42625b,#15363e 35%,#284a49); box-shadow: 0 20px 50px #021e2755,0 1px 0 #f2e2b844 inset,0 0 0 5px #b2cdad09; transform: rotate(.4deg); }
.pr-hero-art { width: 100%; aspect-ratio: 4/3; max-height: 410px; border-radius: 18px 18px 8px 8px; overflow: hidden; position: relative; background: #173b40; border: 1px solid #eee2bd29; }
.pr-hero-art::after { content: ""; position: absolute; inset: 0; pointer-events: none; border-radius: inherit; box-shadow: 0 0 35px #0b222529 inset; background: linear-gradient(135deg,#fff2,transparent 25%); }
.pr-hero-corner { position: absolute; width: 20px; height: 20px; bottom: 12px; right: 13px; border-right: 1px solid #edcf8c8c; border-bottom: 1px solid #edcf8c8c; border-radius: 0 0 5px 0; }
.pr-hero-info { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 16px 13px 10px; color: #ece9d8; }
.pr-hero-info .pr-eyebrow { font-size: 10px; color: #c8b582; letter-spacing: .12em; }
.pr-hero-info h2 { font-weight: 550; font-size: 21px; line-height: 1.3; margin: 5px 0 4px; letter-spacing: -.02em; }
.pr-hero-info p { margin: 0; font-size: 11px; color: #aac8be; }
.pr-hero-info>.kit-btn { width: 46px; height: 46px; min-height: 46px; border-radius: 50%; background: #b8ccb91a; border-color: #dac8964d; color: #e7d9af; padding: 12px; justify-content: center; }
.pr-home-destinations { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 12px; }
.pr-home-destinations>.kit-btn { min-width: 0; min-height: 98px; border-radius: 18px; padding: 17px 16px; background: var(--pr-noise),linear-gradient(135deg,#294c4db8,#173b42e8); border-color: #b5ccb332; display: flex; align-items: center; gap: 13px; text-align: left; justify-content: flex-start; color: #e6eddf; box-shadow: 0 1px 0 #e4e5c913 inset,0 7px 25px #051c2529; }
.pr-destination-icon { display: grid; place-items: center; width: 44px; height: 50px; flex: none; border: 1px solid #d5bc775c; border-radius: 14px; background: linear-gradient(135deg,#b7b27b3b,#42655c52); color: #e0c78b; box-shadow: 0 1px 0 #ffe8ad26 inset,0 5px 12px #08242b38; }
.pr-team-emblem { color: #a5e1d4; border-color: #94cdbb4d; background: linear-gradient(135deg,#72b6a236,#21494e7a); }
.pr-daily-emblem { color: #d0c5f1; border-color: #b8a9d74d; background: linear-gradient(135deg,#9683bb30,#3446596b); }
.pr-destination-icon .pr-icon { width: 24px; height: 24px; }
.pr-destination-copy { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.pr-destination-copy b { font-size: 14px; line-height: 1.25; font-weight: 600; }
.pr-destination-copy>small { font-size: 11px; font-weight: 400; line-height: 1.5; color: #adc9be; opacity: 1; }
.pr-destination-end { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; margin-left: auto; flex: none; color: #d9c795; }
.pr-destination-end>strong { font-size: 17px; font-weight: 550; white-space: nowrap; }
.pr-destination-end>strong>small { font-size: 10px; font-weight: 450; color: #a6c3b7; }
.pr-destination-end>.pr-icon { width: 17px; height: 17px; }
.pr-home-footer { display: flex; align-items: center; gap: 20px; min-height: 44px; color: #aac7bd; font-size: 10px; }
.pr-journey { display: flex; align-items: center; gap: 12px; flex: 1; min-width: 0; }
.pr-journey>span:first-child { display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; color: #e2c58e; font-size: 11px; }
.pr-journey .pr-icon { width: 16px; height: 16px; fill: #d0b77235; margin-right: 4px; }
.pr-journey>span:last-child { white-space: nowrap; font-size: 10px; }
.pr-journey-track { max-width: 100px; min-width: 25px; flex: 1; display: block; height: 3px; background: #abc1ac24; border-radius: 4px; overflow: hidden; }
.pr-journey-track i { height: 100%; display: block; background: #d4bc7e; border-radius: 4px; }
.pr-home-daily-best { margin-left: auto; color: #a4c2b6; line-height: 1.4; }
.pr-home-daily-best b { color: #d8dcb9; font-weight: 550; }
.pr-home-footer>[data-pr=help] { min-height: 44px; font-size: 11px; padding: 10px 0 10px 12px; background: transparent; border: 0; box-shadow: none; color: #c5d6c7; gap: 7px; }
.pr-home-footer>[data-pr=help] .pr-icon { width: 17px; height: 17px; }
/* Room gallery. A locked door keeps its illustration and readable labels. */
.pr-levels-layer.kit-warstwa { padding: max(18px,var(--pr-safe-top)) max(22px,var(--pr-safe-right)) max(18px,var(--pr-safe-bottom)) max(22px,var(--pr-safe-left)); }
.pr-levels-layer.kit-warstwa .kit-karta { width: min(1220px,100%); max-height: 880px; height: 100%; min-height: 0; padding: 24px; overflow: hidden; display: flex; flex-direction: column; border-radius: 25px; }
.pr-levels-layer .pr-sheet-head { margin-bottom: 9px; flex: none; }
.pr-gallery-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 17px; flex: none; }
.pr-gallery-toolbar>p { font-size: 12px; color: var(--pr-muted); margin: 0; line-height: 1.5; }
.pr-gallery-difficulty { display: flex; align-items: center; gap: 7px; min-height: 44px; color: var(--pr-gold); border: 1px solid var(--pr-rim-soft); background: var(--pr-surface-soft); border-radius: 12px; padding-left: 12px; flex: none; }
.pr-gallery-difficulty>.pr-icon { width: 17px; height: 17px; }
.pr-gallery-difficulty select,.pr-chapter-mobile select { font: inherit; font-size: 12px; color: var(--pr-ink); min-height: 44px; max-width: 100%; border: 0; border-radius: 10px; background: var(--pr-surface-soft); padding: 8px 9px; cursor: pointer; }
.pr-gallery-difficulty select:focus-visible,.pr-chapter-mobile select:focus-visible { outline: 2px solid var(--pr-gold); outline-offset: 1px; }
.pr-chapter-tabs { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 9px; flex: none; margin-bottom: 19px; }
.pr-chapter-tab.kit-btn { min-height: 72px; min-width: 0; padding: 7px; border-radius: 14px; gap: 10px; background: var(--pr-noise),var(--pr-surface-soft); text-align: left; justify-content: flex-start; border-color: var(--pr-rim-soft); }
.pr-chapter-tab[aria-pressed=true] { border-color: var(--pr-gold); box-shadow: 0 0 0 1px var(--pr-gold),0 1px 0 #f0e3ba24 inset; background-color: var(--pr-surface-raised); }
.pr-chapter-cover { display: block; width: 64px; aspect-ratio: 4/3; border-radius: 8px; overflow: hidden; flex: none; border: 1px solid #ddcda835; }
.pr-chapter-tab-copy { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.pr-chapter-tab-copy>small { font-size: 10px; color: var(--pr-muted); font-weight: 450; line-height: 1.2; opacity: 1; }
.pr-chapter-tab-copy>b { font-size: 12px; line-height: 1.3; font-weight: 600; overflow-wrap: anywhere; }
.pr-chapter-mobile { display: none; }
.pr-gallery-content { display: grid; grid-template-columns: minmax(0,1fr) minmax(270px,.5fr); gap: 22px; min-height: 0; flex: 1; }
.pr-room-collection { min-width: 0; min-height: 0; overflow-y: auto; overflow-x: hidden; padding: 0 4px 4px; scrollbar-width: thin; scrollbar-color: var(--pr-gold) transparent; overscroll-behavior: contain; touch-action: pan-y; }
.pr-chapter-heading { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 4px; }
.pr-chapter-heading .pr-eyebrow { font-size: 10px; margin: 0 0 5px; }
.pr-chapter-heading h3 { font-size: clamp(17px,2vw,23px); line-height: 1.25; font-weight: 600; margin: 0; color: var(--pr-ink); letter-spacing: -.025em; }
.pr-chapter-completion { font-size: 10px; line-height: 1.4; color: var(--pr-muted); white-space: nowrap; }
.pr-chapter-description { margin: 8px 0 17px; color: var(--pr-muted); font-size: 11px; line-height: 1.5; }
.pr-room-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.pr-room-card.kit-btn { display: flex; flex-direction: column; justify-content: flex-start; align-items: stretch; padding: 5px; min-height: 0; gap: 0; border-radius: 15px; min-width: 0; text-align: left; position: relative; overflow: visible; border-color: var(--pr-rim-soft); background: var(--pr-noise),linear-gradient(145deg,var(--pr-surface-raised),var(--pr-surface-soft)); box-shadow: 0 5px 12px #07252a1c,0 1px 0 #fff1 inset; color: var(--pr-ink); }
.pr-room-card.kit-btn[aria-pressed=true] { border-color: var(--pr-gold); box-shadow: 0 0 0 1px var(--pr-gold),0 6px 22px #17352f2b; }
.pr-room-card.kit-btn[data-open=false] { opacity: 1; cursor: pointer; }
.pr-room-card-art { display: block; aspect-ratio: 4/3; width: 100%; overflow: hidden; border-radius: 10px; position: relative; background: var(--pr-stone); }
.pr-room-card-art::after { position: absolute; content: ""; inset: 0; pointer-events: none; border: 1px solid #e3d6ad29; border-radius: inherit; box-shadow: 0 1px 12px #09212922 inset; }
.pr-room-number { position: absolute; left: 7px; top: 7px; color: #e6dec6; background: #173a43d9; border: 1px solid #d1c8a134; border-radius: 7px; font-size: 10px; font-weight: 550; padding: 4px 6px; font-variant-numeric: tabular-nums; line-height: 1; }
.pr-room-card-state { position: absolute; top: 6px; right: 6px; width: 23px; height: 23px; border: 1px solid #d9ccab45; background: #12343edb; border-radius: 50%; display: grid; place-items: center; color: #e3d2a6; }
.pr-room-card-state .pr-icon { width: 12px; height: 12px; }
.pr-room-card-copy { padding: 10px 5px 7px; display: flex; flex-direction: column; gap: 7px; width: 100%; box-sizing: border-box; min-width: 0; }
.pr-room-card-name { color: var(--pr-ink); font-size: 12px; font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
.pr-room-card-meta { display: flex; justify-content: space-between; align-items: center; gap: 6px; color: var(--pr-muted); font-size: 10px; line-height: 1.3; font-weight: 450; min-width: 0; }
.pr-room-card-meta>span:first-child { min-width: 0; overflow-wrap: anywhere; }
.pr-room-card-meta .pr-stars { flex: none; gap: 1px; }
.pr-room-card-meta .pr-icon { width: 10px; height: 10px; }
.pr-gallery-tip { display: flex; gap: 8px; margin: 16px 1px 2px; color: var(--pr-muted); font-size: 10px; line-height: 1.5; }
.pr-gallery-tip>.pr-icon { width: 15px; height: 15px; color: var(--pr-gold); }
.pr-room-inspector { min-width: 0; min-height: 0; display: flex; flex-direction: column; overflow: auto; border: 1px solid var(--pr-rim); border-radius: 19px; padding: 6px; background: var(--pr-noise),linear-gradient(145deg,var(--pr-surface-raised),var(--pr-surface)); box-shadow: 0 7px 25px #05292b18,0 1px 0 #fff2 inset; scrollbar-width: thin; scrollbar-color: var(--pr-gold) transparent; overscroll-behavior: contain; touch-action: pan-y; }
.pr-inspector-art { position: relative; aspect-ratio: 4/3; width: 100%; flex: none; overflow: hidden; border-radius: 14px 14px 7px 7px; background: var(--pr-stone); }
.pr-inspector-art>.pr-preview-label { top: 9px; left: 8px; font-size: 10px; }
.pr-inspector-body { padding: 15px 11px 10px; }
.pr-inspector-heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 11px; }
.pr-room-state { font-size: 10px; line-height: 1.3; display: inline-flex; gap: 6px; align-items: center; color: var(--pr-gold); }
.pr-room-state .pr-icon { width: 12px; height: 12px; }
.pr-inspector-heading .pr-icon { width: 12px; height: 12px; }
.pr-inspector-body h3 { font-size: 21px; line-height: 1.25; margin: 0 0 5px; font-weight: 600; letter-spacing: -.025em; overflow-wrap: anywhere; }
.pr-room-kind { font-size: 11px; line-height: 1.4; color: var(--pr-gold); margin: 0 0 12px; }
.pr-room-advice { font-size: 12px; line-height: 1.6; color: var(--pr-muted); margin: 0 0 15px; }
.pr-room-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0; padding: 11px 0; border-block: 1px solid var(--pr-rim-soft); }
.pr-room-facts>div { display: flex; flex-direction: column; gap: 6px; }
.pr-room-facts dt { display: flex; gap: 5px; align-items: center; color: var(--pr-muted); font-size: 10px; line-height: 1.3; }
.pr-room-facts dt .pr-icon { width: 12px; height: 12px; }
.pr-room-facts dd { margin: 0; font-size: 19px; line-height: 1; color: var(--pr-ink); font-weight: 550; }
.pr-room-danger { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding-top: 12px; color: var(--pr-muted); font-size: 10px; line-height: 1.4; }
.pr-room-danger>span:last-child { display: inline-flex; gap: 3px; }
.pr-room-danger i { display: inline-block; width: 13px; height: 4px; border-radius: 2px; background: var(--pr-rim-soft); }
.pr-room-danger i.on { background: var(--pr-gold); }
.pr-room-entry { margin-top: auto; padding: 7px 10px 10px; position: sticky; bottom: -6px; background: linear-gradient(transparent,var(--pr-surface) 15%); }
.pr-room-entry-note { font-size: 10px; line-height: 1.5; color: var(--pr-muted); margin: 0 0 8px; }
.pr-unlock-note { display: flex; gap: 6px; align-items: center; color: var(--pr-gold); }
.pr-unlock-note>.pr-icon { width: 14px; height: 14px; }
.pr-room-entry>.kit-btn { width: 100%; display: flex; justify-content: center; gap: 9px; min-height: 48px; background: linear-gradient(120deg,#e7cca1,#bc985f); border-color: #e5cc92; color: #263d38; box-shadow: 0 3px 0 #8c6b40; border-radius: 12px; font-size: 13px; font-weight: 650; }
.pr-room-entry>.kit-btn:disabled { opacity: 1; color: var(--pr-muted); background: var(--pr-surface-soft); border-color: var(--pr-rim-soft); box-shadow: none; cursor: default; }
.pr-room-entry>.kit-btn .pr-icon { width: 17px; height: 17px; }
.pr-gallery-footer { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-top: 14px; margin-top: 14px; border-top: 1px solid var(--pr-rim-soft); color: var(--pr-muted); font-size: 11px; line-height: 1.3; flex: none; }
.pr-gallery-footer>span:first-child { display: inline-flex; gap: 6px; align-items: center; }
.pr-gallery-footer .pr-icon { color: var(--pr-gold); width: 16px; height: 16px; }
.pr-gallery-footer b { color: var(--pr-gold); font-weight: 550; }
/* The rest of the menus share the material and framing of the gallery. */
.pr-together-layer .kit-karta { width: min(900px,100%); }
.pr-mode-cards { gap: 16px; }
.pr-mode-card { padding: 9px 15px 16px; background: var(--pr-noise),linear-gradient(135deg,var(--pr-surface-raised),var(--pr-surface-soft)); border-color: var(--pr-rim-soft); border-radius: 19px; gap: 12px; }
.pr-mode-art { position: relative; aspect-ratio: 2.1/1; min-height: 0; margin: -1px -7px 3px; border-radius: 12px; overflow: hidden; background: #14363d; }
.pr-mode-art-tag { position: absolute; bottom: 9px; left: 10px; color: #eee3c9; border: 1px solid #d2d3af4a; border-radius: 20px; padding: 6px 9px; background: #12343ccd; font-size: 10px; line-height: 1; display: flex; align-items: center; gap: 5px; }
.pr-mode-art-tag>.pr-icon { width: 13px; height: 13px; }
.pr-online-art { display: grid; place-items: center; background: radial-gradient(ellipse at 62% 35%,#527b7b,#1e4657 45%,#163438); }
.pr-online-art>.pr-icon { position: relative; z-index: 1; color: #d4e5ce; width: 53px; height: 53px; filter: drop-shadow(0 0 10px #8cd6ba33); }
.pr-orbit-ring { position: absolute; border: 1px solid #b8c8a45e; width: 138px; height: 96px; border-radius: 50%; transform: rotate(-26deg); box-shadow: 0 0 0 17px #adcdb40a,0 0 0 34px #adcdb405; }
.pr-orbit-orb { position: absolute; z-index: 2; width: 33px; height: 33px; border: 1px solid #e3ebc890; border-radius: 50%; box-shadow: 0 5px 14px #06212c5c,inset -5px -6px 10px #08253273; background: radial-gradient(circle at 28% 25%,#ecfbdc,#7bcdbb 32%,#286a71 72%,#548b85); }
.pr-orbit-orb-a { transform: translate(-67px,21px); }
.pr-orbit-orb-b { transform: translate(67px,-22px); width: 26px; height: 26px; background: radial-gradient(circle at 28% 25%,#fff1ce,#dcb873 32%,#a67a45 72%,#bc8e50); }
.pr-coop-online .pr-online-illustration { min-height: 20px; height: 25px; opacity: .6; }
.pr-coop-online .pr-online-illustration .pr-icon { width: 20px; height: 20px; }
.pr-mode-heading h3 { font-size: 16px; }
.pr-key-players>div { border-radius: 10px; border: 1px solid var(--pr-rim-soft); padding: 8px 10px; background: var(--pr-surface); }
.pr-mode-card>.kit-btn { font-size: 12px; border-radius: 12px; }
.pr-bonus-card { background-image: var(--pr-noise),linear-gradient(135deg,var(--pr-surface-raised),var(--pr-surface-soft)); border-color: var(--pr-rim-soft); padding: 17px; box-shadow: 0 1px 0 #fff1 inset; }
.pr-bonus-card>.pr-icon { border: 1px solid currentColor; border-radius: 12px; box-sizing: content-box; padding: 10px; width: 25px; height: 25px; background: #aac9b20a; box-shadow: 0 3px 9px #163f3524; }
.pr-scenes .kit-btn { position: relative; padding: 5px; background: var(--pr-surface-soft); border-radius: 16px; overflow: hidden; border-color: var(--pr-rim-soft); }
.pr-scenes .kit-btn[aria-pressed=true] { border-color: var(--pr-gold); box-shadow: 0 0 0 1px var(--pr-gold); }
.pr-scenes .pr-scene-preview { display: block; width: 100%; height: auto; aspect-ratio: 4/3; border-radius: 11px; background: none; position: relative; overflow: hidden; }
.pr-scene-name { display: block; padding: 12px 9px; font-size: 12px; min-height: 0; line-height: 1.3; }
.pr-scene-check { position: absolute; top: 12px; right: 12px; display: none; width: 23px; height: 23px; border-radius: 50%; background: #d9c28c; color: #173c3e; place-items: center; box-shadow: 0 2px 8px #051d2644; }
.pr-scene-check .pr-icon { width: 14px; height: 14px; }
.pr-scenes [aria-pressed=true] .pr-scene-check { display: grid; }
.pr-room-detail-art { aspect-ratio: 4/3; width: 100%; border-radius: 14px; overflow: hidden; border: 1px solid var(--pr-rim); box-shadow: 0 6px 15px #102c3226; }
.pr-room-layer .kit-karta { width: min(780px,100%); }
.pr-room-detail { grid-template-columns: 1.1fr 1fr; }
.pr-room-detail h3 { margin-top: 9px; }
.pr-help-step { background-image: var(--pr-noise); border-color: var(--pr-rim-soft); }
.pr-results-layer .pr-result-emblem { box-shadow: 0 0 0 8px #b8d2b508,0 0 35px #c9ba6112; }
.pr-results-layer .pr-result-stats>div { background: var(--pr-noise),var(--pr-surface-soft); }
/* Interaction is quiet: no perpetual scaling or moving targets. */
@media (hover:hover) and (pointer:fine) {
  .pr-home-destinations>.kit-btn:hover { transform: translateY(-3px); border-color: #d9c48a8c; box-shadow: 0 9px 25px #041f293d,0 1px 0 #e6d6a028 inset; }
  .pr-room-card:hover { transform: translateY(-2px); border-color: var(--pr-gold); }
  .pr-room-card:hover .pr-room-card-name { color: var(--pr-gold); }
  .pr-chapter-tab:hover { border-color: var(--pr-gold); }
  .pr-menu-tools .kit-btn:hover { border-color: #dac79791; background: #2b5055!important; }
}
@keyframes pr-sheet-enter { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: none; } }
/* Light uses warm stone and bronze; the actual room keeps its own lighting. */
:root[data-kit-motyw=jasny] .pr-menu-layer { background: linear-gradient(100deg,#dce5d9f2,#d7e3d9de 55%,#8cafa494); }
:root[data-kit-motyw=jasny] .pr-signature { color: #28493f; }
:root[data-kit-motyw=jasny] .pr-signature small { color: #567869; }
:root[data-kit-motyw=jasny] .pr-menu-tools .kit-btn { background: #edf1e2d9!important; color: #254a42!important; border-color: #6788744a; }
:root[data-kit-motyw=jasny] .pr-home-intro .pr-menu-eyebrow { color: #8b6931; }
:root[data-kit-motyw=jasny] .pr-home-title { color: #1d423e; text-shadow: 0 1px 0 #fffff8; }
:root[data-kit-motyw=jasny] .pr-home-title>span { color: #456c5e; }
:root[data-kit-motyw=jasny] .pr-home-goal { color: #3e6659; }
:root[data-kit-motyw=jasny] .pr-start-context,
:root[data-kit-motyw=jasny] .pr-home-difficulty .pr-label,
:root[data-kit-motyw=jasny] .pr-home-difficulty .pr-difficulty-desc { color: #456a5a; }
:root[data-kit-motyw=jasny] .pr-home-difficulty .pr-difficulties .kit-btn { background: #e5eadbc4!important; color: #35594c!important; border-color: #5c80673e; }
:root[data-kit-motyw=jasny] .pr-home-difficulty .pr-difficulties .kit-btn[aria-pressed=true] { background: linear-gradient(#f4edd6,#e7daba)!important; color: #634b23!important; border-color: #a2864f; }
:root[data-kit-motyw=jasny] .pr-home-difficulty .pr-difficulties small { color: #65794e; }
:root[data-kit-motyw=jasny] .pr-home-hero { background: var(--pr-noise),linear-gradient(135deg,#f6ecd2,#c7d4bf 65%,#d9dac0); border-color: #8d784f80; box-shadow: 0 20px 40px #23483526,0 1px 0 #ffffeccc inset,0 0 0 5px #d2d7bc48; }
:root[data-kit-motyw=jasny] .pr-hero-info { color: #284c40; }
:root[data-kit-motyw=jasny] .pr-hero-info .pr-eyebrow { color: #84612f; }
:root[data-kit-motyw=jasny] .pr-hero-info p { color: #496e5e; }
:root[data-kit-motyw=jasny] .pr-hero-info>.kit-btn { color: #6e582c; border-color: #8e7e4d66; background: #f6eace75; }
:root[data-kit-motyw=jasny] .pr-home-destinations>.kit-btn { background: var(--pr-noise),linear-gradient(135deg,#f4f0e1ee,#dce4d3f2); border-color: #788b643f; color: #234a3e; box-shadow: 0 1px 0 #fff9 inset,0 6px 18px #3f61461a; }
:root[data-kit-motyw=jasny] .pr-destination-copy>small { color: #4c6e5e; }
:root[data-kit-motyw=jasny] .pr-destination-end { color: #85652c; }
:root[data-kit-motyw=jasny] .pr-destination-end>strong>small { color: #5a7763; }
:root[data-kit-motyw=jasny] .pr-destination-icon { color: #876326; border-color: #ac94634d; background: linear-gradient(135deg,#e9dfbc,#b7c7a853); box-shadow: 0 1px 0 #fff6 inset; }
:root[data-kit-motyw=jasny] .pr-team-emblem { color: #27776b; border-color: #6aa58f5e; background: linear-gradient(135deg,#c4e3cb,#dce6d5); }
:root[data-kit-motyw=jasny] .pr-daily-emblem { color: #79608e; border-color: #9a8bb04d; background: linear-gradient(135deg,#e4dcee,#d2dcda); }
:root[data-kit-motyw=jasny] .pr-home-footer,
:root[data-kit-motyw=jasny] .pr-home-footer>[data-pr=help],
:root[data-kit-motyw=jasny] .pr-home-daily-best { color: #496d59; }
:root[data-kit-motyw=jasny] .pr-journey>span:first-child,
:root[data-kit-motyw=jasny] .pr-home-daily-best b { color: #7d602d; }
:root[data-kit-motyw=jasny] .pr-journey-track { background: #6d896531; }
:root[data-kit-motyw=jasny] .pr-journey-track i { background: #9d7c3b; }
/* Compact desktop and tablet. */
@media(min-width:701px) and (min-height:521px) {
  .pr-room-inspector { display: grid; grid-template-rows: auto minmax(0,1fr) auto; overflow: hidden; }
  .pr-inspector-art { max-height: clamp(120px,calc(100svh - 660px),240px); }
  .pr-inspector-body { min-height: 0; overflow-y: auto; padding: 12px 11px 9px; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: var(--pr-gold) transparent; }
  .pr-inspector-heading { margin-bottom: 8px; }
  .pr-room-kind { margin-bottom: 8px; }
  .pr-room-advice { margin-bottom: 11px; }
  .pr-room-entry { position: static; margin: 0; padding: 9px 10px 10px; border-top: 1px solid var(--pr-rim-soft); background: var(--pr-surface); }
}
@media(min-width:1100px) and (min-height:780px) {
  .pr-room-card-art { max-height: 160px; }
}
@media(max-width:1100px) {
  .pr-menu-layer.kit-warstwa { padding: 18px 24px; }
  .pr-menu-layer.kit-warstwa .kit-karta { gap: 18px; }
  .pr-home-main { grid-template-columns: .95fr 1.05fr; gap: 28px; }
  .pr-home-title.kit-tytul { font-size: 67px; }
  .pr-home-goal { font-size: 14px; margin: 16px 0 20px; }
  .pr-home-destinations { gap: 9px; }
  .pr-home-destinations>.kit-btn { min-height: 94px; padding: 13px 12px; gap: 9px; }
  .pr-destination-copy b { font-size: 13px; }
  .pr-destination-copy>small { font-size: 10px; }
  .pr-destination-icon { width: 36px; height: 42px; border-radius: 12px; }
  .pr-destination-icon .pr-icon { width: 22px; height: 22px; }
  .pr-destination-end>strong { font-size: 14px; }
  .pr-levels-layer.kit-warstwa .kit-karta { padding: 20px; }
  .pr-gallery-content { gap: 16px; grid-template-columns: minmax(0,1fr) minmax(245px,.53fr); }
  .pr-room-grid { gap: 9px; }
  .pr-chapter-cover { width: 48px; }
  .pr-chapter-tab-copy>b { font-size: 11px; }
  .pr-chapter-tab { gap: 7px!important; }
  .pr-inspector-body { padding: 12px 8px 8px; }
  .pr-inspector-body h3 { font-size: 19px; }
}
@media(max-width:760px) and (min-height:521px) {
  .pr-menu-layer.kit-warstwa { padding: max(14px,var(--pr-safe-top)) max(18px,var(--pr-safe-right)) max(12px,var(--pr-safe-bottom)) max(18px,var(--pr-safe-left)); }
  .pr-menu-layer.kit-warstwa .kit-karta { gap: 13px; }
  .pr-home-main { display: flex; flex-direction: column; align-items: stretch; gap: 12px; min-height: 0; }
  .pr-home-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 15px; padding: 0; align-items: center; }
  .pr-home-intro .pr-menu-eyebrow { display: none; }
  .pr-home-title.kit-tytul { font-size: 45px; grid-column: 1; letter-spacing: .11em; }
  .pr-home-title>span { font-size: 14px; margin-top: 7px; letter-spacing: .015em; }
  .pr-home-goal { grid-column: 2; grid-row: 1; font-size: 11px; line-height: 1.5; margin: 0; }
  .pr-home-play { grid-column: 1/-1; grid-row: 3; }
  .pr-home-play>.kit-btn { width: 100%; min-height: 53px; font-size: 15px; padding: 13px 16px; }
  .pr-start-context { display: none; }
  .pr-home-difficulty { grid-column: 1/-1; grid-row: 2; max-width: none; }
  .pr-home-difficulty .pr-label { display: none; }
  .pr-home-difficulty .pr-difficulties { margin: 0; gap: 6px; }
  .pr-home-difficulty .pr-difficulties .kit-btn { min-height: 44px; padding: 9px 6px; font-size: 11px; border-radius: 10px; }
  .pr-home-difficulty .pr-difficulty-desc { display: none; }
  .pr-home-hero { flex: 1; min-height: 150px; padding: 5px; border-radius: 18px; transform: none; display: flex; flex-direction: column; overflow: hidden; }
  .pr-hero-art { min-height: 0; max-height: none; flex: 1; aspect-ratio: auto; border-radius: 13px 13px 6px 6px; }
  .pr-hero-info { padding: 9px 9px 5px; gap: 9px; }
  .pr-hero-info h2 { font-size: 16px; margin: 3px 0 0; }
  .pr-hero-info p { display: none; }
  .pr-hero-info .pr-eyebrow { font-size: 10px; letter-spacing: .07em; }
  .pr-hero-info>.kit-btn { height: 44px; width: 44px; min-height: 44px; padding: 12px; }
  .pr-hero-art>.pr-preview-label { top: 8px; left: 8px; padding: 5px 7px; font-size: 10px; }
  .pr-home-destinations { grid-template-columns: 1fr 1fr 1fr; gap: 7px; }
  .pr-home-destinations>.kit-btn { min-height: 87px; display: flex; flex-direction: column; align-items: center; text-align: center; justify-content: center; border-radius: 13px; padding: 9px 6px; gap: 7px; }
  .pr-destination-icon { width: 31px; height: 29px; border-radius: 9px; border: 0; box-shadow: none; background: none!important; }
  .pr-destination-icon .pr-icon { width: 23px; height: 23px; }
  .pr-destination-copy b { font-size: 11px; line-height: 1.3; }
  .pr-destination-copy>small,.pr-destination-end { display: none; }
  .pr-home-footer { min-height: 44px; gap: 9px; }
  .pr-journey { gap: 8px; }
  .pr-journey>span:last-child,.pr-home-daily-best { display: none; }
  .pr-journey-track { max-width: 70px; }
  .pr-home-footer>[data-pr=help] { font-size: 10px; padding-left: 3px; gap: 5px; }
}
/* Phone room browser: gallery scrolls, selected room and entry stay at hand. */
@media(max-width:700px) {
  .pr-levels-layer.kit-warstwa { padding: max(9px,var(--pr-safe-top)) max(9px,var(--pr-safe-right)) max(9px,var(--pr-safe-bottom)) max(9px,var(--pr-safe-left)); }
  .pr-levels-layer.kit-warstwa .kit-karta { padding: 14px; max-height: none; border-radius: 19px; }
  .pr-levels-layer .pr-sheet-head { gap: 10px; margin-bottom: 7px; }
  .pr-levels-layer .pr-sheet-head .kit-tytul { font-size: 23px; }
  .pr-gallery-toolbar { gap: 8px; margin-bottom: 8px; }
  .pr-gallery-toolbar>p { font-size: 10px; line-height: 1.45; }
  .pr-gallery-difficulty { padding-left: 7px; gap: 2px; border-radius: 10px; }
  .pr-gallery-difficulty>.pr-icon { width: 14px; height: 14px; }
  .pr-gallery-difficulty select { font-size: 11px; padding: 7px 3px; max-width: 108px; }
  .pr-chapter-tabs { display: none; }
  .pr-chapter-mobile { display: flex; align-items: center; gap: 9px; min-height: 44px; padding: 0 9px; border: 1px solid var(--pr-rim); border-radius: 11px; background: var(--pr-surface-soft); margin-bottom: 12px; flex: none; color: var(--pr-gold); font-size: 10px; }
  .pr-chapter-mobile>span { flex: none; }
  .pr-chapter-mobile select { flex: 1; min-width: 0; width: 100%; font-size: 12px; padding: 8px 0; }
  .pr-gallery-content { display: flex; flex-direction: column; gap: 10px; min-height: 0; }
  .pr-room-collection { flex: 1; min-height: 100px; padding: 2px 3px 5px; }
  .pr-chapter-heading { margin-bottom: 10px; align-items: flex-end; }
  .pr-chapter-heading h3 { font-size: 16px; }
  .pr-chapter-heading .pr-eyebrow { font-size: 10px; margin: 0 0 3px; }
  .pr-chapter-completion { font-size: 10px; white-space: normal; text-align: right; max-width: 88px; }
  .pr-chapter-description,.pr-gallery-tip { display: none; }
  .pr-room-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; padding: 0 1px 3px; }
  .pr-room-card.kit-btn { padding: 4px; border-radius: 12px; }
  .pr-room-card-art { border-radius: 8px; aspect-ratio: 4/3; }
  .pr-room-card-copy { padding: 7px 4px 5px; gap: 5px; }
  .pr-room-card-name { font-size: 11px; line-height: 1.35; }
  .pr-room-card-meta { font-size: 10px; gap: 3px; flex-wrap: wrap; }
  .pr-room-card-meta .pr-stars { gap: 2px; }
  .pr-room-card-meta .pr-icon { width: 10px; height: 10px; }
  .pr-room-number { left: 5px; top: 5px; font-size: 10px; padding: 3px 5px; border-radius: 5px; }
  .pr-room-card-state { right: 5px; top: 5px; width: 21px; height: 21px; }
  .pr-room-inspector { flex: none; display: grid; grid-template-columns: minmax(0,1fr) minmax(123px,.78fr); gap: 8px; border-radius: 13px; padding: 11px; overflow: visible; box-shadow: 0 -8px 18px #143d2f0b; }
  .pr-inspector-art { display: none; }
  .pr-inspector-body { padding: 0; min-width: 0; }
  .pr-inspector-heading { margin-bottom: 5px; }
  .pr-inspector-heading>.pr-stars { display: none; }
  .pr-room-state { font-size: 10px; gap: 4px; }
  .pr-inspector-body h3 { font-size: 15px; line-height: 1.25; margin: 0 0 4px; }
  .pr-room-kind { margin: 0; font-size: 10px; }
  .pr-room-advice,.pr-room-danger { display: none; }
  .pr-room-facts { border: 0; padding: 7px 0 0; display: flex; gap: 12px; }
  .pr-room-facts>div { display: flex; flex-direction: row; gap: 4px; align-items: center; }
  .pr-room-facts dt { font-size: 10px; gap: 0; }
  .pr-room-facts .pr-fact-label { display: none; }
  .pr-room-facts dt .pr-icon { height: 13px; width: 13px; }
  .pr-room-facts dd { font-size: 12px; }
  .pr-room-entry { display: flex; flex-direction: column; justify-content: center; margin: 0; padding: 0; background: none; position: static; min-width: 0; }
  .pr-room-entry-note { font-size: 10px; line-height: 1.4; margin: 0 0 7px; }
  .pr-unlock-note { gap: 4px; }
  .pr-unlock-note>.pr-icon { display: none; }
  .pr-room-entry>.kit-btn { font-size: 11px; min-height: 46px; padding: 9px 8px; gap: 5px; border-radius: 10px; }
  .pr-room-entry>.kit-btn .pr-icon { width: 14px; height: 14px; }
  .pr-gallery-footer { margin-top: 9px; padding-top: 9px; font-size: 10px; gap: 7px; }
  .pr-gallery-footer .pr-icon { width: 13px; height: 13px; }
  .pr-mode-card { padding: 9px 12px 12px; gap: 9px; }
  .pr-mode-art { grid-column: 1/-1; aspect-ratio: 3.1/1; margin: -2px -5px 0; }
  .pr-mode-heading h3 { font-size: 14px; }
  .pr-key-players>div { padding: 7px; border-radius: 9px; }
  .pr-key-players span { font-size: 10px; }
  .pr-coop-online .pr-mode-art { display: none; }
  .pr-coop-online .pr-online-illustration { display: none; }
  .pr-coop-rule { margin-top: 10px; font-size: 11px; }
  .pr-bonus-card { padding: 13px; }
  .pr-bonus-card>.pr-icon { padding: 6px; width: 21px; height: 21px; border-radius: 9px; float: none; margin: 0 0 9px; }
  .pr-bonus-card h3 { min-height: 0; margin: 0 0 6px; }
}
@media(max-width:360px) and (min-height:521px) {
  .pr-menu-layer.kit-warstwa { padding: 10px 13px; }
  .pr-menu-layer.kit-warstwa .kit-karta { gap: 10px; }
  .pr-signature>span { display: block; }
  .pr-signature { font-size: 11px; letter-spacing: .1em; gap: 6px; }
  .pr-signature img { width: 32px; height: 35px; }
  .pr-signature small { font-size: 10px; letter-spacing: .02em; margin-top: 3px; }
  .pr-menu-tools { gap: 5px; }
  .pr-menu-tools .pr-language-button { padding: 9px!important; gap: 5px; }
  .pr-menu-tools .pr-icon-button { width: 44px; min-height: 44px!important; padding: 10px!important; }
  .pr-menu-tools .pr-icon { width: 18px; height: 18px; }
  .pr-home-main { gap: 10px; }
  .pr-home-intro { gap: 8px 10px; }
  .pr-home-title.kit-tytul { font-size: 37px; }
  .pr-home-title>span { font-size: 12px; margin-top: 5px; }
  .pr-home-goal { font-size: 10px; line-height: 1.5; }
  .pr-home-play>.kit-btn { min-height: 48px; font-size: 14px; padding: 11px 14px; border-radius: 13px; }
  .pr-home-difficulty .pr-difficulties .kit-btn { font-size: 10px; gap: 4px; }
  .pr-home-hero { min-height: 134px; border-radius: 15px; }
  .pr-hero-info { padding: 6px 7px 2px; }
  .pr-hero-info h2 { font-size: 14px; }
  .pr-hero-info .pr-eyebrow { font-size: 10px; }
  .pr-home-destinations>.kit-btn { min-height: 74px; border-radius: 11px; gap: 4px; padding: 7px 4px; }
  .pr-destination-copy b { font-size: 10px; }
  .pr-destination-icon { height: 26px; }
  .pr-destination-icon .pr-icon { width: 22px; height: 22px; }
  .pr-home-footer { min-height: 44px; }
  .pr-home-footer>[data-pr=help] { gap: 4px; }
  .pr-levels-layer.kit-warstwa .kit-karta { padding: 11px; }
  .pr-levels-layer .pr-sheet-head .kit-tytul { font-size: 21px; }
  .pr-gallery-toolbar>p { max-width: 160px; }
  .pr-gallery-content { gap: 8px; }
  .pr-room-inspector { padding: 9px; grid-template-columns: minmax(0,1fr) minmax(112px,.8fr); gap: 7px; }
  .pr-inspector-body h3 { font-size: 13px; }
  .pr-room-entry>.kit-btn { padding: 9px 5px; font-size: 10px; gap: 4px; }
  .pr-room-entry>.kit-btn .pr-icon { width: 12px; height: 12px; }
  .pr-room-card-meta>.pr-stars { display: none; }
  .pr-gallery-footer { padding-top: 8px; margin-top: 8px; }
  .pr-scenes { grid-template-columns: 1fr; gap: 10px; }
  .pr-scenes .kit-btn { flex-direction: row; gap: 11px; text-align: left; padding: 5px; }
  .pr-scenes .pr-scene-preview { width: 100px; height: 75px; flex: none; }
  .pr-scene-name { width: auto; flex: 1; min-width: 0; padding: 9px 29px 9px 0; font-size: 12px; }
  .pr-scene-check { top: 50%; right: 10px; transform: translateY(-50%); }
}
@media(max-height:650px) and (min-width:761px) {
  .pr-menu-layer.kit-warstwa .kit-karta { gap: 12px; }
  .pr-home-title.kit-tytul { font-size: 59px; }
  .pr-home-title>span { font-size: 19px; margin-top: 6px; }
  .pr-home-intro .pr-menu-eyebrow { margin-bottom: 10px; }
  .pr-home-goal { margin: 12px 0 16px; font-size: 13px; }
  .pr-home-play>.kit-btn { min-height: 51px; padding: 13px 17px; font-size: 14px; }
  .pr-start-context { margin: 10px 0 13px; }
  .pr-home-hero { max-height: 100%; display: flex; flex-direction: column; }
  .pr-hero-art { min-height: 0; flex: 1; aspect-ratio: 4/3; }
  .pr-hero-info { padding: 10px 10px 4px; }
  .pr-hero-info h2 { font-size: 17px; }
  .pr-hero-info p { display: none; }
  .pr-home-destinations>.kit-btn { min-height: 79px; padding: 11px; }
  .pr-destination-copy>small { line-height: 1.4; }
  .pr-gallery-content { grid-template-columns: minmax(0,1fr) minmax(240px,.48fr); }
  .pr-levels-layer.kit-warstwa .kit-karta { padding: 17px; }
  .pr-gallery-toolbar { margin-bottom: 9px; }
  .pr-chapter-tabs { margin-bottom: 12px; }
  .pr-gallery-footer { padding-top: 10px; margin-top: 10px; }
}
/* Landscape phone: two columns, no stacked hero pushing actions off-screen. */
@media(max-height:520px) and (orientation:landscape) {
  .pr-menu-layer.kit-warstwa { padding: max(10px,var(--pr-safe-top)) max(19px,var(--pr-safe-right)) max(9px,var(--pr-safe-bottom)) max(19px,var(--pr-safe-left)); }
  .pr-menu-layer.kit-warstwa .kit-karta { gap: 9px; grid-template-rows: 44px minmax(0,1fr) 55px; }
  .pr-menu-top { min-height: 44px; }
  .pr-signature img { width: 35px; height: 35px; }
  .pr-signature { font-size: 12px; }
  .pr-signature small { margin-top: 3px; font-size: 10px; }
  .pr-home-main { display: grid; grid-template-columns: minmax(0,1.12fr) minmax(0,1fr); gap: 23px; min-height: 0; align-items: stretch; }
  .pr-home-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 7px 15px; align-items: center; padding: 0; min-height: 0; }
  .pr-home-intro .pr-menu-eyebrow { display: none; }
  .pr-home-title.kit-tytul { font-size: 43px; grid-column: 1; grid-row: 1; letter-spacing: .1em; }
  .pr-home-title>span { font-size: 13px; margin-top: 5px; letter-spacing: .015em; }
  .pr-home-goal { grid-column: 2; grid-row: 1; font-size: 10px; line-height: 1.5; margin: 0; }
  .pr-home-play { grid-column: 1/-1; grid-row: 3; }
  .pr-home-play>.kit-btn { width: 100%; min-height: 47px; padding: 10px 15px; font-size: 13px; border-radius: 12px; }
  .pr-start-context { display: none; }
  .pr-home-difficulty { grid-column: 1/-1; grid-row: 2; max-width: none; }
  .pr-home-difficulty .pr-label,.pr-home-difficulty .pr-difficulty-desc { display: none; }
  .pr-home-difficulty .pr-difficulties { margin: 0; gap: 6px; }
  .pr-home-difficulty .pr-difficulties .kit-btn { min-height: 44px; font-size: 10px; padding: 8px 5px; gap: 5px; border-radius: 10px; }
  .pr-home-hero { max-height: none; height: 100%; min-height: 0; display: flex; flex-direction: column; padding: 4px; border-radius: 16px; transform: none; }
  .pr-hero-art { flex: 1; min-height: 0; aspect-ratio: auto; max-height: none; border-radius: 12px 12px 5px 5px; }
  .pr-hero-info { padding: 5px 7px 0; gap: 10px; }
  .pr-hero-info h2 { font-size: 14px; margin: 2px 0; }
  .pr-hero-info p { display: none; }
  .pr-hero-info .pr-eyebrow { font-size: 10px; letter-spacing: .03em; }
  .pr-hero-info>.kit-btn { width: 44px; min-height: 44px; height: 44px; }
  .pr-hero-art>.pr-preview-label { top: 8px; left: 8px; padding: 5px 7px; font-size: 10px; }
  .pr-home-destinations { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
  .pr-home-destinations>.kit-btn { min-height: 55px; padding: 8px 11px; border-radius: 12px; gap: 9px; }
  .pr-destination-icon { width: 31px; height: 31px; border-radius: 9px; }
  .pr-destination-icon>.pr-icon { width: 19px; height: 19px; }
  .pr-destination-copy b { font-size: 11px; }
  .pr-destination-copy>small,.pr-destination-end>strong { display: none; }
  .pr-destination-end { margin-left: auto; }
  .pr-destination-end>.pr-icon { width: 15px; height: 15px; }
  .pr-menu-layer.kit-warstwa .kit-karta { position: relative; }
  .pr-home-footer { display: flex; position: absolute; top: 0; right: 190px; min-height: 44px; z-index: 2; }
  .pr-home-footer .pr-journey,.pr-home-footer .pr-home-daily-best { display: none; }
  .pr-home-footer>[data-pr=help] { width: 44px; height: 44px; padding: 10px; justify-content: center; border: 1px solid var(--pr-rim-soft); border-radius: 12px; background: var(--pr-surface-soft); }
  .pr-home-footer>[data-pr=help]>span { display: none; }
  .pr-home-footer>[data-pr=help] .pr-icon { width: 20px; height: 20px; }
  .pr-menu-tools .pr-icon-button { width: 44px; height: 44px; min-height: 44px!important; }
  .pr-levels-layer.kit-warstwa { padding: 8px 13px; }
  .pr-levels-layer.kit-warstwa .kit-karta { padding: 11px 14px; border-radius: 17px; }
  .pr-levels-layer .pr-sheet-head { margin: 0 0 5px; }
  .pr-levels-layer .pr-sheet-head .kit-tytul { font-size: 23px; }
  .pr-gallery-toolbar { position: absolute; top: 11px; right: 68px; margin: 0; }
  .pr-gallery-toolbar>p { display: none; }
  .pr-gallery-difficulty { min-height: 44px; border-radius: 10px; padding-left: 8px; }
  .pr-gallery-difficulty select { font-size: 11px; padding: 7px 5px; }
  .pr-chapter-tabs { display: none; }
  .pr-chapter-mobile { display: flex; align-items: center; gap: 9px; min-height: 44px; width: calc(100% - 255px); border: 1px solid var(--pr-rim-soft); border-radius: 10px; background: var(--pr-surface-soft); padding: 0 9px; margin: 0 0 8px; color: var(--pr-gold); font-size: 10px; flex: none; }
  .pr-chapter-mobile select { flex: 1; min-width: 0; width: 100%; font-size: 11px; padding: 8px 0; }
  .pr-gallery-content { display: grid; grid-template-columns: minmax(0,1fr) 235px; gap: 15px; }
  .pr-room-collection { flex: initial; padding: 1px 3px 4px; min-height: 0; }
  .pr-chapter-heading,.pr-chapter-description,.pr-gallery-tip { display: none; }
  .pr-room-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; padding: 0 1px 2px; }
  .pr-room-card.kit-btn { padding: 4px; border-radius: 10px; }
  .pr-room-card-art { border-radius: 6px; }
  .pr-room-card-copy { padding: 7px 3px 3px; gap: 4px; }
  .pr-room-card-name { font-size: 10px; line-height: 1.35; }
  .pr-room-card-meta>span:first-child { display: none; }
  .pr-room-card-meta { gap: 0; }
  .pr-room-card-meta .pr-stars { display: inline-flex; }
  .pr-room-card-meta .pr-icon { width: 10px; height: 10px; }
  .pr-room-inspector { display: flex; flex-direction: column; overflow: auto; padding: 9px; border-radius: 12px; margin-top: -52px; }
  .pr-inspector-art { display: none; }
  .pr-inspector-body { padding: 0; }
  .pr-inspector-heading { margin-bottom: 7px; }
  .pr-inspector-heading>.pr-stars { display: inline-flex; }
  .pr-inspector-body h3 { font-size: 16px; margin-bottom: 5px; }
  .pr-room-kind { font-size: 10px; margin-bottom: 8px; }
  .pr-room-advice { display: block; font-size: 10px; line-height: 1.45; margin-bottom: 9px; }
  .pr-room-facts { display: flex; padding: 8px 0; border-block: 1px solid var(--pr-rim-soft); gap: 15px; }
  .pr-room-facts>div { display: flex; flex-direction: row; align-items: center; gap: 7px; }
  .pr-room-facts dt { font-size: 10px; gap: 4px; }
  .pr-room-facts .pr-fact-label { display: inline; }
  .pr-room-facts dd { font-size: 13px; }
  .pr-room-danger { display: none; }
  .pr-room-entry { padding: 10px 0 0; position: static; background: none; margin-top: auto; }
  .pr-room-entry-note { font-size: 10px; line-height: 1.45; margin: 0 0 7px; }
  .pr-room-entry>.kit-btn { min-height: 44px; font-size: 11px; padding: 10px 8px; }
  .pr-gallery-footer { margin-top: 8px; padding-top: 8px; font-size: 10px; }
  .pr-gallery-footer .pr-icon { width: 13px; height: 13px; }
  .pr-together-layer .pr-mode-art { display: none; }
  .pr-together-layer .pr-mode-card { padding: 10px 12px; gap: 8px; }
  .pr-bonus-card { padding: 10px; }
  .pr-bonus-card>.pr-icon { padding: 5px; width: 20px; height: 20px; margin-bottom: 7px; border-radius: 8px; }
  .pr-scenes .pr-scene-preview { height: 78px; aspect-ratio: auto; width: 100%; }
  .pr-scenes .kit-btn { display: flex; flex-direction: column; gap: 0; }
  .pr-scene-name { padding: 8px 5px; width: 100%; font-size: 11px; }
  .pr-scene-check { top: 10px; right: 10px; transform: none; }
}
@media(max-height:590px) and (orientation:portrait) {
  .pr-menu-layer.kit-warstwa .kit-karta { gap: 8px; }
  .pr-home-main { gap: 8px; }
  .pr-home-hero { min-height: 127px; }
  .pr-home-footer>[data-pr=help] { min-height: 44px; }
  .pr-together-layer .pr-mode-art { display: none; }
  .pr-levels-layer .pr-gallery-toolbar>p { display: none; }
  .pr-levels-layer .pr-gallery-toolbar { position: absolute; top: 62px; right: 15px; margin: 0; }
  .pr-levels-layer .pr-chapter-mobile { margin-right: 122px; padding: 0 6px; gap: 3px; }
  .pr-levels-layer .pr-chapter-mobile>span { display: none; }
  .pr-levels-layer .pr-chapter-mobile select { font-size: 11px; }
  .pr-levels-layer .pr-chapter-heading { display: none; }
  .pr-room-inspector { padding: 8px; }
  .pr-gallery-footer { margin-top: 7px; padding-top: 7px; }
  .pr-bonus-card { padding: 10px; }
  .pr-bonus-card>.pr-icon { float: left; margin: 0 7px 5px 0; padding: 5px; width: 20px; height: 20px; }
  .pr-bonus-card h3 { min-height: 31px; display: flex; align-items: center; }
  .pr-bonus-card p { clear: both; }
}
@media(prefers-reduced-motion:reduce) {
  .kit-warstwa .kit-karta,.pr-home-hero,.pr-room-card,.pr-home-destinations>.kit-btn { animation: none!important; transition: none!important; }
  .pr-home-hero { transform: none; }
}
