/* =====================================================================
   Tijara guided product tour – player styles
   ---------------------------------------------------------------------
   1. Tokens         the colours/fonts the player reads (Tijara palette:
                     deep teal + brand orange, lx/_tokens.css). Scoped to
                     the player only — the simulated screens use the app's
                     own stylesheets (tour/css/*.sim.css) and never these.
   2. Shared bits    toast, help menu, floating tour button, the two
                     buttons on the intro / end cards.
   3. Tour player    bp-t-* : spotlight, popup, cursor, ripple, player bar,
                     chapter list, intro/end overlay. Rules unchanged from
                     the reusable engine; only the colour tokens differ.
   Inter is self-hosted by lx.css (/lib/fonts/inter/*), loaded on this page.
   ===================================================================== */

/* ---------- 1. tokens ---------- */
:root{
  --mist:#F5F7FA;--paper:#fff;--ink:#0B2A2E;--ink-2:#475569;--ink-3:#8A97A8;--line:#E4E9F0;--line-2:#EFF2F6;
  --pine:#0E6E68;--pine-d:#0A5A55;--pine-s:#ECF7F5;--teal-l:#5FD3A6;
  --mari:#FDB515;--rose:#DC2626;
  --r-lg:16px;
  --f-d:'Inter',-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --f-b:'Inter',-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  /* aliases used by the tour player */
  --accent:var(--pine);--accent-ink:var(--pine-d);--accent-soft:var(--pine-s);--accent-light:#F47B20;
  --ground:var(--mist);--surface:var(--paper);--muted:var(--ink-2);--line-strong:#CBD5E1;--dark:#03262A;
}
html,body{margin:0;min-height:100%}
body{background:var(--mist);font-family:var(--f-b);color:var(--ink);-webkit-font-smoothing:antialiased}
.bp-t-pop,.bp-t-bar,.bp-t-card,.bp-t-chlist,.bp-toast,.bp-menu{font-family:var(--f-b)}
.bp-t-card h2,.bp-t-pop h3,.bp-t-pop .bp-t-title{font-family:var(--f-d)}

