:root { --guide-ink:var(--ink-black); --guide-blue:var(--dark-cyan); --guide-sky:var(--mint-cream); }
.guide-launcher { align-items:center; background:var(--guide-ink); border:1px solid rgba(255,255,255,.65); border-radius:999px; bottom:24px; box-shadow:5px 5px 0 var(--guide-blue); color:#fff; cursor:pointer; display:inline-flex; font:800 13px var(--font-body,system-ui); gap:9px; min-height:48px; padding:0 18px; position:fixed; right:26px; transition:transform .16s ease,box-shadow .16s ease; z-index:70; }.guide-launcher:hover { box-shadow:2px 2px 0 var(--guide-blue); transform:translate(3px,3px); }.guide-launcher:active { transform:scale(.96); }.guide-launcher__star { fill:var(--tea-green); height:21px; width:21px; }
.guide-dialog { background:transparent; border:0; max-width:510px; padding:18px; width:100%; }.guide-dialog::backdrop { background:rgba(23,37,28,.62); backdrop-filter:blur(7px); }.guide-dialog__card { background:var(--guide-sky); border-block-start:8px solid var(--guide-blue); box-shadow:10px 10px 0 var(--guide-ink); overflow:hidden; padding:30px; position:relative; }.guide-dialog__card::after { border:1px solid rgba(23,37,28,.18); border-radius:50%; content:""; height:230px; position:absolute; right:-108px; top:-120px; width:230px; }.guide-dialog__star { fill:var(--guide-blue); height:96px; position:absolute; right:22px; top:19px; transform:rotate(13deg); width:96px; }.guide-dialog__card > * { position:relative; z-index:1; }.guide-dialog__head { align-items:flex-start; display:flex; justify-content:space-between; padding-right:70px; }.guide-dialog__eyebrow { color:var(--guide-blue); font-size:11px; font-weight:800; letter-spacing:.1em; margin:0 0 8px; text-transform:uppercase; }.guide-dialog h2 { color:var(--guide-ink); font-family:var(--font-display,system-ui); font-size:clamp(29px,5vw,43px); letter-spacing:-.055em; line-height:.9; margin:0; text-transform:uppercase; }.guide-dialog__close { align-items:center; background:var(--guide-ink); border:0; color:#fff; cursor:pointer; display:flex; font-size:25px; height:42px; justify-content:center; position:absolute; right:0; top:0; width:42px; }.guide-dialog__lead { color:#17251C; font-size:14px; line-height:1.5; margin:18px 0; max-width:43ch; }.guide-questions { display:grid; gap:9px; }.guide-question { background:#fff; border:1px solid rgba(23,37,28,.15); color:var(--guide-ink); cursor:pointer; font:800 13px/1.3 var(--font-body,system-ui); min-height:47px; padding:12px 14px; text-align:left; transition:background .16s ease,border-color .16s ease,transform .16s ease; }.guide-question:hover { background:#DDF3D2; border-color:var(--guide-blue); }.guide-question:active { transform:scale(.98); }.guide-contact { border-top:1px solid rgba(23,37,28,.14); color:#17251C; font-size:13px; line-height:1.5; margin:19px 0 0; padding-top:15px; }.guide-contact a { color:var(--guide-blue); font-weight:800; }.guide-answer { background:#fff; border-inline-start:6px solid var(--guide-blue); color:#17251C; font-size:14px; line-height:1.5; margin:18px 0; padding:15px; }.guide-answer strong { color:var(--guide-ink); display:block; font-family:var(--font-display,system-ui); font-size:17px; margin-bottom:6px; text-transform:uppercase; }.guide-back { background:transparent; border:0; color:var(--guide-blue); cursor:pointer; font:800 13px var(--font-body,system-ui); padding:0; text-decoration:underline; text-underline-offset:3px; }
.guide-spotlight { border:3px solid #fff; box-shadow:0 0 0 9999px rgba(23,37,28,.68),0 0 0 7px var(--guide-blue),0 10px 30px rgba(23,37,28,.35); pointer-events:none; position:fixed; transition:top .24s ease,left .24s ease,width .24s ease,height .24s ease; z-index:110; }.guide-tooltip { background:var(--guide-ink); box-shadow:6px 6px 0 var(--guide-blue); color:#fff; max-width:min(360px,calc(100vw - 36px)); padding:20px; position:fixed; transition:top .24s ease,left .24s ease; z-index:111; }.guide-tooltip::before { border:12px solid transparent; border-bottom-color:var(--guide-ink); content:""; left:28px; position:absolute; top:-24px; }.guide-tooltip.is-above::before { border-bottom-color:transparent; border-top-color:var(--guide-ink); bottom:-24px; top:auto; }.guide-tooltip__step { color:var(--tea-green); font-size:11px; font-weight:800; letter-spacing:.1em; margin:0 0 7px; text-transform:uppercase; }.guide-tooltip h3 { font-family:var(--font-display,system-ui); font-size:23px; letter-spacing:-.035em; line-height:.95; margin:0; text-transform:uppercase; }.guide-tooltip p { color:rgba(255,255,255,.78); font-size:14px; line-height:1.48; margin:11px 0 17px; }.guide-tooltip__actions { align-items:center; display:flex; gap:10px; justify-content:space-between; }.guide-tooltip button { border:0; cursor:pointer; font:800 12px var(--font-body,system-ui); min-height:38px; padding:0 13px; }.guide-tooltip__end { background:transparent; color:var(--tea-green); text-decoration:underline; }.guide-tooltip__next { background:#fff; color:var(--guide-ink); }.guide-tooltip__back { background:rgba(255,255,255,.12); color:#fff; }.guide-tooltip__back[hidden] { display:none; }.guide-page-lock { overflow:hidden; }
.guide-launcher:focus-visible,.guide-dialog button:focus-visible,.guide-tooltip button:focus-visible { outline:3px solid var(--guide-blue); outline-offset:3px; }
@media (prefers-reduced-motion:reduce) { .guide-launcher,.guide-spotlight,.guide-tooltip,.guide-question { transition:none!important; } }
@media (max-width:620px) { .guide-launcher { bottom:18px; right:18px; }.guide-dialog { margin:auto 0 0; padding:0; width:100%; }.guide-dialog__card { box-shadow:0 -7px 0 var(--guide-blue); min-height:74vh; padding:28px 22px max(26px,env(safe-area-inset-bottom)); }.guide-tooltip { padding:18px; }.guide-tooltip h3 { font-size:21px; } }

/* Runtime markup for the guided assistant. */
.guide-launcher__star { color:var(--tea-green); fill:currentColor; font-size:22px; line-height:1; }
.guide-dialog__top { align-items:center; display:flex; justify-content:space-between; margin-bottom:14px; }
.guide-close { align-items:center; background:var(--guide-ink); border:0; color:#fff; cursor:pointer; display:flex; font-size:25px; height:42px; justify-content:center; line-height:1; margin:-30px -30px 0 0; width:42px; }
.guide-question { align-items:center; display:flex; justify-content:space-between; min-height:52px; }
.guide-question b { color:var(--guide-blue); font-size:18px; }
.guide-contact { align-items:center; display:grid; gap:10px; grid-template-columns:auto 1fr auto; text-decoration:none; }
.guide-contact strong,.guide-contact small { display:block; }.guide-contact strong { color:var(--guide-ink); }.guide-contact small { margin-top:2px; }.guide-contact__icon { color:var(--guide-blue); font-size:21px; }.guide-contact:hover strong { color:var(--guide-blue); }
.guide-tooltip--above::before { border-bottom-color:transparent; border-top-color:var(--guide-ink); bottom:-24px; top:auto; }
.guide-tooltip__progress { color:#DDF3D2; font-size:11px; font-weight:800; letter-spacing:.1em; margin:0 0 7px; text-transform:uppercase; }
.guide-tooltip h2 { font-family:var(--font-display,system-ui); font-size:23px; letter-spacing:-.035em; line-height:.95; margin:0; text-transform:uppercase; }
.guide-tooltip__text { background:transparent; color:var(--tea-green); text-decoration:underline; }
@media (max-width:620px) { .guide-close { margin:-28px -22px 0 0; }.guide-tooltip h2 { font-size:21px; } }

/* Welcome guide shown immediately after a successful registration. */
.guide-welcome { background:transparent; border:0; max-width:860px; padding:20px; width:min(100%,860px); }.guide-welcome::backdrop { background:rgba(23,37,28,.72); backdrop-filter:blur(10px); }.guide-welcome__card { background:#F3FFF0; box-shadow:12px 12px 0 #347A4A; overflow:hidden; padding:clamp(30px,5vw,58px); position:relative; }.guide-welcome__card::before { background:#347A4A; content:""; height:8px; left:0; position:absolute; top:0; width:148px; }.guide-welcome__star { bottom:-70px; fill:#DDF3D2; height:290px; opacity:.82; position:absolute; right:-44px; transform:rotate(17deg); width:290px; }.guide-welcome__card > * { position:relative; z-index:1; }.guide-welcome__close { align-items:center; background:#17251C; border:0; color:#fff; cursor:pointer; display:flex; font:400 30px/1 sans-serif; height:44px; justify-content:center; position:absolute; right:0; top:0; width:44px; }.guide-welcome__eyebrow { color:#347A4A; font-size:12px; font-weight:800; letter-spacing:.12em; margin:0 0 15px; text-transform:uppercase; }.guide-welcome h2 { color:#17251C; font-family:var(--font-display,system-ui); font-size:clamp(42px,7vw,74px); letter-spacing:-.065em; line-height:.84; margin:0; max-width:10ch; text-transform:uppercase; }.guide-welcome__lead { color:#17251C; font-size:16px; line-height:1.5; margin:22px 0 28px; max-width:58ch; }.guide-welcome__roadmap { counter-reset:guide-roadmap; display:grid; gap:0; list-style:none; margin:0; max-width:650px; padding:0; }.guide-welcome__roadmap li { align-items:start; border-top:1px solid rgba(23,37,28,.19); display:grid; gap:18px; grid-template-columns:46px 1fr; padding:14px 0; }.guide-welcome__roadmap li:last-child { border-bottom:1px solid rgba(23,37,28,.19); }.guide-welcome__roadmap span { color:#347A4A; font-size:12px; font-weight:800; letter-spacing:.08em; padding-top:3px; }.guide-welcome__roadmap h3 { color:#17251C; font-family:var(--font-display,system-ui); font-size:21px; letter-spacing:-.035em; line-height:1; margin:0; text-transform:uppercase; }.guide-welcome__roadmap p { color:#17251C; font-size:14px; line-height:1.42; margin:6px 0 0; max-width:51ch; }.guide-welcome__actions { align-items:center; display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }.guide-welcome__primary,.guide-welcome__secondary { border:0; cursor:pointer; font:800 13px var(--font-body,system-ui); min-height:48px; padding:0 18px; }.guide-welcome__primary { background:#347A4A; box-shadow:4px 4px 0 #17251C; color:#fff; }.guide-welcome__primary:hover { box-shadow:2px 2px 0 #17251C; transform:translate(2px,2px); }.guide-welcome__secondary { background:#fff; border:1px solid rgba(23,37,28,.22); color:#17251C; }.guide-welcome__secondary:hover { background:var(--surface-soft); }.guide-welcome__note { color:#17251C; font-size:12px; margin:18px 0 0; }.guide-welcome button:focus-visible { outline:3px solid #347A4A; outline-offset:3px; }
@media (max-width:620px) { .guide-welcome { margin:auto 0 0; padding:0; width:100%; }.guide-welcome__card { box-shadow:0 -7px 0 #347A4A; max-height:90vh; overflow:auto; padding:30px 22px max(30px,env(safe-area-inset-bottom)); }.guide-welcome__card::before { height:6px; width:92px; }.guide-welcome__star { bottom:-62px; height:220px; right:-70px; width:220px; }.guide-welcome__close { right:0; top:0; }.guide-welcome h2 { font-size:clamp(40px,13vw,58px); }.guide-welcome__lead { font-size:15px; margin:18px 0 22px; }.guide-welcome__roadmap li { gap:12px; grid-template-columns:34px 1fr; padding:12px 0; }.guide-welcome__roadmap h3 { font-size:19px; }.guide-welcome__roadmap p { font-size:13px; }.guide-welcome__actions { align-items:stretch; flex-direction:column; }.guide-welcome__primary,.guide-welcome__secondary { width:100%; } }
