body.story-open{overflow:hidden}
dialog.story-player{padding:0;border:1px solid #84d9e366;border-radius:26px;width:min(1080px,96vw);max-width:1080px;max-height:94dvh;overflow:auto;background:#102b3e;color:#fff4dd;box-shadow:0 24px 100px #001528aa}
.story-player::backdrop{background:#041b2dea;backdrop-filter:blur(7px)}
.story-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;color:#b8d9e4;font-size:11px;letter-spacing:1.3px}
.story-player button{min-height:44px;cursor:pointer;font-family:inherit}
.story-skip{color:#fff1d6;background:transparent;border:1px solid #adc5c84d;border-radius:12px;padding:6px 12px;letter-spacing:0}
.story-stage{position:relative;height:clamp(230px,43vh,460px);overflow:hidden;background:radial-gradient(ellipse,#326075,#102637)}
.story-picture{width:100%;height:100%;object-fit:contain;object-position:center;position:relative;animation:story-camera 28s ease-in-out infinite alternate;display:block}
.story-light{position:absolute;inset:0;background:radial-gradient(ellipse at 56% 51%,#ffc86b20,transparent 62%);mix-blend-mode:screen;animation:story-glow 4s ease-in-out infinite}
.story-place{position:absolute;bottom:16px;left:20px;border:1px solid #f7e0b15c;border-radius:99px;padding:8px 14px;background:#0c2948b3;font-weight:700;font-size:12px;color:#fff3d3;backdrop-filter:blur(5px)}
.story-particles{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.story-particles i{position:absolute;left:var(--x);bottom:-12%;width:5px;height:5px;border-radius:50%;background:#ffe795;box-shadow:0 0 12px #ffe18a;animation:story-drift calc(7s + var(--i)*.35s) linear infinite;animation-delay:var(--delay)}
[data-effect=leaves] .story-particles i{width:13px;height:7px;border-radius:70% 0 70% 0;background:#e5a442;box-shadow:none}
[data-effect=bubbles] .story-particles i,[data-effect=spray] .story-particles i{width:12px;height:12px;background:#cdfcff22;border:1px solid #d3ffff99;box-shadow:0 0 7px #acffff44}
[data-effect=snow] .story-particles i{background:#fff;animation-name:story-snow;box-shadow:0 0 6px #ffffff77}
[data-effect=sand] .story-particles i{background:#f6bf74;width:3px;height:3px}
[data-effect=embers] .story-particles i{background:#ffbd71;box-shadow:0 0 15px #ff932c}
[data-effect=feathers] .story-particles i{width:5px;height:16px;border-radius:80% 10%;background:#ffffeacc}
[data-effect=rainbow] .story-particles i{filter:hue-rotate(calc(var(--i)*25deg))}
.story-caption{padding:20px 28px 12px;background:linear-gradient(120deg,#12354c,#153e51)}
.story-kicker{margin:0 0 6px;color:#a9dae0;font-size:11px;letter-spacing:1.5px;font-weight:700}
.story-title{margin:0 0 12px;font-size:clamp(22px,3vw,32px);line-height:1.15;color:#fff0bc}
.story-text{font-size:clamp(16px,1.9vw,20px);line-height:1.65;margin:0;min-height:100px;color:#f0f8f8}
.story-text-enter{animation:story-text-in .45s ease-out}
.story-page-dots{display:flex;gap:6px;justify-content:center;margin-top:14px}
.story-page-dots i{width:6px;height:6px;border-radius:50%;background:#77adb56b}
.story-page-dots .current{width:23px;border-radius:6px;background:#ffd77b}
.story-controls{display:flex;gap:10px;align-items:center;padding:14px 24px 18px;background:#123347}
.story-controls .secondary{padding:8px 14px;background:#214c60;border:1px solid #78bfc05c;color:#e2f8f6}
.story-controls .primary{margin-left:auto;padding:10px 18px}
.story-counter{font-size:12px;color:#bcdae0}
.story-image-error{position:absolute;inset:30% 12%;font-size:17px;padding:20px;background:#123347ed;border-radius:16px;text-align:center}
.story-paused .story-picture,.story-paused .story-light,.story-paused .story-particles i{animation-play-state:paused}
.story-reduced *,body.reduce-motion .story-player *{animation:none!important;transition:none!important}
.story-book-intro{line-height:1.6}
.story-book-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}
.story-card{background:#f2f7ef;border:1px solid #9fc7c4;border-radius:16px;overflow:hidden;text-align:left}
.story-card img{width:100%;height:120px;object-fit:cover;display:block}
.story-card-copy{padding:12px}
.story-card h3{font-size:17px;margin:4px 0 10px}
.story-card small{font-size:11px}
.story-card button{width:100%;padding:10px;min-height:44px}
.story-locked-art{height:70px;display:grid;place-items:center;background:linear-gradient(120deg,#d7e6dd,#aec9cb);font-size:24px}
.story-card.locked{opacity:.72}
.journey-dock #story-open{grid-column:1/-1}
@keyframes story-camera{from{transform:scale(1.025) translateX(-.6%)}to{transform:scale(1.11) translateX(.6%)}}
@keyframes story-glow{50%{opacity:.35}}
@keyframes story-drift{0%{transform:translate(0,0) rotate(0);opacity:0}15%{opacity:.8}80%{opacity:.7}100%{transform:translate(30px,-550px) rotate(180deg);opacity:0}}
@keyframes story-snow{0%{bottom:110%;transform:translateX(0);opacity:0}15%{opacity:.8}100%{bottom:-10%;transform:translateX(45px);opacity:0}}
@keyframes story-text-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){dialog.story-player{width:96vw;max-height:96dvh;border-radius:18px}.story-toolbar{padding:10px 12px;letter-spacing:.6px;font-size:9px}.story-stage{height:34dvh;min-height:200px}.story-caption{padding:16px 18px 10px}.story-text{min-height:140px;font-size:16px;line-height:1.55}.story-controls{padding:12px;gap:6px;flex-wrap:wrap}.story-controls .secondary{padding:7px 10px}.story-controls .primary{padding:9px 12px;font-size:14px}.story-book-grid{grid-template-columns:1fr}}
@media(max-height:560px) and (min-width:601px){.story-stage{height:34vh;min-height:160px}.story-caption{padding:12px 22px}.story-text{min-height:60px;font-size:16px}.story-title{font-size:22px;margin-bottom:6px}}
@media(prefers-reduced-motion:reduce){.story-player *{animation:none!important;transition:none!important}}

.story-stage::before{content:"";position:absolute;inset:-8%;background-image:var(--story-art);background-position:center;background-size:cover;filter:blur(18px) brightness(.42);pointer-events:none}
.story-picture{z-index:1}
.story-light,.story-particles{z-index:2}
.story-place,.story-image-error{z-index:3}
.story-controls button{width:auto;flex:0 0 auto}
.story-counter{white-space:nowrap}
.story-controls .story-next{min-width:125px;background:linear-gradient(120deg,#ffe39b,#f4bc62);color:#173649}
.story-toolbar .story-skip{width:auto;flex:0 0 auto}
@media(max-width:360px){.story-toolbar{gap:5px;font-size:8px}.story-skip{padding:6px 8px}.story-controls .story-next{min-width:110px}.story-controls{gap:5px}}
.journey-dock{display:grid;grid-template-columns:auto auto auto minmax(130px,1fr)}
.journey-dock #story-open{grid-column:auto}
@media(max-width:600px){.journey-dock{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.journey-dock button{width:100%;min-width:0;min-height:44px;white-space:nowrap;padding:9px 7px;font-size:12px}.journey-dock #continue-journey{grid-column:1/-1;min-height:46px;font-size:14px}}
