.tour-launcher { min-width:0; height:56px; margin:auto 2px 0; overflow:hidden; }
.project-rail:has(.tour-launcher) .project-rail-account { margin-top:0; }
.tour-launcher-row { position:relative; display:grid; grid-template-columns:minmax(0, 1fr) 38px; align-items:center; gap:2px; padding:2px; overflow:hidden; border:1px solid var(--line); border-radius:12px; background:linear-gradient(110deg,#d9e8f7 0%,#e5dcf2 50%,#f7ddc9 100%); }
.tour-launcher-row::before { content:""; position:absolute; inset:0 auto 0 0; width:140%; pointer-events:none; background:linear-gradient(110deg,#d9e8f7 0%,#d9e8f7 28%,#e5dcf2 50%,#f7ddc9 72%,#f7ddc9 100%); animation:tour-pastel-sway 6s cubic-bezier(.77,0,.175,1) infinite alternate; }
@keyframes tour-pastel-sway { to { transform:translateX(-28.5714%); } }
.tour-help { position:relative; display:flex; align-items:center; gap:12px; width:100%; min-height:38px; padding:8px 9px; border:0; border-radius:9px; background:transparent; color:var(--ink); font-size:12px; font-weight:600; text-align:left; cursor:pointer; }
.tour-help svg { width:17px; height:17px; }
.tour-help:hover { background:#ffffff66; }
.tour-dismiss { position:relative; display:grid; place-items:center; width:38px; height:38px; padding:0; border:0; border-radius:9px; background:transparent; color:var(--muted); font-size:22px; cursor:pointer; }
.tour-dismiss:hover { background:#ffffff66; color:var(--ink); }
.tour-help:focus-visible, .tour-dismiss:focus-visible, .tour-settings-button:focus-visible { outline:3px solid var(--theme-ring, #8aa9a0); outline-offset:2px; }
.tour-launcher.is-dismissing .tour-launcher-row { pointer-events:none; animation:tour-slide-below-divider 360ms cubic-bezier(.4, 0, 1, 1) forwards; }
@keyframes tour-slide-below-divider { to { transform:translateY(70px); opacity:0; } }
.tour-settings { display:flex; align-items:center; }
.tour-settings-button { display:inline-flex; align-items:center; gap:10px; min-height:44px; padding:10px 16px; border:1px solid var(--line); border-radius:12px; background:var(--surface, #fff); color:var(--ink); font-size:13px; font-weight:600; cursor:pointer; }
.tour-settings-button svg { width:18px; height:18px; flex:none; }
.tour-settings-button:hover { background:var(--soft, #edf2ed); }
.tour-overlay { position:fixed; inset:0; z-index:9000; font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.tour-overlay[hidden] { display:none!important; }
.tour-full-shade { position:fixed; inset:0; background:rgba(17,24,22,.58); }
.tour-spotlight { position:fixed; box-sizing:border-box; border:2px solid #fff; border-radius:18px; box-shadow:0 0 0 9999px rgba(17,24,22,.58); }
.tour-card { position:fixed; z-index:1; box-sizing:border-box; width:min(370px, calc(100vw - 24px)); max-height:calc(100dvh - 24px); overflow:auto; border:1px solid #e0e4e1; border-radius:18px; background:#fff; box-shadow:0 18px 60px #11181636; color:#202823; padding:20px; }
.tour-card-welcome, .tour-card-finish { left:50%; top:50%; transform:translate(-50%,-50%); width:min(480px, calc(100vw - 28px)); padding:27px; text-align:center; }
.tour-close { position:absolute; top:11px; right:11px; display:grid; place-items:center; width:36px; height:36px; border:0; border-radius:9px; background:#fff; color:#202823; font-size:25px; line-height:1; cursor:pointer; transition:background .16s ease, color .16s ease, transform .16s ease; }
.tour-close:hover { background:#e8eeea; color:#101a14; transform:scale(1.06); }
.tour-hero { display:grid; place-items:center; height:190px; margin-bottom:23px; border-radius:12px; background:radial-gradient(circle at 22% 28%, #e4c4df 0, transparent 42%), radial-gradient(circle at 74% 36%, #55b3ed 0, transparent 48%), linear-gradient(120deg, #d7d2ee, #2f54c1); }
.tour-hero-icon { display:grid; place-items:center; width:74px; height:74px; border-radius:16px; background:#202823; box-shadow:0 14px 28px #15204b44; }
.tour-hero-icon img { width:44px; height:44px; }
.tour-card h2 { margin:3px 38px 8px 0; color:#202823; font-size:21px; line-height:1.25; font-weight:700; letter-spacing:-.03em; }
.tour-card p { margin:0; color:#47534c; font-size:13px; line-height:1.55; }
.tour-card-welcome h2, .tour-card-finish h2 { font-size:23px; }
.tour-card-welcome h2, .tour-card-finish h2 { margin-right:0; }
.tour-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:24px; }
.tour-dots { display:flex; align-items:center; gap:7px; }
.tour-dots span { width:8px; height:8px; border-radius:50%; background:#e3e6e3; }
.tour-dots span.active { background:#202823; }
.tour-actions { display:flex; flex-shrink:0; gap:8px; }
.tour-actions button { min-height:40px; padding:0 17px; border-radius:9px; font-size:13px; font-weight:700; cursor:pointer; transition:background .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease; }
.tour-back { border:1px solid #d5d9d6; background:#fff; color:#202823; }
.tour-back:hover:not(:disabled) { border-color:#aab8ad; background:#edf2ee; box-shadow:0 3px 9px #1118161c; transform:translateY(-1px); }
.tour-back:disabled { color:#aeb6b0; cursor:default; }
.tour-next { border:1px solid #202823; background:#202823; color:#fff; }
.tour-next:hover { border-color:#3a5142; background:#3a5142; box-shadow:0 3px 10px #11181630; transform:translateY(-1px); }
.tour-card button:focus-visible { outline:3px solid #8aa9a0; outline-offset:2px; }
@media(max-width:980px) { .tour-launcher { grid-column:1 / -1; margin:6px 2px 0; } }
@media(max-width:600px) { .tour-card { padding:17px; } .tour-card-welcome, .tour-card-finish { padding:19px; } .tour-hero { height:145px; margin-bottom:18px; } .tour-footer { margin-top:20px; } .tour-dots { gap:5px; } .tour-dots span { width:7px; height:7px; } .tour-actions button { padding:0 11px; } }
@media(prefers-reduced-motion:reduce) { .tour-overlay * { transition:none!important; animation:none!important; } .tour-launcher-row::before { animation:none!important; opacity:0; } }
