/* A quiet side visit: keep the assistant visible, and the way back unmistakable. */
.story-panel{position:fixed;inset:16px 16px 16px auto;margin:0;width:min(590px,calc(100vw - 48px));max-width:none;height:calc(100dvh - 32px);max-height:none;padding:0;border:1px solid var(--line);border-radius:22px;background:var(--paper);overflow:hidden;box-shadow:0 24px 80px rgba(11,20,26,.26)}
.story-panel[open]{display:flex;flex-direction:column;animation:story-panel-enter .18s ease-out}
.story-panel::backdrop{background:rgba(11,20,26,.22);backdrop-filter:none}
.story-panel-header{display:flex;align-items:center;gap:12px;padding:20px 22px;background:var(--panel);border-bottom:1px solid var(--line);flex-shrink:0}
.story-panel-header>div{flex:1;min-width:0}
.story-panel-kicker{font-size:11px;line-height:1.5;color:var(--muted)}
.story-panel-header h2{font-size:20px;letter-spacing:-.025em;margin:4px 0 0;line-height:1.2}
.story-panel-close{flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--blue-soft);color:var(--ink);font-size:28px;line-height:1}
.story-panel-close:hover{background:var(--panel-2)}
.story-panel-nav{padding:4px 18px;background:var(--panel);border-bottom:1px solid var(--line);flex-shrink:0}
.story-panel-content{padding:24px;overflow:auto;overscroll-behavior:contain;min-height:0;flex:1;scrollbar-gutter:stable;overflow-wrap:anywhere}
.story-panel-content:focus{outline:none}
.story-panel-content p{font-size:15px;line-height:1.75;margin:0 0 18px}
.story-panel-footer{padding:14px 22px max(18px,env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--line);flex-shrink:0}
.story-panel-footer p{font-size:12px;text-align:center;margin:0 0 10px}
.story-panel-footer .button{width:100%}
.story-panel-filter{display:grid;gap:8px;font-size:13px;color:var(--muted);margin:22px 0 14px}
.story-panel-filter select{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--ink)}
.story-panel-list{display:grid;gap:14px}
.story-panel-card{padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
.story-panel-card .eyebrow,.story-panel-story-heading .eyebrow{font-size:10px;line-height:1.6;color:var(--blue);margin:0 0 12px}
.story-panel-card h3{font-size:21px;line-height:1.3;letter-spacing:-.025em;margin:0 0 12px}
.story-panel-card h3 a{color:var(--ink);text-decoration:none}
.story-panel-card h3 a:hover{text-decoration:underline}
.story-panel-card p{font-size:14px}
.story-panel-read{font-size:12px;color:var(--blue);font-weight:650}
.story-panel-story-heading h3{font-size:30px;line-height:1.15;letter-spacing:-.035em;margin:0 0 20px}
.story-panel-chapter{border-top:1px solid var(--line);padding:20px 0 4px}
.story-panel h4{font-size:17px;line-height:1.35;margin:0 0 10px}
.story-panel-chapter p{white-space:pre-wrap}
.story-panel-takeaway{padding:22px;border-radius:14px;background:var(--ink);color:white;margin:12px 0 28px;border-top:3px solid var(--cyan)}
.story-panel-takeaway img{float:left;margin:0 10px 12px 0}
.story-panel-takeaway h4{padding:6px 0}
.story-panel-takeaway p{clear:both;color:#e2edef}
.story-panel-takeaway small{display:block;color:#c8d9df;font-size:12px;line-height:1.7;border-top:1px solid #40515a;padding-top:16px}
.story-panel-photos>div{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.story-panel-photos figure{margin:0}
.story-panel-photos button{width:100%;padding:0;border:0;background:var(--panel-2);border-radius:10px;overflow:hidden;cursor:zoom-in}
.story-panel-photos img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.story-panel-photos figcaption{font-size:11px;line-height:1.6;color:var(--muted);padding:10px 0}
.story-panel-photos strong{display:block;color:var(--ink)}
.story-panel-enlarged{margin:0}
.story-panel-enlarged img{display:block;width:100%;max-height:65dvh;object-fit:contain}
.story-panel-enlarged figcaption{font-size:14px;color:var(--muted);line-height:1.7;margin-top:18px}
.story-panel-note{border-top:1px solid var(--line);padding-top:18px;margin-top:20px!important;font-size:12px!important}
.story-panel-message{padding:24px 0}
@keyframes story-panel-enter{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:640px){.story-panel{inset:8px 8px 8px auto;width:calc(100vw - 16px);height:calc(100dvh - 16px);border-radius:18px}.story-panel-header{padding:14px}.story-panel-kicker{font-size:10px}.story-panel-header h2{font-size:18px}.story-panel-content{padding:20px}.story-panel-footer{padding-left:16px;padding-right:16px}.story-panel-story-heading h3{font-size:26px}}
@media(prefers-reduced-motion:reduce){.story-panel[open]{animation:none}}
