.coach-overlay{position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:0;transform:translate(44px,26px);transition:opacity 1.2s cubic-bezier(.22,1,.36,1),transform 1.2s cubic-bezier(.22,1,.36,1)}.coach-overlay.is-settled{opacity:1;transform:none}.coach-mask{position:fixed;background:rgba(24,20,16,.58);transition:left .4s ease,top .4s ease,width .4s ease,height .4s ease}@media (prefers-reduced-motion:reduce){.coach-overlay{transition:opacity .3s ease;transform:none}}.coach-hole-overlay{position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:0;transition:opacity .4s cubic-bezier(.22,1,.36,1)}.coach-hole-overlay.is-settled{opacity:1}.coach-hole{position:fixed;border-radius:20px;box-shadow:0 0 0 9999px rgba(20,16,12,.66)}@media (prefers-reduced-motion:reduce){.coach-hole-overlay{transition:opacity .2s ease}}.coach-caption{position:fixed;max-width:280px;background:#241f1a;color:#f7f1e6;font-size:13px;font-weight:600;line-height:1.4;padding:8px 14px;border-radius:10px;box-shadow:0 14px 30px -12px rgba(36,31,26,.55);pointer-events:none}.pubcel-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(20,14,8,.55);backdrop-filter:blur(3px);animation:pubcel-fade .25s ease}@keyframes pubcel-fade{0%{opacity:0}to{opacity:1}}.pubcel-card{position:relative;max-width:440px;width:100%;background:var(--card,#fff);color:var(--foreground,#1a1a1a);border:1px solid var(--border,rgba(0,0,0,.08));border-radius:22px;padding:32px 28px 28px;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.28);animation:pubcel-pop .32s cubic-bezier(.2,.8,.3,1.1)}@keyframes pubcel-pop{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.pubcel-x{position:absolute;top:12px;right:14px;border:none;background:transparent;font-size:18px;cursor:pointer;color:var(--muted-foreground,#888);line-height:1}.pubcel-emoji{font-size:52px;line-height:1;margin-bottom:8px}.pubcel-title{font-size:24px;font-weight:700;margin:4px 0 10px}.pubcel-sub{font-size:15px;line-height:1.5;color:var(--muted-foreground,#6b6b6b);margin:0 0 22px}.pubcel-sub b{color:var(--foreground,#1a1a1a)}.pubcel-actions{display:flex;flex-direction:column;gap:10px}.pubcel-btn{display:inline-flex;align-items:center;justify-content:center;height:44px;border-radius:12px;font-weight:600;font-size:15px;cursor:pointer;text-decoration:none;border:1px solid transparent}.pubcel-btn--primary{background:var(--primary,#e8552e);color:var(--primary-foreground,#fff)}.pubcel-btn--primary:hover{filter:brightness(1.05)}.pubcel-btn--ghost{background:transparent;color:var(--muted-foreground,#6b6b6b);border-color:var(--border,rgba(0,0,0,.1))}.welcome-caption{position:fixed;max-width:320px;background:#241f1a;color:#f7f1e6;border-radius:14px;padding:14px 16px;box-shadow:0 20px 44px -14px rgba(36,31,26,.6);pointer-events:auto;z-index:1}@media (max-width:640px){.welcome-caption{left:12px!important;right:12px!important;top:auto!important;bottom:16px!important;max-width:none!important;width:auto!important}}.welcome-caption-text{font-size:14px;font-weight:600;line-height:1.45}.welcome-caption-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px}.welcome-dots{display:inline-flex;gap:6px}.welcome-dots i{width:7px;height:7px;border-radius:50%;background:rgba(247,241,230,.28);transition:background .2s ease,transform .2s ease}.welcome-dots i.is-on{background:#f7f1e6;transform:scale(1.15)}.welcome-caption-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.welcome-next{flex-shrink:0;appearance:none;border:0;cursor:pointer;font-size:13.5px;font-weight:700;color:#241f1a;background:#f7f1e6;border-radius:10px;padding:8px 16px;transition:transform .15s ease,box-shadow .15s ease}.welcome-next:hover{transform:translateY(-1px);box-shadow:0 8px 18px -8px rgba(0,0,0,.45)}.welcome-skip{flex-shrink:0;appearance:none;border:0;cursor:pointer;font-size:13px;font-weight:600;color:rgba(247,241,230,.72);background:transparent;border-radius:10px;padding:8px 10px;transition:color .15s ease}.welcome-skip:hover{color:#f7f1e6}.welcome-pulse{animation:welcomePulse 1.35s ease-in-out infinite;border-radius:18px}@keyframes welcomePulse{0%,to{box-shadow:0 0 0 3px color-mix(in srgb,var(--acc,#4d7a5c) 90%,transparent),0 0 0 0 color-mix(in srgb,var(--acc,#4d7a5c) 60%,transparent)}50%{box-shadow:0 0 0 3px color-mix(in srgb,var(--acc,#4d7a5c) 90%,transparent),0 0 0 20px color-mix(in srgb,var(--acc,#4d7a5c) 0%,transparent)}}@media (prefers-reduced-motion:reduce){.welcome-pulse{animation:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--acc,#4d7a5c) 55%,transparent)}}