.ght-tour { font-family: inherit; color: var(--text); }
.ght-tour dialog { box-sizing:border-box; color:inherit; background:var(--panel, #fffdf9); border:1px solid var(--line); border-radius:16px; width:min(560px, calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; padding:28px; box-shadow:0 20px 70px #0003; }
.ght-tour dialog::backdrop { background:#14100b80; }
.ght-tour h2 { margin:16px 0; font-size:26px; line-height:1.2; outline:none; }
.ght-tour p { line-height:1.65; font-size:15px; overflow-wrap:anywhere; }
.ght-tour-progress { font-size:12px; letter-spacing:.06em; text-transform:uppercase; }
.ght-tour-location { padding:12px; background:var(--bg, #f3efe7); border-radius:8px; }
.ght-tour-actions { display:flex; gap:8px; flex-wrap:wrap; margin-top:24px; }
.ght-tour button { font:inherit; font-size:14px; min-height:44px; padding:10px 14px; border:1px solid var(--line); border-radius:8px; color:inherit; background:var(--panel, #fffdf9); cursor:pointer; }
.ght-tour button:focus-visible { outline:3px solid #947242; outline-offset:3px; }
.ght-tour button:disabled { opacity:.45; cursor:wait; }
.ght-tour [data-action=next] { background:var(--text); color:var(--panel, #fffdf9); margin-left:auto; }
.ght-tour .ght-tour-leave { margin-top:16px; background:transparent; border:0; text-decoration:underline; }
.ght-tour .ght-tour-help { position:fixed; z-index:80; right:14px; bottom:14px; box-shadow:0 2px 8px #0002; }
.ght-tour-notice { position:fixed; z-index:81; right:14px; bottom:64px; max-width:min(360px, calc(100vw - 28px)); padding:12px; margin:0; border:1px solid var(--line); border-radius:8px; background:var(--panel, #fffdf9); }
.ght-tour-error { color:#ac3224; }
@media(max-width:480px) { .ght-tour dialog { padding:20px; } .ght-tour h2 { font-size:23px; } .ght-tour-actions { gap:6px; } }
/* Opt-in in-flow placement: reserve real space instead of covering composers. */
.ght-tour.ght-tour-inline { flex:0 0 auto; min-width:0; display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:8px; padding:8px 16px; border-bottom:1px solid var(--line); }
.ght-tour-inline .ght-tour-help { position:static; z-index:auto; max-width:100%; }
.ght-tour-inline .ght-tour-notice { position:static; z-index:auto; max-width:100%; flex:1 1 100%; }