/* ---------- 2. shared bits: intro / end card buttons ---------- */
.bp-t-card .btn,.bp-fab{font-family:var(--f-b)}
.bp-t-card .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;border-radius:999px;border:1px solid transparent;font-weight:600;font-size:14px;cursor:pointer;text-decoration:none;white-space:nowrap;background:var(--paper);border-color:var(--line);transition:background .15s,border-color .15s}
.bp-t-card .btn:active{transform:translateY(1px)}
.bp-t-card .btn-p{background:var(--pine);color:#fff;border-color:var(--pine)}.bp-t-card .btn-p:hover{background:var(--pine-d)}
.bp-t-card .btn-g{background:var(--paper);border-color:var(--line);color:var(--ink)}.bp-t-card .btn-g:hover{border-color:var(--ink-3)}
.bp-t-card .btn-lg{height:50px;padding:0 22px;font-size:15px}
/* ---------- 2. shared bits: toast, help menu, floating tour button ---------- */
.bp-toast{position:fixed;top:78px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;font-weight:500;font-size:14px;padding:12px 20px;border-radius:999px;z-index:700;box-shadow:0 14px 40px rgba(0,0,0,.25);display:flex;gap:10px;align-items:center;animation:bp-toast .3s ease;max-width:calc(100vw - 32px)}
.bp-toast svg{color:var(--teal-l)}
@keyframes bp-toast{from{opacity:0;transform:translate(-50%,-10px)}}
.bp-menu{position:fixed;z-index:720;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 20px 40px -20px rgba(31,42,46,.35),0 2px 10px rgba(0,0,0,.06);padding:8px;width:300px}
.bp-menu button{display:flex;gap:12px;align-items:flex-start;width:100%;border:0;background:none;padding:12px;border-radius:10px;cursor:pointer;text-align:left}
.bp-menu button:hover{background:var(--mist)}
.bp-menu b{font-weight:600}
.bp-menu small{display:block;color:var(--ink-2);font-size:12.5px}
.bp-fab{position:fixed;right:18px;bottom:18px;z-index:650;background:var(--ink);color:#fff;border:0;border-radius:999px;height:48px;padding:0 20px 0 16px;font-weight:600;display:flex;align-items:center;gap:10px;cursor:pointer;box-shadow:0 12px 34px rgba(0,0,0,.28)}
.bp-fab:hover{background:#0B1322}
.bp-fab i{width:26px;height:26px;border-radius:50%;background:var(--pine);display:flex;align-items:center;justify-content:center}
@media(max-width:640px){.bp-fab{bottom:92px}}

/* =====================================================================
   3. Product tour player (1:1 with the reference .t-* rules)
   ===================================================================== */
.bp-t-block{position:fixed;inset:0;z-index:880;cursor:default}
.bp-t-spot{position:fixed;z-index:890;border-radius:14px;pointer-events:none;box-shadow:0 0 0 9999px rgba(12,14,18,.58);transition:all .38s cubic-bezier(.4,0,.2,1)}
.bp-t-spot::after{content:"";position:absolute;inset:-4px;border-radius:17px;border:2px solid var(--accent-light);animation:bp-ring 1.6s ease-out infinite}
@keyframes bp-ring{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.06)}}
.bp-t-spot.none{box-shadow:0 0 0 9999px rgba(12,14,18,.58);width:0!important;height:0!important}
.bp-t-spot.none::after{display:none}
.bp-t-pop{position:fixed;z-index:900;width:360px;background:#fff;border-radius:18px;padding:18px 20px 0;box-shadow:0 22px 60px rgba(0,0,0,.32);transition:left .38s cubic-bezier(.4,0,.2,1),top .38s cubic-bezier(.4,0,.2,1),opacity .2s;overflow:hidden}
.bp-t-pop.hide{opacity:0}
.bp-t-kick{display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:var(--accent-ink)}
.bp-t-live{width:8px;height:8px;border-radius:50%;background:var(--teal-l);box-shadow:0 0 0 0 rgba(95,211,166,.6);animation:bp-live 1.4s infinite}
.bp-t-pop.paused .bp-t-live{background:var(--mari);animation:none}
@keyframes bp-live{70%{box-shadow:0 0 0 7px rgba(0,176,165,0)}100%{box-shadow:0 0 0 0 rgba(0,176,165,0)}}
.bp-t-title{font-family:var(--f-d);font-size:19px;font-weight:700;margin:8px 0 6px;letter-spacing:-.01em}
.bp-t-body{color:var(--ink-2);font-size:14.5px;line-height:1.55}
.bp-t-action{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px;font-weight:600;color:var(--accent-ink);background:var(--accent-soft);border-radius:10px;padding:8px 12px}
.bp-t-timer{height:4px;background:var(--mist);margin:16px -20px 0}
.bp-t-timer i{display:block;height:100%;width:0;background:var(--accent)}
.bp-t-pop::before{content:"";position:absolute;width:14px;height:14px;background:#fff;transform:rotate(45deg);display:none}
.bp-t-pop.side-right::before{display:block;left:-6px;top:26px}
.bp-t-pop.side-left::before{display:block;right:-6px;top:26px}
.bp-t-pop.side-bottom::before{display:block;top:-6px;left:calc(50% - 7px)}
.bp-t-pop.side-top::before{display:block;bottom:-6px;left:calc(50% - 7px)}
.bp-t-pop.sheet{left:12px!important;right:12px;width:auto}
.bp-t-pop.sheet::before{display:none}

.bp-t-cursor{position:fixed;z-index:960;left:0;top:0;width:28px;height:28px;pointer-events:none;transition:transform .62s cubic-bezier(.45,0,.2,1);filter:drop-shadow(0 4px 8px rgba(0,0,0,.35));display:none}
.bp-t-cursor.on{display:block}
.bp-t-ripple{position:fixed;z-index:955;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:rgba(127,219,211,.75);pointer-events:none;animation:bp-ripple .55s ease-out forwards}
@keyframes bp-ripple{to{transform:scale(4.2);opacity:0}}

.bp-t-bar{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:950;width:min(820px,calc(100vw - 24px));background:var(--dark);color:#fff;border-radius:20px;padding:12px 14px 12px 20px;box-shadow:0 18px 50px rgba(0,0,0,.4);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;align-items:center}
.bp-t-bar.top{bottom:auto;top:12px}
[data-g]{scroll-margin-top:84px;scroll-margin-bottom:24px}
.bp-t-info{display:flex;align-items:baseline;gap:10px;min-width:0}
.bp-t-info b{font-family:var(--f-d);font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bp-t-info span{font-size:12.5px;color:#9C9CA8;white-space:nowrap}
.bp-t-demo{font-style:normal;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--dark);background:var(--accent-light);border-radius:99px;padding:2px 8px;margin-left:auto;white-space:nowrap}
.bp-t-prog{grid-column:1/2;display:flex;gap:5px}
.bp-t-seg{flex:1;height:6px;border-radius:99px;background:#33343C;overflow:hidden;cursor:pointer;border:0;padding:0;position:relative}
.bp-t-seg i{position:absolute;inset:0 auto 0 0;background:var(--accent-light);border-radius:99px;transition:width .3s}
.bp-t-seg:hover{background:#45464F}
.bp-t-btns{grid-column:2;grid-row:1/3;display:flex;align-items:center;gap:4px}
.bp-t-btn{width:40px;height:40px;border-radius:50%;border:0;background:none;color:#D9D9E0;display:flex;align-items:center;justify-content:center;cursor:pointer}
.bp-t-btn:hover{background:#2A2B32;color:#fff}
.bp-t-btn.play{width:48px;height:48px;background:#fff;color:var(--ink)}
.bp-t-btn.play:hover{background:#E8E8EC;color:var(--ink)}
.bp-t-speed{height:34px;min-width:48px;border-radius:999px;border:1px solid #3A3B44;background:none;color:#fff;font-weight:700;font-size:13px;cursor:pointer;margin:0 4px}
.bp-t-speed:hover{background:#2A2B32}
@media (max-width:640px){
  .bp-t-bar{grid-template-columns:1fr;padding:12px 14px;bottom:10px}
  .bp-t-btns{grid-column:1;grid-row:auto;justify-content:space-between}
  .bp-t-demo{display:none}
}

/* chapter list on the bar */
.bp-t-chlist{position:fixed;z-index:965;width:300px;max-height:min(520px,calc(100vh - 140px));overflow:auto;background:var(--dark);color:#fff;border-radius:16px;padding:8px;box-shadow:0 18px 50px rgba(0,0,0,.45)}
.bp-t-chlist button{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;color:#D9D9E0;padding:9px 10px;border-radius:10px;cursor:pointer;font-weight:600;font-size:13.5px;text-align:left}
.bp-t-chlist button:hover{background:#2A2B32;color:#fff}
.bp-t-chlist button.on{background:#0A4F57;color:var(--accent-light)}
.bp-t-chlist .n{width:24px;height:24px;border-radius:50%;background:#2A2B32;display:flex;align-items:center;justify-content:center;font-size:11.5px;flex:none}
.bp-t-chlist .ok .n{background:var(--accent);color:#fff}
.bp-t-chlist small{margin-left:auto;color:#7C7C88;font-weight:500}

/* intro / end overlay */
.bp-t-overlay{position:fixed;inset:0;z-index:970;background:rgba(12,14,18,.6);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:16px;animation:bp-fade .25s}
.bp-t-card{width:min(560px,100%);background:#fff;border-radius:26px;padding:34px 36px 28px;box-shadow:0 30px 80px rgba(0,0,0,.4);max-height:calc(100vh - 32px);overflow:auto}
.bp-t-card .logo{height:40px;display:block;margin-bottom:22px}
.bp-t-card .kicker{font-size:12px;font-weight:700;letter-spacing:.9px;text-transform:uppercase;color:var(--accent-ink)}
.bp-t-card h2{font-size:30px;font-weight:700;letter-spacing:-.025em;margin:8px 0 10px;line-height:1.15}
.bp-t-card p{color:var(--ink-2);line-height:1.6;margin:0}
.bp-t-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;list-style:none;padding:0;margin:20px 0 24px}
.bp-t-grid li button{display:flex;gap:10px;align-items:center;width:100%;padding:9px 10px;border-radius:12px;background:var(--mist);border:1px solid transparent;font-weight:600;font-size:13.5px;cursor:pointer;text-align:left}
.bp-t-grid li button:hover{border-color:var(--ink);background:#fff}
.bp-t-grid li button small{color:var(--ink-2);font-weight:500}
.bp-t-grid .n{width:26px;height:26px;border-radius:50%;background:#fff;border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex:none}
.bp-t-grid .n.ok{background:var(--accent);border-color:var(--accent);color:#fff}
.bp-t-card .btns{display:flex;gap:10px;flex-wrap:wrap;flex-direction:row-reverse}
.bp-t-card .btns .btn{flex:1}
.bp-t-card .note{font-size:12.5px;color:var(--ink-3);margin-top:14px;text-align:center}
@media (max-width:640px){
  .bp-t-card{padding:24px 20px 20px}.bp-t-card h2{font-size:24px}
  .bp-t-grid{grid-template-columns:1fr;gap:4px;margin:14px 0 16px}.bp-t-grid li button{padding:7px 10px}.bp-t-grid li button small{display:none}
}
@media (prefers-reduced-motion:reduce){.bp-t-spot,.bp-t-pop,.bp-t-cursor,.dock{transition:none}.bp-t-spot::after,.bp-t-live{animation:none}}
