/* The guide for new players (docs/ai/onboarding.md): the strip above the page's content, the highlighted target and
   the introduction. Tokens only. */

.bj-guide {
    margin-bottom: var(--bj-space-4);
    padding: var(--bj-space-3) var(--bj-space-4);
    border: 1px solid var(--bj-accent);
    border-radius: var(--bj-radius);
    background: var(--bj-accent-soft);
}

.bj-guide-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--bj-space-2);
    color: var(--bj-text-muted);
    font-size: var(--bj-text-sm);
}

.bj-guide-step {
    display: inline-flex;
    align-items: center;
    gap: var(--bj-space-1);
}

.bj-guide-skip {
    min-height: var(--bj-target);
    padding-inline: 0;
    color: var(--bj-text-muted);
    font-size: var(--bj-text-sm);
}

.bj-guide-title {
    margin: var(--bj-space-1) 0;
    font-size: var(--bj-text-lg);
    font-weight: 600;
    line-height: var(--bj-leading-tight);
}

.bj-guide-text {
    margin: 0 0 var(--bj-space-3);
}

.bj-guide-hints {
    margin: 0 0 var(--bj-space-3);
    padding: 0;
    list-style: none;
    color: var(--bj-text-muted);
    font-size: var(--bj-text-sm);
}

.bj-guide-hints li {
    display: flex;
    gap: var(--bj-space-2);
}

.bj-guide .bj-meterbox {
    margin-bottom: var(--bj-space-3);
}

.bj-guide-actions:empty {
    display: none;
}

.bj-guide-claim {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--bj-space-2) var(--bj-space-3);
}

.bj-guide-done {
    display: inline-flex;
    align-items: center;
    gap: var(--bj-space-1);
    margin: 0;
    color: var(--bj-success);
    font-weight: 600;
}

/* The element the strip points at (components.js): an outline that pulses, and a "Här" marker before it. */
.bj-guide-spot {
    outline: 3px solid var(--bj-accent);
    outline-offset: 3px;
    animation: bj-guide-pulse 1.6s ease-in-out infinite;
}

.bj-guide-marker {
    display: inline-flex;
    align-items: center;
    gap: var(--bj-space-1);
    margin: 0 0 var(--bj-space-1);
    padding: 0 var(--bj-space-2);
    border-radius: var(--bj-radius-pill);
    background: var(--bj-accent);
    color: var(--bj-on-accent);
    font-size: var(--bj-text-xs);
    font-weight: 700;
}

@keyframes bj-guide-pulse {
    0%, 100% { outline-color: var(--bj-accent); }
    50% { outline-color: var(--bj-accent-soft); }
}

@media (prefers-reduced-motion: reduce) {
    .bj-guide-spot {
        animation: none;
    }
}

.bj-guide-intro {
    max-width: 40rem;
    margin-inline: auto;
}

.bj-guide-intro-text {
    font-size: var(--bj-text-lg);
    line-height: var(--bj-leading);
}

.bj-goals-next {
    margin-bottom: var(--bj-space-3);
}
