/* Scoped invitation and guided profile focus. No existing profile layout changes. */
:root{--tg-guide-safe-top:env(safe-area-inset-top,0px);--tg-guide-safe-bottom:env(safe-area-inset-bottom,0px)}
.tg-guide-invite{padding:0;width:min(480px,calc(100vw - 28px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #73529b;border-radius:22px;background:#191323;color:#f4effb;box-shadow:0 0 48px 20px #0a051a70,0 28px 90px #0009;font-family:inherit;opacity:0;transform:translateY(14px) scale(.96);transition:opacity .45s ease,transform .6s cubic-bezier(.16,1,.3,1)}
.tg-guide-invite[open].tg-entered{opacity:1;transform:translateY(0) scale(1)}
.tg-guide-invite[open].tg-leaving{opacity:0;transform:translateY(8px) scale(.98);pointer-events:none}
.tg-guide-invite::backdrop{background:radial-gradient(ellipse at 50% 48%,#10081ce0 0%,#0d0718ca 35%,#09061390 72%,#09061366 100%);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:tg-guide-backdrop .6s ease both}
.tg-guide-invite.tg-leaving::backdrop{animation:tg-guide-backdrop-out .45s ease both}
body.tg-invite-active{overflow:hidden}
body.tg-invite-active .app-shell{filter:blur(4px) saturate(.78);transform:scale(1.012);transform-origin:50% 40%;transition:filter .6s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
body.tg-invite-return .app-shell{transition:filter .6s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.tg-guide-art{display:block;width:100%;height:auto;aspect-ratio:2.2;object-fit:cover;background:#150e2b;border-bottom:1px solid #684480}
.tg-guide-copy{padding:23px}
.tg-guide-copy h2{margin:0 0 12px;font-size:clamp(1.15rem,4vw,1.45rem);line-height:1.3;font-weight:800;color:#f4effb}
.tg-guide-copy p{margin:0 0 21px;font-size:.92rem;line-height:1.65;color:#d1c5df}
.tg-guide-main,.tg-guide-small{font:inherit;border-radius:12px;cursor:pointer;touch-action:manipulation}
.tg-guide-main{display:block;width:100%;border:1px solid #b18be6;background:linear-gradient(115deg,#9d6ce4,#7451c7);color:#fff;padding:13px 16px;min-height:46px;font-weight:750;font-size:.9rem;transition:filter .2s,transform .2s}
.tg-guide-main:hover{filter:brightness(1.12)}
.tg-guide-main:active{transform:scale(.985)}
.tg-guide-small{border:0;background:transparent;color:#bfb0d1;padding:10px 5px;min-height:42px;font-size:.79rem}
.tg-guide-small:hover{color:#f3eaff}
.tg-guide-links{display:flex;justify-content:space-between;gap:10px;margin-top:9px}
.tg-guide-main:focus-visible,.tg-guide-small:focus-visible{outline:2px solid #75e2da;outline-offset:3px}
.tg-guide-root{position:fixed;inset:0;z-index:2147483000;pointer-events:none;color:#f4effb;font-family:inherit;font-size:14px;line-height:1.5;opacity:1;transition:opacity .3s ease}
.tg-guide-root.tg-guide-paused{visibility:hidden}
.tg-guide-root.tg-guide-ending{opacity:0}
.tg-guide-hole{position:fixed;box-sizing:border-box;border:1px solid #8ce8e2;border-radius:15px;box-shadow:0 0 0 200vmax #080612bb,0 0 0 4px #80dcd022,0 0 28px #b887ff55;transition:left .48s cubic-bezier(.2,.75,.2,1),top .48s cubic-bezier(.2,.75,.2,1),width .48s cubic-bezier(.2,.75,.2,1),height .48s cubic-bezier(.2,.75,.2,1);pointer-events:none}
.tg-guide-block{position:fixed;pointer-events:auto;background:transparent;touch-action:pan-y}
.tg-guide-coach{position:fixed;box-sizing:border-box;width:min(360px,calc(100vw - 28px));padding:17px 18px;border:1px solid #795c98;border-radius:17px;background:#241a34;color:#f4effb;box-shadow:0 18px 45px #0007;pointer-events:auto;transition:left .48s cubic-bezier(.2,.75,.2,1),top .48s cubic-bezier(.2,.75,.2,1),opacity .18s ease;max-height:calc(100dvh - 32px);overflow:auto}
.tg-guide-coach.tg-guide-moving{opacity:0;pointer-events:none}
.tg-guide-coach-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;color:#86e1d7;font-size:.74rem}
.tg-guide-coach h3{font-size:1rem;line-height:1.4;margin:0 0 8px;color:#f3e9ff;font-weight:750}
.tg-guide-coach p{font-size:.84rem;line-height:1.6;color:#d9cbe8;margin:0;white-space:normal}
.tg-guide-coach .tg-guide-small{min-height:36px;padding:6px 3px;font-size:.75rem}
.tg-guide-coach-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px}
.tg-guide-coach .tg-guide-main{width:auto;max-width:75%;min-height:41px;padding:9px 14px;font-size:.8rem}
.tg-guide-help{border:0;background:transparent;color:#baa7d5;font:inherit;font-size:.75rem;padding:8px 2px;min-height:40px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.tg-guide-help:hover{color:#e5d0ff}.tg-guide-help:focus-visible{outline:2px solid #75e2da;outline-offset:3px;border-radius:5px}
body.tg-profile-tour .profile-cover-edit,body.tg-profile-tour .profile-avatar-change{opacity:1}
body.tg-profile-tour .profile-cover-edit{z-index:3}
.tg-guide-profile-enter{animation:tg-guide-profile-enter .45s ease both}
@keyframes tg-guide-backdrop{from{opacity:0}to{opacity:1}}
@keyframes tg-guide-backdrop-out{from{opacity:1}to{opacity:0}}
@keyframes tg-guide-profile-enter{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:520px){.tg-guide-copy{padding:20px}.tg-guide-invite{border-radius:18px}.tg-guide-coach{padding:15px}.tg-guide-coach .tg-guide-small{min-height:44px}.tg-guide-coach .tg-guide-main{min-height:44px}.tg-guide-coach-head{font-size:.72rem}.tg-guide-copy p{font-size:.88rem}}
@media(pointer:coarse){body.tg-profile-tour .profile-cover-edit,body.tg-profile-tour .nickname-customize,.tg-guide-help{min-height:44px;min-width:44px}}
@media(prefers-reduced-motion:reduce){.tg-guide-invite,.tg-guide-coach,.tg-guide-hole,.tg-guide-root,.tg-guide-main,body.tg-invite-active .app-shell,body.tg-invite-return .app-shell{transition:none!important;transform:none!important}.tg-guide-invite::backdrop,.tg-guide-invite.tg-leaving::backdrop,.tg-guide-profile-enter{animation:none!important}}
