/* Portable content surfaces; the active theme may refine materials and artwork. */
.pk-play-page { max-width: 1240px; margin: auto; padding: 2rem 1rem 5rem; }
.pk-play-crumbs { font-size: .85rem; margin-bottom: 2rem; line-height: 1.7; }
.pk-play-heading { margin-bottom: 2.5rem; max-width: 850px; }
.pk-play-heading h1 { font-size: clamp(2.2rem, 5vw, 4rem); line-height: 1.05; }
.pk-play-heading > p:last-child { max-width: 60ch; line-height: 1.7; }
.pk-play-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 1.5rem; }
.pk-play-card { color: inherit; text-decoration: none; display: flex; flex-direction: column; min-width: 0; border: 1px solid #ccd0de; border-radius: 20px; overflow: hidden; background: #fff; }
.pk-play-card__art { aspect-ratio: 1.65; overflow: hidden; background: #e9e7f5; }
.pk-play-card__art img { width: 100%; height: 100%; object-fit: contain; }
.pk-play-card[data-format=GAME] .pk-play-card__art img { object-fit: cover; }
.pk-play-card__copy { padding: 1.25rem; }
.pk-play-card h3 { font-size: 1.35rem; line-height: 1.25; margin: .6rem 0; }
.pk-play-card p { line-height: 1.6; }
.pk-play-card__action { display: inline-block; margin-top: 1rem; font-weight: 700; }
.pk-play-art { display: block; max-width: 100%; height: auto; }
.pk-play-art-fallback { display: grid; place-items: center; min-height: 180px; background: linear-gradient(135deg,#d8e7eb,#d7cdf1); color:#253d58; font-weight:800; }
.pk-play-page section { margin-block: 3rem; }
.pk-play-page section h2 { margin-bottom: 1.5rem; }
.pk-play-paths, .pk-daily-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.pk-play-path { text-decoration: none; color: inherit; border-bottom: 1px solid #c3c7d5; padding: 1rem; }
.pk-play-path img { height: 170px; width: 100%; object-fit: contain; }
.pk-play-featured { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; }
.pk-daily-card { position:relative; display:block; color:inherit; text-decoration:none; padding:1.25rem; background:#fff; border-radius:18px; border:1px solid #c8ccde; min-height:220px; }
.pk-daily-card :is(h2,h3) { max-width:22ch; font-size:1.15rem; line-height:1.35; margin:.75rem 0 1.5rem; }
.pk-daily-card > span:last-child { font-size:.85rem; font-weight:700; }
.pk-daily-object { float:right; width:65px; height:65px; }
.pk-daily-object img { width:100%; height:100%; object-fit:contain; }
.pk-daily-date { margin-bottom:1rem; font-size:.85rem; }
.pk-interactive-shell { display:grid; grid-template-columns:.9fr 1.1fr; gap:2.5rem; align-items:start; }
.pk-experience-art { position:sticky; top:2rem; border-radius:22px; overflow:hidden; background:#e6e5f3; }
.pk-experience-art img { width:100%; max-height:480px; object-fit:contain; }
.pk-experience-body { min-width:0; }
.pk-experience-status { min-height:2rem; font-size:.875rem; font-weight:650; color:#53489c; }
.pk-question-title { line-height:1.25; font-size:clamp(1.5rem,2.5vw,2rem); margin:1rem 0; }
.pk-choice-list { display:grid; gap:.75rem; margin-top:1.5rem; }
.pk-choice { min-height:54px; text-align:left; color:#182044; background:#fff; border:1px solid #b8bfd7; border-radius:14px; padding:1rem; font:inherit; line-height:1.45; cursor:pointer; }
.pk-choice:hover { border-color:#6053bd; background:#f1effc; }
.pk-choice:active { transform:translateY(1px); }
.pk-choice:disabled { cursor:default; opacity:.8; }
.pk-play-page :focus-visible { outline:3px solid #6353db; outline-offset:4px; }
.pk-experience-tools { display:flex; gap:1rem; margin-block:2rem 1rem; }
.pk-experience-tools button { padding:.5rem; min-height:44px; background:none; border:0; color:#5142a4; font:inherit; text-decoration:underline; cursor:pointer; }
.pk-save-progress { display:flex; align-items:center; gap:.75rem; min-height:44px; font-size:.85rem; }
.pk-save-progress input { width:20px; height:20px; accent-color:#6053bd; }
.pk-save-note { font-size:.75rem; margin-top:.25rem; }
.pk-scene-body { white-space:pre-line; font-size:1rem; line-height:1.75; max-width:65ch; }
.pk-journey-map { display:flex; flex-wrap:wrap; gap:.35rem .7rem; list-style:none; padding:0; font-size:.75rem; color:#59627a; }
.pk-journey-map li[aria-current] { color:#5142a4; font-weight:750; border-bottom:2px solid currentColor; }
.pk-inventory { font-size:.8rem; color:#59627a; border-top:1px solid #cdd0df; padding-top:1rem; }
.pk-original-result { padding:2rem; border-radius:22px; background:linear-gradient(135deg,#f1e8fb,#dcf0eb); border:1px solid #c2c9e0; }
.pk-original-result h2 { font-size:clamp(2rem,3vw,3rem); line-height:1.1; margin:1.25rem 0; }
.pk-original-result p { line-height:1.75; }
.pk-result-why { border-top:1px solid #a7b7bf; padding-top:1rem; font-size:.875rem; }
.pk-result-actions { display:flex; flex-wrap:wrap; gap:.8rem; align-items:center; margin:2rem 0; }
.pk-result-actions button { font:inherit; padding:.8rem 1rem; min-height:48px; cursor:pointer; }
.pk-result-discovery a { display:block; padding:.7rem 0; min-height:44px; }
.pk-mini-feedback { margin-top:1.5rem; padding:1.25rem; background:#e2f1ea; border-radius:14px; }
.pk-mini-feedback a, .pk-mini-feedback button { display:block; margin-top:1rem; }
.pk-play-explanation, .pk-play-next { border-top:1px solid #c8ccdc; padding-top:2rem; line-height:1.7; }
.pk-play-explanation details { margin-top:1rem; }
.pk-play-explanation summary { cursor:pointer; padding:.75rem 0; }
.pk-discovery-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.pk-discovery-links a { text-decoration:none; color:inherit; border-bottom:1px solid #c4c8da; padding:1.5rem 0; }
.pk-discovery-links h3 { font-size:1.4rem; line-height:1.25; margin:.7rem 0; }
@media(max-width:700px){
 .pk-play-paths, .pk-daily-grid, .pk-discovery-links { grid-template-columns:1fr; }
 .pk-play-path { display:grid; grid-template-columns:80px 1fr; gap:0 1rem; }
 .pk-play-path img { grid-row:span 3; width:80px; height:100px; }
 .pk-play-path h3 { font-size:1.3rem; }
 .pk-play-path > span { display:none; }
 .pk-daily-card { min-height:170px; }
 .pk-daily-card :is(h2,h3) { max-width:25ch; }
 .pk-interactive-shell, .pk-play-featured { grid-template-columns:1fr; gap:1.5rem; }
 .pk-experience-art { position:static; max-height:200px; }
 .pk-experience-art img { max-height:200px; object-fit:cover; }
 .pk-play-page { padding-top:1.5rem; }
 .pk-play-crumbs { margin-bottom:1.5rem; }
 .pk-original-result { padding:1.5rem; }
 .pk-result-actions { align-items:stretch; flex-direction:column; }
 .pk-result-actions a { text-align:center; }
 .pk-play-grid { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce){.pk-choice:active { transform:none; }}

.pk-experience-tools button:disabled { opacity:.55; cursor:default; text-decoration:none; }
.pk-experience-tools[hidden] { display:none; }
[data-pk-daily-share] { margin-top:1.5rem; padding:.9rem 1.2rem; font:inherit; min-height:48px; cursor:pointer; }
.pk-share-link { width:100%; max-width:32rem; padding:.75rem; font:inherit; }
.pk-result-drama-link { border-bottom:1px solid #c3c9da; color:inherit; font-weight:650; text-decoration:none; }
.pk-experience-body { scroll-margin-top:1.5rem; }
