.story-dialog{position:fixed;inset:140px 34px 40px auto;margin:0;padding:0;border:1px solid #b6aa90;background:#f4f0e4;color:#363229;max-width:calc(100vw - 68px);max-height:none;width:390px;height:auto;z-index:14;overflow:hidden;box-shadow:0 6px 28px #3f372b20;font-family:Georgia,'Times New Roman',serif}
.story-stage{position:relative;width:100%;height:100%;overflow:hidden;background:#f4f0e4;touch-action:pan-y}
.story-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
.story-photo .story-art{top:13%;height:44%;object-fit:contain;padding:0 16px}
.story-top{position:absolute;top:0;left:0;right:0;padding:12px 14px;background:linear-gradient(#f4f0e4f0,#f4f0e4b8,transparent);z-index:4}
.story-progress{display:flex;gap:5px;margin-bottom:6px}
.story-progress button{flex:1;height:18px;padding:0;border:0;background:none;position:relative;cursor:pointer}
.story-progress button:before,.story-progress button span{content:'';position:absolute;top:7px;left:0;right:0;height:3px;background:#b6aa9080}
.story-progress button span{background:#854a37;transform:scaleX(0);transform-origin:left}
.story-toolbar{display:flex;gap:10px;align-items:center}
.story-name{font-size:12px;line-height:1.35;flex:1;font-style:italic;max-height:50px;overflow:hidden}
.story-dialog button,.story-resume{font:inherit;color:#854a37;cursor:pointer}
.story-toolbar button{border:0;background:#f4f0e4d9;min-height:36px;min-width:36px;padding:4px;font-size:12px}
.story-toolbar .story-exit{font-size:26px}
.story-dialog button:focus-visible,.story-resume:focus-visible,.story-caption:focus-visible{outline:2px solid #854a37;outline-offset:-2px}
.story-tap{position:absolute;top:90px;bottom:47%;width:50%;border:0;background:none;z-index:2;touch-action:pan-y}
.story-tap-prev{left:0}.story-tap-next{right:0}
.story-caption{position:absolute;inset:48% 0 58px;padding:32px 24px 8px;overflow:auto;scrollbar-width:thin;scrollbar-color:#b6aa90 transparent;background:linear-gradient(transparent,#f4f0e4ee 24px,#f4f0e4 56px);z-index:3;overscroll-behavior:contain}
.story-count{font-size:10px;letter-spacing:.15em;color:#854a37;margin:0 0 8px}
.story-heading{font-weight:normal;font-size:clamp(22px,3vh,30px);line-height:1.15;margin:0 0 12px;color:#854a37}
.story-text p,.story-language{font-size:15px;line-height:1.55;margin:0 0 12px}
.story-language:empty{display:none}.story-language{font-style:italic;font-size:12px}
.story-text a,.story-source-sheet a{color:#854a37;text-underline-offset:3px;overflow-wrap:anywhere}
.story-art-note{font-size:10px;font-style:italic;opacity:.7}
.story-bottom{position:absolute;bottom:0;left:14px;right:14px;height:54px;display:flex;align-items:center;justify-content:space-between;gap:4px;border-top:3px double #b6aa90;z-index:5;background:#f4f0e4}
.story-bottom button{border:0;background:none;min-height:42px;padding:5px;font-size:12px}
.story-bottom button:disabled{opacity:.35;cursor:default}
.story-source-sheet{position:absolute;inset:88px 12px 60px;padding:20px;background:#f4f0e4;border:1px solid #b6aa90;z-index:6;overflow:auto}
.story-source-sheet[hidden]{display:none}.story-source-sheet h2{font-weight:normal;color:#854a37}.story-source-sheet p{line-height:1.6;font-size:15px}.story-source-close{float:right;background:none;border:0;font-size:24px!important}
.story-resume{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:30;padding:13px 22px;background:#f4f0e4;border:3px double #b6aa90;box-shadow:0 3px 20px #28291f30}
.story-resume[hidden]{display:none}
.story-card{display:block;width:100%;text-align:left;background:none;font:inherit;color:inherit}
.story-card-cover{float:left;width:66px;height:96px;object-fit:cover;object-position:top;margin:0 14px 8px 0;border:1px solid var(--rule)}
.story-card:after{content:'';display:block;clear:both}
@media(min-width:761px) and (max-width:1150px){.story-dialog{top:169px}}
@media(max-width:760px){.story-dialog{inset:auto 18px 20px 18px;width:auto;height:58dvh;max-width:none;max-height:calc(100dvh - 195px);margin:0}.story-caption{top:35%;padding-top:24px}.story-tap{bottom:65%}.story-top{padding-top:max(10px,env(safe-area-inset-top))}.story-bottom{padding-bottom:env(safe-area-inset-bottom);height:calc(54px + env(safe-area-inset-bottom))}.story-caption{bottom:calc(58px + env(safe-area-inset-bottom));inset-inline:0}.story-name{font-size:13px}.story-text p{font-size:16px}.story-heading{font-size:27px}}
@media(max-height:560px){.story-caption{top:35%;padding:24px 14px 6px}.story-heading{font-size:20px}.story-text p{font-size:13px}.story-name{font-size:10px}.story-bottom button{font-size:10px}}
