/* Captions sit directly over the scene; one compact transport reveals secondary tools. */
#gtBar.on{display:flex;flex-direction:column;align-items:center;gap:10px;width:min(980px,calc(100vw - 40px));max-width:none;bottom:var(--story-bottom,130px);max-height:calc(100dvh - var(--story-bottom,130px) - 120px);overflow:visible;padding:18px 0 0;border:0;border-radius:0;background:none;color:#f7f8fa;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;text-align:center;isolation:isolate}
#gtBar.on::before{content:"";position:absolute;inset:-50px -90px -20px;background:radial-gradient(ellipse,rgba(5,10,14,.77),rgba(5,10,14,.46) 45%,transparent 73%);filter:blur(12px);pointer-events:none;z-index:-1}
#gtBar:not(.on),#gtBar [hidden]{display:none!important}
.gs-heading{display:flex;justify-content:center;gap:18px;font:12px/1.4 var(--sans);letter-spacing:.04em;text-shadow:0 1px 6px #000}
.gs-heading span:last-child{opacity:.7;font-family:var(--mono);font-size:10px}
#gtBar .gs-caption{font:400 clamp(14px,1.3vw,18px)/1.5 var(--sans);margin:0;max-width:58ch;white-space:normal;color:inherit;text-wrap:pretty;text-shadow:0 1px 8px #000}
#gtBar .gs-controls{position:relative;display:flex;align-items:center;gap:4px;padding:5px 8px;flex-shrink:0;border:1px solid var(--gc-edge,#ffffff50);border-radius:99px;background:var(--gc-surface,rgba(24,29,31,.75));backdrop-filter:var(--gc-blur,blur(24px));box-shadow:var(--gc-shadow);overflow:hidden}
#gtBar progress{position:absolute;bottom:0;left:12px;width:calc(100% - 24px);height:2px;appearance:none;border:0;accent-color:var(--accent)}
#gtBar progress::-webkit-progress-bar{background:#ffffff18}#gtBar progress::-webkit-progress-value{background:var(--accent)}
#gtBar .gs-controls button{width:44px;height:44px;min-height:44px;display:grid;place-items:center;border:0;border-radius:50%;padding:10px;background:none;color:inherit;cursor:pointer}
#gtBar button svg{width:21px;height:21px;pointer-events:none}#gtBar [data-pause]{background:#ffffff15!important}.gs-divider{width:1px;height:22px;background:#ffffff30;margin:0 4px}
#gtBar button:hover{background:#ffffff20}#gtBar button[aria-pressed=true]{color:var(--accent)}#gtBar [data-save][aria-pressed=true] svg{fill:currentColor}#gtBar button:disabled{opacity:.3}
#gtBar button:focus-visible,.gs-dialog :focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.gs-interaction:empty{display:none}#gtBar .gs-interaction button{border:0;border-bottom:1px solid #ffffff66;border-radius:0;background:none;color:inherit;padding:4px 0 6px;min-height:36px;font:13px/1.4 var(--sans);cursor:pointer}
.gs-more{position:absolute;right:0;bottom:66px;width:210px;box-sizing:border-box;padding:12px;border:1px solid var(--gc-edge);border-radius:20px;background:rgba(16,22,27,.97);box-shadow:0 18px 60px #0008;text-align:left;z-index:3}
#gtBar .gs-more button{display:block;width:100%;border:0;background:none;color:inherit;text-align:left;font:13px var(--sans);min-height:40px;padding:8px 12px;border-radius:10px;cursor:pointer}.gs-more small{display:block;font:10px/1.5 var(--sans);color:#bec6ce;padding:10px 12px 4px}
.gs-status{font:12px/1.4 var(--sans);margin:0;text-shadow:0 1px 6px #000}.gs-status:empty{display:none}
.gs-dialog button{min-height:42px;border:1px solid #ffffff35;border-radius:22px;background:#ffffff0e;padding:8px 14px;color:inherit;font:13px/1.4 var(--sans);cursor:pointer}
.gs-dialog button:hover{background:#ffffff25}.gs-choice{display:flex;flex-direction:column;gap:10px;margin-top:24px}.gs-choice [aria-pressed=true]{border-color:var(--accent)}
.gs-actions{display:flex;gap:8px;flex-wrap:wrap}
.gs-dialog{box-sizing:border-box;margin:auto;max-width:none;width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #ffffff40;border-radius:24px;padding:24px;background:rgba(20,25,30,.97);color:#f7f8fa;box-shadow:0 30px 100px #0009;font:14px/1.6 var(--sans)}
.gs-dialog::backdrop{background:#0008;backdrop-filter:blur(5px)}.gs-dialog header{display:flex;justify-content:space-between;align-items:center;gap:18px}.gs-dialog h2{font:400 26px/1.2 var(--sans);margin:0}.gs-dialog h3{font-size:15px;margin:24px 0 8px}.gs-dialog textarea{display:block;box-sizing:border-box;width:100%;margin:10px 0 14px;padding:12px;background:#ffffff10;color:inherit;border:1px solid #ffffff40;border-radius:12px;font:inherit}.gs-dialog article{border-bottom:1px solid #ffffff22;padding:10px 0}.gs-actions{margin:24px 0}.gs-dialog small{color:#bdc7d0}

body.guided-story :is(.im-detail,.im-mini-plan,.ix-bar,.im-context,#guide,.iv-details,.iv-bottom,.iv-thumbs,.iv-minimap,.iv-rail,.iv-story-tab,.iv-story){display:none!important}
@media(max-width:640px){#gtBar.on{width:calc(100vw - 36px);gap:8px}#gtBar .gs-caption{font-size:14px;line-height:1.45}.gs-heading{font-size:11px}.gs-dialog{padding:20px}#gtBar.on::before{inset:-30px -18px -16px}.gs-more{bottom:64px}}
@media(prefers-reduced-motion:reduce){#gtBar{transition:none!important}}
@media(prefers-contrast:more){#gtBar .gs-caption{background:#10161b;padding:8px;border-radius:8px}}

.gs-plan-more{margin:0 0 22px}.gs-plan-more summary{cursor:pointer;min-height:40px;font-size:13px}.gs-plan-more button{display:block;margin:8px 0}.gs-plan-note{font-size:12px;color:#bdc7d0}.gs-actions [data-inquiry]{background:var(--accent);color:var(--on-accent,#10151a)}

/* Short social-style phrases follow the narration clock; transcript stays complete. */
#gtBar .gs-caption{font:600 clamp(32px,3vw,52px)/1.25 var(--sans);max-width:28ch;min-height:2.6em;display:grid;place-items:center;letter-spacing:-.025em;text-wrap:balance;text-shadow:0 2px 4px #000,0 0 18px #0008}
#gtBar .gs-caption span{padding:8px 16px;border-radius:12px;background:rgba(6,12,18,.76);box-decoration-break:clone;-webkit-box-decoration-break:clone}
#gtBar .gs-caption span:empty{visibility:hidden}
@media(max-width:640px){#gtBar .gs-caption{font-size:29px;line-height:1.25;max-width:25ch}}

/* Every route ends with the property's own next step, without submitting it. */
.gs-completion-dialog{width:min(660px,calc(100vw - 24px));padding:32px}
.gs-completion-dialog h2{font-size:clamp(28px,3vw,38px)}
.gs-completion{padding-top:20px;text-align:center}
.gs-completion-kicker{font:11px var(--mono);text-transform:uppercase;letter-spacing:.14em;color:var(--accent)}
.gs-completion>p:not(.gs-completion-kicker){max-width:42ch;margin:20px auto 28px;font-size:17px}
.gs-completion .gs-completion-primary{display:block;width:100%;min-height:56px;padding:14px 24px;background:var(--accent);color:var(--on-accent,#10151a);font-size:17px}
.gs-completion-secondary,.gs-completion-footer{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:16px}
.gs-completion-secondary button{flex:1;min-height:48px}
.gs-completion-footer{border-top:1px solid #ffffff20;padding-top:18px;margin-top:28px}
.gs-completion-footer button{border-color:transparent;color:#bdc7d0}
@media(max-width:640px){.gs-completion-dialog{padding:24px 20px}.gs-completion-secondary{gap:8px}.gs-completion-secondary button{font-size:12px}}

.gs-request-plan{margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:16px;font:13px/1.5 var(--sans)}.gs-request-plan label{display:flex;align-items:center;gap:10px;min-height:44px}.gs-request-plan summary{cursor:pointer;padding:8px 0}.gs-request-plan p{white-space:pre-wrap;margin:8px 0}
