.first-time-guide {
            position: fixed;
            left: 50%;
            bottom: 18px;
            transform: translateX(-50%);
            width: min(420px, calc(100% - 24px));
            z-index: 70;
            pointer-events: none;
        }

        .first-time-guide.is-hidden {
            display: none;
        }

        .first-time-guide-card {
            pointer-events: auto;
            border-radius: 14px;
            border: 1px solid rgba(111, 78, 55, 0.22);
            background: rgba(255, 252, 247, 0.96);
            box-shadow: 0 12px 26px rgba(31, 22, 15, 0.14);
            backdrop-filter: blur(6px);
            padding: 12px 13px;
        }

        .first-time-guide-step {
            margin: 0;
            font-size: 0.73rem;
            letter-spacing: 0.06em;
            text-transform: uppercase;
            color: #7a6d5a;
            font-weight: 600;
        }

        .first-time-guide-message {
            margin: 6px 0 10px;
            font-size: 0.88rem;
            line-height: 1.4;
            color: #40362b;
        }

        .first-time-guide-actions {
            display: flex;
            justify-content: flex-end;
            align-items: center;
            gap: 8px;
        }

        .first-time-guide-button,
        .first-time-guide-skip {
            width: auto;
            margin: 0;
            min-height: 34px;
            padding: 6px 12px;
            border-radius: 999px;
            font-size: 0.82rem !important;
        }

        .first-time-guide-button {
            border: 1px solid var(--accent);
            background: var(--accent);
            color: #fff;
            box-shadow: none;
        }

        .first-time-guide-button:hover {
            background: var(--accent-hover);
            border-color: var(--accent-hover);
        }

        .first-time-guide-skip {
            border: 1px solid #d8ccbb;
            background: #fffcf7;
            color: #594a39;
            box-shadow: none;
        }

        .first-time-guide-skip:hover {
            border-color: #cbb99f;
            background: #f8f1e6;
        }

        .first-time-guide-button.is-hidden,
        .first-time-guide-skip.is-hidden {
            display: none;
        }

        body.fancybox-active .first-time-guide {
            display: none;
        }

        .guide-spotlight-mask {
            position: fixed;
            inset: 0;
            z-index: 65;
            pointer-events: none;
            opacity: 0;
            visibility: hidden;
            transition: opacity 0.24s var(--motion-soft), visibility 0.24s var(--motion-soft);
            will-change: mask-position;
            transform: translateZ(0);
            --guide-spotlight-x: 50vw;
            --guide-spotlight-y: 50vh;
            --guide-spotlight-size: 160px;
            background: radial-gradient(
                circle var(--guide-spotlight-size) at var(--guide-spotlight-x) var(--guide-spotlight-y),
                rgba(255, 255, 255, 0.06) 0%,
                rgba(255, 255, 255, 0.02) 44%,
                rgba(11, 9, 8, 0.74) 70%,
                rgba(11, 9, 8, 0.84) 100%
            );
        }

        .guide-spotlight-mask.is-visible {
            opacity: 1;
            visibility: visible;
        }

        body.fancybox-active .guide-spotlight-mask {
            display: none;
        }

        .guide-completion-toast {
            position: fixed;
            left: 50%;
            bottom: 108px;
            transform: translate(-50%, 8px);
            z-index: 92;
            padding: 10px 14px;
            border-radius: 999px;
            border: 1px solid rgba(255, 255, 255, 0.32);
            background: rgba(21, 17, 13, 0.9);
            color: rgba(255, 255, 255, 0.94);
            font-size: 0.82rem;
            letter-spacing: 0.01em;
            box-shadow: 0 12px 26px rgba(11, 9, 8, 0.34);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transition: opacity 0.24s var(--motion-soft), transform 0.24s var(--motion-soft), visibility 0.24s var(--motion-soft);
        }

        .guide-completion-toast.is-visible {
            opacity: 1;
            visibility: visible;
            transform: translate(-50%, 0);
        }

        body.guide-flow-active button,
        body.guide-flow-active select,
        body.guide-flow-active .inline-swatch-button,
        body.guide-flow-active .inline-chip-button {
            pointer-events: none;
        }

        .guide-allow-interaction {
            pointer-events: auto !important;
        }

        body.guide-flow-active #randomize-button,
        body.guide-flow-active #zoom-button {
            pointer-events: none;
            opacity: 0.42;
            filter: saturate(0.88);
        }
