.coachmark-overlay{position:fixed;inset:0;background:transparent;z-index:100000}.coachmark-highlight{position:fixed;z-index:100001;border-radius:8px;pointer-events:none;box-shadow:0 0 0 3px var(--primary-color),0 0 0 9999px rgba(0,0,0,0.55);animation:coachmark-breathe 2s ease-in-out infinite}@keyframes coachmark-breathe{from,to{box-shadow:0 0 0 3px var(--primary-color),0 0 6px 3px rgba(var(--primary-color-rgb),0.45),0 0 0 9999px rgba(0,0,0,0.55)}50%{box-shadow:0 0 0 3px var(--primary-color),0 0 18px 8px rgba(var(--primary-color-rgb),0.75),0 0 0 9999px rgba(0,0,0,0.55)}}.coachmark-card{position:fixed;z-index:100002;width:300px;max-width:calc(100vw - 24px);background:var(--surface-card,#fff);color:var(--text-color,#333);border-radius:10px;box-shadow:0 8px 28px rgba(0,0,0,0.35);padding:16px 18px;opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease}.coachmark-card.coachmark-visible{opacity:1;transform:translateY(0)}.coachmark-card-icon{font-size:1.25rem;color:var(--primary-color);margin-bottom:6px}.coachmark-card-close{position:absolute;top:8px;right:10px;background:0;border:0;cursor:pointer;font-size:1rem;line-height:1;color:var(--text-color-secondary,#888);padding:4px}.coachmark-card-close:hover{color:var(--text-color,#333)}.coachmark-card-title{font-weight:700;font-size:1.05rem;margin:0 0 6px 0;padding-right:18px}.coachmark-card-desc{font-size:.9rem;line-height:1.4;margin:0 0 14px 0;color:var(--text-color-secondary,#666)}.coachmark-card-desc:last-child{margin-bottom:0}.coachmark-card-actions{display:flex;align-items:center;gap:12px}.coachmark-btn-primary{background:var(--primary-color);color:var(--primary-color-text,#fff);border:0;border-radius:4px;padding:.5rem 1rem;font-size:1rem;cursor:pointer}.coachmark-btn-primary:hover{filter:brightness(0.95)}.coachmark-btn-link{background:0;border:0;color:var(--primary-color);font-size:.85rem;cursor:pointer;padding:7px 4px}.coachmark-btn-link:hover{text-decoration:underline}.coachmark-card-arrow{position:absolute;width:14px;height:14px;background:var(--surface-card,#fff);transform:rotate(45deg)}.coachmark-card[data-placement="bottom"] .coachmark-card-arrow{top:-7px}.coachmark-card[data-placement="top"] .coachmark-card-arrow{bottom:-7px}