/* Command Center guided tour. Colors match dash.css: navy #0e1029 / #141736, line #2c3060, gauge accents. */
#tour-layer{position:fixed;inset:0;z-index:9000;pointer-events:none;font-family:Barlow,system-ui,sans-serif;color:#eef0ff}
#tour-layer[hidden]{display:none!important}
.tour-dim{position:fixed;background:rgba(5,6,20,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:auto;transition:all .25s ease}
.tour-ring{position:fixed;border:2px solid #5fdcff;border-radius:12px;box-shadow:0 0 0 4px #5fdcff33,0 0 28px #5fdcff88;pointer-events:none;transition:all .25s ease}
.tour-ring[hidden],.tour-stage[hidden],.tour-askbox[hidden],.tour-badge[hidden]{display:none!important}

/* controls card */
.tour-card{position:fixed;left:50%;transform:translateX(-50%);width:min(560px,calc(100vw - 32px));background:#141736;border:1px solid #2c3060;border-radius:14px;
  padding:14px 16px 12px;box-shadow:0 20px 60px #000c;pointer-events:auto;z-index:2}
.tour-card[data-where="bottom"],.tour-card:not([data-where]){bottom:16px}
.tour-card[data-where="top"]{top:16px}
.tour-card[data-where="center"]{top:50%;transform:translate(-50%,-50%)}
.tour-top{display:flex;align-items:center;gap:8px;font-size:12px;color:#8b91bd;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.tour-badge{color:#ffb85c;border:1px solid #ffb85c66;border-radius:999px;padding:1px 8px;text-transform:none;letter-spacing:0;font-weight:600}
.tour-skip{all:unset;cursor:pointer;margin-left:auto;color:#a8ecff;font-weight:600;text-transform:none;letter-spacing:0;font-size:13px}
.tour-skip:hover{color:#fff}
.tour-title{margin:6px 0 4px;font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:26px;letter-spacing:.06em;text-transform:uppercase;color:#fff}
.tour-cap{font-size:17px;line-height:1.45;color:#e9ebff;min-height:50px;max-height:30vh;overflow:auto}
.tour-cap.hidden{display:none}
.tour-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}
.tour-btn{all:unset;cursor:pointer;padding:8px 14px;border-radius:8px;font-size:14px;font-weight:700;color:#e9ebff;background:#1b1e48;border:1px solid #2c3060;white-space:nowrap}
.tour-btn:hover{border-color:#5fdcff}
.tour-btn:focus-visible,.tour-i:focus-visible,.tour-mi:focus-visible,.tour-skip:focus-visible{outline:2px solid #5fdcff;outline-offset:2px}
.tour-btn:disabled,.tour-btn.off{opacity:.4;cursor:default}
.tour-go{background:#35e0a1;color:#0c0e24;border-color:#35e0a1}
.tour-cc.on{color:#5fdcff;border-color:#5fdcff}
.tour-ctrls .tour-cc{margin-left:auto}
.tour-prog{height:4px;background:#0c0e24;border-radius:999px;margin-top:12px;overflow:hidden}
.tour-prog i{display:block;height:100%;width:0;background:linear-gradient(90deg,#ff4d9d,#ffa02e,#ffd84d,#35e0a1,#5fdcff);transition:width .3s}
.tour-askbox textarea,.tour-ta{width:100%;box-sizing:border-box;min-height:90px;margin-top:8px;padding:10px 12px;border:1px solid #2c3060;border-radius:8px;background:#0c0e24;color:#eef0ff;font:inherit;font-size:15px;resize:vertical}
.tour-askmsg{font-size:13px;color:#35e0a1}

/* overlay stage: greeting + journey picture */
.tour-stage{position:fixed;left:24px;right:24px;top:24px;bottom:250px;pointer-events:auto;display:flex;align-items:center;justify-content:center;z-index:1}
.tour-stage.journey{overflow:auto;align-items:flex-start}
.tour-jhost{width:100%;height:100%;overflow:auto}
.tour-hello{text-align:center;max-width:720px}
.tour-hello h1{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:clamp(44px,7vw,84px);letter-spacing:.05em;margin:10px 0 6px;color:#fff;text-shadow:0 0 30px #5fdcff55}
.tour-hello p{font-size:clamp(17px,2vw,22px);line-height:1.45;color:#d9dbf2;margin:0}
.tour-rings{display:flex;justify-content:center;gap:10px}
.tour-rings i{width:22px;height:22px;border-radius:50%;border:4px solid;display:block}

/* journey svg (also used by journey.html) */
.tour-jsvg{display:block;width:100%;height:100%;max-height:100%}
.tour-jsvg.narrow{height:auto;max-height:none}
.tour-jsvg .jl{stroke:#2c3060;stroke-width:4;stroke-dasharray:8 8;transition:stroke .4s}
.tour-jsvg .jl.on{stroke:var(--c);stroke-dasharray:none}
.tour-jsvg .jn rect{fill:#141736;stroke:#2c3060;stroke-width:2;transition:all .4s}
.tour-jsvg .jn circle{fill:#0c0e24;stroke:#2c3060;stroke-width:2;transition:all .4s}
.tour-jsvg .jn .jnum{fill:#8b91bd;font:700 17px "Barlow Condensed",sans-serif}
.tour-jsvg .jn .jtx{fill:#8b91bd;font-family:Barlow,sans-serif;font-weight:600;transition:fill .4s}
.tour-jsvg .jn{opacity:.55;transition:opacity .4s}
.tour-jsvg .jn.on{opacity:1}
.tour-jsvg .jn.on rect{stroke:var(--c);fill:#1b1e48}
.tour-jsvg .jn.on circle{fill:var(--c);stroke:var(--c)}
.tour-jsvg .jn.on .jnum{fill:#0c0e24}
.tour-jsvg .jn.on .jtx{fill:#fff}
.tour-jsvg .jn.cur rect{stroke-width:4;filter:drop-shadow(0 0 12px var(--c));animation:tourpulse 1.6s ease-in-out infinite}
@keyframes tourpulse{0%,100%{stroke-opacity:1}50%{stroke-opacity:.45}}

/* Help button, "i" buttons, popovers, dialogs */
.tour-helpbtn{border:1px solid #5fdcff66;border-radius:999px;padding:3px 12px!important}
.tour-i{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;
  border:1.5px solid #5fdcff;color:#5fdcff;font:italic 700 12px Georgia,serif;letter-spacing:0;text-transform:none;margin-left:6px;vertical-align:middle;flex:none}
.tour-i:hover{background:#5fdcff;color:#0c0e24}
.tour-pop{position:fixed;z-index:9600;background:#141736;border:1px solid #5fdcff55;border-radius:12px;padding:12px 14px;box-shadow:0 14px 40px #000a;color:#e9ebff;font-family:Barlow,system-ui,sans-serif;font-size:15px;line-height:1.4}
.tour-pop p{margin:6px 0 0}
.tour-poph{font-family:"Barlow Condensed",sans-serif;font-size:20px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#fff}
.tour-menu{max-height:min(560px,80vh);overflow:auto}
.tour-sub{margin:10px 0 4px;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#8b91bd;font-weight:700}
.tour-mi{all:unset;box-sizing:border-box;cursor:pointer;display:block;width:100%;padding:7px 8px;border-radius:8px;font-size:14px;color:#e9ebff}
.tour-mi:hover{background:#1b1e48}
.tour-mi b{display:inline-block;min-width:22px;color:#5fdcff}
.tour-go2{color:#35e0a1;font-weight:700;margin-top:4px}
.tour-dlgback{position:fixed;inset:0;z-index:9500;background:rgba(5,6,20,.7);display:flex;align-items:center;justify-content:center;padding:16px}
.tour-dlg{width:min(640px,100%);max-height:88vh;overflow:auto;background:#141736;border:1px solid #2c3060;border-radius:14px;padding:16px 18px;color:#e9ebff;font-family:Barlow,system-ui,sans-serif;font-size:15px;box-shadow:0 20px 60px #000c}
.tour-srow{border-top:1px solid #232752;padding:10px 0}
.tour-smeta{font-size:12.5px;color:#8b91bd}
.tour-stext{margin-top:4px;white-space:pre-wrap}
.tour-srow select,.tour-srow input{padding:6px 10px;border:1px solid #2c3060;border-radius:8px;background:#0c0e24;color:#eef0ff;font:inherit;font-size:13.5px}
.tour-srow input{flex:1;min-width:140px}

@media (max-width:640px){
  .tour-title{font-size:21px}
  .tour-cap{font-size:15.5px}
  .tour-stage{left:16px;right:16px;top:16px;bottom:270px}
  .tour-card{padding:12px}
  .tour-btn{padding:8px 11px;font-size:13.5px}
}
@media (prefers-reduced-motion:reduce){.tour-dim,.tour-ring,.tour-jsvg *{transition:none!important;animation:none!important}}

/* Ask Marcus: top-bar button, avatar, slide-in panel (MARCUS.md) */
.tour-mbtn{display:inline-flex!important;align-items:center;gap:6px;border:1px solid #35e0a166;border-radius:999px;padding:2px 12px 2px 3px!important}
.tour-av{display:inline-flex;align-items:center;justify-content:center;flex:none;width:24px;height:24px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#35e0a1,#4d8dff);
  color:#0c0e24;font:700 13px "Barlow Condensed",sans-serif;letter-spacing:0}
.tour-av img{width:100%;height:100%;object-fit:cover;display:block}
.tour-av.big{width:44px;height:44px;font-size:22px;box-shadow:0 0 0 2px #35e0a1}
.tour-hello-av{display:block;width:112px;height:112px;border-radius:50%;object-fit:cover;margin:0 auto 14px;box-shadow:0 0 0 4px #35e0a1,0 0 40px #35e0a166}
.tour-hello-av[hidden]{display:none}
#marcus-panel{position:fixed;top:0;right:0;bottom:0;width:360px;max-width:100vw;z-index:8900;display:flex;flex-direction:column;background:#141736;border-left:1px solid #2c3060;
  box-shadow:-18px 0 50px #0009;color:#e9ebff;font-family:Barlow,system-ui,sans-serif;font-size:15px;animation:mqin .22s ease-out}
#marcus-panel[hidden]{display:none}
@keyframes mqin{from{transform:translateX(40px);opacity:0}to{transform:none;opacity:1}}
.mq-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid #232752}
.mq-who{display:flex;flex-direction:column;line-height:1.2}
.mq-who b{font-family:"Barlow Condensed",sans-serif;font-size:21px;letter-spacing:.05em;text-transform:uppercase;color:#fff}
.mq-who small{color:#8b91bd;font-size:12.5px}
.mq-x{all:unset;cursor:pointer;padding:5px 9px;border-radius:8px;color:#a8ecff;font-size:14px;font-weight:700}
.mq-x:hover{background:#1b1e48}
.mq-voice{margin-left:auto;border:1px solid #2c3060;font-size:12px}
.mq-voice[aria-pressed="true"]{color:#35e0a1;border-color:#35e0a1}
.mq-thread{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:10px}
.mq-msg{max-width:88%;padding:9px 12px;border-radius:12px;line-height:1.45;word-wrap:break-word}
.mq-bot{align-self:flex-start;background:#1b1e48;border:1px solid #2c3060;border-top-left-radius:4px}
.mq-me{align-self:flex-end;background:#35e0a1;color:#0c0e24;border-top-right-radius:4px;font-weight:600}
.mq-note{margin-top:6px;font-size:12.5px;color:#ffb85c}
.mq-link{all:unset;cursor:pointer;display:block;margin-top:7px;font-size:13.5px;font-weight:700;color:#5fdcff}
.mq-link:hover{text-decoration:underline}
.mq-play{all:unset;cursor:pointer;float:right;margin:0 0 4px 8px;width:26px;height:26px;border-radius:50%;text-align:center;line-height:26px;font-size:11px;background:#0c0e24;border:1px solid #5fdcff;color:#5fdcff}
.mq-play:disabled{opacity:.35;cursor:default}
.mq-play.on{background:#5fdcff;color:#0c0e24}
.mq-typing{padding:0 14px 8px;display:flex;gap:5px}
.mq-typing[hidden]{display:none}
.mq-typing i{width:7px;height:7px;border-radius:50%;background:#8b91bd;animation:mqdot 1s infinite}
.mq-typing i:nth-child(2){animation-delay:.15s}.mq-typing i:nth-child(3){animation-delay:.3s}
@keyframes mqdot{0%,80%,100%{opacity:.25}40%{opacity:1}}
.mq-foot{padding:10px 14px 14px;border-top:1px solid #232752}
.mq-foot textarea{width:100%;box-sizing:border-box;min-height:58px;padding:9px 11px;border:1px solid #2c3060;border-radius:8px;background:#0c0e24;color:#eef0ff;font:inherit;font-size:15px;resize:vertical}
.mq-foot .tour-go{margin-left:auto}
.mq-mic.on{border-color:#ff4d9d;color:#ff4d9d}
.mq-msgline{font-size:12.5px;color:#ffb85c}
.mq-adm label{display:inline-flex;align-items:center;gap:6px;font-size:13.5px}
.mq-adm input[type=number]{padding:5px 8px;border:1px solid #2c3060;border-radius:8px;background:#0c0e24;color:#eef0ff;font:inherit}
@media (max-width:640px){#marcus-panel{width:100vw;border-left:0}.tour-mbtn span:last-child{display:none}}
@media (prefers-reduced-motion:reduce){#marcus-panel,.mq-typing i{animation:none!important}}
