/* Guided tour (src/tour.js): the dimmed page with one outlined element, the explaining card
   (a bottom sheet on phones), the once-per-step offer, and the header's Take tour and colour
   theme controls. Shared by the portal, usage insights, user manual and control center; the
   build derives its dark colours like every other stylesheet there (src/dark-theme.js). */
.ft-layer{position:fixed;inset:0;z-index:1000;pointer-events:none;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.ft-spot{position:fixed;border-radius:14px;box-shadow:0 0 0 3px var(--dk-t0),0 0 0 9999px var(--dk-t1);transition:top .32s cubic-bezier(.2,.8,.2,1),left .32s cubic-bezier(.2,.8,.2,1),width .32s cubic-bezier(.2,.8,.2,1),height .32s cubic-bezier(.2,.8,.2,1)}
.ft-card{position:fixed;max-height:calc(100vh - 16px);overflow:auto;padding:16px 18px 14px;border:1px solid var(--dk-t2);border-radius:16px;background:var(--dk-t3);color:var(--dk-t4);box-shadow:0 24px 60px var(--dk-t5);font-size:.86rem;line-height:1.55;pointer-events:auto;animation:ft-in .22s ease}
@keyframes ft-in{from{opacity:0;transform:translateY(6px)}}
.ft-card.is-sheet{max-height:62vh;border-radius:18px}
.ft-card.is-sheet:before{content:"";display:block;width:36px;height:4px;margin:-6px auto 8px;border-radius:9px;background:var(--dk-t6)}
.ft-head{display:flex;align-items:center;gap:10px;color:var(--dk-t7);font-size:.72rem;font-weight:650}
.ft-count{white-space:nowrap}
.ft-track{flex:1;height:4px;border-radius:9px;background:var(--dk-t8);overflow:hidden}
.ft-track span{display:block;height:100%;border-radius:inherit;background:#2367e8;transition:width .3s ease}
.ft-close{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--dk-t7);cursor:pointer}
.ft-close:hover{background:var(--dk-t9);color:var(--dk-ta)}
.ft-close svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.ft-kick{margin:10px 0 0;color:var(--dk-tb);font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.ft-title{margin:2px 0 6px;color:var(--dk-ta);font-size:1.08rem;line-height:1.3;letter-spacing:-.015em}
.ft-body{margin:0}
.ft-more{margin-top:8px}
.ft-more summary{width:max-content;max-width:100%;color:var(--dk-tc);font-weight:700;font-size:.8rem;cursor:pointer}
.ft-more p{margin:6px 0 0;color:var(--dk-td)}
.ft-word{margin:10px 0 0;padding:9px 11px;border-radius:10px;background:var(--dk-te);font-size:.8rem}
.ft-word strong{color:var(--dk-ta)}
.ft-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px}
.ft-guide{flex:1 1 140px;color:var(--dk-tc);font-size:.78rem;font-weight:650;text-underline-offset:3px}
.ft-spacer{flex:1}
.ft-primary,.ft-quiet{min-height:36px;padding:8px 14px;border:1px solid var(--dk-tf);border-radius:10px;background:var(--dk-t3);color:var(--dk-ta);font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}
.ft-primary{border-color:#2367e8;background:#2367e8;color:#ffffff}
.ft-primary:hover{background:#1752c3}
.ft-quiet:hover{background:var(--dk-tg)}
.ft-card :focus-visible,.ft-invite :focus-visible{outline:3px solid #f6b73c;outline-offset:2px}
.ft-invite{position:fixed;z-index:900;inset-block-end:18px;inset-inline-end:18px;width:min(360px,calc(100vw - 24px));padding:16px 18px;border:1px solid #1d2a44;border-radius:16px;background:#0f1728;color:#e6ecf6;box-shadow:0 20px 50px rgba(8,13,26,.3);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.84rem;animation:ft-in .25s ease}
.ft-invite strong{display:block;color:#ffffff;font-size:.95rem}
.ft-invite p{margin:4px 0 12px;color:#c3cde0}
.ft-invite-actions{display:flex;flex-wrap:wrap;gap:8px}
.ft-invite .ft-primary{border-color:#ffffff;background:#ffffff;color:#0f1728}
.ft-invite .ft-quiet{border-color:#33415e;background:transparent;color:#e6ecf6}
@media (max-width:640px){.ft-invite{inset-inline:12px;inset-block-end:12px;width:auto}}
@media (prefers-reduced-motion:reduce){.ft-spot,.ft-track span{transition:none}.ft-card,.ft-invite{animation:none}}

/* Header controls: Take tour, and the colour theme (match the device, light, dark). */
.tour-button{display:inline-flex;align-items:center;gap:6px}
.tour-button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.theme-switch{display:inline-flex;align-items:center;padding:2px;border:1px solid var(--dk-th);border-radius:10px;background:var(--dk-t3)}
.theme-switch button{display:grid;place-items:center;width:30px;height:28px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--dk-ti);cursor:pointer}
.theme-switch button:hover{background:var(--dk-t9)}
.theme-switch button[aria-pressed="true"]{background:var(--dk-tj);color:var(--dk-tc)}
.theme-switch svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.manual-topbar .theme-switch{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.06)}
.manual-topbar .theme-switch button{color:#c3cde0}
.manual-topbar .theme-switch button:hover{background:rgba(255,255,255,.1)}
.manual-topbar .theme-switch button[aria-pressed="true"]{background:rgba(255,255,255,.18);color:#ffffff}
.manual-topbar .tour-button{background:transparent;font:inherit;font-size:.72rem;font-weight:780;cursor:pointer}

/* Generated by src/dark-theme.js */
:root{--dk-t0:#ffffff;--dk-t1:rgba(8,13,26,.58);--dk-t2:#e3e8f0;--dk-t3:#ffffff;--dk-t4:#344055;--dk-t5:rgba(8,13,26,.32);--dk-t6:#d5dae3;--dk-t7:#6b778c;--dk-t8:#e6e9f0;--dk-t9:#f1f4f9;--dk-ta:#0f1728;--dk-tb:#2367e8;--dk-tc:#1752c3;--dk-td:#4b5669;--dk-te:#f3f6fb;--dk-tf:#d9dfe8;--dk-tg:#f6f8fb;--dk-th:#ccd5e1;--dk-ti:#5b6b84;--dk-tj:#e8f0ff}
@media (prefers-color-scheme:dark){:root[data-theme="auto"]{color-scheme:dark;--dk-t0:rgba(255,255,255,0.35);--dk-t1:rgba(0,0,0,0.6);--dk-t2:#242c39;--dk-t3:#212936;--dk-t4:#9dabc4;--dk-t5:rgba(0,0,0,0.6);--dk-t6:#1d2532;--dk-t7:#98a5bc;--dk-t8:#131b27;--dk-t9:#1a222e;--dk-ta:#cfdbf4;--dk-tb:#71a8ff;--dk-tc:#71a8ff;--dk-td:#99a5bb;--dk-te:#1b232f;--dk-tf:#2d3542;--dk-tg:#1c2531;--dk-th:#37404e;--dk-ti:#94a6c1;--dk-tj:#171f2b}}
:root[data-theme="dark"]{color-scheme:dark;--dk-t0:rgba(255,255,255,0.35);--dk-t1:rgba(0,0,0,0.6);--dk-t2:#242c39;--dk-t3:#212936;--dk-t4:#9dabc4;--dk-t5:rgba(0,0,0,0.6);--dk-t6:#1d2532;--dk-t7:#98a5bc;--dk-t8:#131b27;--dk-t9:#1a222e;--dk-ta:#cfdbf4;--dk-tb:#71a8ff;--dk-tc:#71a8ff;--dk-td:#99a5bb;--dk-te:#1b232f;--dk-tf:#2d3542;--dk-tg:#1c2531;--dk-th:#37404e;--dk-ti:#94a6c1;--dk-tj:#171f2b}
